发布网友 发布时间:2022-03-28 07:22
共1个回答
热心网友 时间:2022-03-28 08:52
选项字段用来支持排错、测量以及安全等措施,内容很丰富。此字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。填充部分用全0的填充字段补齐成为4字节的整数倍。
占4位,可表示的最大十进制数值是15。请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首*度为1111时(即十进制的15),首*度就达到60字节。当IP分组的首*度不是4字节的整数倍时,必须利用最后的填充字段加以填充。
因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为方便。首*度*为60字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首*度就是20字节(即首*度为0101),这时不使用任何选项。
扩展资料
原理
IP数据报的首部通过检验和来保证其正确性。发送方将IP数据报的首部按顺序分为多个16比特的小数据块,首部检验和字段的初始值设置为0,用1的补码算法对16比特的小数据块进行求和,最后再对结果求补码,便得到了首部检验和。
将经过计算得到的首部检验和填回到数据报的首部检验和字段,封装成帧后发给通往信宿的下一跳设备。下一跳设备作为接收方将收到的IP数据报的首部再分为多个16比特的小数据块,用1的补码算法对16比特的小数据块进行求和,最后再对结果求补码,若得到的结果为0,就验证了数据报首部的正确性。
发送方用1的补码计算和数时,首部检验和字段被设置为O,等于没有参加计算,求补码后的检验和与原检验和各位正好相反。接收方用1的补码计算和数时,由于新的首部检验和字段已经被加入,在首部未发生变化的情况下所得的和数应该为0xffff,因此,求补码后的结果应该为0x0000。