我目前正在做一个项目,需要将数据从A发送到B。B收到数据后,需要能够确定传输过程中是否发生错误。
我已经阅读了 CRC 并决定 CRC16 适合我的需求;我可以将数据分成块并一次发送一个块。
但是,我对 B 如何判断是否发生错误感到困惑。我最初的想法是让A生成一个CRC,然后将数据发送给B。一旦B接收到数据,生成CRC并将其发送回A。如果CRC匹配,则传输成功。但是 - 如果从 B 到 A 的 CRC 传输出错怎么办?将 CRC 发回似乎是多余的,因为它可能会以与数据相同的方式损坏。
我是否遗漏了什么或使情况过于复杂?
任何想法将不胜感激。
谢谢,P