我如何计算IP头长度

时间:2012-07-26 11:20:33

标签: networking ip

我想用以下语句

计算IP头长度

“标头长度是一个四位字段,顾名思义,它以32位字的形式告知IP标头的长度”

现在我在计算Ip头长度(最小值和最大值)方面遇到困难,使用四位字段

3 个答案:

答案 0 :(得分:11)

  • 有效数据报的IPv4标头的最小长度为20个字节,当值为5且没有选项时
  • 由于该字段为4位宽,因此它可存储的最大值为15,因此标头的最大长度为60字节。
  

Internet标头长度 32位互联网标头的长度       位字,因此指向数据的开头。注意       正确标题的最小值为5.

这意味着无论IHL中存储了什么值,都应该乘以32得到总位数,或者用4来得到总字节数。

答案 1 :(得分:3)

报头长度的最小值是20字节,但我们没有足够的比特来表示20,所以我们使用缩放技术,即0101(5)将代表4 X 5 = 20字节,这里缩放因子是4。

4位的最大值为15。

因此可能的最大标头长度为4 X 15 = 60字节。

Header Length |  Header Length Field

         20 -----> 5
         24 -----> 6
         28 -----> 7
            .
            .
            .
         60 -----> 15

如果标头长度是22字节,那么我们使用填充使其成为4的倍数,即24字节

答案 2 :(得分:1)

@Amit> HL字段中的值是=总IP头长度中的4个字节的数量。如果标题长度字段是40,则计算40,然后计算40个中有多少4个字节?其40/4 = 10 HL字段中的值为10

MINIMUM HL值

最小HL为20字节。在20 = 20/4 = 5时没有4字节。在HL字段中,最小值为5.

MAXIMUM HL值

HL是一个4位字段。因此,该字段中可以使用的最大值是15(1111),或者您可以使用公式2 ^ 4-1 = 15来计算。最大值:4个字节可以是15.Hers Max header length = 15 * 4 = 60bytes。

希望现在情况很清楚。