Protokoly TCP verzus UDP
TCP aj UDP zapadajú do štvrtej vrstvy modelu OSI, čo je transportná vrstva tesne nad vrstvou IP. TCP aj UDP podporujú prenos dát dvoma rôznymi spôsobmi, TCP je orientovaný na spojenie a UDP je spojenie menej.
Pri preprave paketov existujú dve hlavné obmedzenia, jedným je spoľahlivosť a druhým je latencia. Spoľahlivosť je zaručené doručenie paketu a latencia je včasné doručenie paketu. Oboje nie je možné dosiahnuť na vrchol súčasne, ale možno ich optimalizovať.
Na spustenie dátovej komunikácie medzi dvoma uzlami by odosielateľ mal poznať IP adresu prijímača, ako aj číslo portu. IP adresa slúži na smerovanie paketu a číslo portu na odovzdanie paketu správnej osobe. Ďalej vysvetlite tento scenár na príklade z reálneho sveta, zamyslite sa nad prostredím multi nákupného komplexu a niekto vás nasmeroval do obchodu 30 (čo je holičský salón), Golden Plaza, č. 21 Park Ave, aby ste sa dostali na toto miesto, musíte vedieť iba Nie 21 park avenue, ale na získanie služby zo salónu potrebujete poznať číslo obchodu, ktoré je 30. Môžete predpokladať, že číslo 21 je IP adresa a číslo portu 30 je číslo portu.
Rovnaké ako v modeli dátovej komunikácie a aplikačných služieb Aplikácie TCP počúvajú čísla portov, aby akceptovali pripojenia TCP. Rovnako ako aplikácie UDP tiež počúvajú čísla portov na poskytovanie služieb UDP.
TCP:
Definované v RFC 793
TCP je spoľahlivý end-to-end protokol zameraný na pripojenie na podporu garantovaného prenosu dát. Od samotného nadviazania spojenia TCP zabezpečuje spoľahlivosť. Niektoré z hlavných funkcií TCP sú 3-cestné handshake (SYN, SYN-ACK, ACK), detekcia chýb, pomalý štart, kontrola toku a kontrola preťaženia.
TCP je spoľahlivý transportný mechanizmus, takže sa bude používať tam, kde je doručovanie paketov nevyhnutnosťou aj pri preťažení. Typickým príkladom pre TCP aplikácie a čísla portov sú FTP dáta (20), FTP Control (21), SSH (222), Telnet (23), Mail (25), DNS (53), HTTP (80), POP3 (110), SNMP(161) a HTTPS(443). Toto sú dobre známe aplikácie TCP.
UDP:
Definované v RFC 768
UDP (User Datagram Protocol) je jednoduchý prenosový protokol, ktorý poskytuje nespoľahlivú službu. Neznamená to, že UDP nedoručí dáta, ale neexistujú žiadne mechanizmy na monitorovanie kontroly preťaženia alebo straty paketov atď. Keďže je jednoduchý, vyhýba sa režijnému spracovaniu na sieťovom rozhraní. Aplikácie v reálnom čase väčšinou používajú UDP, pretože zahadzovanie paketov je vhodnejšie ako oneskorené pakety. Typickým príkladom sú mediálne toky hlasu cez IP.
Zhrnutie:
(1) TCP je orientovaný na spojenie a je spoľahlivý tam, kde UDP je spojenie menej a nespoľahlivé.
(2) TCP potrebuje viac spracovania na úrovni sieťového rozhrania, kde ako v UDP nie je.
(3) TCP používa 3-cestné handshake, riadenie preťaženia, riadenie toku a ďalšie mechanizmy na zabezpečenie spoľahlivého prenosu.
(4) UDP sa väčšinou používa v prípadoch, keď je oneskorenie paketu vážnejšie ako strata paketu. (Aplikácie v reálnom čase)