【TCP/IP 笔记】IPv6-03 | MTU 和分片重组

参考 http://tcpipguide.com

MTU,分片 (Fragmentation) 和重组 (Reassembly)

IPv6 与 IPv4 在 MTU,分片和重组上的不同:

  • 增大了默认 MTU:在 IPv4 中,路由器和物理链路要求的最低 MTU 为 576bytes。而在 IPv6 中,最低要求为 1280bytes。
  • 取消了路由器分片:在 IPv6 中,数据报只能由发送者进行分片,路由器不能进行分片。所以在发送数据报之前要进行 Path MTU 发现,并将数据报分片成合适的碎片进行发送。
  • MTU Size Error 回复:因为路由器不能对数据报进行分片,当要传递一个过大的数据报时就只能将其丢弃,并返回一个 ICMPv6 Packet Too Big 信息。
  • 去除报头中的 Fragment 相关字段:在 IPv4 中固定存在的 Fragment 相关字段被去除,改为以 Fragment 扩展头的形式存在,仅在需要的时候添加。

IPv6 分片处理

IPv6 数据报被分为两部分:

  • 不可分段部分 (Unfragmentable Part):主报头和以下扩展头(如果有的话):Hop-By-Hop Options, Destination Options(可被路由上的设备处理的选项)和 Routing。
  • 可分段部分 (Fragmentable Part):数据报的数据部分和以下扩展头(如果有的话):AH, ESP 和 Destination Options(仅被目的设备处理的选项)。

数据报碎片:

  • 第 1 个碎片:复制不可分段部分,加入 Fragment 扩展头,加入可分段部分,复制数据部分将数据报补至 MTU 大小。
  • 第 2 至 N 个碎片:复制不可分段部分,加入 Fragment 扩展头,复制剩余的数据部分将数据报补至 MTU 大小,直至复制完所有数据部分,最后一个数据报碎片大小通常小于 MTU。

【TCP/IP 笔记】IPv6-03 | MTU 和分片重组_第1张图片

你可能感兴趣的:(Web)