Uppsetning TCP tengingar
Þegar við flettum á vefnum, sendum tölvupóst eða spilum á netinu, hugsum við oft ekki um flókna nettenginguna á bak við það. Hins vegar eru það þessi virðist litlu skref sem tryggja stöðug samskipti milli okkar og netþjónsins. Eitt mikilvægasta skrefið er uppsetning TCP tengingarinnar og kjarninn í þessu er þriggja vega handabandið.
Þessi grein mun fjalla um meginregluna, ferli og mikilvægi þriggja vega handabandsins í smáatriðum. Skref fyrir skref, við munum útskýra hvers vegna þriggja vega handabandið er þörf, hvernig það tryggir stöðugleika tenginga og áreiðanleika og hversu mikilvægt það er fyrir gagnaflutning. Með dýpri skilningi á þriggja vega handabandinu munum við öðlast betri skilning á undirliggjandi fyrirkomulagi netsamskipta og skýrari sýn á áreiðanleika TCP tenginga.
TCP þríhliða handabandsferli og umbreytingar ríkisins
TCP er tengi-stilla flutningssamskiptareglur, sem krefst tengingarstofnunar fyrir gagnaflutning. Þetta tengingarstofnun er gert með þriggja vega handabandi.
Við skulum skoða TCP pakkana sem eru sendir í hverri tengingu.
Upphaflega er bæði viðskiptavinurinn og netþjónninn lokaður. Í fyrsta lagi hlustar netþjónninn virkan á höfn og er í hlustunarástandi, sem þýðir að hægt er að hefja netþjóninn. Næst er viðskiptavinurinn tilbúinn að byrja að fá aðgang að vefsíðunni. Það þarf að koma á tengingu við netþjóninn. Snið fyrsta tengingarpakkans er eftirfarandi:
Þegar viðskiptavinur hefur frumkvæði að tengingu býr hann til handahófi upphafsnúmer (Client_ISN) og setur hana í reitinn „Röðunúmer“ á TCP hausnum. Á sama tíma setur viðskiptavinurinn SYN Flag stöðu á 1 til að gefa til kynna að fráfarandi pakkinn sé SYN pakki. Viðskiptavinurinn gefur til kynna að hann vilji koma á tengingu við netþjóninn með því að senda fyrsta Syn pakkann á netþjóninn. Þessi pakki inniheldur ekki gögn um umsóknarlag (það er að segja gögn send). Á þessum tímapunkti er staða viðskiptavinarins merkt sem Syn-Sent.
Þegar netþjónn fær SYN pakka frá viðskiptavini frumstillir hann af handahófi sitt eigið raðnúmer (Server_ISN) og setur þá númer í „raðnúmer“ reitinn á TCP hausnum. Næst slær netþjónninn inn Client_ISN + 1 í reitnum „Viðurkenningarnúmer“ og setur bæði Syn og ACK bita á 1. Að lokum sendir netþjónninn pakkann til viðskiptavinarins, sem inniheldur engin gögn um forrit (og engin gögn fyrir netþjóninn til að senda). Á þessum tíma er netþjónninn í SYN-RCVD STATE.
Þegar viðskiptavinurinn fær pakkann frá netþjóninum þarf hann að framkvæma eftirfarandi hagræðingu til að svara loka svarpakkanum: Í fyrsta lagi setur viðskiptavinurinn ACK hluti af TCP hausinn á svarpakkanum á 1; Í öðru lagi fer viðskiptavinurinn inn í Value Server_ISN + 1 í reitnum „Staðfesta svaranúmer“; Að lokum sendir viðskiptavinurinn pakkann á netþjóninn. Þessi pakki getur borið gögn frá viðskiptavininum til netþjónsins. Að lokinni þessum aðgerðum mun viðskiptavinurinn fara inn í rótgróið ríki.
Þegar netþjónninn fær svarpakkann frá viðskiptavininum skiptir hann einnig yfir í rótgróið ástand.
Eins og þú sérð af ofangreindu ferli, þegar þú framkvæmir þriggja vega handaband, er þriðja handabandið leyft að bera gögn, en fyrstu tvö handabandið er það ekki. Þetta er spurning sem oft er spurð í viðtölum. Þegar þriggja vega handabandinu er lokið fara báðir aðilar inn í rótgróið ástand, sem gefur til kynna að tengingin hafi verið staðfest, á þeim tímapunkti geta viðskiptavinurinn og netþjónninn byrjað að senda gögn hvert við annað.
Af hverju þrjú handaband? Ekki tvisvar, fjórum sinnum?
Sameiginlega svarið er: "Vegna þess að þriggja vega handabandið tryggir getu til að taka á móti og senda." Þetta svar er rétt, en það er aðeins yfirborðsástæðan, setur ekki fram meginástæðuna. Hér á eftir mun ég greina ástæður þrefalda handabandsins frá þremur þáttum til að dýpka skilning okkar á þessu máli.
Þriggja vega handabandið getur í raun forðast frumstillingu sögulega endurtekinna tenginga (aðalástæðan)
Þriggja vega handabandið tryggir að báðir aðilar hafa fengið áreiðanlegt upphafsnúmer.
Þriggja vega handabandið forðast að sóa fjármagni.
Ástæða 1: Forðastu sögulegar afrit
Í hnotskurn er aðalástæðan fyrir þríhliða handabandinu að forðast rugling af völdum gamla afritunar tengingarinnar. Í flóknu netumhverfi er sending gagnapakka ekki alltaf send til ákvörðunargestgjafans í samræmi við tiltekinn tíma og gamlir gagnapakkar geta komið á ákvörðunarstaðarhestinn fyrst vegna þrengsla netsins og af öðrum ástæðum. Til að forðast þetta notar TCP þriggja vega handaband til að koma á tengingunni.
Þegar viðskiptavinur sendir marga SYN tengingarstofnun í röð, við aðstæður eins og þrengingu netsins, getur eftirfarandi átt sér stað:
1- Gömlu Syn pakkarnir koma á netþjóninn fyrir nýjustu SYN pakkana.
2- Miðlarinn mun svara Syn + ACK pakka til viðskiptavinarins eftir að hafa fengið gamla Syn pakkann.
3- Þegar viðskiptavinurinn fær SYN + ACK pakkann ákvarðar hann að tengingin sé söguleg tenging (röð númer runnið út eða tímamörk) í samræmi við sitt eigið samhengi og sendir síðan fyrsta pakkann á netþjóninn til að hætta við tenginguna.
Með tveggja handa tengingu er engin leið að ákvarða hvort núverandi tenging er söguleg tenging. Þriggja vega handabandið gerir viðskiptavininum kleift að ákvarða hvort núverandi tenging sé söguleg tenging byggð á samhenginu þegar hann er tilbúinn að senda þriðja pakkann:
1- Ef það er söguleg tenging (raðnúmer útrunnið eða tímamörk) er pakkinn sem þriðja handabandið sent er fyrsta pakki til að hætta við sögulega tengingu.
2- Ef það er ekki söguleg tenging er pakkinn sem sendur er í þriðja sinn ACK pakki og tveir samskiptaaðilar koma á fót tengingunni með góðum árangri.
Þess vegna er aðalástæðan fyrir því að TCP notar þriggja vega handabandið að það frumstillir tenginguna til að koma í veg fyrir sögulegar tengingar.
Ástæða 2: Til að samstilla upphafsnúmer beggja aðila
Báðar hliðar TCP -samskiptareglna verða að halda raðnúmeri, sem er lykilatriði til að tryggja áreiðanlega sendingu. Röðunarnúmer gegna mikilvægu hlutverki í TCP tengingum. Þeir gera eftirfarandi:
Móttakarinn getur útrýmt afrit gagna og tryggt nákvæmni gagnanna.
Móttakarinn getur fengið pakka í röð röðarnúmersins til að tryggja heiðarleika gagnanna.
● Röðunarnúmerið getur greint gagnapakkann sem hefur borist af hinum aðilanum, sem gerir kleift að gera áreiðanlega gagnaflutning.
Þess vegna sendir viðskiptavinurinn því, þegar hann hefur komið á TCP tengingu, SYN pakkar með upphafsnúmerinu og krefst þess að netþjónninn svari með ACK pakka sem gefur til kynna árangursríka móttöku SYN pakka viðskiptavinarins. Síðan sendir netþjónninn Syn pakkann með upphafsnúmerinu til viðskiptavinarins og bíður þess að viðskiptavinurinn svari, í eitt skipti fyrir öll, til að tryggja að upphafsnúmerin séu áreiðanleg samstillt.
Þrátt fyrir að fjögurra vega handaband sé einnig mögulegt til að samstilla fyrstu röð raðnúmer beggja aðila, er hægt að sameina annað og þriðja skrefin í eitt skref, sem leiðir til þriggja átta handabands. Hins vegar geta handabandið tveir aðeins ábyrgst að upphafsnúmer eins aðila er tekin með góðum árangri af gagnaðila, en það er engin trygging fyrir því að hægt sé að staðfesta upphafsnúmer beggja aðila. Þess vegna er þríhliða handaband besti kosturinn til að taka til að tryggja stöðugleika og áreiðanleika TCP tenginga.
Ástæða 3: Forðastu að sóa fjármagni
Ef það er aðeins „tveggja hendur“, þegar viðskiptavinurinn SYN er lokað á netinu, getur viðskiptavinurinn ekki fengið ACK-pakkann sem sendur er af netþjóninum, svo að SYN verði látið í té. En þar sem það er enginn þriðji handaband, getur þjónninn ekki ákvarðað hvort viðskiptavinurinn hafi fengið ACK viðurkenningu til að koma á tengingunni. Þess vegna getur netþjónninn aðeins komið á fót tengingu eftir að hafa fengið hverja SYN beiðni. Þetta leiðir til eftirfarandi:
Sorp á auðlindum: Ef SYN beiðni viðskiptavinarins er lokuð, sem leiðir til endurtekinna sendingar á mörgum SYN pakka mun netþjónninn koma á mörgum óþarfa ógildum tengingum eftir að hafa fengið beiðnina. Þetta leiðir til óþarfa sóun á netþjónaauðlindum.
Varðveisla skilaboða: Vegna skorts á þriðja handabandinu hefur netþjónninn enga leið til að vita hvort viðskiptavinurinn hafi fengið ACK viðurkenningu rétt til að koma á tengingunni. Fyrir vikið, ef skilaboð festast á netinu, mun viðskiptavinurinn halda áfram að senda SYN beiðnir aftur og aftur og valda því að netþjónninn kemur stöðugt á fót nýjum tengingum. Þetta mun auka þrengingu og seinkun á netkerfinu og hafa neikvæð áhrif á árangur netkerfisins.
Þess vegna, til að tryggja stöðugleika og áreiðanleika nettengingarinnar, notar TCP þriggja vega handabandið til að koma á tengingunni til að forðast tíðni þessara vandamála.
Yfirlit
TheNetpakkamiðlariStofnun TCP tengingar er gerð með þriggja vega handaband. Meðan á þriggja leið handabandinu stendur sendir viðskiptavinurinn fyrst pakka með SYN fánanum til netþjónsins, sem gefur til kynna að hann vilji koma á tengingu. Eftir að hafa fengið beiðnina frá viðskiptavininum svarar netþjónninn pakka með SYN og ACK fánum til viðskiptavinarins, sem gefur til kynna að tengingarbeiðnin sé samþykkt og sendir sitt eigið upphafsnúmer. Að lokum svarar viðskiptavinurinn með ACK fána við netþjóninn til að gefa til kynna að tengingin hafi verið staðfest með góðum árangri. Þannig eru aðilarnir tveir í rótgrónu ástandi og geta byrjað að senda gögn hvert við annað.
Almennt er þríhliða handabandsferlið fyrir TCP tengingarstofnun hannað til að tryggja stöðugleika tenginga og áreiðanleika, forðast rugl og sóa auðlindum yfir sögulegum tengingum og tryggja að báðir aðilar geti fengið og sent gögn.
Post Time: Jan-08-2025