Junior — Middle
Je možné vysvetliť kľúčové rozdiely medzi protokolmi TCP a UDP a v akých situáciách je vhodné použiť každý z nich?
sobes.tech AI
Odpoveď od AI
TCP (Protokol prenosu kontrole) a UDP (Protokol dátových gramov používateľa) sú dva hlavné protokoly prenosu v sieti.
Kľúčové rozdiely:
- Spoľahlivosť: TCP zabezpečuje spoľahlivú doručenie dát — zaručuje, že všetky balíky dorazia a v správnom poradí. UDP nezaručuje doručenie ani poradie.
- Vytvorenie spojenia: TCP vytvára spojenie prostredníctvom trojstranného handshake, UDP funguje bez vytvorenia spojenia.
- Rýchlosť: UDP je rýchlejší, pretože neztráca čas na potvrdenia a kontrolu chýb.
- Kontrola chýb: TCP kontroluje chyby a obnovuje stratené dáta, UDP nie.
Kedy použiť:
- TCP: pre aplikácie, kde je dôležitá spoľahlivosť a poradie — webové servery, pošta, prenos súborov.
- UDP: pre aplikácie, kde je dôležitá rýchlosť a latencia, a strata niektorých paketov je akceptovateľná — online hry, streaming videa/áudia, VoIP.
Príklad použitia UDP v Pythone:
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(b"Hello", ("example.com", 12345))