我目前正在查看校验和,但我无法完全理解它们是如何工作的。
仅供参考,我一直在研究UDP校验和和互联网校验和。我已经知道发送方的UDP执行1s补码,但是我不清楚1s补码是什么。
我粗略地认为1s补码与'反转'所有1和0的值有关,所以1变为0而0变为1,但我不知道为什么这样做首先。
有人可以提供一些关于校验和的信息吗?
谢谢。
答案 0 :(得分:7)
校验和主要是某些值的哈希(单向加密函数),以确保数据到达另一端时是一致的。在发送数据之前进行校验和,然后在另一个数据被接收时,再次获取相同值的校验和,并与来自发送方的校验和匹配,如果它们相同,则数据在良好的状态,否则我们知道出了问题。
相当简化的解释。
答案 1 :(得分:0)
校验和只是一个由这些规则计算的整数: 除了校验和之外,对数据包中的所有内容求和(我称之为总和)。保存在校验和中:-sum。
当数据包到达时,对数据包中的所有内容求和。如果总和为0,则数据包有效。