美文网首页网络
网络基础知识整理

网络基础知识整理

作者: 许宏川 | 来源:发表于2016-10-23 18:44 被阅读87次

本文是做看资料时做一个整理,不是原创只是打一下字强化记忆。主要参考资料《图解HTTP》这本书和阮一峰的文章。

常见缩写

HTTP(HyperText Transfer Protocol,超文本传输协议)。
WWW(World Wide Web,万维网)。
HTML(HyperText Markup Language,超文本标记语言)。
URL(Uniform Resource Locator,统一资源定位符)。
URI(Uniform Resource Identifier,统一资源标识符)。

HTTP版本

HTTP/1.0 1996年5月发布,标准是RFC1945
HTTP/1.1 1997年1月发布,标准是RFC2616
HTTP/2 2015年5月发布,标准是RFC7540

  • 1.0可以无视,半年后1.1就出来了,至今用了十多年,是主流版本。更新换代很慢,2需要很久才能成为主流。
  • HTTP/2不是2.0,因为没有打算发布小版本,下一版就是3了。

RFC文档

各种网络的规范都会被指定成成RFC(Request for Comments,征求修正意见书)。

早期浏览器

第一个浏览器是1993年NCSA发布的Mosaic。


1994年网景发布Netscape。
1995年微软发布Internet Explorer。

TCP/IP协议族

整套网络服务各层的集合称为TCP/IP协议族,HTTP是TCP/IP的一个子集。

TCP/IP的分层

TCP/IP分四层:应用层、传输层、网络层和数据链路层。分层的好处是互不干扰,各层自由改动。例如应用层要换协议,换就换,另外三层不受影响。

应用层
应用层决定了向用户提供应用服务时通信的活动。
例如:
FTP(File Transfer Protocol,文件传输协议)。
DNS(Domain Name System,域名系统)。
HTTP协议也属于该层。

传输层
传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。
有两个性质不同的协议:
TCP(Transmission Control Protocol,传输控制协议)。
UDP(User Data Protocol,用户数据报协议)。

Socket不是协议,是对TCP/IP抽象出一组接口。

网络层
网络层用来处理在网络上流动的数据包。数据包是网络传输的最小单位。
平时老听到别人说抓包丢包就是指数据包。该层是规定数据包从一台计算机发送给另一台计算机的传输途径。或者说选择哪条线路。
IP协议处于该层。

链路层
用来处理链接网络的硬件部分。包括控制操作系统、硬件的设备驱动、网络适配器(网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均在链路层的作用范围之内。

对于以上分层,发送端从上往下走,接受端从下往上走。
发送端每经过一层封装一层头部信息,接受端每经过一层扒去一层头部信息。

LAN和WAN

局域网(LAN)又叫内网。
广域网(WAN)又叫外网。

IP地址和MAC地址

IP是IP,IP地址是IP地址。
MAC地址是物理地址,每张网卡有一个独一无二的MAC地址。

ARP协议

ARP(Address Resolution Protocol)根据IP地址查出MAC地址。

IP协议

IP(Internet Protocol)规定一台计算机怎么在茫茫机海中找到另一台计算机。

TCP协议

为了保证通信的可靠性,TCP采用三次握手的策略,过程需要用到两种标志(flag)。SYN(synchronize)和ACK(acknowledgement)。
发送端首先发送一个带SYN标志的数据包给接收方。接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。最后,发送端再回传一个带ACK标志的数据包,代表“握手”结束。
若在握手过程意外中断,TCP协议会再次以相同的顺序发送相同的数据包。

DNS

DNS是域名系统,提供把域名解析成IP地址的服务。

URL和URI

简单地说,区别在于资源URL是定位(在哪),URI是标识(哪个)。

浏览器打开一个网页都干了什么?

参考阮一峰的这两篇文章:
互联网协议入门(一)
互联网协议入门(二)

相关文章

  • 网络基础知识整理

    本文是做看资料时做一个整理,不是原创只是打一下字强化记忆。主要参考资料《图解HTTP》这本书和阮一峰的文章。 常见...

  • Python入门须知

    Python资料整理 基础知识,网络教程:https://www.liaoxuefeng.com/wiki/101...

  • 网络原理基础知识整理

    [toc] 网络原理 介绍TCP三次握手? socket编程中,何时进行三次握手?如何用socket发送数据? H...

  • DWIN串口屏的使用

    学习需要,根据dwin的官方文档及网络资料整理而来。 一、 ****基础知识理解 1.1、变量地址和描述指针 V...

  • 【操作系统基础知识】进程同步和死锁

    基础内容整理,内容来自网络和个人笔记。 往期进程相关文章链接:【JVM系统基础知识】Java中的进程管理 【操作系...

  • Java基础知识整理2——网络篇

    一、http与https的区别: https = http + ssl +加密算法+证书验证 ht...

  • Java基础之面向对象的三大特性

    (Java基础知识系列整理,与android进阶有关,摘抄自网络,非原创) 一、面向对象的三个基本特征是:封装、继...

  • 测试同学必备的网络知识

    对于测试同学来说,计算机网络的基础知识是必不可少的,话不多说,先来整理一波高频网络面试题。 一、HTTP协议的请求...

  • 《神经网络与深度学习》边学边问

    20181203日,这么快就进入2018年的尾巴了,年尾是整理所学所做的最佳时刻。今天借着重新温故神经网络基础知识...

  • Linux知识补充点

    完成基础知识后,多搜索网络综合文档,整理为我所用 seq 以指定增量打印数字序列。 基本用法 选项: 例: 尽可能...

网友评论

    本文标题:网络基础知识整理

    本文链接:https://www.haomeiwen.com/subject/tuubettx.html