网络协议基础:从数据报分片到传输控制
1. 数据报分片与网关处理
数据报在网络传输中可能需要分片,每个分片的头部与原始数据报头部有细微差别。若存在更多分片,“更多分片”标志会被设置,且每个分片的偏移量会改变以防止覆盖。例如,一个4000字节的IP数据报可能会被分片成三个以太网帧,其中两个包含最大数据量,第三个包含剩余部分。在接收端,这些分片会被重新组合成原始数据报并进行处理。
每个网络都有最大传输单元(MTU),当数据包从MTU值大的网络发送到MTU值小的网络(反之亦然)时,两个网络之间的网关负责重新格式化数据包以符合每个网络的规范。例如,一个具有以太网接口和令牌环接口的网关,以太网的MTU为1500字节,令牌环网络的MTU可能更大或更小,网关需要在数据包从一个网络移动到另一个网络时重新格式化和分片。不过,一旦为适应较小的MTU而分片,数据包直到到达目的地才会重新组装,这可能会导致一定的效率问题,但好处是网关无需存储或重建数据包分片,数据包可以使用最佳路径发送,而无需担心目的地节点的重新组装问题。
1.1 数据报分片流程
graph LR
A[原始数据报] --> B{是否超过MTU}
B -- 是 --> C[进行分片]
C --> D[设置分片标志和偏移量]
D --> E[发送分片]
B -- 否 --> F[直接发送]
E --> G[接收端重新组装]
F --> G
2. 协议分层
在网络通信中,很难创建一个单一的协议来处理所
超级会员免费看
订阅专栏 解锁全文
3万+

被折叠的 条评论
为什么被折叠?



