Awọn Algorithm Nagle fun TCP Ibaraẹnisọrọ Ibaraẹnisọrọ

Nagle algorithm , ti a npè ni onikẹhin John Nagle, ti a ṣe lati dinku isokuso nẹtiwọki ti "awọn iṣoro kekere" pẹlu awọn ohun elo TCP ṣe . Awọn imuṣe UNIX bẹrẹ lilo awọn algorithm Nagle ni ọdun 1980, o si jẹ ẹya-ara ti o jẹ ẹya-ara ti TCP loni.

Bawo ni Nagor Algorithm ṣiṣẹ

Awọn data iṣeduro alẹmọ ti Nagle lori ọna fifiranṣẹ awọn ohun elo TCP nipasẹ ọna kan ti a npe ni jije . O ṣe iwari awọn ifiranṣẹ kekere ati pe o ṣafikun wọn sinu awọn iwe-ipamọ TCP tobi ju ṣaaju fifiranṣẹ data kọja okun waya, nitorina nirara fun iran ti awọn nọmba ti kii ṣe pataki ti awọn apo kekere. Awọn alaye imọran fun Nagle's algorithm ti a tẹ ni 1984 bi RFC 896. Awọn ipinnu fun data pupọ lati ṣajọpọ ati igba melo ni lati duro laarin awọn ifiranṣẹ jẹ pataki si iṣẹ rẹ gbogbo.

Nagling le lo daradara ti bandwidth ti asopọ nẹtiwọki ni laibikita fun awọn afikun idaduro ( isinmi ). Àpẹrẹ tí a ṣàpèjúwe ninu RFC 896 ṣàpèjúwe awọn anfani anfani bandwidth ati idi fun awọn ẹda rẹ:

Awọn ohun elo ṣakoso awọn lilo wọn ti awọn algorithm Nagle pẹlu ipinnu siseto TCP_NODELAY. Windows, Lainos, ati awọn ọna Java gbogbo n ṣe deede fun Nagle nipa aiyipada, nitorina awọn ohun elo ti a kọ fun awọn agbegbe gbọdọ nilo TCP_NODELAY pato nigbati o ba fẹ lati yi algomidimu pa.

Awọn idiwọn

Nagor's algorithm nikan jẹ ohun elo pẹlu TCP. Awọn ilana miiran pẹlu UDP ko ṣe atilẹyin fun.

Awọn ohun elo TCP ti o nilo idahun nẹtiwọki ti o yara, bi ipe foonu Ayelujara tabi awọn ere ere ayọkẹlẹ akọkọ, le ma ṣiṣẹ daradara nigbati Nagle ti ṣiṣẹ. Awọn idaduro ṣẹlẹ lakoko ti algorithm gba akoko diẹ lati pejọ awọn chunks kekere ti awọn data jọ le fa okun oju ti o ṣe akiyesi loju iboju tabi ni ṣiṣan ohun orin oni-nọmba kan. Awọn ohun elo yii maa n pa Nagle.

Yi alugoridimu ni akọkọ ni idagbasoke ni akoko kan nigbati awọn kọmputa n ṣe atilẹyin ti o kere si bandiwidi ju ti wọn ṣe loni. Apeere ti o salaye loke wa lori awọn iriri ti John Nagle ni Nissan Aerospace ni ibẹrẹ awọn ọdun 1980, ni ibi ti awọn ọmọde njaja lori iṣọrọ wọn, nẹtiwọki ti o jinna ti o ga julọ ti o ni irọrun. Awọn ipo ti o pọ sii lọpọlọpọ ti awọn ohun elo nẹtiwọki le ni anfani lati inu algorithm rẹ loni.