• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

IP_datagram 的头的长度,该怎么处理

php 搞代码 3年前 (2022-01-24) 17次浏览 已收录 0个评论

IP_datagram 的头的长度

本帖最后由 TomodaMaki 于 2013-01-07 16:04:34 编辑

TCP/IP Illustrated 第一卷第三章第二小节

The header length is the number of 32-bit words in the header, including any options. Since this is a 4-bit field, it limits the header to 60 bytes

有这样一段话。按照这段话我计算下来,应该是 (2^4 * 32 )/8 = 64 bytes.

为什么作者说是 60 bytes?

还有一个问题:接下来作者说:

The normal value of this field (when no options are present) is 5.

来&源gao@dai!ma.com搞$代^码%网搞gaodaima代码常值是5? 那个上方的图片那个域不是只有4位么?比较无法理解,整个的一段原文在这里:

The header length is the number of 32-bit words in the header, including any options. Since this is a 4-bit field, it limits the header to 60 bytes. In Chapter 8 we’ll see that this limitation makes some of the options, such as the record route option, useless today. The normal value of this field (when no options are present) is 5.

图片在楼下补

谢谢大家

——解决方案——————–
图不是很清楚了么,从上到下7行,通常只用前5行,也就是The normal value of this field (when no options are present) is 5.的意思。
一行32bit,也就是4个字节,4X5 = 20 byte.
他说的header length是指第一行的第二个区域。4个字节代表整个ip头长,最大是1111,就是10进制的15,因为一行是4个字节,所以最多只能有15 * 4 = 60 个字节。
——解决方案——————–
请注意 bit 和 bytes 的区别
bit 二进制位
bytes 字节
1 bytes = 8 bit


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:IP_datagram 的头的长度,该怎么处理

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址