Der Zweck der Vorwärtsfehlerkommunikation (FEC) besteht darin, die Datenkapazität eines Kanals zu verbessern, indem den über den Kanal übertragenen Daten einige sorgfältig konzipierte redundante Informationen hinzugefügt werden. Der Prozess des Hinzufügens dieser redundanten Informationen wird als Kanalcodierung bezeichnet. Faltungscodierung und Blockcodierung sind die beiden wichtigsten Formen der Kanalcodierung. Faltungscodes arbeiten mit seriellen Daten, einem oder einigen wenigen Bits auf einmal. Blockcodes arbeiten mit relativ großen Nachrichtenblöcken. Die Faltungscodierung mit der Viterbi-Decodierung ist eine der beliebtesten und besten Fehlerkorrekturtechniken zur Korrektur von Zufallsfehlern. Sie ist eine der am häufigsten verwendeten FEC-Methoden in vielen digitalen Kommunikationssystemen.