Àwọn Àṣírí Pàtàkì ti Olùtajà Packet Nẹ́ẹ̀tìwọ́ọ̀kì TCP: Ṣàlàyé ìdí tí a fi nílò ìfọwọ́sowọ́pọ̀ mẹ́ta

Eto Asopọ TCP
Nígbà tí a bá ń wo ìkànnì ayélujára, tí a bá fi ìméèlì ránṣẹ́, tàbí tí a bá ń ṣeré lórí ayélujára, a kì í sábà ronú nípa ìsopọ̀ nẹ́tíwọ́ọ̀kì tó díjú tí ó wà lẹ́yìn rẹ̀. Síbẹ̀síbẹ̀, àwọn ìgbésẹ̀ kékeré wọ̀nyí ló ń mú kí ìbánisọ̀rọ̀ tó dúró ṣinṣin wà láàárín àwa àti olupin náà. Ọ̀kan lára ​​àwọn ìgbésẹ̀ pàtàkì jùlọ ni ètò ìsopọ̀ TCP, àti kókó pàtàkì èyí ni ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta.

Àpilẹ̀kọ yìí yóò jíròrò ìlànà, ìlànà àti pàtàkì ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta ní kíkún. Ní ìgbésẹ̀ dé ìgbésẹ̀, a ó ṣàlàyé ìdí tí ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta fi ṣe pàtàkì, bí ó ṣe ń rí i dájú pé ìdúróṣinṣin àti ìgbẹ́kẹ̀lé ìsopọ̀ wà, àti bí ó ṣe ṣe pàtàkì tó fún ìfipamọ́ dátà. Pẹ̀lú òye jíjinlẹ̀ nípa ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta, a ó ní òye tó dára jù nípa àwọn ọ̀nà ìsopọ̀pọ̀ nẹ́tíwọ́ọ̀kì àti ojú ìwòye tó ṣe kedere nípa ìgbẹ́kẹ̀lé àwọn ìsopọ̀ TCP.

Ilana Gbigbọn Ọwọ-mẹta TCP ati Awọn Iyipada Ipinle
TCP jẹ́ ìlànà ìrìnnà tí ó da lórí ìsopọ̀, èyí tí ó nílò ìdásílẹ̀ ìsopọ̀ kí ó tó di pé a gbé ìsopọ̀ kalẹ̀. Ìlànà ìdásílẹ̀ ìsopọ̀ yìí ni a ń ṣe nípa fífọwọ́mọ́ra ọ̀nà mẹ́ta.

 Gbigbọn ọwọ ọna mẹta ti TCP

Ẹ jẹ́ ká wo àwọn packet TCP tí a fi ránṣẹ́ sí ìsopọ̀ kọ̀ọ̀kan dáadáa.

Ní àkọ́kọ́, àwọn oníbàárà àti oníbàárà ti sé. Àkọ́kọ́, oníbàárà náà ń fetísílẹ̀ ní ibùdó kan, ó sì wà ní ipò LISTEN, èyí tí ó túmọ̀ sí wípé a gbọ́dọ̀ bẹ̀rẹ̀ sí í lo oníbàárà náà. Lẹ́yìn náà, oníbàárà náà ti ṣetán láti bẹ̀rẹ̀ sí í wo ojú-ìwé wẹ́ẹ̀bù náà. Ó nílò láti fi ìsopọ̀ pẹ̀lú oníbàárà náà múlẹ̀. Ìrísí packet ìsopọ̀ àkọ́kọ́ ni èyí:

 Pákẹ́ẹ̀tì SYN

Nígbà tí oníbàárà bá bẹ̀rẹ̀ ìsopọ̀ kan, ó máa ń ṣe nọ́mbà ìtẹ̀léra àkọ́kọ́ láìròtẹ́lẹ̀ (client_isn) ó sì máa ń gbé e sí ojú-ọ̀nà "Nọ́mbà Ìtẹ̀léra" ti orí TCP. Ní àkókò kan náà, oníbàárà náà máa ń ṣètò ipò àsíá SYN sí 1 láti fi hàn pé packet tí ń jáde jẹ́ packet SYN. ​​Oníbàárà náà máa ń fi hàn pé ó fẹ́ láti sopọ̀ mọ́ olupin náà nípa fífi packet SYN àkọ́kọ́ ránṣẹ́ sí olupin náà. Packet yìí kò ní data fẹlẹfẹlẹ ohun èlò (ìyẹn ni pé, data tí a fi ránṣẹ́). Ní ​​àkókò yìí, a máa ń fi ipò oníbàárà náà hàn gẹ́gẹ́ bí SYN-SENT.

Páákì SYN+ACK

Nígbà tí olupin bá gba packet SYN láti ọ̀dọ̀ oníbàárà kan, ó máa ń bẹ̀rẹ̀ nọ́mbà serial tirẹ̀ (server_isn) láìròtẹ́lẹ̀, lẹ́yìn náà ó máa fi nọ́mbà náà sí pápá "Nọ́mbà Serial" ti àkọlé TCP. Lẹ́yìn náà, olupin náà máa ń wọ client_isn + 1 nínú pápá "Nọ́mbà ìjẹ́wọ́" ó sì máa ń ṣètò SYN àti ACK bit sí 1. Níkẹyìn, olupin náà máa ń fi packet náà ránṣẹ́ sí oníbàárà náà, èyí tí kò ní data application-layer (kò sì sí data fún olupin náà láti fi ránṣẹ́). Ní ​​àkókò yìí, olupin náà wà ní ipò SYN-RCVD.

Pákẹ́ẹ̀tì ACK

Nígbà tí oníbàárà bá ti gba pákẹ́ẹ̀tì náà láti ọ̀dọ̀ olupin, ó ní láti ṣe àwọn àtúnṣe wọ̀nyí láti dáhùn sí pákẹ́ẹ̀tì ìdáhùn ìkẹyìn: Àkọ́kọ́, oníbàárà náà ṣètò apá ACK ti orí TCP ti pákẹ́ẹ̀tì ìdáhùn sí 1; Èkejì, oníbàárà náà wọ inú value server_isn + 1 nínú pápá "Jẹ́rìí nọ́mbà ìdáhùn"; Níkẹyìn, oníbàárà náà fi pákẹ́ẹ̀tì náà ránṣẹ́ sí olupin náà. pákẹ́ẹ̀tì yìí lè gbé dátà láti ọ̀dọ̀ oníbàárà sí olupin náà. Nígbà tí wọ́n bá ti parí iṣẹ́ wọ̀nyí, oníbàárà náà yóò wọ ipò ESTABLISHED.

Nígbà tí olupin náà bá ti gba àpò ìdáhùn láti ọ̀dọ̀ oníbàárà, ó tún máa yípadà sí ipò tí a ti ṣètò.

Gẹ́gẹ́ bí o ṣe lè rí i láti inú ìlànà tí a kọ lókè yìí, nígbà tí a bá ń gbá ọwọ́ mẹ́ta, a gbà kí ìfọwọ́sowọ́pọ̀ kẹta gbé dátà, ṣùgbọ́n ìfọwọ́sowọ́pọ̀ méjì àkọ́kọ́ kò ní gbé e. Èyí ni ìbéèrè tí a sábà máa ń béèrè nínú ìfọ̀rọ̀wánilẹ́nuwò. Nígbà tí ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta bá parí, àwọn méjèèjì yóò wọ ipò tí a ti dá sílẹ̀, èyí tí ó ń fihàn pé a ti fi ìsopọ̀ náà múlẹ̀ dáadáa, nígbà náà ni oníbàárà àti olupin lè bẹ̀rẹ̀ sí í fi dátà ránṣẹ́ sí ara wọn.

Kí ló dé tí a fi ń fọwọ́ mú un lẹ́ẹ̀mẹ́ta? Kì í ṣe lẹ́ẹ̀mejì, ìgbà mẹ́rin?
Ìdáhùn tí ó wọ́pọ̀ ni pé, “Nítorí pé ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta ló ń fúnni ní agbára láti gba àti láti fi ránṣẹ́.” Ìdáhùn yìí tọ́, ṣùgbọ́n ìdí lásán ni, kò gbé ìdí pàtàkì kalẹ̀. Nínú èyí tí ó tẹ̀lé e, màá ṣe àgbéyẹ̀wò àwọn ìdí fún ìfọwọ́sowọ́pọ̀ mẹ́ta láti apá mẹ́ta láti mú kí òye wa nípa ọ̀ràn yìí jinlẹ̀ sí i.

Gbigbọn ọwọ́ ọ̀nà mẹ́ta lè yẹra fún ìbẹ̀rẹ̀ àwọn ìsopọ̀ tí a ti ń tún ṣe tẹ́lẹ̀ ní ìtàn (ìdí pàtàkì)
Ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta náà ń fi hàn pé àwọn ẹgbẹ́ méjèèjì ti gba nọ́mbà ìtẹ̀léra àkọ́kọ́ tí ó ṣeé gbẹ́kẹ̀lé.
Gbigbọ ọwọ́ onípele mẹ́ta yẹra fún fífi àwọn ohun ìní ṣòfò.

Ìdí 1: Yẹra fún Àwọn Ìsopọ̀ Onípele-ẹ̀dá Ìtàn
Ní kúkúrú, ìdí pàtàkì tí wọ́n fi ń gbá ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta ni láti yẹra fún ìdàrúdàpọ̀ tí ìpilẹ̀ṣẹ̀ ìsopọ̀ àdàpọ̀ àtijọ́ ń fà. Nínú àyíká nẹ́tíwọ́ọ̀kì tí ó díjú, a kì í sábà fi àwọn packet data ránṣẹ́ sí olùgbàlejò ibi tí a fẹ́ dé ní ìbámu pẹ̀lú àkókò tí a yàn, àti pé àwọn packet data àtijọ́ lè kọ́kọ́ dé sí olùgbàlejò ibi tí a fẹ́ dé nítorí ìdènà nẹ́tíwọ́ọ̀kì àti àwọn ìdí mìíràn. Láti yẹra fún èyí, TCP ń lo ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta láti fi ìsopọ̀ náà múlẹ̀.

ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta yẹra fún àwọn ìsopọ̀ tí ó jọra ti ìtàn

Nígbà tí oníbàárà bá fi ọ̀pọ̀lọpọ̀ àwọn pọ́ọ̀tì ìsopọ̀ SYN ránṣẹ́ ní ìtẹ̀léra, ní àwọn ipò bí ìdàrúdàpọ̀ nẹ́tíwọ́ọ̀kì, àwọn wọ̀nyí lè ṣẹlẹ̀:

1- Àwọn páálí SYN àtijọ́ máa ń dé sí server kí ó tó di pé àwọn páálí SYN tuntun dé.
2- Ẹ̀rọ olupin naa yoo dahun si packet SYN + ACK si alabara naa lẹhin ti o ba ti gba packet SYN atijọ naa.
3- Nígbà tí oníbàárà bá gba àpò SYN + ACK, ó máa ń pinnu pé àsopọ̀ náà jẹ́ ìsopọ̀ ìtàn (nọ́mbà ìtẹ̀léra ti parí tàbí àkókò ìparí) gẹ́gẹ́ bí ipò tirẹ̀, lẹ́yìn náà ó máa ń fi àpò RST ránṣẹ́ sí olupin náà láti dá ìsopọ̀ náà dúró.

Pẹ̀lú ìsopọ̀mọ́ ọwọ́ méjì, kò sí ọ̀nà láti mọ̀ bóyá ìsopọ̀mọ́ lọ́wọ́lọ́wọ́ jẹ́ ìsopọ̀mọ́ ìtàn. Ìsopọ̀mọ́ ọwọ́ mẹ́ta náà ń jẹ́ kí oníbàárà mọ̀ bóyá ìsopọ̀mọ́ lọ́wọ́lọ́wọ́ jẹ́ ìsopọ̀mọ́ ìtàn tí ó dá lórí àyíká ọ̀rọ̀ nígbà tí ó bá ṣetán láti fi packet kẹta ránṣẹ́:

1- Tí ó bá jẹ́ ìsopọ̀ ìtàn (nọ́mbà ìtẹ̀léra ti parí tàbí àkókò tí ó ti parí), pákẹ́ẹ̀tì tí ọwọ́ ìfọwọ́sowọ́pọ̀ kẹta fi ránṣẹ́ jẹ́ pákẹ́ẹ̀tì RST láti dá ìsopọ̀ ìtàn náà dúró.
2- Tí kì í bá ṣe ìsopọ̀ ìtàn, pákẹ́ẹ̀tì tí a fi ránṣẹ́ fún ìgbà kẹta jẹ́ pákẹ́ẹ̀tì ACK, àwọn ẹgbẹ́ méjèèjì tí wọ́n ń bá ara wọn sọ̀rọ̀ sì ṣe àṣeyọrí láti fi ìsopọ̀ náà múlẹ̀.

Nítorí náà, ìdí pàtàkì tí TCP fi ń lo ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta ni pé ó ń bẹ̀rẹ̀ ìsopọ̀ náà láti dènà àwọn ìsopọ̀ ìtàn.

Idi 2: Lati mu awọn nọmba itẹlera akọkọ ti awọn ẹgbẹ mejeeji ṣiṣẹ pọ
Àwọn ẹ̀gbẹ́ méjèèjì ti ìlànà TCP gbọ́dọ̀ ní nọ́mbà ìtẹ̀léra kan, èyí tí ó jẹ́ kókó pàtàkì láti rí i dájú pé ìgbésẹ̀ náà ṣeé gbẹ́kẹ̀lé. Àwọn nọ́mbà ìtẹ̀léra kó ipa pàtàkì nínú àwọn ìsopọ̀ TCP. Wọ́n ń ṣe àwọn wọ̀nyí:

Olùgbà náà lè mú ìwífún méjì kúrò kí ó sì rí i dájú pé ìpéye ìwífún náà péye.

Olùgbà náà lè gba àwọn pákẹ́ẹ̀tì ní ìtòlẹ́sẹẹsẹ nọ́mbà ìtẹ̀léra láti rí i dájú pé ìdúróṣinṣin dátà náà wà.

● Nọ́mbà ìtẹ̀léra náà lè dá àpò ìwífún tí ẹni kejì ti gbà mọ̀, èyí tí yóò mú kí ìfiránṣẹ́ ìwífún tí ó ṣeé gbẹ́kẹ̀lé ṣeé gbẹ́kẹ̀lé.

Nítorí náà, nígbà tí oníbàárà bá ti dá ìsopọ̀ TCP sílẹ̀, ó máa fi àwọn páàkì SYN pẹ̀lú nọ́mbà ìtẹ̀lé àkọ́kọ́ ránṣẹ́, ó sì ní kí olupin náà dáhùn pẹ̀lú páàkì ACK tó ń fi hàn pé ó ti gba páàkì SYN ti oníbàárà náà dáadáa. Lẹ́yìn náà, olupin náà yóò fi páàkì SYN pẹ̀lú nọ́mbà ìtẹ̀lé àkọ́kọ́ ránṣẹ́ sí oníbàárà náà, yóò sì dúró de oníbàárà náà láti dáhùn, lẹ́ẹ̀kan náà, láti rí i dájú pé àwọn nọ́mbà ìtẹ̀lé àkọ́kọ́ náà bá ara wọn mu dáadáa.

Mu awọn nọmba atẹle akọkọ ti awọn ẹgbẹ mejeeji ṣiṣẹ pọ

Bó tilẹ̀ jẹ́ pé ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́rin tún ṣeé ṣe láti mú àwọn nọ́mbà ìtẹ̀lé àkọ́kọ́ àwọn ẹgbẹ́ méjèèjì ṣọ̀kan dáadáa, a lè so àwọn ìgbésẹ̀ kejì àti ìkẹta pọ̀ sí ìgbésẹ̀ kan ṣoṣo, èyí tí yóò yọrí sí ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta. Síbẹ̀síbẹ̀, ìfọwọ́sowọ́pọ̀ méjèèjì lè mú kí nọ́mbà ìtẹ̀lé àkọ́kọ́ ti ẹgbẹ́ kan jọ́wọ́ ní àṣeyọrí láti ọ̀dọ̀ ẹgbẹ́ kejì, ṣùgbọ́n kò sí ìdánilójú pé a lè fìdí nọ́mbà ìtẹ̀lé àkọ́kọ́ ti àwọn ẹgbẹ́ méjèèjì múlẹ̀. Nítorí náà, ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta ni àṣàyàn tí ó dára jùlọ láti ṣe láti rí i dájú pé ìdúróṣinṣin àti ìgbẹ́kẹ̀lé àwọn ìsopọ̀ TCP wà.

Ìdí 3: Yẹra fún fífi àwọn ohun èlò ṣòfò
Tí “ìfọwọ́sowọ́pọ̀ méjì” bá wà, nígbà tí ìbéèrè SYN oníbàárà bá dí mọ́lẹ̀ nínú nẹ́tíwọ́ọ̀kì, oníbàárà kò le gba àpò ACK tí olupin náà fi ránṣẹ́, nítorí náà a ó fi SYN ránṣẹ́. Ṣùgbọ́n, níwọ̀n ìgbà tí kò sí ìfọwọ́sowọ́pọ̀ kẹta, olupin náà kò le pinnu bóyá oníbàárà náà gba ìfọwọ́sowọ́pọ̀ ACK láti fi ìdí ìsopọ̀ náà múlẹ̀. Nítorí náà, olupin náà le fi ìsopọ̀ kan múlẹ̀ lẹ́yìn gbígbà ìbéèrè SYN kọ̀ọ̀kan. Èyí yóò yọrí sí àwọn wọ̀nyí:

Ìfowópamọ́ àwọn ohun èlò: Tí ìbéèrè SYN ti oníbàárà bá dí, tí ó sì yọrí sí ìfiránṣẹ́ ọ̀pọ̀lọpọ̀ àwọn pọ́ọ̀tì SYN léraléra, olupin náà yóò dá ọ̀pọ̀ ìsopọ̀ tí kò dára sílẹ̀ lẹ́yìn gbígbà ìbéèrè náà. Èyí yóò yọrí sí ìfowópamọ́ àwọn ohun èlò olupin tí kò pọndandan.

Ìpamọ́ ìránṣẹ́: Nítorí àìsí ìfọwọ́sowọ́pọ̀ kẹta, olupin kò ní ọ̀nà láti mọ̀ bóyá oníbàárà náà gba ìjẹ́wọ́ ACK tó tọ́ láti fi ìdí ìsopọ̀ náà múlẹ̀. Nítorí náà, tí àwọn ìránṣẹ́ bá di mọ́ inú nẹ́tíwọ́ọ̀kì náà, oníbàárà náà yóò máa fi àwọn ìbéèrè SYN ránṣẹ́ leralera, èyí tí yóò mú kí olupin náà máa dá àwọn ìsopọ̀ tuntun sílẹ̀ nígbà gbogbo. Èyí yóò mú kí ìdènà nẹ́tíwọ́ọ̀kì àti ìdádúró pọ̀ sí i, yóò sì ní ipa búburú lórí iṣẹ́ nẹ́tíwọ́ọ̀kì gbogbogbòò.

Yẹra fún fífi àwọn ohun ìní ṣòfò

Nítorí náà, láti rí i dájú pé ìdúróṣinṣin àti ìgbẹ́kẹ̀lé ìsopọ̀ nẹ́tíwọ́ọ̀kì náà wà, TCP ń lo ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta láti fi ìdí ìsopọ̀ náà múlẹ̀ láti yẹra fún ìṣẹ̀lẹ̀ àwọn ìṣòro wọ̀nyí.

Àkótán
ÀwọnAlagbata Paketi NẹtiwọọkiA ṣe ìdásílẹ̀ ìsopọ̀ TCP pẹ̀lú ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta. Nígbà ìfọwọ́sowọ́pọ̀ ọ̀nà mẹ́ta, oníbàárà náà kọ́kọ́ fi pákẹ́ẹ̀tì kan pẹ̀lú àsíá SYN ránṣẹ́ sí olupin náà, èyí tí ó fi hàn pé ó fẹ́ láti dá ìsopọ̀ sílẹ̀. Lẹ́yìn tí ó bá ti gba ìbéèrè láti ọ̀dọ̀ oníbàárà náà, olupin náà yóò dá pákẹ́ẹ̀tì kan pẹ̀lú àsíá SYN àti ACK padà sí oníbàárà náà, èyí tí yóò fi hàn pé a ti gba ìbéèrè ìsopọ̀ náà, yóò sì fi nọ́mbà ìtẹ̀léra àkọ́kọ́ tirẹ̀ ránṣẹ́. Níkẹyìn, oníbàárà náà yóò dáhùn pẹ̀lú àsíá ACK sí olupin náà láti fi hàn pé a ti ṣe àṣeyọrí ìsopọ̀ náà. Nítorí náà, àwọn ẹgbẹ́ méjèèjì wà ní ipò tí a ti ṣètò wọ́n, wọ́n sì lè bẹ̀rẹ̀ sí í fi dátà ránṣẹ́ sí ara wọn.

Ni gbogbogbo, ilana mimu ọwọ ọna mẹta fun idasile asopọ TCP ni a ṣe lati rii daju pe asopọ duro ṣinṣin ati igbẹkẹle, yago fun idamu ati egbin awọn orisun lori awọn asopọ itan, ati rii daju pe awọn ẹgbẹ mejeeji ni anfani lati gba ati firanṣẹ data.


Àkókò ìfìwéránṣẹ́: Jan-08-2025