TCP 3-utas kézfogás (SYN, SYN-ACK, ACK)

Mi az a TCP háromutas kézfogás?

Háromutas kézfogás vagy a TCP 3-way handshake egy olyan folyamat, amelyet a TCP/IP hálózatban használnak a szerver és a kliens közötti kapcsolat létrehozására. Ez egy három lépésből álló folyamat, amely megköveteli, hogy a kliens és a kiszolgáló szinkronizálási és nyugtázási csomagokat cseréljen a valódi adatkommunikációs folyamat megkezdése előtt.

A háromirányú kézfogási folyamatot úgy tervezték meg, hogy mindkét vége segítsen egyszerre kezdeményezni, egyeztetni és szétválasztani a TCP socket kapcsolatokat. Lehetővé teszi több TCP socket kapcsolat átvitelét mindkét irányban egyidejűleg.

TCP üzenettípusok

Üzenet Leírás
syn Kapcsolat kezdeményezésére és létrehozására szolgál. Segít a sorszámok szinkronizálásában is az eszközök között.
ACK Segít megerősíteni a másik oldalon, hogy megkapta a SYN-t.
SYN-ACK SYN üzenet a helyi eszközről és a korábbi csomag ACK.
FIN A kapcsolat megszakítására szolgál.

TCP háromutas kézfogási folyamat

A TCP-forgalom háromirányú kézfogással kezdődik. Ebben a TCP kézfogási folyamatban az ügyfélnek úgy kell kezdeményeznie a beszélgetést, hogy kommunikációs munkamenetet kér a szerverrel:

Háromutas kézfogási folyamat
3 utas kézfogás diagram
  • Lépés 1: Első lépésben a kliens kapcsolatot létesít egy szerverrel. Szegmenst küld a SYN-nel, és tájékoztatja a szervert, hogy a kliensnek el kell kezdenie a kommunikációt, és mi legyen a sorszáma.
  • Lépés 2: Ebben a lépésben sAz erver a kliens kérésére SYN-ACK jelkészlettel válaszol. Az ACK segít a fogadott szegmens válaszának jelzésében, a SYN pedig azt, hogy milyen sorszámmal kell kezdődnie a szegmensekkel.
  • Lépés 3: Ebben az utolsó lépésben a kliens nyugtázza a Szerver válaszát, és mindketten stabil kapcsolatot hoznak létre, és megkezdődik a tényleges adatátviteli folyamat.

Valós példa

Valós példa

Íme egy egyszerű példa a háromutas kézfogási folyamatra, amely három lépésből áll:

  • Az X gazdagép úgy kezdi meg a kapcsolatot, hogy elküldi a TCP SYN csomagot a gazdagép célhelyére. A csomagok egy véletlenszerű sorszámot (például 4321) tartalmaznak, amely az X gazdagépnek továbbítandó adatok sorszámának kezdetét jelzi.
  • Ezt követően a szerver megkapja a csomagot, amely a sorszámával válaszol. Válasza tartalmazza a nyugtázási számot is, vagyis az X gazdagép 1-gyel megnövelt sorszámát (itt ez 4322).
  • Az X gazdagép úgy válaszol a kiszolgálónak, hogy elküldi a nyugtázási számot, amely többnyire a kiszolgáló sorszáma, amely 1-gyel növekszik.

Az adatátviteli folyamat befejezése után a TCP automatikusan megszakítja a kapcsolatot két különálló végpont között.

Összegzésként

  • A TCP 3-way kézfogás vagy háromutas kézfogás vagy TCP 3-way kézfogás egy olyan folyamat, amelyet TCP/IP hálózat kapcsolat létrehozásához a szerver és a kliens között.
  • A Syn használata kapcsolat kezdeményezésére és létrehozására
  • Az ACK segít megerősíteni a másik oldalon, hogy megkapta a SYN-t.
  • A SYN-ACK egy SYN üzenet a helyi eszközről és a korábbi csomag ACK-je.
  • A FIN a kapcsolat megszakítására szolgál.
  • A TCP kézfogási folyamat során az ügyfélnek úgy kell kezdeményeznie a beszélgetést, hogy kommunikációs munkamenetet kér a szerverrel
  • Első lépésben a kliens kapcsolatot létesít egy szerverrel
  • Ebben a második lépésben a szerver SYN-ACK jel beállításával válaszol az ügyfél kérésére
  • Ebben az utolsó lépésben a kliens nyugtázza a szerver válaszát
  • A TCP automatikusan megszakítja a kapcsolatot két különálló végpont között.