Internet

Isang Pangkalahatang-ideya ng Nagle Algorithm para sa TCP Network Komunikasyon

May -Akda: Peter Berry
Petsa Ng Paglikha: 13 Hulyo 2021
I -Update Ang Petsa: 1 Hunyo 2024
Anonim
CS50 2014 - Week 7
Video.: CS50 2014 - Week 7

Nilalaman

Ang Nagle algorithm, na pinangalanan sa engineer na si John Nagle, ay dinisenyo upang mabawasan ang kasikipan ng network na sanhi ng "maliit na mga problema sa packet" sa mga aplikasyon ng TCP. Ang mga pagpapatupad ng UNIX ay nagsimula gamit ang algorithm ng Nagle sa 1980s, at nananatili itong isang pamantayang katangian ng TCP ngayon.

Paano gumagana ang Nagle Algorithm

Pinoproseso ng algorithm ang data ng Nagle sa pagpapadala ng mga aplikasyon ng TCP sa pamamagitan ng isang pamamaraan na tinatawag nagling. Nakita nito ang mga maliliit na laki ng mga mensahe at naipon ang mga ito sa mas malalaking packet ng TCP bago ipadala ang data sa buong kawad, sa gayon maiiwasan ang henerasyon ng hindi kinakailangang malaking bilang ng mga maliliit na packet. Ang teknikal na detalye para sa algorithm ng Nagle ay nai-publish noong 1984 bilang RFC 896. Ang mga desisyon para sa maraming data na maipon at kung gaano katagal maghintay sa pagitan ng mga nagpadala ay kritikal sa pangkalahatang pagganap nito.


Ang pagling ay maaaring mas mahusay na magamit ang bandwidth ng isang koneksyon sa network sa gastos ng pagdaragdag ng pagkaantala (latency). Isang halimbawa na inilarawan sa RFC 896 ay naglalarawan ng mga potensyal na benepisyo ng bandwidth at ang dahilan para sa paglikha nito:

  • Ang isang application ng TCP na nakikipag-ugnay sa mga keystroke ng keyboard at nais na makipag-usap sa bawat karakter na na-type sa isang tatanggap, ay maaaring makabuo ng isang serye ng mga mensahe bawat bawat naglalaman ng 1 bait ng data.
  • Bago maipadala ang mga mensahe sa buong network, ang bawat isa ay dapat na nakabalot kasama ang impormasyon ng header ng TCP tulad ng hinihiling ng TCP / IP. Ang bawat header ay saklaw sa laki sa pagitan ng 20 at 60 bait.
  • Nang walang nagling, ang application na ito ay bubuo ng mga mensahe sa network na binubuo ng 95% o higit pang impormasyon sa header (hindi bababa sa 20 sa 21 na bait) at 5% o hindi gaanong aktwal na data mula sa keyboard ng nagpadala. Gamit ang Nagle algorithm, ang parehong data ay maaring maihatid gamit ang mas kaunting mga mensahe at pagkakaroon ng 95% ng nilalaman na pagiging impormasyon ng keyboard - isang napakalaking pagtitipid ng bandwidth.

Kinokontrol ng mga aplikasyon ang kanilang paggamit ng Nagle algorithm na may pagpipilian sa programming ng socket ng TCP_NODELAY. Ang mga sistemang Windows, Linux, at Java ay karaniwang normal na paganahin ang Nagle nang default, kaya ang mga application na isinulat para sa mga kapaligiran ay kailangang tukuyin ang TCP_NODELAY kapag nais na patayin ang algorithm.


Mga Limitasyon

Ang algorithm ng Nagle ay magagamit lamang sa TCP. Ang iba pang mga protocol kabilang ang UDP ay hindi sumusuporta dito.

Ang mga aplikasyon ng TCP na nangangailangan ng mabilis na pagtugon sa network, tulad ng pagtawag sa telepono ng telepono o mga laro ng unang tagabaril, ay maaaring hindi gumana nang maayos kapag pinagana ang Nagle. Ang mga pagkaantala na sanhi habang ang algorithm ay tumatagal ng labis na oras upang mag-ipon ng mas maliit na mga putol ng data na magkasama ay maaaring mag-trigger ng kapansin-pansin na lag na biswal sa isang screen o sa isang digital audio stream. Ang mga application na ito ay karaniwang hindi paganahin ang Nagle.

Ang algorithm na ito ay orihinal na binuo sa isang oras na sinusuportahan ng mga network ng computer ang mas kaunting bandwidth kaysa sa ginagawa nila ngayon. Ang halimbawa na inilarawan sa itaas ay batay sa mga karanasan ni John Nagle sa Ford Aerospace noong unang bahagi ng 1980s, kung saan naging mabuting kahulugan ang naggugulat na kalakalan sa kanilang mabagal, mabigat na pagkarga, pangmatagalan na network. Mayroong mas kaunting mga sitwasyon kung saan ang mga aplikasyon ng network ay maaaring makinabang mula sa kanyang algorithm ngayon.

Ang Aming Pinili

Ang Aming Rekomendasyon

Ano ang Pag-tether ng iPhone at Personal na Hotspot?
Tehnologies

Ano ang Pag-tether ng iPhone at Personal na Hotspot?

Ang pag-tether ay iang obrang kapaki-pakinabang, ngunit hindi mayadong kilalang-kilala, tampok ng iPhone. Hinahayaan ka ng pag-tether na gamitin mo ang iyong iPhone bilang iang peronal na Wi-Fi hotpo...
Gears of War Xbox 360 Cheats: Lahat ng Mga Lugar ng COG Tags
Sugal

Gears of War Xbox 360 Cheats: Lahat ng Mga Lugar ng COG Tags

Kagamitang pangdigmaan ay iang third-peron tagabaril na binuo ng Epic Game at inilathala ng Microoft noong 2006. Mayroon itong 30 military dog ​​tag na nakatago a buong mode ng kampanya. Ito Kagamita...