Dnes začneme zameraním sa na TCP. Skôr v kapitole o vrstvení sme spomenuli dôležitý bod. V sieťovej vrstve a nižšie je to viac o hostiteľských pripojeniach, čo znamená, že váš počítač musí vedieť, kde je iný počítač, aby sa k nemu pripojil. Komunikácia v sieti je však často skôr medziprocesná komunikácia ako medzimachínová komunikácia. Protokol TCP preto zavádza koncept portu. Port môže byť obsadený iba jedným procesom, ktorý poskytuje priamu komunikáciu medzi procesmi aplikácií bežiacich na rôznych hostiteľoch.
Úlohou transportnej vrstvy je, ako poskytovať priame komunikačné služby medzi aplikačnými procesmi bežiacimi na rôznych hostiteľoch, takže je známa aj ako protokol o konci-end. Transportná vrstva skrýva základné detaily siete, čo umožňuje procesu aplikácie vidieť, akoby medzi týmito dvoma entitami transportnej vrstvy existoval logický komunikačný kanál end-to-end.
TCP znamená protokol prenosu prenosu a je známy ako protokol zameraný na pripojenie. To znamená, že predtým, ako jedna aplikácia môže začať odosielať údaje druhému, tieto dva procesy musia urobiť handshake. Handshake je logicky pripojený proces, ktorý zaisťuje spoľahlivý prenos a usporiadaný príjem údajov. Počas handshake sa vytvorí spojenie medzi zdrojovými a cieľovými hostiteľmi výmenou série ovládacích paketov a súhlasom s niektorými parametrami a pravidlami s cieľom zabezpečiť úspešný prenos údajov.
Čo je TCP? (MyLinkingSieteaSprostredkovateľ sieteMohol by spracovať pakety TCP alebo UDP)
TCP (Protokol prenosu prenosu) je komunikačný protokol transportnej vrstvy založený na prenose orientovaných na pripojenie, spoľahlivý, protokol pre transportovú vrstvu prenosu bajtov.
Orientovaný: Orientované na pripojenie znamená, že komunikácia TCP je individuálne, to znamená, že komunikácia s bodom-to-do konca, na rozdiel od UDP, ktorá môže posielať správy viacerým hostiteľom súčasne, takže komunikácia s jednotlivými človekom nie je možné dosiahnuť.
Spoľahlivý: Spoľahlivosť TCP zaisťuje, že pakety sa spoľahlivo dodávajú do prijímača bez ohľadu na zmeny v sietí, vďaka čomu je formát paketov protokolu TCP zložitejším ako u UDP.
Bajtový stream: Povaha TCP založená na bajte umožňuje prenos správ akejkoľvek veľkosti a zaručuje poradie správ: Aj keď predchádzajúca správa nebola úplne prijatá, a aj keď boli prijaté nasledujúce bajty, TCP ich nedodá do aplikačnej vrstvy na spracovanie a automaticky upustí duplicitné pakety.
Akonáhle hostiteľ A a hostiteľ B nadviazal spojenie, aplikácia musí použiť iba virtuálnu komunikačnú linku na odosielanie a prijímanie údajov, čím sa zabezpečí prenos údajov. Protokol TCP je zodpovedný za riadenie úloh, ako je vytvorenie pripojenia, odpojenie a držanie. Malo by sa poznamenať, že tu hovoríme, že virtuálne riadky znamená iba vytvorenie pripojenia, spojenie protokolu TCP iba naznačuje, že obe strany môžu začať prenos údajov a zabezpečiť spoľahlivosť údajov. Smerové a transportné uzly riešia sieťové zariadenia; Samotný protokol TCP sa o tieto podrobnosti nezaujíma.
Pripojenie TCP je služba s plným duplexom, čo znamená, že hostiteľ A a hostiteľ B môže prenášať údaje v oboch smeroch v pripojení TCP. To znamená, že údaje sa môžu prenášať medzi hostiteľom A a hostiteľom B v obojsmernom toku.
TCP dočasne ukladá údaje do vyrovnávacej pamäte Send Connection. Táto vyrovnávacia pamäť odoslania je jedným z vyrovnávacích pamätí nastavených počas trojstranného podania ruky. Následne spoločnosť TCP pošle údaje v vyrovnávacej pamäti Send do vyrovnávacej pamäte prijímania cieľového hostiteľa vo vhodnom čase. V praxi bude mať každý partner odoslať vyrovnávaciu pamäť a vyrovnávaciu pamäť, ako je to znázornené tu:
Buffer Send je oblasť pamäte udržiavaná implementáciou TCP na strane odosielateľa, ktorá sa používa na dočasné ukladanie údajov, ktoré sa majú odosielať. Keď sa vykonáva trojsmerné podanie ruky na vytvorenie pripojenia, vyrovnávacia pamäť Send je nastavená a použitá na ukladanie údajov. Roztoková pamäť Send je dynamicky upravená podľa preťaženia siete a spätnej väzby od prijímača.
Prijímacia vyrovnávacia pamäť je oblasť pamäte udržiavaná implementáciou TCP na strane prijímania, ktorá sa používa na dočasné ukladanie prijatých údajov. TCP ukladá prijaté údaje do vyrovnávacej pamäte prijímania a čaká na ich prečítanie hornej aplikácie.
Upozorňujeme, že veľkosť vyrovnávacej pamäte Sendova a prijímacej vyrovnávacej pamäte je obmedzená, keď je vyrovnávacia pamäť plná, TCP môže prijať niektoré stratégie, ako je napríklad riadenie preťaženia, riadenie toku atď., Aby sa zabezpečilo spoľahlivý prenos údajov a stabilitu siete.
V počítačových sieťach sa prenos údajov medzi hostiteľmi vykonáva pomocou segmentov. Čo je to teda segment paketov?
TCP vytvára segment TCP alebo segment paketov rozdelením prichádzajúceho prúdu na kúsky a pridaním hlavičiek TCP do každého kusu. Každý segment sa môže vysielať iba na obmedzený čas a nemôže prekročiť maximálnu veľkosť segmentu (MSS). Na ceste dole prechádza segment paketov vrstvou spojenia. Vrstva prepojenia má maximálnu prenosovú jednotku (MTU), čo je maximálna veľkosť paketov, ktorá môže prejsť vrstvou dátového prepojenia. Maximálna prenosová jednotka zvyčajne súvisí s komunikačným rozhraním.
Aký je rozdiel medzi MSS a MTU?
V počítačových sieťach je hierarchická architektúra veľmi dôležitá, pretože zohľadňuje rozdiely medzi rôznymi úrovňami. Každá vrstva má iné meno; V transportnej vrstve sa údaje nazývajú segment a v sieťovej vrstve sa údaje nazývajú paket IP. Preto sa maximálna prenosová jednotka (MTU) môže považovať za maximálnu veľkosť paketov IP, ktorú je možné prenášať sieťovou vrstvou, zatiaľ čo maximálna veľkosť segmentu (MSS) je koncept transportnej vrstvy, ktorá sa týka maximálneho množstva údajov, ktoré sa dá vysielať pomocou paketu TCP súčasne.
Všimnite si, že keď je maximálna veľkosť segmentu (MSS) väčšia ako maximálna prenosová jednotka (MTU), fragmentácia IP sa uskutoční v sieťovej vrstve a TCP nerozdelí väčšie údaje na segmenty vhodné pre veľkosť MTU. V sieťovej vrstve bude venovaná časť IP vrstvy.
Štruktúra segmentu paketov TCP
Preskúmajme formát a obsah hlavičiek TCP.
Sekvencia: Náhodné číslo generované počítačom, keď je pripojenie nadviazané ako jeho počiatočná hodnota, keď je vytvorenie pripojenia TCP a sekvenčné číslo sa odošle do prijímača prostredníctvom paketu SYN. Počas prenosu údajov odosielateľ zvyšuje sekvenčné číslo podľa množstva odoslaných údajov. Prijímač posudzuje poradie údajov podľa prijatého čísla sekvencie. Ak sa údaje zistia mimo prevádzky, prijímač zmení údaje, aby sa zabezpečilo poradie údajov.
Poďakovanie: Toto je sekvenčné číslo použité v TCP na potvrdenie prijatia údajov. Označuje sekvenčné číslo nasledujúcich údajov, ktoré odosielateľ očakáva. V pripojení TCP prijímač určuje, ktoré údaje boli úspešne prijaté na základe sekvenčného čísla segmentu prijímaných dátových paketov. Keď prijímač úspešne prijme údaje, pošle paket ACK odosielateľovi, ktorý obsahuje číslo potvrdenia potvrdenia. Po prijatí paketu ACK môže odosielateľ potvrdiť, že údaje pred potvrdením čísla odpovede boli úspešne prijaté.
Kontrolné bity segmentu TCP obsahujú nasledujúce:
Bit: Ak je tento bit 1, znamená to, že pole potvrdenia je platné. TCP určuje, že tento bit musí byť nastavený na 1, s výnimkou paketov SYN, keď je spojenie pôvodne stanovené.
Prvé bit: Ak je tento bit 1, naznačuje to, že v pripojení TCP je výnimka a pripojenie musí byť nútené odpojiť sa.
Syn: Ak je tento bit nastavený na 1, znamená to, že sa má nadviazať pripojenie a počiatočná hodnota sekvenčného čísla je nastavená v poli Sekvence Number.
Bit: Ak je tento bit 1, znamená to, že v budúcnosti sa neposielajú žiadne ďalšie údaje a požadované spojenie.
Rôzne funkcie a charakteristiky TCP sú stelesnené štruktúrou segmentov paketov TCP.
Čo je UDP? (MyLinking'sSieteaSprostredkovateľ sieteby mohol spracovať pakety TCP alebo UDP)
Protokol User Datagram Protocol (UDP) je komunikačný protokol bez pripojenia. V porovnaní s TCP UDP neposkytuje komplexné kontrolné mechanizmy. Protokol UDP umožňuje aplikáciám priamo odosielať zapuzdrené pakety IP bez vytvorenia pripojenia. Keď sa vývojár rozhodne použiť UDP namiesto TCP, aplikácia komunikuje priamo s IP.
Celý názov protokolu UDP je protokol Datagram User Datagram a jeho hlavičkou je iba osem bajtov (64 bitov), čo je veľmi stručné. Formát hlavičky UDP je nasledujúci:
Cieľové a zdrojové porty: Ich hlavným cieľom je označiť, ktorý proces UDP by mal odosielať pakety.
Veľkosť paketov: Pole veľkosti paketov obsahuje veľkosť hlavičky UDP plus veľkosť údajov
Kontrolný súčet: Navrhnuté na zabezpečenie spoľahlivého dodania hlavičiek a údajov UDP Úlohou kontrolného súčtu je zistiť, či sa počas prenosu paketu UDP došlo k chybe alebo korupcii, aby sa zabezpečila integrita údajov.
Rozdiely medzi TCP a UDP v myling'sSieteaSprostredkovateľ sieteMohol by spracovať pakety TCP alebo UDP
TCP a UDP sa líšia v týchto aspektoch:
Spojenie: TCP je transportný protokol zameraný na pripojenie, ktorý si vyžaduje vytvorenie spojenia pred prevedením údajov. Na druhej strane UDP nevyžaduje pripojenie a môže okamžite prenášať údaje.
Obchodný objekt: TCP je individuálna dvojbodová služba, to znamená, že pripojenie má iba dva koncové body na komunikáciu medzi sebou. UDP však podporuje interaktívnu komunikáciu individuálneho, individuálneho a mnohých k dispozícii, ktorá môže súčasne komunikovať s viacerými hostiteľmi.
Spoľahlivosť: TCP poskytuje službu spoľahlivého poskytovania údajov, zabezpečenie toho, aby údaje boli bezchybné, bez straty, neplatné a prichádzajú na požiadanie. Na druhej strane UDP vynakladá svoje najlepšie úsilie a nezaručuje spoľahlivé doručenie. UDP môže počas prenosu trpieť stratou údajov a inými situáciami.
Kontrola preťaženia, riadenie toku: TCP má mechanizmy kontroly preťaženia a riadenia toku, ktoré môžu upraviť rýchlosť prenosu údajov podľa sieťových podmienok, aby sa zabezpečila bezpečnosť a stabilita prenosu údajov. UDP nemá mechanizmy kontroly preťaženia a riadenia toku, aj keď je sieť veľmi preplnená, neurobí úpravy rýchlosti odosielania UDP.
Hlavička: TCP má dlhú dĺžku hlavičky, zvyčajne 20 bajtov, ktoré sa zvyšujú, keď sa používajú opcie. Na druhej strane UDP má pevnú hlavičku iba 8 bajtov, takže UDP má nižšiu hlavičku nad hlavou.
Scenáre aplikácie TCP a UDP:
TCP a UDP sú dva rôzne protokoly transportnej vrstvy a majú určité rozdiely v aplikačných scenároch.
Pretože TCP je protokol zameraný na pripojenie, používa sa primárne v scenároch, kde sa vyžaduje spoľahlivé poskytovanie údajov. Niektoré bežné prípady použitia zahŕňajú:
Prenos súborov FTP: TCP môže zabezpečiť, aby sa súbory počas prenosu nestratili a poškodili.
Http/https: TCP zaisťuje integritu a správnosť webového obsahu.
Pretože UDP je protokol bez pripojenia, neposkytuje záruku spoľahlivosti, ale má charakteristiky efektívnosti a v reálnom čase. UDP je vhodný pre tieto scenáre:
Prenos s nízkym balíkom, napríklad DNS (systém názvu domény): DNS dotazy sú zvyčajne krátke pakety a UDP ich môže dokončiť rýchlejšie.
Multimediálna komunikácia, ako je video a zvuk: V prípade multimediálneho prenosu s vysokými požiadavkami v reálnom čase môže UDP poskytnúť nižšiu latenciu, aby sa zabezpečilo, že údaje sa môžu prenášať včas.
Vysielacia komunikácia: UDP podporuje komunikáciu s jednotlivými a mnohými k dispozícii a môže sa použiť na prenos vysielacích správ.
Zhrnutie
Dnes sme sa dozvedeli o TCP. TCP je pripojenie orientovaný na pripojenie, spoľahlivý protokol pre transportnú vrstvu na základe bajtového prúdu. Zaisťuje spoľahlivý prenos a usporiadaný príjem údajov vytvorením pripojenia, podania a potvrdenia. Protokol TCP využíva porty na realizáciu komunikácie medzi procesmi a poskytuje priame komunikačné služby pre procesy aplikácií spustených na rôznych hostiteľoch. Pripojenia TCP sú plnohodnotné, čo umožňuje súčasné obojsmerné prenosy údajov. Naopak, UDP je komunikačný protokol bez spojenia bez spojenia, ktorý neposkytuje záruky spoľahlivosti a je vhodný pre niektoré scenáre s vysokými požiadavkami v reálnom čase. TCP a UDP sa líšia v režime pripojenia, servisných objektoch, spoľahlivosti, riadení preťaženia, riadenia toku a ďalších aspektov a ich aplikačné scenáre sa tiež líšia.
Čas príspevku: december-03-2024