IP分片
最大传输单元(MTU): 网络链路存在MTU (最大传输单元)—链路层数据帧可封装数据的上限 不同链路的MTU不同
大IP分组向较小MTU链路转发时,可以被“分片” (fragmented) 1个IP分组分为多片IP分 组 IP分片到达目的主机后进行“重组” IP首部的相关字段用于标识分片以及确定分片的相对顺序——总长度、标识、标志位和片偏移
标识字段占16位:标识一个IP分组
IP协议利用一个计数器,每产生IP分组计数器加1,作为该IP分组的标识 标志位字段占3位:
DF (Don’t Fragment):不分组 MF (More Fragment):是否为分组的最后一个
DF =1:禁止分片; DF =0:允许分片; MF =1:非最后一片; MF =0:最后一片(或未分片)
片偏移字段占13位:一个IP分组分片封装原IP分组数据的相对偏移量
片偏移字段以8字节为单位 IP分片过程 假设原IP分组总长度为L,待转发链路的MTU为M; 若L>M,且DF=0,则可以/需要分片 分片时每个分片的标识复制原IP分组的标识 通常分片时,除最后一个分片,其他分片均分为MTU允许的最大分片
一个最大分片可封装的数据应该是8的倍数,因此,一个最大分片可封装的数据为:
M减去20除以8,向下取整,再乘8 需要的总片数为: L减去20除以d,向上取整
|