与 TCP、UDP、串行通信可能出现的错误是什么?

What is possible error on communication with TCP, UDP, serial?

我正在开发包含 TCP、UDP、串行连接的应用程序。 听说有一些沟通上的错误或损失。 但是,我不知道应该处理什么样的错误。

每种方法都可能出现什么样的错误?

  1. 一些位的改变 例如) 11001100 -> 11000101

  2. 部分字节顺序颠倒 00000001 00000010 00000011 -> 00000001 00000011 00000010

  3. 一些省略的字节 00000001 00000010 00000011 -> 00000001 00000011

  4. 一些省略的位 ...000000010000001000000011... -> ...00000010000001000000011... (... 1 2 3 ...) -> (... 2 4 (6 或 7) ...)

还有更多的错误吗? 我认为4是最难处理的情况,有可能吗?

TCP:您不必担心错误,它具有内在的错误控制。

UDP: 如果接收到数据包不会有错误,问题是不能保证数据包一定会到达目的地。数据包可能会丢失

SERIAL:可能会出现传输错误,强烈建议在传输中添加额外的字节以进行错误检查,最常用的错误检查系统是“循环冗余校验”(CRC)