Updated on May 16, 2024 by

What Is A-FEC?

Adaptive Forward Error Correction (A-FEC) builds upon FEC, serving as a data coding technology that bolsters the reliability of data communication. It operates by categorizing traffic, identifying specific data streams, appending redundant packets containing verification data, and verifying packets upon receipt. In cases where a packet is lost or corrupted during transmission, a redundant packet can step in for recovery. Moreover, real-time packet loss rate statistics are gathered at the receiving end and relayed to the transmitting end. Consequently, the transmitting end dynamically adjusts the quantity of redundant packets in accordance with the packet loss rate, facilitating self-adaptation through forward error correction.

Why Is A-FEC Required?

Real-time applications like voice calls, video conferences, and live streaming demand minimal delay and packet loss. When packet loss occurs in the network, it can lead to frame freezing and artifacts in video applications, significantly impacting user satisfaction. Typically, the problem becomes noticeable when the packet loss rate hits 1%, and at 10%, applications become nearly unusable. A-FEC streamlines packet transmission by categorizing traffic, identifying specific data streams, appending redundant packets carrying verification data to the originals, and decoding received packets at the receiving end to restore lost ones. A-FEC ensures uninterrupted video playback even in scenarios where the packet loss rate reaches 30%.

How Does A-FEC Work?

Applications like audio and video, which demand low delay and minimal packet loss, often utilize UDP as the transport protocol to mitigate the impact of TCP's handshake and retransmission mechanisms. However, UDP lacks the reliability of TCP, resulting in packet loss during transmission.

To address this challenge, A-FEC employs FEC encoding at the transmit end to create redundant packets, alongside the original data, providing backup data. Consequently, even if packet loss occurs during transmission, the receiving end can conduct FEC decoding using the redundant packets, thereby recovering lost packets and implementing forward error correction. Subsequently, the receive end monitors real-time packet loss statistics during transmission and relays this information to the transmit end. Based on these statistics, the transmit end dynamically adjusts the redundancy rate and the number of redundant packets, facilitating self-adaptation to varying packet loss rates. The diagram below illustrates the A-FEC operation process.

What Is A-FEC? Why Is A-FEC Required?

The operational process of A-FEC unfolds as follows:

  • 1. The transmitting customer-premises equipment (CPE) receives incoming traffic packets and identifies those necessitating packet loss mitigation.

  • 2. FEC encoding is executed on original packets by the transmitting CPE, involving the following steps: ① Encapsulation of original packets with a private FEC header, followed by transmission. ② Accumulation of multiple original packets into an encoding block, which undergoes FEC encoding to generate FEC redundant packets. The generation of redundant packets is determined by the encoding matrix algorithm.

  • 3. Both original and redundant packets are transmitted over the network, with the possibility of loss in poor network conditions.

  • 4. The receiving CPE engages in FEC decoding of the received original and redundant packets, comprising: ① Detection of packet loss, FEC decoding, and computation of a decoding matrix (restoration matrix) based on the encoding matrix and received packets. Lost packets are recovered based on this matrix and received packets. Recovery is feasible as long as the lost packets are fewer than the received redundant packets within an encoding block. ② Upon completion of decoding, the receiving CPE retrieves lost packets and eliminates the private header.

  • 5. The receiving CPE sequentially dispatches the recovered packets to other devices at the receiving end.

  • 6. Real-time packet loss statistics are gathered by the receiving CPE and transmitted to the transmitting CPE.

  • 7. The transmitting CPE adjusts packet processing based on received packet loss information, which includes: ① Computation of the required redundancy rate derived from packet loss information. ② Determination of the number of redundant packets necessary for subsequent data transmission based on the required redundancy rate.

  • What Is A-FEC? Why Is A-FEC Required?

How Is FEC Used in SD-WAN?

In enterprise SD-WAN networking, illustrated in the accompanying diagram, a common application scenario for FEC is seen in video conferencing. Here, a video conferencing server is stationed at the headquarters (HQ), while Sites 1 and 2 serve as branch sites. Employees at these branches require access to join a video conference and establish connectivity with the conferencing server at the HQ via the WAN. However, degradation in network quality leads to artifacts and frame freezing, impacting video quality. To address this, FEC can be activated between the HQ, Site 1, and Site 2 to mitigate packet loss. If network bandwidth permits, D-FEC is preferred. In cases of insufficient bandwidth, A-FEC is enabled to enhance the quality of the video conference.

What Is A-FEC? Why Is A-FEC Required?

FS Same Day Shipping Ensures Your Business Success
Nov 20, 2023
FS Same Day Shipping Ensures Your Business Success