重点概念
网络服务器向客户端传送数据的过程,实际上是封装和解封装的过程.
-
消息大小
为了解决大型数据流造成的网络拥堵,需要对消息进行分段. 分段带来好处如下:
- 多路传输:发送较小分段消息,网络上同时可以有多个会话交错进行.
- 提高网络可靠性:1. 各消息分段从源地址到目的地址无需经过相同的路径,某条路径不通会寻找替换路径;2. 丢失部分消息分段,只需要重传丢失的部分,无需重传整个消息.
通过对消息分段打上标签,保证消息顺序和到达目的地重组:
-
协议数据单元
应用层数据在传输过程中沿着协议栈传输,每一层协议都会向上一层数据添加信息,这就是封装.
数据分片在各层网络结构中形式称为"协议数据单元(PDU)".
PDU按照TCP/IP协议命名规范:
- 数据:应用层PDU
- 分段:传输层PDU
- 报文和帧:网络层PDU
- 比特:物理介质PDU
-
网络地址(IP地址)
网络地址包含"网络前缀"和"主机"两部分. 路由器使用网络前缀将报文转发给适当的网络,最后一个路由器使用主机部分将报文发送给目标设备.
同一本地网络,网络前缀是相同的,只有主机设备部分不通. -
数据链路地址(MAC地址)
数据链路地址是物理植入网卡的48比特地址. 目的是在同一网络中将数据帧从一个网络接口发送到另一个网络接口.
-
MAC地址和IP地址
发送方必须知道接收方的物理地址和逻辑地址. 发送方主机通过多种方式获取接收方的IP地址:比如 域名解析系统、或手动输入.
发送方主机使用地址解析协议(ARP协议)检测本地网络的所有MAC地址. 如下,发送主机发送一条ARP请求消息,这是一条广播消息. ARP请求包含目标设备的IP地址,LAN上每一个设备检测该ARP请求,符合该IP地址的设备发送ARP响应,ARP响应包含ARP请求中IP地址对应的MAC地址.