Sobes.tech
Junior — Middle

Lze vysvětlit klíčové rozdíly mezi protokoly TCP a UDP a v jakých situacích je vhodné je použít?

sobes.tech AI

Odpověď od AI

TCP (Transmission Control Protocol) a UDP (User Datagram Protocol) jsou dva hlavní transportní protokoly v síti.

Klíčové rozdíly:

  • Spolehlivost: TCP zajišťuje spolehlivé doručení dat — zaručuje, že všechny balíčky dorazí a ve správném pořadí. UDP nezaručuje doručení ani pořadí.
  • Navázání spojení: TCP navazuje spojení prostřednictvím třícestného handshake, UDP funguje bez navázání spojení.
  • Rychlost: UDP je rychlejší, protože neplýtvá časem na potvrzení a kontrolu chyb.
  • Kontrola chyb: TCP kontroluje chyby a obnovuje ztracená data, UDP nikoliv.

Kdy používat:

  • TCP: pro aplikace, kde je důležitá spolehlivost a pořadí — webové servery, pošta, přenos souborů.
  • UDP: pro aplikace, kde je důležitá rychlost a latence, a ztráta některých paketů je přijatelná — online hry, streaming videa/audia, VoIP.

Příklad použití UDP v Pythonu:

import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(b"Hello", ("example.com", 12345))