计算机网络(第十四弹) --- 最大传输单元 MTU 对 IP / TCP / UDP 协议的影响是什么?

最大传输单元 - MTU 相当于发快递时对包裹尺寸的规定, 此限制是不同的数据链路对应的物理层产生的限制; 如果一个数据包从以太网路由到拨号链路上, 若数据包的长度大于拨号链路的 MTU, 就需要对数据包进行分片; 不同的数据链路层标准的 MTU 是不同的.

♛ MTU 对 IP 协议的影响

  由于数据链路层对 MTU 的限制, 对于较大的 IP 数据包需要进行分包:

将较大的 IP 包分成多个小包, 并给每个小包打上标签;

每个小包的 IP 协议头的 16 位标识 id 都是相同的; 其中 3 位标志字段中第二位置为 0, 表示允许分片; 第三位来表示结束标记(1 代表当前是最后一个小包, 0 则不是);

到达对端时再将这些小包按照顺序重组, 拼装到一起后返回给传输层;

一旦这些小包中的任意一个小包丢失, 接收端的重组就会失败, 但是 IP 层不会负责重新传输数据.


♛♛ MTU 对 UDP 协议的影响

一旦 UDP 携带的数据超过一定量, 就会在网络分成多个 IP 数据段;

多个 IP 数据段有任意一个丢失都会引起接收端网络层重组失败, 这就意味着如果 UDP 数据报在网络层被分片, 整个数据被丢失的概率就大大增加了.


♛♛♛ MTU 对 TCP 协议的影响

TCP 的数据报也不是无线大的, 也是受限于 MTU; TCP 的单个数据报的最大消息长度称之为 MSS;

TCP 在建立连接时双方会进行 MSS 协商; 最理想的情况下 MSS 的值正好是在 IP 不会被分片处理的最大长度, 这个长度仍然受限于数据链路层的 MTU;

双方在发送握手信号 SYN 时会在 TCP 的首部写入自己能够支持的 MSS 值, 然后双方得知对应的 MSS 值后选择较小的作为最终 MSS (其值就是在 TCP 首部的 40 字节变长选项中).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值