Transportní vrstva

Transportní vrstva je v informatice název čtvrté vrstvy modelu vrstvové síťové architektury (OSI). V originále se nazývá transport layer. Umožňuje adresovat přímo aplikace (například v protokolech TCP/IP pomocí čísel portů). Poskytuje transparentní, spolehlivý přenos dat s požadovanou kvalitou. Vyrovnává různé vlastnosti a kvalitu přenosových sítí. Provádí převod transportních adres na síťové, ale nestará se o směrování.

AnalýzaEditovat

Transportní vrstva se stará o doručení dat k příslušnému aplikačnímu procesu na hostitelském počítači. Jedná se o statistické multiplexování dat z různých aplikačních procesů, což je například vytváření packetů dat a přidávání zdrojových a cílových čísel portů do hlavičky každého packetu, pocházejícího z transportní vrstvy. Společně se zdrojovou adresou, cílovou adresou a čísly portů tvoří síťový socket, což je identifikační adresa komunikace mezi procesy. V modelu OSI je tato funkce podporována Relační vrstvou.

Některé protokoly transportní vrstvy, jako například TCP, ale ne UDP, podporují virtuální okruhy, jako je poskytování spojované komunikace přes základní packetově orientovanou síť datagramu. Bytový proud dat je doručován, zatímco uchovává packetovou komunikaci pro aplikační procesy. Zde patří navázání spojení, rozdělení informací z proudu dat do jednotlivých packetů, nazývaných segmenty, číslování segmentů a přeorganizování „neseřazených“ (out-of-order) dat.

Některé protokoly transportních vrstev, jako například TCP, nebo ne UDP, poskytují spolehlivou koncovou (end-to-end) komunikaci, což je například detekce a oprava chyb a zpětná vazba s automatickým opakováním (ARQ protokol). Tento ARQ protokol také poskytuje kontrolu toku dat (flow control), která může být zkombinována s metodou pro vyvarování se zahlcenosti sítě.

UDP je velmi jednoduchý protokol a nepodporuje virtuální okruhy, ani spolehlivou komunikaci a tak musí delegovat aplikační programy pro obstarávání těchto funkcí. UDP packety se spíše než segmenty nazývají datagramy.

TCP se používá pro mnoho protokolů, včetně HTTP pro prohlížení internetu a posílání emailů. UDP je možno používat pro multicasting (zasílání dat více než jednomu síťovému připojení) a broadcasting (zasílání dat všem síťovým připojením v dané síti), poněvadž opakované přenosy nejsou možné pro velké množství hostů. UDP typicky poskytuje vyšší propustnost a kratší odezvu a proto je často používán pro přenos multimédií v reálném čase, kde občasná ztráta packetů může být akceptována, jako například pro IPTV a IP telefony, nebo pro některé online hry.

V mnoha sítí, která nejsou založeny na IP protokolech, například X.25, Frame Relay a ATM (Asynchronous Transfer Mode), je jejich orientované připojení spíše realizováno v sítové nebo v linkové (spojové) vrstvě, než ve vrstvě transportní. Ve X.25, v modemové telefonní síti a v bezdrátových komunikačních systémech, jsou spolehlivá uzel–uzel komunikace implementována v nižších vrstvách protokolu.

Specifikace propojovacího protokolu transportní vrstvy OSI definuje pět tříd transportních protokolů: počínaje TP0, poskytující minimální obnovu při chybě, až po TP4, která je speciálně vytvořena pro méně spolehlivé sítě.

PříkladyEditovat

Porovnání protokolů transportní vrstvyEditovat

Protokol UDP UDP Lite TCP Multipath TCP SCTP DCCP RUDP
Velikost hlavičky paketu 8 bytů 8 bytů 20–60 bytů 50–90 bytů 12 bytů 12 or 16 bytů
Název paketu transportní vrstvy Datagram Datagram Segment Segment Datagram Datagram Datagram
Spojovaný  Ne  Ne   Ano   Ano   Ano   Ano   Ano
Spolehlivý transport  Ne  Ne   Ano   Ano   Ano  Ne   Ano
Nespolehlivý transport   Ano   Ano  Ne  Ne   Ano   Ano   Ano
Zachovává hranic zpráv   Ano   Ano  Ne  Ne   Ano   Ano   Ano
Zachovává pořadí zpráv  Ne  Ne   Ano   Ano   Ano  Ne   Ano
Nezachovává pořadí zpráv   Ano   Ano  Ne  Ne   Ano   Ano   Ano
Kontrolní součet pro data Volitelný   Ano   Ano   Ano   Ano   Ano Volitelný
Délka kontrolního součtu (bitů) 16 16 16 16 32 16 16
Částečný kontrolní součet  Ne   Ano  Ne  Ne  Ne   Ano  Ne
Path MTU  Ne  Ne   Ano   Ano   Ano   Ano ?
Řízení toku dat  Ne  Ne   Ano   Ano   Ano  Ne   Ano
Řízení zahlcení  Ne  Ne   Ano   Ano   Ano   Ano ?
Explicitní oznamování zahlcení  Ne  Ne   Ano   Ano   Ano   Ano
Více datových proudů  Ne  Ne  Ne   Ano   Ano  Ne  Ne
Multihoming  Ne  Ne  Ne   Ano   Ano  Ne  Ne
Bundling / Nagleho algoritmus  Ne  Ne   Ano   Ano   Ano  Ne ?

Porovnání transportních protokolů OSIEditovat

ISO/IEC 8073/ITU-T doporučení X.224[1], definuje pět tříd spojovaných protokolů transportní vrstvy označovaných jako transportní protokol třídy 0 (TP0) až 4 (TP4). TP0 neprovádí žádnou opravu chyb, a byl navržen pro použití nad síťovou vrstvou, která poskytuje bezchybná spojení. TP4 se nejvíce podobá TCP, i když TCP obsahuje funkce jako nenásilné zavření spojení, které OSI řadí do relační vrstvy. Všechny třídy spojovaných protokolů OSI poskytují přednostní přenos dat a zachovávají hranice záznamů. Detailní charakteristiky tříd jsou přehledně uvedeny v následující tabulce:

Služba TP0 TP1 TP2 TP3 TP4
Spojované služby síťové vrstvy   Ano   Ano   Ano   Ano   Ano
Nespojované služby síťové vrstvy  Ne  Ne  Ne  Ne   Ano
Sřetězování a rozdělování  Ne   Ano   Ano   Ano   Ano
Segmentace a skládání segmentů   Ano   Ano   Ano   Ano   Ano
Oprava chyb  Ne   Ano  Ne   Ano   Ano
Znovunavázání spojení (při velkém množství nepotvrzených PDU)  Ne   Ano  Ne   Ano  Ne
Multiplexování a demultiplexování jediným virtuálním okruhem  Ne  Ne   Ano   Ano   Ano
Explicitní řízení toku dat  Ne  Ne   Ano   Ano   Ano
Opakované vysílání při prodlevě  Ne  Ne  Ne  Ne   Ano
Spolehlivá transportní služba  Ne   Ano  Ne   Ano   Ano

OSI definuje i nespojovaný transportní protokol, specifikovaný standardem ISO/IEC 8602 a ITU-T doporučením X.234[2].

ReferenceEditovat

  1. ITU-T doporučení X.224 (11/1995) ISO/IEC 8073 [online]. Dostupné online. 
  2. ITU-T doporučení X.234 (07/1994) ISO/IEC 8602 [online]. Dostupné online.