Skip to content

Protokół TCP / UDP

TCP

Protokół TCP (Transmission Control Protocol) to protokół warstwy transportowej w modelu OSI, który gwarantuje dostarczenie danych do celu w odpowiedniej kolejności, a także posiada mechanizmy wykrywania błędów i retransmisji utraconych pakietów.

TCP - połączenie

Zanim dane zostaną przesłane, protokół TCP ustanawia połączenie między nadawcą a odbiorcą za pomocą prcesu three-way handshake, który polega na wymianie trzech komunikatów:

  • SYN: Nadawca wysyła komunikat SYN, aby rozpocząć połączenie.
  • SYN-ACK: Odbiorca odpowiada na komunikat SYN, wysyłając SYN-ACK.
  • ACK: Nadawca potwierdza otrzymanie komunikatu SYN-ACK, wysyłając ACK.

Screenshot

TCP - segmentacja i retransmisja

Dane dzielone są na segmenty, a każdy z nich zawiera numer sekwencyjny. Odbiorca potwierdza odbiór pakietów, wysyłając komunikaty ACK. Jeśli nadawca nie otrzyma potwierdzenia, dochodzi do retransmisji.

TCP - kontrola przepływu

TCP kontroluje przepływ danych za pomocą mechanizmu window size, aby uniknąć przeciążenia odbiorcy.

TCP - koniec połączenia

Po zakończeniu transmisji, połączenie TCP jest zamykane, zazwyczaj przy pomocy procesu four-way handshake, gdzie oba urządzenia wysyłają odpowiednie komunikaty FIN.

Screenshot

UDP

Protokół UDP (User Datagram Protocol) to protokół warstwy transportowej w modelu OSI, którego fundamentalna różnica to brak ustanowienia stałego połączenia przed przesyłaniem danych. UDP jest prostszy i szybszy od TCP, ale nie zapewnia niezawodności, gwarancji dostarczenia pakietów oraz prawidłowej kolejności.

UDP - połączenie?

Dane są przesyłane bez wcześniejszej wymiany komunikatów między nadawcą a odbiorcą.

UDP - potwierdzenie?

UDP nie wymaga potwierdzenia odbioru danych, co sprawia, że jest bardziej efektywny pod względem opóźnień, ale mniej niezawodny.

UDP - retransmisja?

Utracony pakiet to utracony pakiet 😄

UDP - kontorla przepływu?

UDP nie reguluje przepływu danych ani nie dba o przeciążenie odbiorcy.


🕞 Ostatnia aktualizacja 08.12.2024