TCP నెట్వర్క్ కమ్యూనికేషన్ కోసం నాగే ఆల్గోరిథం

TCP అనువర్తనాలతో "చిన్న ప్యాకెట్ సమస్యలు" కారణంగా నెట్వర్క్ రద్దీని తగ్గించేందుకు ఇంజినీర్ జాన్ నాగ్లే పేరు పెట్టబడిన నాగే అల్గోరిథం రూపొందించబడింది. UNIX అమలులు 1980 ల్లో నాగ్లె యొక్క అల్గోరిథంను ఉపయోగించడం ప్రారంభించాయి మరియు ఇది నేడు TCP యొక్క ప్రామాణిక లక్షణంగా ఉంది.

ఎలా నాగిల్ అల్గోరిథం వర్క్స్

నాగ్లె అల్గోరిథం నాగ్లింగ్ అని పిలవబడే పద్ధతి ద్వారా TCP అనువర్తనాల పంపే వైపు సమాచారాన్ని ప్రాసెస్ చేస్తుంది . ఇది చిన్న-పరిమాణ సందేశాలను గుర్తించి, వైర్ అంతటా డేటాను పంపించే ముందుగా వాటిని పెద్ద TCP ప్యాకెట్లలో సంగ్రహిస్తుంది, తద్వారా అనవసరంగా పెద్ద సంఖ్యలో చిన్న ప్యాకెట్ల ఉత్పత్తిని తప్పించడం. నాగిల్ యొక్క అల్గోరిథం యొక్క సాంకేతిక వివరణ 1984 లో RFC 896 గా ప్రచురించబడింది. చాలా డేటాను కూడబెట్టుకోవటానికి నిర్ణయాలు మరియు ఎంతకాలం పంపుతుందో మధ్యలో వేచి ఉండాల్సిన నిర్ణయాలు దాని మొత్తం పనితీరును విమర్శించాయి.

ఆలస్యం ( జాప్యం ) జోడించడం వలన నగ్లింగ్ ఒక నెట్వర్క్ కనెక్షన్ యొక్క బ్యాండ్విడ్త్ను మరింత సమర్థవంతంగా ఉపయోగించుకోవచ్చు. RFC 896 లో వివరించిన ఉదాహరణ బ్యాండ్విడ్త్ ప్రయోజనాలను మరియు దాని సృష్టికి కారణాన్ని వివరిస్తుంది:

అప్లికేషన్లు TCP_NODELAY సాకెట్ ప్రోగ్రామింగ్ ఎంపికతో నాగ్ల అల్గోరిథం యొక్క వినియోగాన్ని నియంత్రిస్తాయి. విండోస్, లైనక్స్ మరియు జావా వ్యవస్థలు సాధారణంగా నాగ్లని డిఫాల్ట్గా ఎనేబుల్ చేస్తాయి, కాబట్టి ఆ పరిసరాలకు వ్రాసిన అనువర్తనాలు TCP_NODELAY ను అల్గోరిథంను స్విచ్ ఆఫ్ చేయాలనుకుంటున్నప్పుడు పేర్కొనాలి.

పరిమితులు

నాగిల్ యొక్క అల్గోరిథం TCP తో మాత్రమే ఉపయోగపడుతుంది. UDP తో సహా ఇతర ప్రోటోకాల్లు అది మద్దతివ్వవు.

వేగవంతమైన నెట్వర్క్ ప్రతిస్పందన అవసరమైన TCP అనువర్తనాలు, ఇంటర్నెట్ ఫోన్ కాలింగ్ లేదా ఫస్ట్-పర్సన్ షూటర్ గేమ్స్ వంటివి, నాగెల్ ప్రారంభించబడినప్పుడు బాగా పనిచేయవు. అల్గోరిథం డేటా యొక్క చిన్న రాళ్లను సమీకరించటానికి అదనపు సమయము తీసుకున్నప్పుడు ఆలస్యం సంభవిస్తుంది, అప్పుడు ఒక తెరపై లేదా డిజిటల్ ఆడియో స్ట్రీమ్లో గుర్తించదగిన లాగ్ కనిపించగలదు. ఈ అనువర్తనాలు సాధారణంగా నాగ్లేని ఆపివేస్తాయి.

ఈ అల్గోరిథం వాస్తవానికి ఈ రోజున కంప్యూటర్ కనెక్షన్లు చాలా తక్కువ బ్యాండ్విడ్త్కు మద్దతు ఇచ్చిన సమయంలో అభివృద్ధి చేయబడ్డాయి. ఎగువ వివరించిన ఉదాహరణ 1980 ల ప్రారంభంలో ఫోర్డ్ ఏరోస్పేస్ వద్ద జాన్ నాగ్లే యొక్క అనుభవాలపై ఆధారపడింది, ఇక్కడ వారి నెమ్మదిగా, భారీగా లోడ్ చేయబడిన సుదూర దూరపు నెట్ వర్క్ లో నగ్నమైన వర్తకాలు మంచి భావాన్ని కలిగి ఉన్నాయి. నెట్వర్క్ అనువర్తనాలు తన అల్గోరిథం నుండి ప్రయోజనం పొందగల చాలా తక్కువ పరిస్థితులు ఉన్నాయి.