Transportní vrstva - Transport layer
Sada internetových protokolů |
---|
Aplikační vrstva |
Transportní vrstva |
Internetová vrstva |
Odkazová vrstva |
V počítačových sítích je transportní vrstva koncepční rozdělení metod ve vrstvené architektuře protokolů v síťovém zásobníku v sadě internetových protokolů a modelu OSI . Protokoly této vrstvy poskytují komunikační služby host-host pro aplikace. Poskytuje služby, jako je komunikace orientovaná na připojení , spolehlivost , řízení toku a multiplexování .
Podrobnosti implementace a sémantiky transportní vrstvy sady Internet Protocol , která je základem internetu , a model OSI obecných sítí se liší. Protokoly, které se dnes používají v této vrstvě pro internet, pocházejí z vývoje TCP/IP. V modelu OSI je transportní vrstva často označována jako vrstva 4 nebo L4 , zatímco číslované vrstvy se v TCP/IP nepoužívají.
Nejznámějším přenosovým protokolem sady internetových protokolů je TCP ( Transmission Control Protocol ). Používá se pro přenosy orientované na připojení, zatímco pro jednodušší přenos zpráv se používá protokol UDP ( User Datagram Protocollessless ). TCP je složitější protokol, díky svému stavovému designu, který zahrnuje spolehlivé služby přenosu a datového proudu. TCP a UDP dohromady tvoří v podstatě veškerý provoz na internetu a jsou to jediné protokoly implementované v každém hlavním operačním systému. Mezi další protokoly transportní vrstvy, které byly definovány a implementovány, patří Datagram Congestion Control Protocol (DCCP) a Stream Control Transmission Protocol (SCTP).
OSI model podle vrstvy |
---|
Služby
Služby transportní vrstvy jsou přenášeny do aplikace prostřednictvím programovacího rozhraní k protokolům transportní vrstvy. Služby mohou zahrnovat následující funkce:
- Orientovaný na připojení komunikace : Je obvykle jednodušší aplikace interpretovat spojení jako datový tok , než by museli vypořádat s Nadřízené připojení méně modelů, jako je datagram modelu User Datagram Protocol (UDP) a internet Protokol (IP).
- Dodání stejného pořadí: Síťová vrstva obecně nezaručuje, že pakety dat dorazí ve stejném pořadí, v jakém byly odeslány, ale často je to žádoucí funkce. To se obvykle provádí pomocí číslování segmentů, přičemž je přijímač předává do aplikace v pořádku. To může způsobit blokování head-of-line .
- Spolehlivost : Pakety mohou být během přenosu ztraceny kvůli přetížení sítě a chybám. Pomocí kódu pro detekci chyb , jako je kontrolní součet , může transportní protokol zkontrolovat, zda nejsou data poškozena, a ověřit správné přijetí odesláním zprávy ACK nebo NACK odesílateli. K opětovnému přenosu ztracených nebo poškozených dat lze použít schémata automatických požadavků na opakování.
- Řízení toku : Rychlost přenosu dat mezi dvěma uzly musí být někdy řízena, aby se zabránilo rychlému odesílateli v přenosu více dat, než může být podporováno přijímací vyrovnávací pamětí , což způsobí přetečení vyrovnávací paměti. Toho lze také využít ke zvýšení účinnosti snížením podtečení vyrovnávací paměti .
- Vyhýbání se přetížení : Řízení přetížení může řídit vstup provozu do telekomunikační sítě, aby se předešlo přetížení dopravní zátěží tím, že se pokusíte zabránit nadměrnému předplatnému jakékoli ze zpracovatelských nebo propojovacích schopností mezilehlých uzlů a sítí a učiníte kroky ke snížení zdrojů, jako je snížení rychlosti odesílání paketů . Například požadavky na automatické opakování mohou udržovat síť v přetíženém stavu; této situaci lze předejít přidáním zamezení přetížení do řízení toku, včetně pomalého startu . To udržuje spotřebu šířky pásma na nízké úrovni na začátku přenosu nebo po opětovném přenosu paketů.
- Multiplexování : Porty mohou poskytovat více koncových bodů na jednom uzlu. Například jméno na poštovní adrese je druh multiplexování a rozlišuje mezi různými příjemci stejného umístění. Počítačové aplikace budou poslouchat informace o svých vlastních portech, což umožňuje použití více než jedné síťové služby současně. Je součástí transportní vrstvy v modelu TCP/IP , ale relační vrstvy v modelu OSI.
Analýza
Transportní vrstva je zodpovědná za doručování dat do příslušného aplikačního procesu na hostitelských počítačích. To zahrnuje statistické multiplexování dat z různých aplikačních procesů, tj. Vytváření datových segmentů a přidávání čísel zdrojových a cílových portů do záhlaví každého datového segmentu transportní vrstvy. Spolu se zdrojovou a cílovou IP adresou tvoří čísla portů síťový soket , tj. Identifikační adresu komunikace mezi procesy. V modelu OSI je tato funkce podporována vrstvou relace .
Některé protokoly transportní vrstvy, například TCP, ale nikoli UDP, podporují virtuální obvody , tj. Zajišťují komunikaci orientovanou na připojení prostřednictvím základní datagramové sítě orientované na pakety . Bajtový proud je dodáván se skrytím komunikace v režimu paketů pro procesy aplikace. To zahrnuje navázání spojení, rozdělení datového proudu na pakety zvané segmenty, číslování segmentů a změnu pořadí dat mimo pořadí.
A konečně, některé protokoly transportní vrstvy, například TCP, ale ne UDP, poskytují spolehlivou komunikaci typu end-to-end, tj. Obnovu chyb pomocí kódu pro detekci chyb a protokolu ARQ ( automatic repeat request ). Protokol ARQ také poskytuje řízení toku , které lze kombinovat s vyhýbáním se přetížení .
UDP je velmi jednoduchý protokol a neposkytuje virtuální obvody ani spolehlivou komunikaci, která tyto funkce deleguje do aplikačního programu. UDP pakety se nazývají datagramy , nikoli segmenty.
TCP se používá pro mnoho protokolů, včetně procházení webu HTTP a přenosu e -mailů. UDP lze použít pro vícesměrové vysílání a vysílání , protože opakované přenosy nejsou možné pro velké množství hostitelů. UDP obvykle poskytuje vyšší propustnost a kratší latenci, a proto se často používá pro multimediální komunikaci v reálném čase, kde lze občas akceptovat ztrátu paketů, například IP-TV a IP-telefonie, a pro online počítačové hry.
Mnoho sítí, které nejsou založeny na IP, jako je X.25 , Frame Relay a ATM , implementuje komunikaci orientovanou na připojení na vrstvě sítě nebo datového spojení, nikoli na transportní vrstvě. V X.25 je v modemech telefonní sítě a v bezdrátových komunikačních systémech implementována spolehlivá komunikace uzel-uzel na nižších vrstvách protokolu.
Specifikace protokolu transportní vrstvy OSI v režimu připojení definuje pět tříd transportních protokolů: TP0 , poskytující nejmenší obnovu chyb, na TP4 , který je určen pro méně spolehlivé sítě.
Protokoly
Tento seznam uvádí některé protokoly, které jsou běžně umístěny v přepravních vrstvách soupravě internetového protokolu je OSI sada protokolů , NetWare s IPX / SPX , AppleTalk a Fibre Channel .
- ATP, AppleTalk Transaction Protocol
- CUDP, cyklický UDP
- DCCP, Datagram Congestion Control Protocol
- FCP, protokol Fibre Channel
- IL, IL Protocol
- MPTCP, vícecestný TCP
- NORM, NACK-Oriented Spolehlivé vícesměrové vysílání
- RDP, Reliable Data Protocol
- RUDP, spolehlivý protokol uživatelského datagramu
- SCTP, Stream Control Transmission Protocol
- SPX, sekvenovaná výměna paketů
- SST, Structured Stream Transport
- TCP, Transaction Control Protocol
- UDP, User Datagram Protocol
- UDP-Lite
- µTP, protokol Micro Transport
Porovnání protokolů transportní vrstvy
Vlastnosti | UDP | UDP-Lite | TCP | Vícecestný TCP | SCTP | DCCP | RUDP |
---|---|---|---|---|---|---|---|
Velikost záhlaví paketu | 8 bajtů | 8 bajtů | 20–60 bajtů | 50–90 bajtů | 12 bajtů | 12 nebo 16 bajtů | 14+ bajtů |
Typická režie datových paketů | 8 bajtů | 8 bajtů | 20 bajtů | ?? bajtů | 44–48+ bajtů | 12 nebo 16 bajtů | 14 bajtů |
Entita paketu transportní vrstvy | Datagram | Datagram | Segment | Segment | Datagram | Datagram | Datagram |
Orientace na připojení | Ne | Ne | Ano | Ano | Ano | Ano | Ano |
Spolehlivá doprava | Ne | Ne | Ano | Ano | Ano | Ne | Ano |
Nespolehlivá doprava | Ano | Ano | Ne | Ne | Ano | Ano | Ano |
Zachovat hranici zprávy | Ano | Ano | Ne | Ne | Ano | Ano | Ano |
dodávka | Neuspořádaný | Neuspořádaný | Objednáno | Objednáno | Objednané / neuspořádané | Neuspořádaný | Neuspořádaný |
Kontrolní součet dat | Volitelný | Ano | Ano | Ano | Ano | Ano | Volitelný |
Velikost kontrolního součtu | 16 bitů | 16 bitů | 16 bitů | 16 bitů | 32 bitů | 16 bitů | 16 bitů |
Částečný kontrolní součet | Ne | Ano | Ne | Ne | Ne | Ano | Ne |
Cesta MTU | Ne | Ne | Ano | Ano | Ano | Ano | ? |
Řízení toku | Ne | Ne | Ano | Ano | Ano | Ne | Ano |
Kontrola přetížení | Ne | Ne | Ano | Ano | Ano | Ano | ? |
Výslovné oznámení o přetížení | Ne | Ne | Ano | Ano | Ano | Ano | ? |
Více streamů | Ne | Ne | Ne | Ne | Ano | Ne | Ne |
Multi-homing | Ne | Ne | Ne | Ano | Ano | Ne | Ne |
Bundling / Nagle | Ne | Ne | Ano | Ano | Ano | Ne | ? |
Porovnání transportních protokolů OSI
Doporučení ISO/IEC 8073/ITU-T X.224 „Informační technologie-Propojení otevřených systémů-Protokol pro poskytování přepravních služeb v režimu připojení“ definuje pět tříd transportních protokolů v režimu připojení označených třídou 0 (TP0) až třídou 4 (TP4). Třída 0 neobsahuje žádné obnovení chyb a byla navržena pro použití v síťových vrstvách, které poskytují bezchybná připojení. Třída 4 je nejblíže TCP, přestože TCP obsahuje funkce, jako například ladné zavírání, které OSI přiřadí vrstvě relace. Všechny třídy protokolů režimu připojení OSI poskytují zrychlená data a zachování hranic záznamu. Podrobné charakteristiky tříd jsou uvedeny v následující tabulce:
Servis | TP0 | TP1 | TP2 | TP3 | TP4 |
---|---|---|---|---|---|
Síť orientovaná na připojení | Ano | Ano | Ano | Ano | Ano |
Síť bez připojení | Ne | Ne | Ne | Ne | Ano |
Zřetězení a oddělení | Ne | Ano | Ano | Ano | Ano |
Segmentace a opětovné sestavení | Ano | Ano | Ano | Ano | Ano |
Obnovení chyby | Ne | Ano | Ne | Ano | Ano |
Znovu spusťte připojení (pokud není potvrzen nadměrný počet PDU ) | Ne | Ano | Ne | Ano | Ne |
Multiplexování a demultiplexování na jediném virtuálním okruhu | Ne | Ne | Ano | Ano | Ano |
Explicitní řízení toku | Ne | Ne | Ano | Ano | Ano |
Opakovaný přenos na časový limit | Ne | Ne | Ne | Ne | Ano |
Spolehlivá přepravní služba | Ne | Ano | Ne | Ano | Ano |
Existuje také přenosový protokol bez připojení, specifikovaný v doporučení ISO/IEC 8602/ITU-T X.234.