一个UDP用户数据的数据字段为8192字节,在数据链路层要使用以太网来传输,试问应当划分为几个IP数据报片?说明每一个IP数据报字段长度和片偏移字段的值

答:6个数据字段的长度:前5个是1480字节,最后一个是800字节,片偏移字段的值分别是:0, 185, 370, 555, 740, 925

习题解析

(划分结果如最后图中所示)

UDP数据报 = 首部8字节 + 数据部分组成

因为数据字段为8192字节,所以数据报总长度 = 8192 + 8 = 8200 字节

以太网的最大传输单元MTU = 1500

因为要划分为几个IP数据报,而每个IP数据报的首部占20字节,所以字段部分最大占1480字节

划分的时候,可以划分为 8200 / 1480 = 5,余 800 字节

所以应当划分为 6 个IP数据报片,前 5 个都是 1480 字节,第 6 个是 800 字节

  • 第一个IP数据报字段长度:1480,第一片偏移字段:1480 * 0 / 8 = 0
  • 第二个IP数据报字段长度:1480,第二片偏移字段:1480 * 1 / 8 = 185
  • 第三个IP数据报字段长度:1480,第三片偏移字段:1480 * 2 / 8 = 370
  • 第四个IP数据报字段长度:1480,第四片偏移字段:1480 * 3 / 8 = 555
  • 第五个IP数据报字段长度:1480,第五片偏移字段:1480 * 4 / 8 = 740
  • 第六个IP数据报字段长度:800,  第六片偏移字段:1480 * 5 / 8 = 925

UDP数据报的首部存在于第一个IP数据报片中,所以第一个IP数据报字段为:首部8字节 + 1472数据部分

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐