IP报文格式详解

这里写图片描述

  • 4位版本号:指IP协议的版本。通信双方使用的IP协议版本必须一致,对于IPv4来说,就是4。

  • 4位首部长度:可表示的最大十进制数是15,注意首部长度字段所表示数的单位是32位字(也就是4字节),所以IP头部最大长度是60字节(最小20字节)。

  • 8位区分服务:由3位优先权字段(已弃用),4位TOS字段和1位保留字段(必须置为0)组成。4位TOS分别表示:最小延迟、最大吞吐量、最高可靠性、最小成本。这四者相互冲突,只能选一个。对于ssh/telnet 这样的应用程序,最小延迟比较重要;对于ftp这样的程序,最大吞吐量比较重要。

  • 16位总长度: IP数据报(首部+数据)整体占多少字节。该字段为16位,所以数据报最大长度为 2161=65535 2 16 − 1 = 65 535 字节。

  • 16位标识:唯一的标识主机发送的报文。IP软件在储存器中维护一个计数器,每产生一个数据报,计数器就+1,并将此值赋值给标识字段。当数据报长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报片的标识字段中。

  • 3位标志字段:第一位保留(现在不用,但说不定以后要用到);第二位DF,意思是“不能分片”,只有当DF=0时,才允许分片;第三位(最低位)MF,MF=1表示后面还有分片的数据报,MF=0表示这是若干数据报片中的最后一个。

  • 13位片偏移:较长的报文在分片之后,某片在原报文中的相对位置。片偏移以8字节为单位,这就是说除了最后一个分片,每个分片的长度是8字节的整数倍。

  • 8位生存时间(Time To Live, TTL):数据报到达目的地的最大报文跳数,一般是64。每经过一个路由,TTL 就会 -1,一直减到0还没有到达,那就丢弃了。这个字段主要是防止出现路由循环。

  • 8位协议:表示上层协议的类型。

  • 16位首部检验和:用来鉴别头部是否损坏(不检验数据部分),并不是使用CRC进行校验。

  • 32位源地址和32位目标地址:表示发送端和接收端的IP地址。

  • 可变字段:就是一个选项长度,大小从1字节到40字节不等。

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值