Sobes.tech
Junior — Middle

Може ли да се објасне кључна разлика између протокола TCP и UDP, и у којим ситуацијама је пожељно користити сваки од њих?

sobes.tech АИ

Одговор од АИ

TCP (Protokol prenosa kontrole) i UDP (Protokol korisničkog datagrama) su dva glavna protokola za prenos u mreži.

Ključne razlike:

  • Pouzdanost: TCP obezbeđuje pouzdanu isporuku podataka — garantuje da će svi paketi stići i u pravom redosledu. UDP ne garantuje isporuku ni redosled.
  • Uspostavljanje veze: TCP uspostavlja vezu putem trostrukog rukovanja, UDP radi bez uspostavljanja veze.
  • Brzina: UDP je brži, jer ne gubi vreme na potvrde i kontrolu grešaka.
  • Kontrola grešaka: TCP proverava greške i oporavlja izgubljene podatke, UDP ne.

Kada koristiti:

  • TCP: za aplikacije gde je pouzdanost i redosled važan — veb serveri, pošta, prenos fajlova.
  • UDP: za aplikacije gde je važna brzina i latencija, a gubitak nekih paketa je prihvatljiv — online igre, streaming video/audio, VoIP.

Primer korišćenja UDP u Pythonu:

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