摘要: 下面摘自《TCP/IP协议簇》的IP头校验和算法:发送时:1. 将校验和字段置为0;2. 将整个首部分为16bit的部分,求和;3. 取反码,填入到校验和字段中;接收时:1. 直接将整个首部分为16bit的部分,求和;2. 取反码,若结果为0,取合法;否则丢弃;这上面有两个细节没有描述清楚:1. 计算时的字节顺序(litter endian和big endian)问题;2. 取和溢出时的改进计算方法;根据实验结果,及参考网络上的资料,实际上几乎现有所有的系统对校验和算法已经有点小小的补充,也许《TCP/IP协议簇》这里没有更新罢了,自我安慰吧,如下:◆当发送IP包时,需要计算IP报头的校验和: 阅读全文
posted @ 2011-06-30 11:38 Capricorn.python 阅读(3760) 评论(1) 推荐(0) 编辑