Kaj je Naglejev algoritem?

Naglejev algoritem je sistem, ki se uporablja za izboljšanje učinkovitosti omrežij, predvsem interneta. Sistem vključuje izogibanje pošiljanju podatkov v nepotrebno majhnih serijah, kar poveča tudi število poslanih paketov. Čeprav ima svojo uporabo, lahko Naglejev algoritem slabo sodeluje z drugimi elementi omrežne komunikacije.

Naglov algoritem, ki ga je ustvaril človek po imenu John Nagle, deluje z omrežji, ki uporabljajo protokole TCP/IP. To so protokoli ali “pravila” o tem, kako omrežje prenaša podatke. Čeprav se protokoli lahko uporabljajo za katero koli omrežje, so najpogosteje povezani z internetom.

Algoritem obravnava način, kako se podatki prenašajo v majhnih kosih ali “paketjih”. Vsak paket vsebuje nekaj podatkov in informacije o glavi, ki je enakovredna naslovu pošiljatelja in prejemnika na fizični ovojnici. Paket vsebuje tudi kontrolno vsoto, matematično enakovredno vključitvi pakirnega seznama, tako da prejemnik ve, da je vsa vsebina paketa varno prispela.

Čeprav ta sistem običajno deluje dobro, je lahko neučinkovit, če so kosi podatkov še posebej majhni. V skrajnih primerih so lahko podatki v paketu le en bajt, vendar bodo informacije v glavi zavzele 40 bajtov ne glede na velikost podatkov. To je približno enako, če nekomu napišete pismo, vendar ga nato razrežete in pošljete vsako besedo v ločeni ovojnici. Pravzaprav, ker se sporočila pošiljajo v binarnem sistemu, je to še bolj neučinkovito kot to. Poleg izgube pasovne širine to poveča tudi število paketov, ki jih je treba poslati, kar poveča možnost napake v procesu prenosa.

Načelo Naglevega algoritma je, da po pošiljanju paketa oddajni računalnik počaka, da se zgodi ena od dveh stvari, preden pošlje naslednji paket. Če prejme potrditev, da je bil prejet zadnji paket, bo takoj poslal podatke, ki jih ima, ne glede na njihovo velikost. V nasprotnem primeru bo počakal, dokler ne bo imel “polnega” paketa za pošiljanje. Ko se to zgodi, bo poslal celoten paket, ne glede na to, ali je bil prejšnji paket prejet ali ne.

V nekaterih situacijah lahko Naglejev algoritem naredi več škode kot koristi. En primer je spletni video iger, ki so zasnovane s predpostavko, da bodo podatki poslani takoj. Če se uporablja Naglejev algoritem, bodo nekateri podatki odloženi, dokler ne bo pripravljen celoten paket. To lahko opazno vpliva na odzivnost igre na igralca in učinkovito upočasni njihov reakcijski čas v primerjavi z drugimi igralci.