图解HTTP-了解Web及网络基础
1. 网络基础TCP/IP
1.1 TCP/IP协议族
TCP/IP 是互联网相关的各类协议族的总称
1.2 TCP/IP的分层管理
按照层次分为以下四层:
应用层:决定了向用户提供应用服务时通信的活动。处于该层的有:DNS(域名解析系统)和HTTP协议以及其他。
传输层:提供处于网络连接中的两台计算机之间的数据传输。处于该层的有:TCP、UDP
网络层:处理在网络上流动的数据包。处于该层的有:IP协议
链路层(数据链路层,网络接口层):用来处理连接网络的硬件部分
1.3 TCP/IP通信传输流
发送端在层与层之间传输数据时,每经过一层时必定会被打上一个该层所属的首部信息。反之,接收端在层与层传输数据时,每经过一层时会把对应的首部消去。
1.3 与 HTTP 关系密切的协议 : IP、TCP 和DNS
1.3.1 负责传输的IP协议
- 位置:网络层
- 作用:将各种数据包传送给对方,IP地址指明了节点被分配的地址
1.3.2 确保可靠性的TCP协议
- 位置:传输层
- 作用:提供可靠的字节流服务,切割数据并能够确认数据是否送达对方。
- 字节流服务:为了方便传输,将大块数据分割成以报文段(segment)为单位的数据包进行管理。
- 可靠性策略:三次握手及其他
- 第一次:发送端首先发送一个带 SYN 标志的数据包给接收端。
- 第二次:接收端收到后,回传一个带有 SYN/ACK 标志的数据包以示传达确认信息。
- 第三次:发送端再回传一个带 ACK 标志的数据包,代表“握手”结束。
- 若在握手过程中某个阶段莫名中断,TCP 协议会再次以相同的顺序发送相同的数据包。
1.3.3 负责域名解析的DNS服务
- 位置:应用层
- 作用:提供域名到 IP 地址之间的解析服务
- 需求原因:用户可以通过主机名或者域名或者IP地址来访问别的计算机,相较于一串数字的IP地址,主机名和域名更符合人类记忆习惯,但是对于计算机不友好,所以需要DNS服务。
1.3.4 各种协议与 HTTP 协议的关系
1.4 URI和URL
URI
:统一资源标识符
URL
:统一资源定位符,通常指访问web也面试输入的网址,URL是URI的子集