16. Transportní vrstva 4 - UDP
Teorie
Doplněk k předchozí kapitole TCP
Porty - viz
wiki
- 32-bitové číslo portu (0-65535) určuje
- u odesílatele aplikaci, která odesílá data
- u příjemce aplikaci, která má zpracovat data na vyšší vrstvě -
obr.
- Socket - kombinace IP adresy, čísla portu a
komunikačního protokolu na vrtsvě 4 (TCP/UDP) -
obr.
- Rozdělení portů -
obr.:
- Dobře známé porty (0-1023)
- používají se pro všeobecně důležité typy serverů
- servery na nich naslouchají na požadavky od klientů -
příklad dotazu na web server -
obr., obr.
- klienti je musí znát, aby mohly oslovit serverové aplikace
- nejdůležitější porty - HTTP (80),
HTTPS (443),
FTP (20 and 21),
SSH
(22), TELNET
(23), SMTP
(25),
DNS (53)
- Registrované porty (1024-49151)
- vyhrazené pro "méně známé" aplikace, které jsou
zaregistrované v registru portů aplikací -
www.iana.org
- Dynamicky přidělované porty (49152-65535)
- jsou používány klientem dočasně jen po dobu IP komunikace
(sezení)
- klient si je náhodně vybírá z uvedeného rozsahu
- jsou potřeba pro doručení odpovědi od serveru ke klientovi (obr.
- viz prohozená IP adresa a port na odpovědi od web serveru -
prohlížeč na portu 6000 čeká na odpověď)
- některé OS nectí uvedený doporučený rozsah -
obr.
UDP (User Datagram Protocol) -
wiki
- oproti TCP
- nepoužívá mechanismus navázání spojení typu 3-way handshake -
obr. (connectionless protocol) -
rovnou posílá data
- negarantuje doručení paketu = je "nespolehlivý"
(nechává to na vyšší vrstvy - pokud to je třeba) -
obr. (analogie s obyčejnou poštovní zásilkou - odesílatel
nedostane informaci o dodání)
- nezaručuje pořadí doručených datových jednotek
- výhodou je jednodušší a rychlejší zpracování datových
jednotek (menší časové ztráty)
- používá se tam,
- kde malé ztráty datagramů nejsou z hlediska
funkčnosti kritické
- a kde není vhodné, aby se ztrácel čas novým odesíláním
nedoručených dat (hlavně při přenosu obrazu a zvuku - např.
vysílání/streamování videa, hudby,
VoIP,
online hry)
- také pro rychlou komunikaci typu otázka - odpověď
(např.
DNS,
DHCP)
- shrnutí porovnání s TCP - obr.
Hlavička UDP -
wiki
- po 16 bitech: zdrojový port (volitelný), cílový port, délka
datagramu (včetně hlavičky - v oktetech/bytech), kontrolní součet
(volitelný), následují data - obr.
- minimální délka datagramu = 8 bytů (velikost hlavičky), max. délka =
65535 bytů (16 bitová délka)
Cvičení
Wireshark
- otevřít dhcp_nolease_initialization.pcapng a analyzovat
data
- z vrstvy 3 zjistit číslo protokolu pro vrstvu 4 (TCP/UDP)
- ve vrstvě 4 analyzovat hlavičku UDP
PacketTracer
- simulace UDP na DHCP
- příprava - určit DHCP rozsah adres (pool) pro klienty
- na serveru - záložka Services - DHCP - v defaultním
poolu nastavit počáteční IP, počet uživatelů a uložit (Save), zapnout službu
- u PC nastavit DHCP
- ověřit přidělení přes ipconfig
- kontrola komunikace - ping mezi PC a serverem
- simulační režim - filtr DHCP, dynamické přidělení adresy pomocí
ipconfig /release, ipconfig /renew - analýza protokolu UDP