IP数据报之首部长度解析

首部长度:占4位。即从0000~~~~1111,可表示的最大十进制数字是15。
这个字段所表示的数字的单位是(32位,即4字节),即当“首部长度”表示为0001时,并不是说真正的首部的长度是1而是说,首部的长度是1(4字节),即1个4字节,就像1kg一样,那么,通过“首部长度”这个字段可以看出,真正的首部的长度应该是0~15(4字节),即0~60字节。
但是,在TCP/IP的标准中,各种数据格式常以32位(4字节)为单位进行描述       
1、在首部,某些格式是必须的,所以,规定首部的固定部分是20个字节。特别的:“首部长度”为“0101”是最常用的,此时只有固定部分,没有任何选项(可变部分),“填充”是配合“可选字段”使用的。
2、当我们发送IP数据报时,可能首部的长度并不是4字节的整数倍(即首部的可变部分,长度从1~40个字节不等,很多选项拼接在一起,不需要分隔符,用全0补充成4字节整数倍),那么,就需要用到“填充”,所以发送出去的报文首部的长度都是满足4字节整数倍,即数据部分永远在4字节的整数倍时开始。
3、数据报中有4位bit空位来交给“首位长度”是吧,那填满就是1111,折合十进制的15;如果不填满,写的是0001,折合十进制就是1.填满的1111,代表了首部长度是15X4=60字节;写0001,代表了首部长度是1X4=4字节.....就是我所说的1bit的标示数代表了首部是4个字节长填满时的1111对应首部最大长度60字节。

  • 15
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值