gpt4 book ai didi

protocols - 串行协议(protocol)中的错误检测/纠正/恢复

转载 作者:行者123 更新时间:2023-12-04 00:11:41 26 4
gpt4 key购买 nike

我需要为串行协议(protocol)进行一些设计,并且遇到了一些我认为其他地方必须考虑过的问题。

所以我想知道是否有一些关于设计串行协议(protocol)的最佳实践的建议。(请陈述一个易于验证的事实,或者如果你提出了一个有信誉的来源一个声明。)也欢迎对网站/书籍的一般建议。

特别是我必须处理诸如

之类的问题
  • 将字节流解析为数据包
  • 验证数据包是否正确(例如,使用 CRC 很容易)
  • 识别可能发生的合理错误类型(例如,在点对点串行流中,偶发的单比特错误和丢失的字节序列都是可能的,但不太可能出现额外的幻像字节;而存储的记录在闪存或磁盘驱动器中,主要的错误类型是不同的)
  • 错误纠正或恢复(如果我检测到数据包中有错误,我可以纠正它吗?如果没有,我可以重新同步到下一个数据包的边界吗?)
  • 如何使可变长度数据包对纠错/恢复具有鲁棒性。

有什么建议吗?

最佳答案

数据包分隔

为了与数据包边界同步,通常您有一个字节或字节序列来标识数据包边界,这不能在数据包本身内发生。如果数据包数据恰好包含该标识符,那么您必须“转义”(也称为字节内容)它。

例子:

数据包验证

各种选项有:

纠错等

好问题。我没有太多经验。

关于protocols - 串行协议(protocol)中的错误检测/纠正/恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1876331/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com