Error control je soubor metod pro detekci a opravu chyb v datech při jejich záznamu a přehrávání nebo přenosu po komunikačních linkách.
Kontrola integrity dat a oprava chyb jsou důležité úkoly na mnoha úrovních práce s informacemi (zejména fyzické , kanálové , transportní vrstvy modelu sítě OSI ), protože v procesu ukládání dat a přenosu informací nevyhnutelně dochází k chybám. přes komunikační sítě. Různé oblasti použití kontroly chyb diktují různé požadavky na používané strategie a kódy.
V komunikačních systémech je možných několik strategií pro řešení chyb:
Při kontrole chyb se zpravidla používá kódování pro opravu chyb - kódování dat při zápisu nebo přenosu a dekódování při čtení nebo příjmu pomocí opravných kódů , které umožňují odhalit a případně opravit chyby v datech. Algoritmy kódování pro opravu chyb v různých aplikacích lze implementovat jak softwarově, tak i hardwarově.
O moderní vývoj korekčních kódů se od roku 1947 zasloužil Richard Hamming [1] . Popis Hammingova kódu se objevil v článku Clauda Shannona „ Matematická teorie komunikace “ [2] a shrnul jej Marcel Golay [3] .
Dopředná korekce chyb (také dopředná korekce chyb , angl. Forward error correction, FEC ) je technika kódování a dekódování pro korekci šumu , která umožňuje opravit chyby pomocí preemptivní metody. Slouží k nápravě poruch a chyb při přenosu dat přenosem redundantních servisních informací, na jejichž základě lze obnovit původní obsah. V praxi je široce používán v sítích pro přenos dat , telekomunikačních technologiích. Dopředné kódy pro opravu chyb vyžadují zavedení větší redundance do přenášených dat než kódy, které pouze detekují chyby.
Například v satelitní televizi se při přenosu digitálního signálu z FEC 7/8 přenáší osm bitů informace: 7 bitů užitečné informace a 1 řídicí bit [4] ; v DVB-S se používá pouze 5 typů: 1/2, 2/3, 3/4 (nejoblíbenější), 5/6 a 7/8. Pokud jsou ostatní věci stejné, lze tvrdit, že čím nižší je hodnota FEC, tím méně paketů je dovoleno ztratit, a tím vyšší je požadovaná kvalita signálu.
Technika dopředné opravy chyb je široce používána v různých úložných zařízeních - pevné disky, flash paměti, RAM. Zejména serverové aplikace využívají ECC paměť – RAM, která dokáže rozpoznat a opravit spontánně se vyskytující chyby.
Systémy ARQ ( Automatic Repeat Request) jsou založeny na technologii detekce chyb . Běžné jsou následující metody automatického dotazování:
Myšlenka stop -and-wait ARQ spočívá v tom, že vysílač čeká, až přijímač potvrdí úspěšný příjem předchozího bloku dat, než začne vysílat další. Pokud byl datový blok přijat chybně, přijímač vyšle negativní potvrzení (NAK) a vysílač opakuje vysílání bloku. Tato metoda je vhodná pro poloduplexní komunikační kanál. Jeho nevýhodou je nízká rychlost kvůli vysoké režii čekání.
Kontinuální ARQ s metodou pullback vyžaduje plně duplexní linku. Přenos dat z vysílače do přijímače probíhá současně. V případě chyby se přenos obnoví počínaje chybovým blokem (tj. chybový blok a všechny následující jsou přenášeny).
Při použití kontinuálního ARQ s metodou selektivního opakování se přenášejí pouze chybně přijaté datové bloky.
Část teorie informace , která studuje problematiku optimalizace přenosu dat po síti pomocí technik pro změnu datových paketů na mezilehlých uzlech, se nazývá síťové kódování . Pro vysvětlení principů síťového kódování použijte příklad motýlí sítě, navržený v první práci o síťovém kódování "Tok informací v síti" [5] . Na rozdíl od statického síťového kódování, kdy příjemce zná všechny manipulace provedené s paketem, je v případě neznámých informací zvažována i otázka náhodného síťového kódování. Autorství prvních prací na toto téma náleží Kötterovi, Krzyszangovi a Silvovi [6] . Tento přístup se také nazývá síťové kódování s náhodnými koeficienty - kdy koeficienty, pod kterými budou počáteční pakety přenášené zdrojem zahrnuty do výsledných paketů přijatých příjemcem, s neznámými koeficienty, které mohou záviset na aktuální struktuře sítě a dokonce i na náhodném rozhodnutí učiněná v mezilehlých uzlech. Pro nenáhodné síťové kódování lze použít standardní anti-jamming a anti-aliasing techniky používané pro jednoduchý přenos informací po síti.
Při přenosu informací komunikačním kanálem závisí pravděpodobnost chyby na poměru signálu k šumu na vstupu demodulátoru, takže při konstantní úrovni šumu má rozhodující význam výkon vysílače. V satelitních a mobilních systémech, stejně jako v jiných typech komunikací, je otázka úspor energie akutní. Kromě toho v určitých komunikačních systémech (například v telefonu) technická omezení neumožňují neomezené zvýšení výkonu signálu.
Protože kódování pro opravu chyb umožňuje opravu chyb, jeho aplikace může snížit výkon vysílače a ponechat rychlost přenosu informací nezměněnou. Energetický zisk je definován jako rozdíl mezi poměry s/n v přítomnosti a nepřítomnosti kódování.