Nätverkskodning är en programmeringsteknik som används för att maximera den potentiella produktionen av ett datornätverk. I nätverkskodning tar nätverkets noder en aktiv roll och arbetar för att kombinera och komprimera informationspaket innan de skickas över nätverket. Detta möjliggör ett mer effektivt utnyttjande av nätverksresurserna, till bekostnad av ytterligare omkostnader från klientdatorernas sida, som måste arbeta så mycket hårdare för att ”lösa upp” den packade datan.
Nätverksnoder är lite som trafikpolisen: de styr flödet av data på ett datornätverk. I avsaknad av nätverkskodning flyttar noderna information – datapaket – genom nätverket utan att ta sig friheten att ändra eller manipulera dessa data på något väsentligt sätt. De kan förstärka signalen för att säkerställa att data inte går förlorade under överföringen, men de faktiska paketen förblir opåverkade.
Vid nätverkskodning har noderna uppgiften att kombinera paket efter behov för att öka effektiviteten i nätverket. Till exempel, om ett nätverk kan sända individuella paket på 100 byte och det tar emot två paket på 50 byte samtidigt, kommer ett system som arbetar med icke-nätverkskodning att bearbeta ett paket på 50 byte och sedan nästa, flytta dem igenom sekventiellt . Ett nätverkskodningsnätverk, å andra sidan, kommer att registrera det faktum att 50 byte av potentiella nätverkskostnader ”slösas bort” med varje paket, och kombinera de två 50 byte-paketen till ett enda 100 byte-paket, vilket maximerar nätverkets dataöverföring kapacitet.
Detta resulterar i en ökad nätverkseffektivitet. Nätverkskodning använder mer av nätverkets tillgängliga bandbredd på regelbunden basis. Mer av nätverkets potential realiseras med andra ord. Nätverkskodning har dock också en nackdel: de kombinerade paketen ger extra ”arbete” för de mottagande datorerna.
När en dator tar emot ett paket med information på ett icke-nätverkskodat nätverk, kommer datorn åt den informationen individuellt och omedelbart. Paket, i det här fallet, är var och en helt dedikerad till en enda process. Att ta emot ett paket med information på ett nätverkskodat nätverk kräver emellertid att systemet packar upp och distribuerar information relaterad till olika processer till de rätta områdena. Detta skapar extra bearbetningsansvar för datorns CPU som tar emot data, vilket ökar stressen. På lågenergisystem, eller system med ett antal andra samtidigt aktiva uppgifter, kan extraarbetet resultera i avmattning eller eftersläpning på datorn.