Transportní vrstva

čtvrtá vrstva v modelu ISO/OSI

Transportní neboli přenosová 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ýza

editovat

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, nebo 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 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ích, které nejsou založeny na IP protokolech, například X.25, Frame Relay a ATM (Asynchronous Transfer Mode), je jejich orientované připojení realizováno spíše na síťové nebo na linkové (spojové) vrstvě, než na vrstvě transportní. V X.25, v modemové telefonní síti a v bezdrátových komunikačních systémech jsou spolehlivé komunikace uzel–uzel implementována na 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ě navržena pro méně spolehlivé sítě.

Příklady

editovat

Porovnání protokolů transportní vrstvy

editovat
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ý  Ne  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ů OSI

editovat

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].

Reference

editovat
  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.