Felkontroll i nätverket avser mekanismer och tekniker som används för att upptäcka och korrigera fel som kan uppstå under överföring av data över ett nätverk. Dessa fel kan introduceras av olika faktorer, inklusive:
* buller: Elektrisk störning, atmosfäriska störningar eller övergång på transmissionsmediet.
* signaldämpning: Försvagning av signalstyrkan över avståndet.
* Hårdvarufel: Problem med nätverksgränssnitt, kablar eller annan utrustning.
* Programvarufel: Fel i nätverksprotokollen eller applikationerna.
Felkontroll syftar till att säkerställa att data anländer till sin destination exakt och pålitligt. Det involverar vanligtvis två huvudprocesser:
1. Feldetektering: Detta innebär att identifiera att ett fel har inträffat under överföringen. Vanliga metoder inkluderar:
* Paritetskontroller: Lägga till en enda bit till en dataenhet för att göra det totala antalet 1s antingen jämnt eller udda. Detta upptäcker enstaka fel men inte alla flera bitfel.
* checksums: Beräkna en matematisk summa av data och lägga till den till dataenheten. Mottagaren beräknar kontrollsumman och jämför den med den mottagna; Avvikelser indikerar ett fel.
* Cyclic Redundancy Checks (CRCS): Mer sofistikerade än kontrollsumman använder CRC:er polynomavdelning för att generera en kontrollsumman som är mer effektiv för att upptäcka burstfel (flera på varandra följande bitar vänder).
* hashfunktioner (t.ex. MD5, SHA): Används för verifiering av dataintegritet, inte bara feldetektering i traditionell mening. De upptäcker alla förändringar av uppgifterna, till och med en enda bitändring.
2. Felkorrigering: Detta handlar om att återställa originaldata från de mottagna, felaktiga uppgifterna. Metoder inkluderar:
* Framåt felkorrigering (FEC): Lägger till redundanta data till de överförda data. Mottagaren kan använda denna redundans för att korrigera fel utan att begära vidarebefordran. Exempel inkluderar Hamming-koder och Reed-Solomon-koder. Detta är mer effektivt än vidarebefordran när felfrekvensen är höga men kräver mer bandbredd.
* Automatisk upprepad begäran (ARQ): Mottagaren upptäcker fel och begär vidarebefordran av felaktiga uppgifter. Det finns flera ARQ -protokoll, inklusive:
* stop-and-wait arq: Skickar en ram åt gången och väntar på erkännande innan du skickar nästa. Enkel men ineffektiv.
* go-back-n arq: Skickar flera ramar innan du väntar på erkännande. Om ett fel upptäcks överförs alla efterföljande ramar.
* Selektiv upprepning ARQ: Just återställer de felaktiga ramarna. Effektivare än go-back-n.
Valet av felkontrolltekniker beror på flera faktorer, inklusive typ av nätverk, felfrekvensen, den erforderliga tillförlitligheten och den tillgängliga bandbredden. Exempelvis kan nätverk med hög bandbredd, lågfel-hastighet förlitar sig främst på feldetektering och vidarebefordran, medan bullriga kanaler kan kräva mer robusta FEC-tekniker. Många nätverksprotokoll använder en kombination av feldetekterings- och korrigeringsmetoder för att optimera prestanda och tillförlitlighet.