Algoritma Nagle, dingaranan insinyur John Nagle, ieu dirancang pikeun ngurangan kamacetan jaringan disababkeun ku "masalah pakét leutik" kalayan aplikasi TCP . UNIX implementations mimiti maké algoritma Nagle di taun 1980, sarta eta tetep ciri baku tina TCP kiwari.
Kumaha nu Nagle Algoritma Works
Algoritma Nagle urang prosés data dina samping ngirim aplikasi TCP ku metoda disebut nagling. Ieu ngadeteksi seratan leutik-ukuran jeung accumulates kana pakét TCP gedé saméméh ngirim data sakuliah kawat, kukituna Ngahindarkeun generasi ti nomer unnecessarily badag tina pakét leutik. Spesifikasi téknis pikeun Algoritma Nagle urang ieu diterbitkeun taun 1984 salaku RFC 896. Kaputusan pikeun data loba ngumpulkeun na sabaraha lila ngadagoan di antara ngirimkeun anu kritis kana kinerja na sakabéh.
Nagling tiasa langkung éfisién ngagunakeun rubakpita tina sambungan jaringan di expense of nambahkeun Nepi ( latency ). Hiji conto nu dijelaskeun dina RFC 896 illustrates mangpaat rubakpita poténsi jeung alesan pikeun nyiptakeun na:
- Hiji aplikasi TCP yén intercepts keystrokes keyboard na hayang komunikasi unggal karakter keur diketik ka panarima, bisa ngahasilkeun runtuyan seratan unggal ngandung 1 bait data.
- Sateuacan seratan ieu tiasa dikirim sakuliah jaringan, tiap hiji kudu rangkep bareng jeung TCP lulugu informasi sakumaha diperlukeun ku TCP / IP. Unggal lulugu Bulan di ukuranana antara 20 jeung 60 bait.
- Tanpa nagling, conto aplikasi ieu bakal ngahasilkeun seratan jaringan diwangun ku 95% atawa informasi lulugu leuwih (sahanteuna 20 kaluar ti 21 bait) jeung 5% atawa data kirang sabenerna tina keyboard nu ngirim urang. Ngagunakeun algoritma Nagle, data sarua bisa gantina jadi dikirimkeun maké loba seratan pangsaeutikna jeung ngabogaan 95% eusi keur informasi keyboard - a tabungan rubakpita anu kacida gedéna.
Aplikasi ngadalikeun pamakéan maranéhna tina algoritma Nagle jeung TCP_NODELAY stop kontak pilihan programming. Windows, Linux Ubuntu, sarta Java sistem sadayana normal ngaktipkeun Nagle sacara standar, jadi aplikasi ditulis pikeun lingkungan jalma kudu nangtukeun TCP_NODELAY nalika wanting pikeun pindah algoritma nu pareum.
watesan
Algoritma Nagle urang téh ngan usable kalawan TCP. Protokol sejen kaasup UDP teu ngarojong eta.
Aplikasi TCP nu peryogi respon jaringan gancang, kawas nélépon telepon Internet atawa mimiti-jalma kaulinan jujur, teu dianggo ogé nalika Nagle diaktipkeun. The Nepi disababkeun bari algoritma nyokot waktos tambahan keur ngumpul sakumpulan leutik data babarengan tiasa memicu noticeable lag visually on layar atawa dina aliran audio digital. aplikasi ieu ilaharna mareuman Nagle.
Algoritma ieu asalna dimekarkeun dina waktu nalika jaringan komputer dirojong teuing kirang rubakpita ti maranéhna ngalakukeun kiwari. Conto ditétélakeun di luhur ieu dumasar kana pangalaman John Nagle urang di Ford Aerospace dina awal taun 1980, dimana nagling tradeoffs on jaringan maranéhna slow, beurat-sarat lila jarak dijieun rasa alus. Aya beuki kaayaan pangsaeutikna mana aplikasi jaringan tiasa nyandak kauntungan tina algoritma na dinten.