TCP vs UDP protokoli
I TCP i UDP se uklapaju u četvrti sloj u OSI modelu, koji je transportni sloj odmah iznad IP sloja. TCP i UDP podržavaju prijenos podataka na dva različita načina, TCP je orijentiran na vezu, a UDP je bez veze.
U prijevozu paketa postoje dva glavna ograničenja, jedno je pouzdanost, a drugo latencija. Pouzdanost je zajamčena dostava paketa, a latencija je pravodobna dostava paketa. Oba se ne mogu postići da dosegnu vrhunac istovremeno, ali mogu se optimizirati.
Da bi započeo podatkovnu komunikaciju između dva čvora, pošiljatelj bi trebao znati IP prijemnika kao i broj porta. IP adresa je za usmjeravanje paketa, a broj porta za predaju paketa ispravnoj osobi. Dalje objašnjavajući ovaj scenarij na primjeru iz stvarnog svijeta, razmislite o okruženju s više trgovačkih kompleksa i netko vas je uputio u trgovinu 30 (što je brijački salon), Golden Plaza, br. 21 Park Ave, da biste došli do ovog mjesta, morate znati samo ne 21, a da biste uslugu dobili iz salona, morate znati broj trgovine koji je 30. Možete pretpostaviti broj 21 kao IP adresu, a trgovinu broj 30 kao luku br.
Isto kao u podatkovnoj komunikaciji i aplikacijskim uslugama, model TCP aplikacije slušaju brojeve porta kako bi prihvatili TCP veze. Jednako kao i UDP aplikacije, također slušaju brojeve priključaka za isporuku UDP usluga.
TCP:
Definirano u RFC 793
TCP je orijentiran na vezu pouzdani protokol koji podržava zajamčeni prijenos podataka. Od samog uspostavljanja veze TCP osigurava pouzdanost. Neke od glavnih značajki TCP-a su trosmjerno rukovanje (SYN, SYN-ACK, ACK), otkrivanje pogrešaka, polagani start, kontrola protoka i kontrola zagušenja.
TCP je pouzdan transportni mehanizam pa će se koristiti tamo gdje je dostava paketa nužna čak i u zagušenjima. Tipični primjer za TCP aplikacije i brojeve priključaka su FTP podaci (20), FTP kontrola (21), SSH (222), Telnet (23), pošta (25), DNS (53), HTTP (80), POP3 (110), SNMP (161) i HTTPS (443). To su dobro poznate TCP aplikacije.
UDP:
Definirano u RFC 768
UDP (User Datagram Protocol) je jednostavan protokol za prijenos koji pruža nepouzdanu uslugu. To ne znači da UDP neće isporučiti podatke, ali ne postoje mehanizmi za nadzor kontrole zagušenja ili gubitka paketa itd. Budući da je jednostavan, izbjegava nadređenu obradu na mrežnom sučelju. Aplikacije u stvarnom vremenu uglavnom koriste UDP jer je ispuštanje paketa poželjnije od odgođenih paketa. Tipičan primjer je protok medija preko glasa preko IP-a.
Sažetak:
(1) TCP je orijentiran na vezu i pouzdan tamo gdje je UDP veza manje i nepouzdana.
(2) TCP-u je potrebno više obrade na razini mrežnog sučelja, gdje kao u UDP-u nije.
(3) TCP koristi trosmjerno rukovanje, kontrolu zagušenja, kontrolu protoka i druge mehanizme kako bi osigurao pouzdan prijenos.
(4) UDP se uglavnom koristi u slučajevima kada je kašnjenje paketa ozbiljnije od gubitka paketa. (Aplikacije u stvarnom vremenu)