- Transportní vrstva je reprezentována dvěma protokoly: TCP a UDP.
- Protokol IP v síťové vrstvě doručuje datagram ze zdrojového hostitele do cílového hostitele.
- V dnešní době operační systém podporuje víceuživatelská a multiprocesní prostředí, spouštěcí program se nazývá proces. Když hostitel odešle zprávu jinému hostiteli, znamená to, že zdrojový proces odesílá proces cílovému procesu. Protokoly transportní vrstvy definují některá připojení k jednotlivým portům známým jako protokolové porty.
- Protokol IP je protokol mezi hostiteli a hostiteli, který se používá k doručování paketů od zdrojového hostitele k cílovému hostiteli, zatímco protokoly transportní vrstvy jsou protokoly mezi porty a porty, které pracují na vrcholu protokolů IP a doručují pakety z původního hostitele. port do služeb IP a ze služeb IP do cílového portu.
- Každý port je definován kladnou celočíselnou adresou a má 16 bitů.
UDP
- Zkratka UDP znamená Protokol uživatele Datagram .
- UDP je jednoduchý protokol a poskytuje funkcionalitu nesekvenčního přenosu.
- UDP je protokol bez připojení.
- Tento typ protokolu se používá, když jsou spolehlivost a bezpečnost méně důležité než rychlost a velikost.
- UDP je protokol na úrovni přenosu typu end-to-end, který k datům z horní vrstvy přidává adresy na úrovni přenosu, kontrolu chyb kontrolního součtu a informace o délce.
- Paket vytvořený protokolem UDP je známý jako uživatelský datagram.
Formát uživatelského datagramu
Uživatelský datagram má 16bajtovou hlavičku, která je zobrazena níže:
Kde,
Adresa zdrojového portu: | Definuje adresu aplikačního procesu, který zprávu doručil. Adresa zdrojového portu je 16bitová adresa.
Adresa cílového portu: | Definuje adresu aplikačního procesu, který zprávu obdrží. Adresa cílového portu je 16bitová adresa.
Celková délka: | Definuje celkovou délku uživatelského datagramu v bajtech. Jedná se o 16bitové pole.
kontrolní součet: | Kontrolní součet je 16bitové pole, které se používá při detekci chyb.
Nevýhody protokolu UDP
- UDP poskytuje základní funkce potřebné pro end-to-end doručení přenosu.
- Neposkytuje žádné funkce pro řazení nebo přeskupování a při hlášení chyby nespecifikuje poškozený paket.
- UDP může zjistit, že došlo k chybě, ale nespecifikuje, který paket byl ztracen, protože neobsahuje ID nebo pořadové číslo konkrétního datového segmentu.
TCP
- TCP je zkratka pro Transmission Control Protocol.
- Poskytuje plné služby transportní vrstvy aplikacím.
- Jedná se o protokol orientovaný na spojení, což znamená spojení vytvořené mezi oběma konci přenosu. Pro vytvoření spojení TCP generuje virtuální okruh mezi odesílatelem a příjemcem po dobu trvání přenosu.
Vlastnosti protokolu TCP
Streamový přenos dat: | Protokol TCP přenáší data ve formě souvislého proudu bajtů. TCP seskupí bajty ve formě segmentů TCP a poté je předá vrstvě IP pro přenos do cíle. TCP sám segmentuje data a přeposílá je na IP.
Spolehlivost: | TCP přiřadí pořadové číslo každému přenášenému bajtu a očekává kladné potvrzení od přijímajícího TCP. Pokud není ACK přijato během časového limitu, jsou data znovu odeslána do cíle.
Přijímající TCP používá pořadové číslo k opětovnému sestavení segmentů, pokud dorazí mimo pořadí, nebo k odstranění duplicitních segmentů.
Řízení toku: | Při příjmu TCP odešle potvrzení zpět odesílateli s uvedením počtu bajtů, které může přijmout, aniž by došlo k přetečení jeho vnitřní vyrovnávací paměti. Počet bajtů je odeslán v ACK ve formě nejvyššího pořadového čísla, které může bez problému přijmout. Tento mechanismus se také nazývá okenní mechanismus.
Multiplexování: | Multiplexování je proces přijímání dat z různých aplikací a jejich předávání do různých aplikací na různých počítačích. Na přijímací straně jsou data předána správné aplikaci. Tento proces je známý jako demultiplexování. TCP přenáší paket do správné aplikace pomocí logických kanálů známých jako porty.
Logická spojení: | Kombinace soketů, pořadových čísel a velikostí oken se nazývá logické spojení. Každé připojení je identifikováno dvojicí soketů používaných procesy odesílání a příjmu.
Plny Duplex: | TCP poskytuje službu Full Duplex, tedy datový tok v obou směrech současně. Pro dosažení plně duplexní služby by měl mít každý TCP vyrovnávací paměti pro odesílání a přijímání, aby segmenty mohly proudit v obou směrech. TCP je protokol orientovaný na připojení. Předpokládejme, že proces A chce odesílat a přijímat data z procesu B. Proběhnou následující kroky: - Vytvořte spojení mezi dvěma TCP.
- Výměna dat probíhá v obou směrech.
- Spojení je ukončeno.
Formát segmentu TCP
Kde,
Adresa zdrojového portu: | Používá se k definování adresy aplikačního programu ve zdrojovém počítači. Jedná se o 16bitové pole.
Adresa cílového portu: | Používá se k definování adresy aplikačního programu v cílovém počítači. Jedná se o 16bitové pole.
pořadové číslo: | Proud dat je rozdělen do dvou nebo více segmentů TCP. Pole 32bitového pořadového čísla představuje pozici dat v původním datovém toku.
Číslo potvrzení: | Číslo potvrzení o 32 polích potvrzuje data z jiných komunikujících zařízení. Pokud je pole ACK nastaveno na 1, pak udává pořadové číslo, které přijímač očekává.
Délka záhlaví (HLEN): | Udává velikost TCP hlavičky ve 32bitových slovech. Minimální velikost záhlaví je 5 slov a maximální velikost záhlaví je 15 slov. Proto je maximální velikost hlavičky TCP 60 bajtů a minimální velikost hlavičky TCP je 20 bajtů.
Rezervováno: | Je to šestibitové pole, které je rezervováno pro budoucí použití.
Ovládací bity: | Každý bit řídicího pole funguje samostatně a nezávisle. Řídicí bit definuje použití segmentu nebo slouží jako kontrola platnosti pro jiná pole.
V ovládacím poli je celkem šest typů příznaků:
URG: | Pole URG označuje, že data v segmentu jsou naléhavá.
ACK: | Když je nastaveno pole ACK, ověřuje číslo potvrzení.
PSH: | Pole PSH se používá k informování odesílatele, že je potřeba vyšší propustnost, takže pokud je to možné, musí být data odeslána s vyšší propustností.
RST: | Resetovací bit se používá k resetování TCP spojení, pokud dojde k záměně v pořadových číslech.
SYN: | Pole SYN se používá k synchronizaci pořadových čísel ve třech typech segmentů: žádost o připojení, potvrzení připojení (s nastaveným bitem ACK) a potvrzení potvrzení.
KONEC: | Pole FIN se používá k informování přijímajícího modulu TCP, že odesílatel dokončil odesílání dat. Používá se při ukončení spojení ve třech typech segmentů: žádost o ukončení, potvrzení ukončení a potvrzení potvrzení ukončení. Velikost okna: | Okno je 16bitové pole, které definuje velikost okna.
kontrolní součet: | Kontrolní součet je 16bitové pole používané při detekci chyb.
Naléhavý ukazatel: | Je-li příznak URG nastaven na 1, pak toto 16bitové pole je posunem od pořadového čísla indikujícího, že se jedná o poslední bajt naléhavých dat.
Možnosti a výplň: | Definuje volitelná pole, která předávají dodatečné informace příjemci.
Rozdíly b/w TCP a UDP
Základ pro srovnání | TCP | UDP |
Definice | TCP vytvoří virtuální okruh před přenosem dat. | UDP přenáší data přímo do cílového počítače bez ověření, zda je přijímač připraven přijímat či nikoli. |
Typ připojení | Jedná se o protokol orientovaný na připojení | Jedná se o protokol Connectionless |
Rychlost | pomalý | vysoký |
Spolehlivost | Je to spolehlivý protokol. | Je to nespolehlivý protokol. |
Velikost záhlaví | 20 bajtů | 8 bajtů |
potvrzení | Čeká na potvrzení dat a má schopnost znovu odeslat ztracené pakety. | Nepřijme potvrzení ani znovu nevyšle poškozený rámec. |