[WEBINAR] Bulletproof: How Today's Business Leaders Stay on Top

Forward Error Correction (FEC)

Definition - What does Forward Error Correction (FEC) mean?

Forward error correction (FEC) is a digital signal processing technique used to enhance data reliability. It does this by introducing redundant data, called error correcting code, prior to data transmission or storage. FEC provides the receiver with the ability to correct errors without a reverse channel to request the retransmission of data.

The first FEC code, called a Hamming code, was introduced in the early 1950s. It is a method adopted to obtain error control in data transmission where the transmitter sends redundant data. Only a portion of the data without apparent errors is recognized by the receiver. This allows broadcasting data to be sent to multiple destinations from a single source.

Forward error coding is also known as channel coding.

Techopedia explains Forward Error Correction (FEC)

FEC adds redundancy to transmitted information using a predetermined algorithm. The redundant bits are complex functions of the original information bits. Bits are sent multiple times, because an error may appear in any of the samples transmitted. FEC codes generally detect the last set of bits to determine the decoding of a small handful of bits.

With FAC, each character is sent two or three times, and the receiver checks instances of each character. It is accepted only if conformity occurs in both instances. If conformity is satisfied for an instance, the character conforming to the protocol is accepted. If no characters conform to the protocol, the character is rejected and an underscore or blank is displayed in its place.

FEC codes are capable of generating bit error rate signals, which are used as feedback to fine-tune the analog receiving electronics. The maximum number of missing bits that can be corrected is determined by the FEC code design. Two important categories of FEC codes are convolutional codes and block codes. The block codes work on fixed-size packets of bits where the partial code blocks are decoded in polynomial time to the block length. A widely used block code is Reed-Solomon coding. Convolutional codes deal with streams of arbitrary length and are decoded using a Viterbi algorithm. An important feature of convolutional code is that any bit encoding is influenced by the preceding bits.

Share this:

Connect with us

Email Newsletter

Join thousands of others with our weekly newsletter

The 4th Era of IT Infrastructure: Superconverged Systems
The 4th Era of IT Infrastructure: Superconverged Systems:
Learn the benefits and limitations of the 3 generations of IT infrastructure – siloed, converged and hyperconverged – and discover how the 4th...
Approaches and Benefits of Network Virtualization
Approaches and Benefits of Network Virtualization:
Businesses today aspire to achieve a software-defined datacenter (SDDC) to enhance business agility and reduce operational complexity. However, the...
Free E-Book: Public Cloud Guide
Free E-Book: Public Cloud Guide:
This white paper is for leaders of Operations, Engineering, or Infrastructure teams who are creating or executing an IT roadmap.
Free Tool: Virtual Health Monitor
Free Tool: Virtual Health Monitor:
Virtual Health Monitor is a free virtualization monitoring and reporting tool for VMware, Hyper-V, RHEV, and XenServer environments.
Free 30 Day Trial – Turbonomic
Free 30 Day Trial – Turbonomic:
Turbonomic delivers an autonomic platform where virtual and cloud environments self-manage in real-time to assure application performance.