最近我们了解到,在通过通信通道发送数据时,通道中的噪声会导致系统出错,因此,在数据中附加了一个错误检查代码尾部,以告知接收方数据是否已损坏。
问题是我们如何确保这个错误检查数据没有损坏?我们有什么办法可以确定这一点吗?
最近我们了解到,在通过通信通道发送数据时,通道中的噪声会导致系统出错,因此,在数据中附加了一个错误检查代码尾部,以告知接收方数据是否已损坏。
问题是我们如何确保这个错误检查数据没有损坏?我们有什么办法可以确定这一点吗?
在有效负载上计算 CRC。CRC 的一个基本属性是,如果您在附加了发送的 CRC 的有效负载上重新计算它,结果应该为零。如果不是,则负载或CRC 已损坏,或两者兼而有之。您不知道是哪个,但这无关紧要:消息在传输过程中已损坏。
如果错误检查数据(通常是散列/校验和)被损坏,它将与实际数据不匹配,并且将报告损坏。这意味着在这种情况下,数据被错误地标记为损坏,但这很好,因为损坏是预期的情况。它被“错误地”标记为损坏,因为实际上只有校验和被破坏了。但是没有办法区分这些情况。