计算机网络 --- 网络层IP数据报

本文详细介绍了IP数据报的首部结构,包括版本、首部长度、区分服务、总长度、生存时间、协议等字段。重点讨论了IP数据报的分片过程,解释了最大传送单元MTU的概念,以及如何根据标识、标志和片偏移进行分片。此外,还阐述了分片相关的数据,如标识符、禁止分片标志DF和更多分片标志MF的用途。
摘要由CSDN通过智能技术生成

IP数据报格式

首部

  • 版本:IPv4/IPv6
  • 首部长度:单位是4B,最小为5。也就是说如果首部长度的四个bit的出来的数是8,那么首部长度就是8 * 4B = 32B也就是32字节
  • 区分服务:指示期望获得哪种类型的服务
  • 总长度:首部+数据,单位是Byte
  • 生存时间(TTL):IP分组的保质期。经过一个路由器-1,变成0则丢弃。
  • 协议:数据部分的协议

  • 首部检验和:只检验首部
  • 源IP地址和目的IP地址:32位
  • 可选字段:0~40B,用来支持排错,测量以及安全等措施。
  • 填充:全0,把首部补成4B的整数倍。

IP数据报分片

最大传送单元MTU

链路层数据帧可封装数据的上限。

以太网的MTU是1500字节。

如果所传送的数据报长度超过某链路的MTU值,就需要把数据报进行分片。

分片相关数据

回顾IP数据报首部:

其中标识,标志,片偏移就是用来分片的:

  • 标识: 同一数据报的分片使用同一标识。
  • 标志:有三位,只有两位有意义。中间位DF(Don't Fragment):DF = 1,禁止分片。DF = 0,允许分片。最低位MF(More Fragment):MF = 1,后面“还有分片”,MF = 0,代表最后一片/没分片。
  • 片偏移:指出较长分组分片后,某片在原分组中的相对位置。以8B为单位。也就是说假如片偏移的数据大小是10,那么就是10 * 8B,80字节偏移。除了最后一个分片,每个分片长度一定是8B的整数倍。

以下是片偏移举例:

 需要分片为长度不超过1420B的数据报片,形成以下三个分片:

那么第一个数据报片片偏移量就是0,第二个就是1400,第三个就是2800。所以三个数据报片的片偏移数据分别为0 / 8 = 0, 1400 / 8 = 175,2800 / 8 = 350

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值