O privire interioară asupra antetelor TCP și antetelor UDP

Protocol de control al transmisiei și Protocolul de datagramă utilizator sunt două protocoale de nivel de transport care sunt utilizate pe scară largă cu Protocol Internet. Un protocol este un set de proceduri și reguli pe care două computere le urmează pentru a se înțelege și a face schimb de date. Deși TCP este cel mai frecvent utilizat protocol dintre cele două, UDP este mai util în unele situații.

Constatări generale

TCP

  • Garantează că datele sosesc așa cum sunt trimise.

  • Eroare-verifică fluxurile de date.

  • Un antet de 20 de octeți permite opțional 40 de octeți de date ale funcției.

  • Mai lent decât UDP.

  • Cel mai bun pentru aplicațiile care necesită fiabilitate.

UDP

  • Nu există nicio garanție că sosesc datele.

  • Nu este oferită verificarea erorilor.

  • Un antet de 8 octeți permite doar date obligatorii ale funcției.

  • Mai rapid decât TCP.

  • Cel mai bun pentru aplicațiile care necesită viteză.

Ambii protocoale trimite date prin internet în pachete. Dintre cele două, TCP este orientat spre conexiune. După ce se realizează o conexiune, datele circulă bidirecțional. UDP este un protocol mai simplu, fără conexiune.

TCP este mai robust decât UDP. Oferă funcții de corectare a erorilor și fiabilitate ridicată. UDP este mai rapid decât TCP, în primul rând pentru că nu oferă corectarea erorilor. În plus, TCP se ocupă de controlul fluxului, în timp ce UDP nu are o opțiune pentru controlul fluxului.

Cel mai bun pentru fiabilitate: TCP

TCP

  • Livrare garantată a datelor.

  • Urmărește pachetele de date.

  • Verifică pachetele pentru erori.

  • Controlul debitului.

  • Anteturi de 20 de octeți cu opțiune pentru mai mult.

UDP

  • Fara garantie de livrare.

  • Pachetele se pot pierde.

  • Fără control al debitului.

  • Anteturile sunt limitate la 8 octeți.

TCP garantează livrarea datelor către destinatar. Dacă se pierde date, TCP ia măsuri pentru a recupera datele pierdute și le retrimite. Pentru a face acest lucru, TCP urmărește pachetele de date și verifică pachetele pentru erori.

UDP nu garantează livrarea datelor. În plus, pachetele UDP se pot pierde în tranzit sau pot deveni corupte.

Atât TCP, cât și UDP folosesc anteturi ca parte a împachetarii datelor mesajului pentru transferul prin conexiuni de rețea. Deoarece TCP este cel mai robust dintre cele două protocoale, antetul său este mai mare la 20 de octeți, cu o opțiune pentru date suplimentare, în timp ce anteturile UDP sunt limitate la 8 octeți.

Cel mai bun pentru viteză: UDP

TCP

  • Încet pentru că îndeplinește multe funcții.

UDP

  • Rapid pentru că oferă funcții limitate.

Deși TCP este fiabil, este mai lent decât UDP, în principal pentru că realizează mai multe funcții. Utilizatorii finali care au nevoie de cea mai mare viteză posibilă, cum ar fi jucătorii și persoanele care lucrează cu videoclipuri, beneficiază de UDP.

Cel mai bun pentru utilizare: depinde de utilizare

TCP

  • Cel mai bun pentru web, transfer de fișiere, e-mail și shell securizat.

UDP

  • Cel mai bun pentru VPN-uri, streaming video, VoIP, transmisiuni live și jocuri online.

Deoarece TCP este fiabil, este cel mai bine în situațiile care necesită o fiabilitate ridicată, dar care nu necesită viteză, cum ar fi web, e-mail și FTP.

Viteza UDP îl face cel mai potrivit pentru jocuri online, transmisii live, tunel VPN și videoclipuri în flux.

Format antet TCP

Fiecare antet TCP are 10 câmpuri obligatorii, totalizând 20 octeți (160 biți) in marime. Opțional poate include un câmp de date suplimentar de până la 40 de octeți.

Antet Transmission Control Protocol (TCP).
 Lifewire

8 biți egal cu 1 octet.

Antetele TCP apar în următoarea secvență, începând cu punctele finale de comunicare sursă și destinație:

  • Numărul portului TCP sursă (2 octeți sau 16 biți): numărul portului TCP sursă reprezintă dispozitivul expeditor.
  • Numărul portului TCP de destinație (2 octeți sau 16 biți): numărul portului TCP de destinație este punctul final de comunicare pentru dispozitivul receptor.
  • Număr de secvență (4 octeți sau 32 de biți): expeditorii de mesaje folosesc numere de ordine pentru a marca ordinea unui grup de mesaje.
  • Numărul de confirmare (4 octeți sau 32 de biți): Atât expeditorii, cât și receptorii folosesc câmpul de confirmare a numărului pentru a comunica numerele de secvență ale mesajelor care sunt fie primite recent, fie care se așteaptă să fie trimise.
  • Compensarea datelor TCP (4 biți): câmpul de compensare a datelor stochează dimensiunea totală a unui antet TCP în multipli de patru octeți. Un antet care nu utilizează câmpul opțional TCP are un offset de date de 5 (reprezentând 20 de octeți), în timp ce un antet care utilizează câmpul opțional de dimensiune maximă are un offset de date de 15 (reprezentând 60 de octeți).
  • Date rezervate (3 biți): Datele rezervate din anteturile TCP au întotdeauna o valoare zero. Acest câmp aliniază dimensiunea totală a antetului ca un multiplu de patru octeți, ceea ce este important pentru eficiența procesării datelor computerizate.
  • Steaguri de control (până la 9 biți): TCP folosește un set de șase standarde și trei semnalizatoare de control extinse - fiecare un bit individual reprezentând On sau Off - pentru a gestiona fluxul de date în situații specifice.
  • Dimensiunea ferestrei (2 octeți sau 16 biți): expeditorii TCP folosesc un număr, numit dimensiunea ferestrei, pentru a regla câte date trimit către un receptor înainte de a solicita o confirmare în schimb. Dacă dimensiunea ferestrei este prea mică, transferul de date în rețea este inutil de lent. Dacă dimensiunea ferestrei este prea mare, legătura de rețea poate deveni saturată sau este posibil ca receptorul să nu poată procesa datele primite suficient de repede, ceea ce duce la o performanță lentă. Algoritmii de fereastră încorporați în protocol calculează dinamic valorile dimensiunii și utilizează acest câmp de anteturi TCP pentru a coordona modificările dintre emițători și receptori.
  • Sumă de control TCP (2 octeți sau 16 biți): The suma de control valoarea din interiorul unui antet TCP este generată de expeditorul protocolului ca o tehnică matematică pentru a ajuta receptorul să detecteze mesajele care sunt corupte sau modificate.
  • Indicator urgent (2 octeți sau 16 biți): câmpul indicator urgent este adesea setat la zero și ignorat, dar împreună cu unul dintre steaguri de control, poate fi folosit ca un offset de date pentru a marca un subset al unui mesaj ca având nevoie de prioritate prelucrare.
  • Date opționale TCP (de la 0 la 40 de octeți): utilizările datelor TCP opționale includ suport pentru algoritmi speciali de recunoaștere și scalare a ferestrelor.

Format antet UDP

Deoarece UDP are capacitatea limitată în comparație cu TCP, anteturile sale sunt mai mici. Un antet UDP conține 8 octeți, împărțiți în următoarele patru câmpuri obligatorii:

  • Numărul portului UDP sursă (2 octeți): numărul portului UDP sursă reprezintă dispozitivul expeditor.
  • Numărul portului UDP de destinație (2 octeți): numărul portului UDP de destinație este punctul final de comunicare pentru dispozitivul receptor.
  • Lungimea datelor (2 octeți): câmpul de lungime în UDP reprezintă dimensiunea totală a fiecărei datagrame, incluzând atât antetul, cât și datele. Valoarea acestui câmp variază de la minim 8 octeți — dimensiunea antetului necesară — până la dimensiuni de peste 65.000 de octeți.
  • Sumă de control UDP (2 octeți): Similar cu TCP, o sumă de control UDP permite receptorilor să verifice încrucișat datele primite pentru orice biți corupti ai mesajului.

Verdictul final

Există un motiv pentru care TCP este cel mai des folosit protocol. Este robust și de încredere și garantează că datele sunt primite exact așa cum au fost trimise. Fluxul său de informații verificat prin erori îl poate încetini ușor, dar în cele mai multe cazuri, întârzierea nu este un deal-breaker.

Momentul în care UDP strălucește mai mult decât TCP este atunci când viteza este extrem de importantă, cum ar fi în streaming de videoclipuri, VPN-uri sau jocuri online.