Transportní vrstva přenosových systémů Flashcards
(5 cards)
Transportní vrstva - účel, přenosová jednotka, funkce, příklady
Účel: Poskytuje spolehlivý přenos dat mezi koncovými zařízeními.
Přenosová jednotka: Segment (segment) nebo datagram.
Funkce: Kontrola toku dat, detekce a oprava chyb, multiplexing.
Příklady: TCP, UDP.
Zvýšení kvality spojů na požadovanou úroveň: vyšší vrstvy nemusí určovat optimální cestu, kontrolovat tok dat nebo řešit problémy s přetížením či chybami. Protokoly čtvrté a vyšší vrstvy pracují v koncových systémech. Koncové body transportního přenosu jsou odlišeny pomocí portů. Kvalita služeb závisí na přenášených datech. Adresace konkrétní služby, segmentace a skládání, řízení spojení, toku dat a chybových stavů.
Adresace konkrétní služby, segmentace a skládání, řízení spojení, toku dat a chybových stavů.
Transportní vrstva - Služby
1) Segmentace a znovu sestavení dat
Data z aplikační vrstvy jsou rozdělena na menší části, tzv. segmenty (každému je přidáno záhlaví), aby mohla být přenášena přes síť. Transportní vrstva zajistí, že segmenty budou na druhé straně správně sestaveny do původní podoby.
2) Multiplexování a demultiplexování
Transportní vrstva umožňuje současnou komunikaci více aplikací na jednom zařízení pomocí portů. Multiplexování spojuje data z různých aplikací a demultiplexování na přijímací straně je zase rozděluje na jednotlivé proudy.
3) Řízení toku dat
Řízení toku na transportní vrstvě zajišťují mechanismy:
a) Řízení toku dat (flow control) spočívá ve způsobu organizace komunikace mezi koncovými body, realizace front a vyrovnávacích pamětí.
b) Potvrzování úspěšného přenosu. Řízení chybových stavů a toku dat je kombinováno v rámci techniky posuvného okna.
c) Předcházení zahlcení (congestion control) je řešeno pomocí techniky posuvného okna a následného nastavení dalších parametrů (pravidla pro opakovaný přenos, potvrzovaní přenosu. . . ).
4) Řízení chyb
Transportní vrstva detekuje chyby při přenosu dat a zajišťuje jejich opravu nebo znovuodeslání poškozených dat (například u TCP).
5) Spolehlivost přenosu
Transportní vrstva může zajistit spolehlivý přenos dat, což znamená, že data budou doručena v pořádku, bez duplicit a ve správném pořadí. Tuto funkci poskytuje zejména TCP.
6) Řízení spojení
Transportní vrstva může poskytovat spojově orientovanou komunikaci, kdy se mezi koncovými zařízeními vytvoří logické spojení (například u TCP), nebo nespojově orientovanou komunikaci (například u UDP).
Transportní vrstva - Port, Socket, segmentace
Port má velikost 16 bitů (čísla 0 - 65535). Porty 0 – 1023 slouží pro známé aplikace (FTP, HTTP atd), 1024 – 49151 slouží pro méně používané aplikace, které jsou registrovány u IANA nebo volné přístupné uživatelské porty, 49152 – 65535 jsou soukromé a dynamické porty přiřazované na straně klientské aplikace.
Socket je označení pro kombinaci IP adresy a portu sloužící k identifikaci koncového bodu komunikace. Kombinace zdrojového a cílového socketu je vždy jedinečná (neexistují dvě probíhající komunikace se všemi 4 stejnými hodnotami).
Segmentace je je dělení velkého množství dat na části, kdy ke každé části je přidána záhlaví. Operace přidání záhlaví se nazývá zapouzdření a je prováděna u odesílatele. Opačný proces se nazývá odpouzdření a je prováděna až konečným příjemcem. Segment se záhlavím je předán síťové vrstvě a zapouzdřen IP záhlavím a odeslán jako paket. Příjemce segment předá transportní vrstvě zbavený záhlaví a na základě portu předá konkrétní aplikaci. TCP do záhlaví přidává pořadové číslo odesílaného bajtu, UDP toto neumožňuje.
Transportní vrstva - UDP (User Datagram Protocol)
Nespojovaný protokol: Není nutné navazovat spojení mezi odesílatelem a příjemcem.
Rychlý přenos: Nízká režie, protože neprovádí kontroly spojení nebo opravy chyb.
Bez záruky doručení: Data mohou být ztracena nebo doručena v nesprávném pořadí.
Bez řízení toku: Neexistuje mechanismus pro přizpůsobení rychlosti přenosu dat.
Použití: Aplikace, kde je důležitá rychlost a menší režie (například DNS, VoIP, video streaming, online hry).
Služby UDP:
– Komunikace proces–proces (komunikace socketových adres).
– Přenos dat bez spojení, každý datagram je přenášen samostatně (před komunikací není navozováno spojení).
– Žádné řízení toku dat, řízení proti zahlcení či řízení chybových stavů.
– Zapouzdřování a odpouzdřování dat (pokud není detekována chyba).
– Frontování, multiplxování a demultiplexování (fronty jsou vytvářeny dle portů) a na těchto frontách lze provádět multiplexování a demultiplexování.
Transportní vrstva - TCP (Transmission Control Protocol)
Spojově orientovaný protokol: Navazuje spojení před přenosem dat.
Spolehlivost: TCP zajišťuje, že data budou doručena správně, v pořadí a bez ztrát.
Řízení toku: Přizpůsobuje rychlost přenosu aktuálním podmínkám v síti (např. pomocí okénkového mechanismu).
Řízení chyb: Detekuje a opravuje chyby při přenosu dat.
Zajištění správného pořadí: Segmenty jsou na přijímací straně sestaveny ve správném pořadí.
Použití: Aplikace, kde je klíčová spolehlivost a pořadí dat (například webové prohlížeče, e-mailové klienty, FTP).
Příznakové bity:
– URG urgentní data
– ACK indikuje platnost pole potvrzovacího bytu
– PSH data mají být předána po přijetí hned aplikaci (push)
– RST odmítnutí spojení
– SYN navazování spojení
– FIN ukončení spojení
Služby TCP:
– Komunikace proces–proces (komunikace socketových adres).
– Přenos toku dat (vytváří dojem propojení komunikujících procesů okruhem).
– Plně duplexní přenos dat (komunikace oběma směry zároveň).
– Multiplexování a demultiplexování (stejné jako UDP).
– Spojovaně orientovaná služba (musí být prvně navázáno spojení a na konci ukončeno).
– Spolehlivý přenos dat (využití potvrzovacích mechanizmů).
Proces “Three-Way Handshake”:
SYN: Odesílatel požádá o navázání spojení (odesílá SYN segment).
SYN-ACK: Příjemce potvrzuje požadavek a odesílá vlastní požadavek o spojení (odesílá SYN a ACK segment).
ACK: Odesílatel potvrzuje přijetí požadavku a spojení je navázáno.