Trójstronny uścisk dłoni TCP w Transmission Control Protocol (zwany również uściskiem dłoni TCP; uścisk trzech wiadomości i/lub SYN-SYN-ACK) jest metodą używaną przez TCP do ustanowienia połączenia TCP/IP w sieci opartej na protokole internetowym. Technika trójstronnego przekazywania informacji TCP jest często określana jako „SYN-SYN-ACK” (lub bardziej dokładnie SYN, SYN-ACK, ACK), ponieważ istnieją trzy komunikaty przekazywane przez TCP w celu wynegocjowania i rozpoczęcia sesji TCP między dwoma komputerami. Mechanizm handshake TCP jest zaprojektowany tak, aby dwa komputery próbujące się komunikować mogły negocjować parametry połączenia sieciowego TCP socket przed przesłaniem danych, takich jak żądania SSH i HTTP przeglądarki internetowej.

Ten 3-kierunkowy proces handshake jest również zaprojektowany tak, aby oba końce mogły inicjować i negocjować oddzielne połączenia TCP socket w tym samym czasie. Możliwość negocjowania wielu połączeń gniazdowych TCP w obu kierunkach w tym samym czasie pozwala pojedynczemu fizycznemu interfejsowi sieciowemu, takiemu jak ethernet, na multipleksowanie w celu przesyłania wielu strumieni danych TCP jednocześnie.

Schemat TCP 3-Way Handshake

Poniżej znajduje się (bardzo) uproszczony schemat procesu TCP 3-way handshake. Przyjrzyj się diagramowi po prawej stronie i przeanalizuj listę zdarzeń po lewej.

EVENT DIAGRAM

Host A wysyła pakiet TCP SYNchronize do hosta B

Host B odbiera SYN A

Host B wysyła SYNchronize-ACKnowledgement

Host A odbiera SYN-ACK B

Host A wysyła ACKnowledge

Host B odbiera ACK.
Połączenie z gniazdemTCP jest ESTABLISHED.

tcp three-way handshake,syn,syn-ack,ack
TCP Three Way Handshake
(SYN,SYN-ACK,ACK)

Komunikaty SYNchronize i ACKnowledge są wskazywane przez bit SYN, lub bit ACK w nagłówku TCP, a wiadomość SYN-ACK ma włączone (ustawione na 1) oba bity SYN i ACK w nagłówku TCP.

TCP wie, czy sieciowe połączenie gniazdowe TCP jest otwierane, synchronizowane, ustanowione poprzez użycie wiadomości SYNchronize i ACKnowledge podczas ustanawiania sieciowego połączenia gniazdowego TCP.

Gdy kończy się komunikacja między dwoma komputerami, wykonywana jest kolejna komunikacja w 3 kierunkach, aby rozerwać połączenie gniazda TCP. To ustanawianie i zrywanie połączenia gniazda TCP jest częścią tego, co kwalifikuje TCP jako niezawodny protokół. TCP potwierdza również, że dane zostały pomyślnie odebrane i gwarantuje, że dane są ponownie łączone w odpowiedniej kolejności.

Zauważ, że UDP jest bezpołączeniowy. Oznacza to, że UDP nie nawiązuje połączeń tak jak TCP, więc UDP nie wykonuje tego 3-kierunkowego uścisku dłoni i z tego powodu jest określany jako protokół zawodny. Nie oznacza to, że UDP nie może przesyłać danych, po prostu nie negocjuje jak połączenie będzie działać, UDP po prostu nadaje i ma nadzieję na najlepsze.

Protokoły enkapsulowane w TCP

Zauważ, że FTP, Telnet, HTTP, HTTPS, SMTP, POP3, IMAP, SSH i każdy inny protokół, który porusza się po TCP również ma trójstronny handshake wykonywany przy otwieraniu połączenia. Żądania HTTP, SMTP, FTP, transfer plików – wszystkie one zarządzają wiadomościami, które wysyłają. TCP obsługuje transmisję tych wiadomości.

TCP „jeździ” na wierzchu protokołu internetowego (IP) w stosie protokołów, dlatego też połączona para protokołów internetowych nosi nazwę TCP/IP (TCP over IP). Segmenty TCP są przekazywane wewnątrz sekcji payload pakietów IP. IP zajmuje się adresowaniem IP i routingiem oraz przesyłaniem pakietów z jednego miejsca do drugiego, ale TCP zarządza rzeczywistymi gniazdami komunikacyjnymi pomiędzy punktami końcowymi (komputerami na obu końcach sieci lub połączenia internetowego).

POWIĄZANE TUTORIALE

  • Więcej samouczków o Transmission Control Protocol (TCP)
    • Gniazda TCP (porty wirtualne)
    • Nagłówek TCP
    • Kontrola przepływu TCP
  • Więcej Więcej samouczków o protokole internetowym (IP)
  • Więcej samouczków o protokole datagramów użytkownika (UDP)

Tutoriale o TCP

  • Wprowadzenie do protokołu TCP
  • TCP: A Reliable Protocol
  • TCP Header
  • TCP 3-way Handshake
  • TCP.
  • TCP 3- Way Handshake
  • TCP Connections
  • TCP Sockets
  • TCP Data Transfer
  • TCP Segmentation and Reassembly
  • TCP Flow Control
  • TCP Multiplexing
  • TTCP Multiplexing
  • TCP Precedence
  • TCP Transport Stream Push (TCP Push)
Zapisz tę stronę i UDOSTĘPNIJ:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *