A hibakezelés olyan módszerek összessége, amelyek segítségével észlelhetők és kijavíthatók az adatok rögzítése, lejátszása vagy kommunikációs vonalon történő átvitele során fellépő hibák.
Az adatok integritásának ellenőrzése és hibajavítása fontos feladatok az információval való munka számos szintjén (különösen az OSI hálózati modell fizikai , csatorna- és szállítási rétegeiben ), mivel az adatok tárolása és információtovábbítás során elkerülhetetlenül előfordulnak hibák. kommunikációs hálózatokon keresztül. A hibakezelés különböző alkalmazási területei eltérő követelményeket támasztanak az alkalmazott stratégiákkal és kódokkal szemben.
A kommunikációs rendszerekben többféle hibakezelési stratégia lehetséges:
A hibaellenőrzésben általában hibajavító kódolást alkalmaznak - az adatok kódolását íráskor vagy átvitelkor és dekódolást olvasáskor vagy fogadáskor javító kódok segítségével , amelyek lehetővé teszik az adatok hibáinak észlelését és esetleges javítását. A különféle alkalmazásokban alkalmazott hibajavító kódolási algoritmusok szoftveresen és hardveresen is megvalósíthatók.
A korrekciós kódok modern fejlesztése 1947 óta Richard Hamming nevéhez fűződik [ 1] . A Hamming-kód leírása megjelent Claude Shannon " Mathematical Theory of Communication " [2] című cikkében, és Marcel Golay [3] foglalta össze .
A továbbítási hibajavítás (a továbbító hibajavítás is , eng . Forward error correction, FEC ) egy zajjavító kódolási és dekódolási technika , amely lehetővé teszi a hibák kijavítását a megelőző módszerrel. Az adatátvitel során fellépő hibák, hibák kijavítására szolgál redundáns szolgáltatási információk továbbításával, amelyek alapján az eredeti tartalom visszaállítható. A gyakorlatban széles körben használják adatátviteli hálózatokban , távközlési technológiákban. A továbbítási hibajavító kódok több redundanciát igényelnek a továbbított adatokba, mint a csak hibákat észlelő kódok.
Például a műholdas televíziózásban a FEC 7/8 digitális jelének továbbításakor nyolc bit információ kerül továbbításra: 7 bit hasznos információ és 1 vezérlőbit [4] ; a DVB-S- ben csak 5 típust használnak: 1/2, 2/3, 3/4 (legnépszerűbb), 5/6 és 7/8. Ha egyéb dolgok megegyeznek, akkor azzal érvelhetünk, hogy minél alacsonyabb a FEC érték, annál kevesebb csomag veszhet el, és ennélfogva annál jobb a jel minősége.
A továbbítási hibajavítási technikát széles körben használják különféle tárolóeszközökben - merevlemezek, flash memóriák, RAM. Különösen a szerveralkalmazások használnak ECC memóriát – RAM-ot, amely képes felismerni és kijavítani a spontán előforduló hibákat.
Az Automatic Repeat Request ( ARQ ) rendszerek hibafelismerési technológián alapulnak . A következő automatikus lekérdezési módszerek gyakoriak:
A stop -and-wait ARQ ötlete az , hogy az adó megvárja, hogy a vevő nyugtázza az előző adatblokk sikeres vételét, mielőtt elkezdené a következő adást. Ha az adatblokkot hibásan vették, a vevő negatív nyugtát (NAK) küld, és az adó megismétli a blokk átvitelét. Ez a módszer alkalmas félduplex kommunikációs csatornára. Hátránya az alacsony sebesség a magas várakozási költség miatt.
A folyamatos ARQ visszahúzási módszerrel teljes duplex kapcsolatot igényel . Az adatátvitel az adóról a vevőre egyidejűleg történik. Hiba esetén az átvitel a hibablokktól kezdve folytatódik (azaz a hibablokk és az összes azt követő elküldésre kerül).
Ha a folyamatos ARQ-t szelektív ismétlési módszerrel használja , csak a hibásan vett adatblokkok kerülnek továbbításra.
Az információelmélet azon részét, amely a hálózaton keresztüli adatátvitel optimalizálásának kérdését vizsgálja a közbenső csomópontokon lévő adatcsomagok megváltoztatására szolgáló technikák segítségével, hálózati kódolásnak nevezik . A hálózati kódolás elveinek elmagyarázásához használja a pillangóhálózat példáját, amelyet a hálózati kódolásról szóló első munkában javasoltak "Hálózati információáramlás" [5] . Ellentétben a statikus hálózati kódolással, amikor a fogadó ismeri a csomaggal végzett összes manipulációt, akkor a véletlenszerű hálózati kódolás kérdését is figyelembe veszik, ha ez az információ ismeretlen. Az első ilyen témájú művek szerzői Kötter, Krzyszang és Silva [6] nevéhez fűződik . Ezt a megközelítést véletlen együtthatós hálózati kódolásnak is nevezik – amikor azok az együtthatók, amelyek alatt a forrás által továbbított kezdeti csomagok bekerülnek a fogadó által kapott csomagokba, ismeretlen együtthatókkal, amelyek az aktuális hálózati struktúrától, sőt a véletlenszerűségtől is függhetnek. köztes csomópontokon hozott döntések . A nem véletlenszerű hálózati kódoláshoz szabványos zavarás- és élsimítási technikák használhatók, amelyek az információk hálózaton keresztüli egyszerű továbbítására szolgálnak.
Kommunikációs csatornán történő információtovábbításkor a hiba valószínűsége a demodulátor bemenetén lévő jel/zaj viszonytól függ , így állandó zajszint mellett az adó teljesítménye a meghatározó. A műholdas és mobil rendszerekben, valamint más típusú kommunikációban az energiatakarékosság kérdése akut. Ezenkívül bizonyos kommunikációs rendszerekben (például telefon) a technikai korlátozások nem teszik lehetővé a jelteljesítmény korlátlan növelését.
Mivel a hibajavító kódolás lehetővé teszi a hibajavítást, alkalmazása csökkentheti az adó teljesítményét, így az információs sebesség változatlan marad. Az energianövekedést az s/n arányok különbségeként határozzuk meg kódolás jelenlétében és hiányában.