Šiandien mes pradėsime sutelkdami dėmesį į TCP. Anksčiau skyriuje apie sluoksniavimą paminėjome svarbų dalyką. Tinklo sluoksnyje ir žemiau kalbant, tai daugiau apie pagrindinį kompiuterį, tai reiškia, kad jūsų kompiuteris turi žinoti, kur yra kitas kompiuteris, kad galėtų prisijungti prie jo. Tačiau ryšys tinkle dažnai yra interpretuojama komunikacija, o ne intermachino komunikacija. Todėl TCP protokolas pristato uosto sąvoką. Uostas gali būti užimtas tik vienu procesu, kuris suteikia tiesioginį ryšį tarp programų procesų, vykstančių skirtinguose pagrindiniuose kompiuteriuose.
Transporto sluoksnio užduotis yra tai, kaip teikti tiesiogines ryšių paslaugas tarp programų procesų, vykstančių skirtinguose pagrindiniuose kompiuteriuose, todėl jis taip pat žinomas kaip protokolas nuo galo iki galo. Transporto sluoksnis slepia pagrindinę tinklo detales, leidžiančias programos procesui pamatyti taip, tarsi būtų loginis ryšio kanalas nuo galo iki galo tarp dviejų transporto sluoksnių subjektų.
TCP reiškia perdavimo valdymo protokolą ir yra žinomas kaip į ryšį orientuotą protokolą. Tai reiškia, kad prieš vieną programą gali pradėti siųsti duomenis kitai, abu procesai turi atlikti rankos paspaudimą. Rankų paspaudimas yra logiškai susijęs procesas, užtikrinantis patikimą perdavimą ir tvarkingą duomenų priėmimą. Rankinio paspaudimo metu užmegztas ryšys tarp šaltinio ir paskirties pagrindinių kompiuterių, keičiantis valdymo paketų serijomis ir sutikus su kai kuriais parametrais ir taisyklėmis, siekiant užtikrinti sėkmingą duomenų perdavimą.
Kas yra TCP? („Myusing“Tinklo bakstelėjimasirTinklo paketų brokerisgalėtų apdoroti tiek TCP, tiek UDP paketus)
TCP (transmisijos valdymo protokolas) yra į ryšį orientuotas, patikimas, baitų srauto pagrindu sukurtas transporto sluoksnio ryšio protokolas.
Orientuotas į ryšį: Į ryšį orientuota, reiškia, kad TCP ryšys yra vienas su kitu, tai yra, nuo taško iki taško iki galo, skirtingai nei UDP, kuris tuo pačiu metu gali siųsti pranešimus keliems pagrindiniams kompiuteriams, todėl negalima pasiekti ryšio „vienas su daugybe“.
Patikimas: TCP patikimumas užtikrina, kad paketai patikimai pristatomi imtuvui, neatsižvelgiant į tinklo nuorodos pokyčius, todėl TCP protokolo paketo formatas yra sudėtingesnis nei UDP.
Baitų srauto pagrindu: TCP baitų ir srautų pagrindu pagrįstas pobūdis leidžia perduoti bet kokio dydžio pranešimus ir garantuoja pranešimo užsakymą: Net jei ankstesnis pranešimas nebuvo visiškai gautas, ir net jei gauti paskesni baitai buvo gauti, TCP jų nepristatys į programos sluoksnį apdorojimui ir automatiškai atsisakys paketų.
Kai „Host A“ ir „Host B“ užmezgė ryšį, programai reikia naudoti tik virtualios ryšio liniją, kad būtų galima siųsti ir gauti duomenis, taip užtikrinant duomenų perdavimą. TCP protokolas yra atsakingas už tokių užduočių, kaip ryšių užmezgimą, atjungimą ir laikymą, kontrolę. Reikėtų pažymėti, kad čia sakome, kad virtualioji linija reiškia tik ryšio užmezgimą, TCP protokolo ryšys tik rodo, kad abi pusės gali paleisti duomenų perdavimą ir užtikrinti duomenų patikimumą. Maršruto ir transporto mazgus tvarko tinklo įrenginiai; Pats TCP protokolas nėra susijęs su šiomis detalėmis.
TCP ryšys yra viso duplekso paslauga, o tai reiškia, kad Host A ir Host B gali perduoti duomenis abiem kryptimis TCP ryšyje. T. y., Duomenys gali būti perkeliami tarp A -HEM ir B pagrindinio B -H -H -HESTRECTIONL sraute.
TCP laikinai kaupia duomenis ryšio siuntimo buferyje. Šis siuntimo buferis yra vienas iš talpyklų, nustatytų per trijų krypčių rankos paspaudimą. Vėliau TCP išsiųs duomenis į „Send Cache“ į tinkamą paskirties pagrindinio kompiuterio talpyklą. Praktiškai kiekvienas bendraamžis turės siųsti talpyklą ir gauti talpyklą, kaip parodyta čia:
Siuntimo buferis yra atminties sritis, kurią palaiko TCP diegimas siuntėjo pusėje, kuri naudojama laikinai saugoti siunčiamus duomenis. Kai atliekamas trijų krypčių rankos paspaudimas, kad būtų užmegztas ryšys, duomenų talpykla yra nustatyta ir naudojama duomenų saugojimui. Siuntimo buferis yra dinamiškai koreguojamas pagal tinklo perkrovą ir imtuvo atsiliepimus.
Gavimo buferis yra atminties sritis, kurią palaiko TCP diegimas iš priėmimo pusės, kuri naudojama laikinai saugoti gautus duomenis. TCP saugo gautus duomenis į „Gaukite talpyklą“ ir laukia, kol viršutinė programa ją perskaitys.
Atminkite, kad „Send Cache“ dydis ir gavimo talpykla yra ribota, kai talpykla yra pilna, TCP gali priimti kai kurias strategijas, tokias kaip spūsčių valdymas, srauto valdymas ir kt., Kad užtikrintų patikimą duomenų perdavimą ir tinklo stabilumą.
Kompiuterių tinkluose duomenų perdavimas tarp pagrindinių kompiuterių vykdomas naudojant segmentus. Taigi, kas yra paketų segmentas?
TCP sukuria TCP segmentą arba paketų segmentą, padalijant gaunamą srautą į gabaliukus ir pridedant TCP antraštes į kiekvieną gabalą. Kiekvienas segmentas gali būti perduotas tik ribotam laikui ir negali viršyti maksimalaus segmento dydžio (MSS). Pakeliui žemyn per jungties sluoksnį praeina paketų segmentas. Linko sluoksnis turi maksimalų perdavimo bloką (MTU), kuris yra maksimalus paketo dydis, kuris gali praeiti per duomenų jungties sluoksnį. Maksimalus perdavimo blokas paprastai yra susijęs su ryšio sąsaja.
Taigi, kuo skiriasi MSS ir MTU?
Kompiuterių tinkluose hierarchinė architektūra yra labai svarbi, nes joje atsižvelgiama į skirtumus tarp skirtingų lygių. Kiekvienas sluoksnis turi skirtingą pavadinimą; Transporto sluoksnyje duomenys vadinami segmentu, o tinklo sluoksnyje duomenys vadinami IP paketu. Todėl maksimalų perdavimo bloką (MTU) galima laikyti maksimaliu IP paketo dydžiu, kurį galima perduoti tinklo sluoksniu, o maksimalus segmento dydis (MSS) yra transporto sluoksnio koncepcija, nurodanti maksimalų duomenų kiekį, kurį vienu metu galima perduoti TCP paketu.
Atminkite, kad kai maksimalus segmento dydis (MSS) yra didesnis nei maksimalus perdavimo blokas (MTU), IP suskaidymas bus atliekamas tinklo sluoksnyje, o TCP nepalies didesnių duomenų į segmentus, tinkamus MTU dydžiui. Tinklo sluoksnyje bus skirtas skyrius, skirtas IP sluoksniui.
TCP paketų segmento struktūra
Panagrinėkime TCP antraščių formatą ir turinį.
Sekos numeris: Atsitiktinis skaičius, kurį sukuria kompiuteris, kai ryšys nustatomas kaip pradinė vertė, kai nustatomas TCP ryšys, o sekos numeris siunčiamas imtuvui per SYN paketą. Duomenų perdavimo metu siuntėjas padidina sekos numerį pagal išsiųstų duomenų kiekį. Gavėjas vertina duomenų tvarka pagal gautą sekos numerį. Jei duomenys bus nustatyti ne tvarka, imtuvas pertvarkys duomenis, kad užtikrintų duomenų tvarką.
Patvirtinimo numeris: Tai yra sekos numeris, naudojamas TCP, norint patvirtinti duomenų gavimą. Tai rodo kitų duomenų, kuriuos siuntėjas tikisi gauti, eilės numerį. TCP ryšyje imtuvas nustato, kurie duomenys buvo sėkmingai gauti pagal gautų duomenų paketų segmento sekos numerį. Kai imtuvas sėkmingai gauna duomenis, jis siunčia siuntėjui ACK paketą, kuriame yra patvirtinimo patvirtinimo numeris. Gavęs ACK paketą, siuntėjas gali patvirtinti, kad duomenys prieš patvirtinant atsakymo numerį buvo sėkmingai gautas.
TCP segmento valdymo bitai yra šie:
ACK BIT: Kai šis bitas yra 1, tai reiškia, kad patvirtinimo atsakymo laukas galioja. TCP nurodo, kad šis bitas turi būti nustatytas kaip 1, išskyrus sintezės paketus, kai ryšys iš pradžių užmegztas.
RST šiek tiek: Kai šis bitas yra 1, jis rodo, kad TCP ryšyje yra išimtis ir ryšys turi būti priverstas atjungti.
SYN BIT: Kai šis bitas yra nustatytas į 1, tai reiškia, kad ryšys turi būti užmegztas, o pradinė sekos numerio vertė nustatoma lauke „Sequence“ numeris.
Pelekas: Kai šis bitas yra 1, tai reiškia, kad ateityje daugiau duomenų nebus siunčiama ir norima ryšio.
Įvairias TCP funkcijas ir charakteristikas įkūnija TCP paketų segmentų struktūra.
Kas yra UDP? („Myusing“Tinklo bakstelėjimasirTinklo paketų brokerisgalėtų apdoroti tiek TCP, tiek UDP paketus)
Vartotojo duomenų datagramos protokolas (UDP) yra ryšio be ryšio protokolas. Palyginti su TCP, UDP nepateikia sudėtingų valdymo mechanizmų. UDP protokolas leidžia programoms tiesiogiai siųsti kapsuliuotus IP paketus, nenustatant ryšio. Kai kūrėjas nusprendžia naudoti UDP, o ne TCP, programa tiesiogiai bendrauja su IP.
Visas UDP protokolo pavadinimas yra „User Datagram“ protokolas, o jo antraštė yra tik aštuoni baitai (64 bitai), o tai yra labai glausta. UDP antraštės formatas yra toks:
Paskirties ir šaltinio prievadai: Pagrindinis jų tikslas yra nurodyti, kuris procesas UDP turėtų siųsti paketus.
Paketo dydis: Paketo dydžio lauke yra UDP antraštės dydis ir duomenų dydis
Kontrolė: Sukurtas siekiant užtikrinti patikimą UDP antraščių ir duomenų pristatymą. Kontrolinės sumos vaidmuo yra nustatyti, ar klaida ar korupcija įvyko perduodant UDP paketą, kad būtų užtikrintas duomenų vientisumas.
Skirtumai tarp TCP ir UDPTinklo bakstelėjimasirTinklo paketų brokerisgalėtų apdoroti tiek TCP, tiek UDP paketus
TCP ir UDP skiriasi šiais aspektais:
Ryšys: TCP yra į ryšį orientuotas transporto protokolas, kurį reikia užmegzti ryšys, kad būtų galima perduoti duomenis. Kita vertus, UDP nereikalauja ryšio ir gali nedelsdamas perduoti duomenis.
Aptarnavimo objektas: TCP yra dviejų taškų paslauga „vienas su kitu“, tai yra, ryšys turi tik du galinius taškus, kad galėtų bendrauti tarpusavyje. Tačiau UDP palaiko „vienas su kitu“, „vienas su daugybe“ ir daugybe interaktyvių komunikacijų, kurios gali bendrauti su keliais šeimininkais tuo pačiu metu.
Patikimumas: TCP teikia duomenis patikimai teikiant duomenis, užtikrinant, kad duomenys būtų be klaidų, be nuostolių, nedubliados ir gauna pareikalavimą. Kita vertus, UDP daro visas pastangas ir negarantuoja patikimo pristatymo. Perdavimo metu UDP gali patirti duomenų praradimo ir kitų situacijų.
Spūsčių valdymas, srauto valdymas: TCP turi spūsčių valdymo ir srauto valdymo mechanizmus, kurie gali pakoreguoti duomenų perdavimo greitį pagal tinklo sąlygas, kad užtikrintų duomenų perdavimo saugumą ir stabilumą. UDP neturi spūsčių valdymo ir srauto valdymo mechanizmų, net jei tinklas yra labai perpildytas, jis neatliks UDP siuntimo normos pakeitimų.
Antraštė virš galvos: TCP turi ilgą antraštės ilgį, paprastai 20 baitų, o tai padidėja, kai naudojami parinkčių laukai. Kita vertus, UDP fiksuota antraštė yra tik 8 baitų, todėl UDP turi mažesnę antraštės viršutinę vertę.
TCP ir UDP programos scenarijai:
TCP ir UDP yra du skirtingi transporto sluoksnių protokolai ir jie turi tam tikrų skirtumų taikymo scenarijuose.
Kadangi TCP yra į ryšį orientuotas protokolas, jis pirmiausia naudojamas scenarijuose, kur reikalingas patikimas duomenų pateikimas. Kai kurie įprasto naudojimo atvejai apima:
FTP failo perdavimas: TCP gali užtikrinti, kad failai neprarandami ir sugadinami perkėlimo metu.
Http/https: TCP užtikrina žiniatinklio turinio vientisumą ir teisingumą.
Kadangi UDP yra bejėgis protokolas, jis nepateikia patikimumo garantijos, tačiau turi efektyvumo ir realiojo laiko savybes. UDP tinka šiems scenarijams:
Mažo paketų srautas, pavyzdžiui, DNS (domeno pavadinimo sistema): DNS užklausos paprastai būna trumpi paketai, o UDP gali juos greičiau užpildyti.
Multimedijos komunikacija, tokia kaip vaizdo įrašas ir garsas: Daugialypės terpės perdavimui su aukštais realiojo laiko reikalavimais, UDP gali suteikti mažesnį delsą, kad užtikrintų, jog duomenys gali būti perduoti laiku.
Transliacijos komunikacija: UDP palaiko bendravimą „vienas su daugybe ir daug“ ir gali būti naudojamas transliuojamų pranešimų perdavimui.
Santrauka
Šiandien mes sužinojome apie TCP. TCP yra į ryšį orientuotas, patikimas, baitų srauto pagrindu sukurtas transporto sluoksnio ryšio protokolas. Tai užtikrina patikimą perdavimą ir tvarkingą duomenų priėmimą užmezgant ryšį, rankos paspaudimą ir patvirtinimą. „TCP Protocol“ naudoja prievadus, kad galėtų įgyvendinti ryšį tarp procesų, ir teikia tiesiogines ryšių paslaugas programų procesams, vykstantiems skirtinguose pagrindiniuose kompiuteriuose. TCP jungtys yra visiškai dvipusės, leidžiančios vienu metu perduoti dvikrypčius duomenų perdavimą. Priešingai, UDP yra be jungčių orientuotas komunikacijos protokolas, kuris nepateikia patikimumo garantijų ir yra tinkamas kai kuriems scenarijams, kuriems yra dideli realaus laiko reikalavimai. TCP ir UDP skiriasi ryšio režimu, paslaugų objektu, patikimumu, spūsčių valdymu, srauto valdymu ir kitais aspektais, o jų taikymo scenarijai taip pat skiriasi.
Pašto laikas: 2012-03-03