0

我有简单的问题?我有 256 个字节的数据,包括 32 个奇偶校验字节。

如果我只收到 223 个字节,包括 32 个奇偶校验字节。我还能恢复 256 块吗?如果没有,如果我知道丢失字节的位置怎么办?

4

1 回答 1

0

即使丢失字节的位置已知,接收到的消息也有 33 个丢失字节并且无法恢复。如果接收到的消息只丢失了 32 个字节,并且假设接收到的字节没有错误,则可以将丢失的 32 个字节视为擦除并纠正。如果丢失的字节是数据字节或奇偶校验字节,这没有任何区别。

请注意,有两种不同的编码方案,名为 Reed Solomon,“原始视图”和“BCH 视图”。该问题提到总大小为 256 字节,这将需要“原始视图”Reed Solomon 编码(请参阅下面的 Wiki 文章链接)。如果使用“BCH 视图”Reed Solomon 编码,则最大消息大小(数据 + 奇偶校验)为 255 个字节(假设 Galois 字段为 GF(2^8))。

https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction#Constructions

Raid 6 使用了另一种编码方案。奇偶校验字节是数据字节的计算“BCH 视图”校正子,最多可允许 255 个数据字节加上 255 个奇偶校验字节(总共 510 个字节)。它旨在成为一个仅擦除代码,其中错误或丢失字节的位置是已知的。

于 2020-12-16T11:59:40.313 回答