IP、TCP 和 DNS 是三个和 HTTP 密不可分的协议。
1. 负责传输的 IP 协议
IP(Internet Protocol,网际协议)位于网络层,其作用是把各种数据包发送给对方。而要保证确实传送到对方 那里,则需要满足各类条件。其中两个重要的条件是 IP 地址和 MAC 地址(Media Access Control Address)。
-
使用 ARP 协议凭借 MAC 地址进行通信。
ARP 是一种用以解析地址的协议,根据通信方 的 IP 地址可以反查出对应的 MAC 地址。在网络上通过多台计算机或网络设备进行中转时,会利用下一站中转设备的 MAC 地址来搜索下一个中转目标。这时,会采用 ARP 协议(Address Resolution Protocol)。 -
没有人能够全面掌握互联网中的传输状况。
在到达通信目标前的中转过程中,那些计算机和路由器等网络设备只能获悉很粗略的传输路线。
这种机制称为路由选择(routing),无论哪台计算机、哪台网络设备,它们都无法全面掌握互联网中的细节。
2. 确保可靠的 TCP 协议
TCP协议位于传输层,提供可靠的字节流服务。
-
字节流服务(Byte Stream Service)
为了方便传输,将大块数据分割成以报文段(segment)为单位的数据包进行管理,且 TCP 协议能够确认数据最终是否送达到对方。 -
确保数据能到达目标
为了准确无误地将数据送达目标处,TCP 协议采用了三次握手(three-way handshaking)策略。
用 TCP 协议把数据包送出去后,TCP 不会对传送后的情况置之不理,它一定会向对方确认是否成功送达。
握手过程中使用了 TCP 的标志(flag) —— SYN(synchronize)和 ACK(acknowledgement)。 发送端首先发送一个带 SYN 标志的数据包给对方。接收端收到后, 回传一个带有 SYN/ACK 标志的数据包以示传达确认信息。最后,发送端再回传一个带 ACK 标志的数据包,代表“握手”结束。 若在握手过程中某个阶段莫名中断,TCP 协议会再次以相同的顺序发送相同的数据包。
3. 负责域名解析的 DNS 服务
DNS(Domain Name System)服务是和 HTTP 协议一样位于应用层的协议。
DNS 协议提供通过域名查找 IP 地址,或逆向从 IP 地址反查域名的服务。
网友评论