Junior
Aké sú rozdiely medzi protokolmi TCP a UDP?
sobes.tech AI
Odpoveď od AI
Najvýznamnejšie rozdiely medzi TCP (Transmission Control Protocol) a UDP (User Datagram Protocol) sú nasledovné:
-
Vytvorenie spojenia:
- TCP - protokol s vytvorením spojenia (connection-oriented). Pred odoslaním dát prebieha trojstranné handshake (three-way handshake).
- UDP - protokol bez vytvorenia spojenia (connectionless). Dáta sa odosielajú bez predchádzajúceho dohodnutia.
-
Spoľahlivosť doručenia:
- TCP - spoľahlivý protokol. Zaručuje doručenie, kontrolu poradia paketov a opakované odoslanie stratených dát.
- UDP - nespoľahlivý protokol. Nezaručuje doručenie, poradie paketov a nevykonáva opakované odoslanie.
-
Riadenie toku a preťaženia:
- TCP - má mechanizmy na riadenie toku (zabraňuje odosielaniu dát rýchlejšie, než ich môže spracovať príjemca) a riadenie preťaženia (reguluje rýchlosť odosielania pri preťažení siete).
- UDP - nemá zabudované mechanizmy na riadenie toku a preťaženia.
-
Rýchlosť:
- TCP - kvôli nákladom na vytvorenie spojenia, potvrdenie doručenia a riadenie toku/preťaženia je zvyčajne pomalší ako UDP.
- UDP - rýchlejší protokol, pretože má menšie náklady.
-
Veľkosť hlavičky:
- TCP - veľkosť hlavičky je 20-60 bajtov.
- UDP - veľkosť hlavičky je 8 bajtov.
-
Oblasti použitia:
- TCP - používa sa pre aplikácie, ktoré vyžadujú spoľahlivú doručenie dát: HTTP, FTP, SSH, SMTP.
- UDP - používa sa pre aplikácie, kde je dôležitá rýchlosť, a strata dát je prípustná alebo sa spracováva na úrovni aplikácie: DNS, DHCP, streaming videa/audia, online hry, VoIP.
Zhrnutá tabuľka:
| Príznak | TCP | UDP |
|---|---|---|
| Typ protokolu | S vytvorením spojenia | Bez vytvorenia spojenia |
| Spoľahlivosť | Spoľahlivý | Nespoľahlivý |
| Poradie doručenia | Zaručené | Nezaručené |
| Opakované odoslanie | Existuje | Neexistuje |
| Riadenie toku | Existuje | Neexistuje |
| Riadenie preťaženia | Existuje | Neexistuje |
| Rýchlosť | Relatívne pomalý | Relatívne rýchly |
| Veľkosť hlavičky | 20-60 bajtov | 8 bajtov |
| Príklady použitia | HTTP, FTP, SSH | DNS, VoIP, Hry |