5-3 IPv4

5-3-2 IPv4分片计算

IP分片定义

IP报文最大65535字节,而以太网MTU最大为1500字节。

相当于货轮能载重65535,而火车载重1500,那么必须把货轮上的货物分装给多个火车运输

image-20250224205912619

通过案例理解IP分片

image-20250423215027007

以太网主机发送个IP分组)长度3000字节,头长度为标准长度即基本长度20字节,发送该IP分组时应分为几个分片?

写出各分片的信息(长度、偏移、MF)。

IP分片步骤

分片步骤如下:

  • 将报文去掉头部得到原始报文长度为2980Byte
  • 按照以太网最大帧长1500Byte分片,其中1500=头部长度+报文长度
    • 分片1:20+1480=1500
    • 分片2:20+1480=1500,此时剩余2980 - 1960 = 20字节
    • 分片3:20+20=40(注意:以太网最小帧长为64字节,不足时应填充至64字节,本例暂不考虑)

image-20250227195941077

MF标志位

在IP头部中,有一个标志位为MF标志位

标志字段的最低位是MF (More Fragment,更多分片)。 MF =1 表示后面“还有分片”。 MF = 0 表示最后一个分片。

  • MF=1:本分片后续还有分片
  • MF=0:本分片后续没有分片了
偏移量

偏移量:指示的是较长的分组在分片后,某片在原分组中的相对位置。相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个非末尾分片的长度一定8字节的整数倍。

偏移量不涉及报头长度,第一分片的偏移量为0,后续分片偏移量以8个字节为单位,用来描述本分片与第一分片起始位置的距离,便于接收站组装[有一种网络攻击称为泪滴攻击,即通过攻击篡改目标主机的IP报文的偏移量,使得接收站无法正常还原报文]

  • 分片1:偏移量为0
  • 分片2:偏移量为1480/8=185
  • 分片3:1480*2/8=370

image-20250227195959318

形象类比理解IP分片

一个IP数据报文长度为3000字节(包括首部长度),要经过一个MTU为1500字节的网络传输。此时需将原始数据报切分为3片进行传输,请将每个数据报分片的总长度、数据长度、MF标志和片偏移填入答题纸对应表格。

类比翻译:一个大型集装箱,货物+集装箱=3000斤,现在要用小型集装箱进行分装,每个小型集装箱自身重量+货物重量=1500斤,已知大型集装箱和小型集装箱重量都是20斤,问:可以用几个小型集装箱进行分装?每个小集装箱的货物分别是多少斤?

image-20250227201626321

例题

例题1

image-20250227201729177

解析:注意需要将原总长度3000B的数据报头部去掉之后进行计算,该数据报将被分成3个分片

例题2

image-20250227201738611

解析:

  • 片偏移:占13位。指示的是较长的分组在分片后,某片在原分组中的相对位置。相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个分片的长度一定8字节的整数倍。
  • 标志字段中的最低位记为MF。MF=1表示后面”还有分片”的数据报。MF=0 表示这是数据报片中的最后一个。
例题3

image-20250227201748830

解析:

可回看上一节IP头部,头部中有一个标识字段

标识:主机发送IP报文的序号,每发送一次+1。占 16 个比特,属于同一个数据报的各分片数据报应该具有相同的标识。IP软件维持一个计数器,每产生一个 IP 数据报,计数器的值就加1,并将此值赋给标识字段。

IP分片的标识符(Identification)是IP头部中的一个16位字段,用于唯一标识一个IP数据报及其分片。标识符通常由发送主机的IP协议栈通过一个全局计数器生成。每发送一个新的IP数据报,计数器会递增,从而确保短时间内不会重复 当一个IP数据报需要分片时,每个分片的标识符保持不变,而片偏移和标志位(如MF位)则用于指示分片的顺序和完整性

例题4

image-20250227201800349

解析:注意以太网最小帧长为64字节,不足时应填充至64字节

例题5

image-20250227201810999

解析:

  • IPv6数据报在传输过程中不分片,这是因为IPv6的MTU Discovery机制通过动态探测路径上的最小MTU值,避免了数据包分片问题。IPv6协议在发送数据之前,自动探测路径上最小MTU值,而后发送站就以该最小MTU值封装数据帧,路径上不再进行分片。如下图所示,路径上最小MTU值为400,则PC1发送时就以400字节来封装数据帧

    PixPin_2025-02-27_20-38-15

  • 分片之后的数据报不会再路径上的路由器重组,而是在接收站才重组,因为各个分片可能是经过不同路由器而转发,路径上的路由器分片并不一定完整

    image-20250227204409206

  • 经过计算可知D选项正确

例题6

image-20250227201820364

解析:

  • 报文分片发生在需要分片的中间路由器或源端

  • 报文分片的重组发生在目的端

站内搜索

没有找到内容!