IP首部校验码算法

IP首部校验码算法

11/03

2017

探讨IP首部校验码为什么使用反码求和

IP首部校验码算法

IP首部校验和字段是根据IP首部计算的检验和码。它不对首部后面的数据进行计算。

注:IP首部一般有20个字节,如果有选项字段的话,会占用更多字节。占用字节数可以

通过首部的第4-7bit位的值获得,4bit位的值最大为16,而它的单位是32bit位,32bit

位占4个字节,所以IP首部最多为16X4=64个字节。

首先在发送端,将检验和字段置0,然后,对首部种每16bit位进行二进制反码求和。结果存在检验和字段中。

在接收端,对首部种的每16bit进行二进制反码的求和。如果首部在传输过程中没有发生任何过错,那么接收

方计算的结果应该为全1.如果结果不是全1,就是检验和错误,IP就丢弃收到的数据包,但不生成差错保文,由上

层去发现的丢失的数据报并进行重传。

udp数据报的检验和计算:

如果检验和的计算结果为0,则存入的值为全1(65535),这在二进制反码计算中是等价的。

如果传送的检验和为0,说明发送端没有计算检验和。

探讨

需要注意的几点:

这里所说的反码是二进制位按位取反,跟有符号数的反码不一样。

二进制相加时,高位溢出要加到低位,而不是丢弃。

全0与全1等价。以4bit举例,0000等于1111.

先取反后相加,与先相加后取反,得到的结果是一样的。

相关推荐

dnf红眼护腿传说哪个好 det365在线平台

dnf红眼护腿传说哪个好

中药煅磁石有什么功效和作用? – 健康我乐乐 det365在线平台

中药煅磁石有什么功效和作用? – 健康我乐乐

2017十大口碑电视剧排行榜 评分最高的大陆电视剧集 det365在线平台

2017十大口碑电视剧排行榜 评分最高的大陆电视剧集