3

我大学作业中的一个问题是,为什么要使用反码而不是 TCP 校验和中的比特总和。我在我的书中找不到它,谷歌也没有提供帮助。有人能指出我正确的方向吗?

谢谢,迈克

4

2 回答 2

3

由于这是一个家庭作业问题,这里有一个提示:

假设您计算了整个数据包的第二个校验和,包括第一个校验和?是否有一个数学表达式可以确定结果?

于 2009-11-16T03:16:27.633 回答
2

可能最重要的是它是独立于字节序的。

Little Endian 计算机以 LSB 最后存储十六进制数字(例如 Intel 处理器)。Big Endian 计算机将 LSB 放在首位(例如 IBM 大型机)。当进位加到 LSB 以形成 1 的补码和时)无论我们加 03 + 01 还是 01 + 03:结果都是一样的。

其他好处包括易于检查传输和校验和计算,以及通过仅更新已更改的 IP 字段来加速计算的各种方法。

参考: http: //www.netfor2.com/checksum.html

于 2009-11-16T03:15:25.757 回答