TCP 3-Way Handshake (SYN, SYN-ACK, ACK)

Mikรค on TCP Three-Way Handshake?

Kolmisuuntainen kรคdenpuristus tai TCP 3-way handshake on prosessi, jota kรคytetรครคn TCP/IP-verkossa yhteyden muodostamiseen palvelimen ja asiakkaan vรคlille. Se on kolmivaiheinen prosessi, joka edellyttรครค sekรค asiakkaan ettรค palvelimen vaihtavan synkronointi- ja kuittauspaketteja ennen kuin todellinen tietoliikenneprosessi alkaa.

Kolmisuuntainen kรคttelyprosessi on suunniteltu siten, ettรค molemmat pรครคt auttavat sinua aloittamaan, neuvottelemaan ja erottamaan TCP-socket-yhteydet samanaikaisesti. Sen avulla voit siirtรครค useita TCP-socket-yhteyksiรค molempiin suuntiin samanaikaisesti.

TCP-viestityypit

Viesti Tuotetiedot
syn Kรคytetรครคn yhteyden aloittamiseen ja muodostamiseen. Se auttaa myรถs synkronoimaan jรคrjestysnumeroita laitteiden vรคlillรค.
ACK Auttaa vahvistamaan toiselle puolelle, ettรค se on vastaanottanut SYN:n.
SYN-ACK SYN-sanoma paikalliselta laitteelta ja aiemman paketin ACK.
FIN Kรคytetรครคn yhteyden katkaisemiseen.

TCP:n kolmisuuntainen kรคttelyprosessi

TCP-liikenne alkaa kolmisuuntaisella kรคttelyllรค. Tรคssรค TCP-kรคttelyprosessissa asiakkaan on aloitettava keskustelu pyytรคmรคllรค viestintรคistunto palvelimen kanssa:

Kolmisuuntainen kรคttelyprosessi
3-suuntainen kรคttelykaavio
  • Vaihe 1: Ensimmรคisessรค vaiheessa asiakas muodostaa yhteyden palvelimeen. Se lรคhettรครค segmentin SYN:llรค ja ilmoittaa palvelimelle, ettรค asiakkaan tulee aloittaa kommunikointi ja millรค sen jรคrjestysnumerolla pitรคisi olla.
  • Vaihe 2: Tรคssรค vaiheessa server vastaa asiakkaan pyyntรถรถn SYN-ACK-signaalilla. ACK auttaa sinua ilmaisemaan vastaanotetun segmentin vastauksen ja SYN ilmaisee, minkรค jรคrjestysnumeron sen pitรคisi pystyรค aloittamaan segmenteillรค.
  • Vaihe 3: Tรคssรค viimeisessรค vaiheessa asiakas kuittaa palvelimen vastauksen ja molemmat luovat vakaan yhteyden ja aloittavat varsinaisen tiedonsiirtoprosessin.

Esimerkki tosielรคmรคstรค

Esimerkki tosielรคmรคstรค

Tรคssรค on yksinkertainen esimerkki kolmisuuntaisesta kรคttelyprosessista, joka koostuu kolmesta vaiheesta:

  • Isรคntรค X aloittaa yhteyden lรคhettรคmรคllรค TCP SYN -paketin isรคntรคkohteeseensa. Paketit sisรคltรคvรคt satunnaisen jรคrjestysnumeron (esimerkiksi 4321), joka osoittaa jรคrjestysnumeroiden alun datalle, joka isรคntรค X:n tulee lรคhettรครค.
  • Tรคmรคn jรคlkeen palvelin vastaanottaa paketin ja se vastaa jรคrjestysnumerollaan. Sen vastaus sisรคltรครค myรถs kuittausnumeron, eli isรคntรค X:n jรคrjestysnumeron lisรคttynรค 1:llรค (tรคssรค se on 4322).
  • Isรคntรค X vastaa palvelimelle lรคhettรคmรคllรค kuittausnumeron, joka on enimmรคkseen palvelimen jรคrjestysnumero, jota kasvatetaan yhdellรค.

Kun tiedonsiirtoprosessi on ohi, TCP katkaisee automaattisesti yhteyden kahden erillisen pรครคtepisteen vรคlillรค.

Yhteenveto

  • TCP 3-way handshake tai kolmisuuntainen kรคttely tai TCP 3-way handshake on prosessi, jota kรคytetรครคn TCP/IP-verkko muodostaaksesi yhteyden palvelimen ja asiakkaan vรคlille.
  • Syn kรคyttรครค yhteyden aloittamiseen ja muodostamiseen
  • ACK auttaa vahvistamaan toiselle puolelle, ettรค se on vastaanottanut SYN:n.
  • SYN-ACK on SYN-sanoma paikalliselta laitteelta ja aiemman paketin ACK.
  • FIN:รครค kรคytetรครคn yhteyden katkaisemiseen.
  • TCP-kรคttelyprosessissa asiakkaan on aloitettava keskustelu pyytรคmรคllรค viestintรคistuntoa palvelimen kanssa
  • Ensimmรคisessรค vaiheessa asiakas muodostaa yhteyden palvelimeen
  • Tรคssรค toisessa vaiheessa palvelin vastaa asiakkaan pyyntรถรถn SYN-ACK-signaalilla
  • Tรคssรค viimeisessรค vaiheessa asiakas kuittaa palvelimen vastauksen
  • TCP katkaisee automaattisesti yhteyden kahden erillisen pรครคtepisteen vรคlillรค.

Tiivistรค tรคmรค viesti seuraavasti: