Awọn ohun ijinlẹ bọtini ti Awọn isopọ TCP Alagbata Nẹtiwọọki: Demystified the need for Triple Handhake

TCP Asopọ Oṣo
Nigba ti a ba lọ kiri lori ayelujara, fi imeeli ranṣẹ, tabi ṣe ere ori ayelujara, a ko ni ronu nigbagbogbo nipa asopọ nẹtiwọki ti o nipọn lẹhin rẹ. Sibẹsibẹ, o jẹ awọn igbesẹ kekere ti o dabi ẹnipe o ṣe idaniloju ibaraẹnisọrọ iduroṣinṣin laarin wa ati olupin naa. Ọkan ninu awọn igbesẹ ti o ṣe pataki julọ ni iṣeto asopọ TCP, ati pe ipilẹ eyi ni imudani-ọna mẹta.

Nkan yii yoo jiroro lori ipilẹ, ilana ati pataki ti ọwọ ọwọ-ọna mẹta ni awọn alaye. Igbese nipa igbese, a yoo se alaye idi ti awọn mẹta-ifọwọyi ti nilo, bi o ti o idaniloju asopọ iduroṣinṣin ati dede, ati bi o ṣe pataki fun gbigbe data. Pẹlu oye ti o jinlẹ ti ifọwọyi ọna mẹta, a yoo ni oye ti o dara julọ ti awọn ilana ti o wa ni ipilẹ ti ibaraẹnisọrọ nẹtiwọọki ati wiwo ti o han gbangba ti igbẹkẹle awọn asopọ TCP.

Ilana Imuwọ-ọna Mẹta TCP ati Awọn iyipada Ipinle
TCP jẹ ilana irinna ti o da lori asopọ, eyiti o nilo idasile asopọ ṣaaju gbigbe data. Ilana idasile asopọ yii jẹ ṣiṣe nipasẹ ọwọ ọwọ-ọna mẹta.

 TCP ọwọ-ọna mẹta

Jẹ ki a ṣe akiyesi diẹ si awọn apo-iwe TCP ti a firanṣẹ ni asopọ kọọkan.

Ni ibẹrẹ, mejeeji alabara ati olupin ti wa ni pipade. Ni akọkọ, olupin naa n tẹtisi ni itara lori ibudo kan ati pe o wa ni ipo LISTEN, eyiti o tumọ si pe olupin naa gbọdọ bẹrẹ. Nigbamii ti, onibara ti šetan lati bẹrẹ wiwọle si oju-iwe ayelujara naa.O nilo lati fi idi asopọ kan mulẹ pẹlu olupin naa. Ọna kika ti apo asopọ akọkọ jẹ bi atẹle:

 SYN Packet

Nigbati alabara kan ba bẹrẹ asopọ kan, o ṣe ipilẹṣẹ nọmba ọkọọkan ibẹrẹ laileto (client_isn) ati gbe e si aaye “nọmba ọkọọkan” ti akọsori TCP. Ni akoko kanna, onibara ṣeto ipo asia SYN si 1 lati fihan pe apo-iwe ti njade jẹ apo SYN kan. Onibara tọkasi pe o fẹ lati fi idi asopọ kan mulẹ pẹlu olupin nipasẹ fifiranṣẹ apo-iwe SYN akọkọ si olupin naa. Pakẹti yii ko ni data Layer ohun elo ninu (iyẹn, data ti a fi ranṣẹ). Ni aaye yii, ipo alabara ti samisi bi SYN-SENT.

SYN + ACK Packet

Nigbati olupin ba gba apo SYN kan lati ọdọ alabara kan, o bẹrẹ laileto nọmba ni tẹlentẹle tirẹ (server_isn) ati lẹhinna fi nọmba yẹn sinu aaye “Nọmba Tẹlentẹle” ti akọsori TCP. Nigbamii ti, olupin naa wọ inu client_isn + 1 ni aaye "Nọmba Ifọwọsi" ati ṣeto mejeeji SYN ati ACK bits si 1. Nikẹhin, olupin naa fi apo-iwe naa ranṣẹ si onibara, ti ko ni data ohun elo-Layer (ko si data fun olupin naa). lati firanṣẹ). Ni akoko yii, olupin wa ni ipinle SYN-RCVD.

ACK Packet

Ni kete ti alabara ba gba apo-iwe naa lati ọdọ olupin naa, o nilo lati ṣe awọn iṣapeye wọnyi lati dahun si apo idasi ikẹhin: Ni akọkọ, alabara ṣeto ACK bit ti akọsori TCP ti apo idahun si 1; Ẹlẹẹkeji, awọn ose tẹ iye server_isn + 1 ni "Jẹrisi nọmba idahun" aaye; Nikẹhin, alabara firanṣẹ apo-iwe naa si olupin naa. Pakẹti yii le gbe data lati ọdọ alabara si olupin naa. Ni ipari awọn iṣẹ ṣiṣe wọnyi, alabara yoo tẹ ipo ti iṣeto.

Ni kete ti olupin naa ba gba idii esi lati ọdọ alabara, o tun yipada si ipo ESTABLISHED.

Gẹgẹbi o ti le rii lati ilana ti o wa loke, nigbati o ba n ṣe ifọwọyi-ọna mẹta, a gba ọ laaye lati mu ọwọ kẹta lati gbe data, ṣugbọn awọn ọwọ meji akọkọ kii ṣe. Eyi jẹ ibeere ti a maa n beere nigbagbogbo ni awọn ifọrọwanilẹnuwo. Ni kete ti imudani-ọna ọna mẹta ba ti pari, awọn mejeeji tẹ ipo ESTABLISHED, ti o fihan pe a ti fi idi asopọ naa mulẹ ni aṣeyọri, ni aaye wo alabara ati olupin le bẹrẹ fifiranṣẹ data si ara wọn.

Kini idi ti ọwọ ọwọ mẹta? Ko lemeji, igba mẹrin?
Idahun ti o wọpọ ni, "Nitori ọwọ-ọwọ ọna mẹta ṣe iṣeduro agbara lati gba ati firanṣẹ." Idahun yii jẹ deede, ṣugbọn o jẹ nikan ni idi dada, ko fi idi akọkọ siwaju. Ni atẹle yii, Emi yoo ṣe itupalẹ awọn idi fun mimu ọwọ mẹtta lati awọn aaye mẹta lati mu oye wa jinlẹ si ọran yii.

Ifọwọyi oni-ọna mẹta le ṣe imunadoko ni yago fun ibẹrẹ ti awọn asopọ ti itan-akọọlẹ tun ṣe (idi akọkọ)
Ifọwọyi-ọna oni-mẹta ṣe iṣeduro pe ẹni mejeji ti gba nọmba ọkọọkan ibẹrẹ ti o gbẹkẹle.
Ifọwọyi-ọna mẹta-ọna yago fun sisọnu awọn ohun elo.

Idi 1: Yẹra fun Awọn Idarapọ Duplicate Historical
Ni kukuru, idi akọkọ fun imufọwọyi-ọna mẹta ni lati yago fun idarudapọ ti o ṣẹlẹ nipasẹ ibẹrẹ asopọ pidánpidán atijọ. Ni agbegbe nẹtiwọọki eka kan, gbigbe awọn apo-iwe data kii ṣe nigbagbogbo firanṣẹ si agbalejo opin irin ajo ni ibamu pẹlu akoko ti a sọ, ati pe awọn apo-iwe data atijọ le de ibi agbalejo ibi-ajo naa ni akọkọ nitori idilọwọ nẹtiwọọki ati awọn idi miiran. Lati yago fun eyi, TCP nlo afọwọwọ ọna mẹta lati fi idi asopọ naa mulẹ.

ifọwọyi oni-mẹta yago fun awọn asopọ ẹda ẹda itan

Nigbati alabara kan ba fi awọn apo idasile asopọ SYN lọpọlọpọ ranṣẹ ni itẹlera, ni awọn ipo bii iṣupọ nẹtiwọọki, atẹle le ṣẹlẹ:

1- Awọn apo-iwe SYN atijọ ti de si olupin ṣaaju awọn apo-iwe SYN tuntun.
2- Olupin naa yoo dahun apo SYN + ACK kan si alabara lẹhin gbigba apo SYN atijọ naa.
3- Nigbati alabara ba gba apo SYN + ACK, o pinnu pe asopọ jẹ asopọ itan (nọmba ọkọọkan ti pari tabi akoko ipari) ni ibamu si ipo tirẹ, ati lẹhinna firanṣẹ apo RST si olupin naa lati yọkuro asopọ naa.

Pẹlu asopọ ọwọ-meji, ko si ọna lati pinnu boya asopọ lọwọlọwọ jẹ asopọ itan. Ifọwọyi-ọna mẹta gba alabara laaye lati pinnu boya asopọ lọwọlọwọ jẹ asopọ itan ti o da lori ọrọ-ọrọ nigbati o ti ṣetan lati fi soso kẹta ranṣẹ:

1- Ti o ba jẹ asopọ itan kan (nọmba ọkọọkan ti pari tabi akoko ipari), apo-iwe ti a fi ranṣẹ nipasẹ ifọwọwọ kẹta jẹ apo RST lati fagilee asopọ itan.
2- Ti kii ba ṣe asopọ itan, apo ti a firanṣẹ fun igba kẹta jẹ apo ACK kan, ati pe awọn ẹgbẹ ibaraẹnisọrọ meji ti fi idi asopọ mulẹ ni ifijišẹ.

Nitorina, idi pataki ti TCP nlo imudani-ọna mẹta ni pe o bẹrẹ asopọ lati ṣe idiwọ awọn asopọ itan.

Idi 2: Lati muu awọn nọmba lẹsẹsẹ ibẹrẹ ti awọn mejeeji ṣiṣẹpọ
Awọn ẹgbẹ mejeeji ti ilana TCP gbọdọ ṣetọju nọmba ọkọọkan, eyiti o jẹ ifosiwewe bọtini lati rii daju gbigbe igbẹkẹle. Awọn nọmba ọkọọkan ṣe ipa pataki ninu awọn asopọ TCP. Wọn ṣe atẹle naa:

Olugba le ṣe imukuro data ẹda-iwe ati rii daju pe deede ti data naa.

Olugba le gba awọn apo-iwe ni aṣẹ ti nọmba ọkọọkan lati rii daju iduroṣinṣin ti data naa.

● Nọmba ọkọọkan le ṣe idanimọ apo data ti ẹgbẹ miiran ti gba, ti o mu ki gbigbe data ti o gbẹkẹle ṣiṣẹ.

Nitorinaa, lori idasile asopọ TCP kan, alabara fi awọn apo-iwe SYN ranṣẹ pẹlu nọmba ọkọọkan akọkọ ati pe o nilo olupin lati dahun pẹlu apo ACK kan ti n tọka gbigba aṣeyọri ti apo SYN alabara. Lẹhinna, olupin naa firanṣẹ apo-iwe SYN pẹlu nọmba ọkọọkan akọkọ si alabara ati duro de alabara lati dahun, ni ẹẹkan ati fun gbogbo, lati rii daju pe awọn nọmba ọkọọkan akọkọ jẹ mimuuṣiṣẹpọ ni igbẹkẹle.

Mu awọn nọmba ni tẹlentẹle ibẹrẹ ti awọn mejeeji ṣiṣẹpọ

Botilẹjẹpe afọwọwọ oni-ọna mẹrin tun ṣee ṣe lati muuṣiṣẹpọ ni igbẹkẹle awọn nọmba ọkọọkan ibẹrẹ ti awọn mejeeji, awọn igbesẹ keji ati kẹta le ni idapo sinu igbesẹ kan, ti o mu ki ọwọ ọwọ-ọna mẹta. Bibẹẹkọ, awọn imuwowo mejeeji le ṣe iṣeduro nikan pe nọmba ọkọọkan akọkọ ti ẹgbẹ kan ni aṣeyọri gba nipasẹ ẹgbẹ miiran, ṣugbọn ko si iṣeduro pe nọmba ọkọọkan akọkọ ti awọn mejeeji le jẹrisi. Nitorinaa, imudani-ọna mẹta-ọna jẹ yiyan ti o dara julọ lati mu lati rii daju iduroṣinṣin ati igbẹkẹle awọn asopọ TCP.

Idi 3: Yẹra fun Awọn Ohun elo Jafara
Ti o ba jẹ pe “ifọwọyi-meji” nikan, nigbati ibeere alabara SYN ti dinamọ ni nẹtiwọọki, alabara ko le gba apo ACK ti olupin ti firanṣẹ, nitorinaa SYN yoo binu. Sibẹsibẹ, niwọn igba ti ko si ifọwọwọ kẹta, olupin ko le pinnu boya alabara gba ifọwọsi ACK kan lati fi idi asopọ naa mulẹ. Nitorinaa, olupin naa le fi idi asopọ mulẹ nikan lẹhin gbigba ibeere SYN kọọkan. Eyi nyorisi awọn atẹle wọnyi:

Egbin ti awọn orisun: Ti ibeere SYN alabara ti dinamọ, ti o mu abajade gbigbe leralera ti awọn apo-iwe SYN lọpọlọpọ, olupin naa yoo ṣe agbekalẹ ọpọlọpọ awọn isopọ alailoye pupọ lẹhin gbigba ibeere naa. Eyi nyorisi egbin ti ko wulo ti awọn orisun olupin.

Idaduro ifiranšẹ: Nitori aini ifọwọwọwọ kẹta, olupin ko ni ọna lati mọ boya alabara gba ifọwọsi ACK ni deede lati fi idi asopọ naa mulẹ. Bi abajade, ti awọn ifiranṣẹ ba di ni nẹtiwọọki, alabara yoo tẹsiwaju fifiranṣẹ awọn ibeere SYN leralera, nfa olupin lati ṣe agbekalẹ awọn isopọ tuntun nigbagbogbo. Eyi yoo mu idinku ati idaduro nẹtiwọọki pọ si ati ni odi ni ipa lori iṣẹ nẹtiwọọki gbogbogbo.

Yẹra fun awọn ohun elo jafara

Nitorinaa, lati rii daju iduroṣinṣin ati igbẹkẹle asopọ nẹtiwọọki, TCP nlo imudani-ọna mẹta lati fi idi asopọ mulẹ lati yago fun iṣẹlẹ ti awọn iṣoro wọnyi.

Lakotan
AwọnNetwork Packet alagbataIdasile asopọ TCP ti ṣe pẹlu ọwọ ọwọ-ọna mẹta. Lakoko imufọwọyi ọna mẹta, alabara kọkọ firanṣẹ apo-iwe kan pẹlu asia SYN si olupin naa, ti o fihan pe o fẹ lati fi idi asopọ kan mulẹ. Lẹhin gbigba ibeere lati ọdọ alabara, olupin naa dahun apo kan pẹlu awọn asia SYN ati ACK si alabara, ti o fihan pe o gba ibeere asopọ, ati firanṣẹ nọmba ọkọọkan akọkọ tirẹ. Nikẹhin, alabara ṣe idahun pẹlu asia ACK kan si olupin lati fihan pe asopọ ti ni idasilẹ ni aṣeyọri. Nitorinaa, awọn ẹgbẹ mejeeji wa ni ipo ti iṣeto ati pe o le bẹrẹ fifiranṣẹ data si ara wọn.

Ni gbogbogbo, ilana imudani ọna mẹta fun idasile asopọ TCP ti ṣe apẹrẹ lati rii daju iduroṣinṣin asopọ ati igbẹkẹle, yago fun idamu ati egbin ti awọn orisun lori awọn asopọ itan, ati rii daju pe awọn mejeeji ni anfani lati gba ati firanṣẹ data.


Akoko ifiweranṣẹ: Jan-08-2025