网络

网络基础知识整理

2016-10-23  本文已影响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需要很久才能成为主流。

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是标识(哪个)。

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

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

上一篇 下一篇

猜你喜欢

热点阅读