Hybrid Rateless Reed-Solomon ECC for Adaptive Error Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional error correcting code (ECC) systems generate and transmit a fixed amount of ECC symbols regardless of the data's error state or storage device reliability, leading to unnecessary computing and storage overhead, as they assume data will always need correction, which is not optimal for scenarios like cloud storage where devices may fail intermittently.
Innovation Solution
A dynamically variable ECC system that combines the efficiency of Reed-Solomon codes with the flexibility of rateless codes, allowing for on-demand generation and distribution of ECC symbols based on the error state of the message and the reliability of the storage devices, reducing processing and storage requirements by determining the appropriate amount and type of ECC to produce only when needed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a fixed amount of ECC symbols is generated and transmitted for all data, then data protection reliability is improved, but computing overhead and storage overhead increase unnecessarily
Solution Approach 1:
The system dynamically adjusts the amount of ECC symbols generated based on real-time assessment of data error state and storage device reliability. Instead of using a fixed amount of ECC for all data, the system varies the ECC generation level adaptively, generating more ECC symbols when data is more susceptible to errors and fewer when data is more reliable, thereby resolving the contradiction between maintaining high protection reliability and reducing computing overhead.
Solution Approach 2:
The system changes the parameter of ECC symbol quantity based on assessed error susceptibility. By evaluating factors such as data type, storage device reliability, and error patterns, the system adjusts the number of ECC symbols generated dynamically, allowing optimization of both protection reliability and computing resource utilization without sacrificing data recovery capability.
2Reliability
If a fixed amount of ECC symbols is generated and transmitted for all data, then data protection reliability is improved, but storage overhead increases unnecessarily
Solution Approach 1:
The system dynamically adjusts the amount of ECC symbols stored based on real-time assessment of data error state and storage device reliability. Instead of pre-storing a fixed amount of ECC symbols for all data, the system varies the ECC symbol quantity adaptively, storing more ECC symbols when data is more susceptible to errors and fewer when data is more reliable, thereby resolving the contradiction between maintaining high protection reliability and reducing storage overhead.
3Reliability
If Reed-Solomon codes are used for error correction, then error locating and correcting capability is improved, but processing time increases
Solution Approach 1:
The system applies partial Reed-Solomon error correction processing by generating and using only the necessary amount of ECC symbols based on assessed error susceptibility. Instead of always performing full Reed-Solomon decoding on all data, the system selectively applies correction processing only when and where errors are likely to occur, thereby maintaining strong error correcting capability while significantly improving processing speed for the majority of error-free data.
4Reliability
If erasure codes are generated and transmitted at the same time as data, then real-time protection is improved, but bandwidth overhead increases
Solution Approach 1:
The system dynamically adjusts the amount of erasure codes transmitted based on real-time assessment of data error state and channel conditions. Instead of transmitting a fixed amount of erasure codes with all data, the system varies the erasure code quantity adaptively, transmitting more codes when error risk is high and fewer when error risk is low, thereby maintaining real-time protection capability while reducing bandwidth overhead for scenarios with lower error susceptibility.
Data Source
AI summary
Example apparatus and methods control whether and when hybrid rateless Reed Solomon (RS) error correcting codes (ECC) for a message are produced, stored, and distributed. The control may be based on a property (e.g., reliability, error state, speed) of a message recipient. Example apparatus and methods may also control whether and when fountain codes for the message are produced, stored, and distributed. Once again, the control may be based on a property of a message or ECC recipient. Both the hybrid rateless RS ECC and the fountain codes may be produced from data stored in a modified RS matrix. The modified RS matrix may store row-centric error detection codes (EDC) instead of conventional cyclic redundancy check (CRC) characters. The modified RS matrix may store column-centric ECC that may be produced serially. Different types or numbers of ECC may be produced, stored, and provided for different messages stored at different recipients.


