Hvad er netværkskodning?
Netværkskodning er en programmeringsteknik, der bruges til at maksimere det potentielle output fra et computernetværk. Ved netværkskodning tager netværkets noder en aktiv rolle og arbejder på at kombinere og komprimere pakker med information, før de sendes over netværket. Dette muliggør en mere effektiv udnyttelse af netværksressourcer til prisen for ekstra omkostninger fra klientcomputernes side, som skal arbejde så meget hårdere for at "løsne" de pakket data.
Netværksnoder er lidt som trafikpolitiet: de dirigerer strømmen af data på et computernetværk. I mangel af netværkskodning flytter noderne information - pakker med data - gennem netværket uden at tage friheder til at ændre eller manipulere disse data på nogen væsentlig måde. De kan muligvis forstærke signalet for at sikre, at data ikke går tabt under transit, men de faktiske pakker forbliver upåvirket.
Ved netværkskodning får noderne til opgaven at kombinere pakker som nødvendigt for at øge effektiviteten i netværket. For eksempel, hvis et netværk er i stand til at transmittere individuelle pakker på 100 byte og det modtager to 50 byte-pakker på samme tid, vil et system, der opererer med ikke-netværkskodning, behandle en 50 byte-pakke og derefter den næste og flytte dem gennem sekventielt . Et netværkskodningsnetværk registrerer på den anden side det faktum, at 50 byte af potentielt netværksoverhead "spildes" med hver pakke og kombinerer de to 50 byte-pakker i en enkelt 100 byte-pakke, hvilket maksimerer netværkets datatransmission kapacitet.
Dette resulterer i en stigning i netværkseffektivitet. Netværkskodning bruger regelmæssigt flere af netværkets tilgængelige båndbredde. Med andre ord realiseres mere af netværkets potentiale. Netværkskodning har imidlertid også en ulempe: de kombinerede pakker giver yderligere "arbejde" til de modtagende computere.
Når en computer modtager en pakke information på et ikke-netværkskodet netværk, får computeren adgang til det stykke information individuelt og med det samme. I dette tilfælde er pakker helt dedikeret til en enkelt proces. Modtagelse af en pakke information på et netværkskodet netværk kræver imidlertid, at systemet pakkes ud og distribuerer information relateret til forskellige processer til de rette områder. Dette skaber ekstra behandlingsansvar for den computer CPU, der modtager dataene, hvilket øger deres stress. På lavdrevne systemer eller systemer med en række andre samtidige aktive opgaver kan det ekstra arbejde resultere i afmatning eller forsinkelse på computeren.