Dejinta Isku xirka TCP
Marka aan baadhno shabkada, dirno iimayl, ama ciyaarno ciyaarta khadka tooska ah, inta badan kama fikirno xidhiidhka adag ee ka dambeeya. Si kastaba ha ahaatee, waa tallaabooyinkan u muuqda kuwa yar yar kuwaas oo xaqiijinaya xidhiidhka xasilloon ee naga dhexeeya annaga iyo server-ka. Mid ka mid ah tillaabooyinka ugu muhiimsan waa dejinta isku xirka TCP, iyo xudunta tani waa gacan-qaadka saddexda dhinac.
Maqaalkani wuxuu si faahfaahsan uga hadli doonaa mabda'a, habka iyo muhiimada gacan-qaadka saddexda dhinac. Tallaabo tallaabo ah, waxaan kuu sharixi doonaa sababta loo baahan yahay is-gacan-qaadka saddex-geesoodka ah, sida ay u xaqiijiso xasilloonida xiriirka iyo isku halaynta, iyo sida ay muhiim ugu tahay wareejinta xogta. Iyadoo si qoto dheer loo fahmo is-gacan-qaadka saddexda dhinac ah, waxaan heli doonnaa faham wanaagsan oo ku saabsan hababka asaasiga ah ee isgaarsiinta shabakada iyo aragti cad oo ku saabsan isku halaynta isku xirka TCP.
Habka Gacan-qaadka Saddex-jid ee TCP iyo Kala-guurka Gobolka
TCP waa hab-raaca gaadiidka ee ku wajahan isku xirka, kaas oo u baahan in la sameeyo xiriir ka hor gudbinta xogta. Habka aasaasida isku xidhka waxa lagu sameeyaa gacan-qaad saddex geesood ah.
Aynu si qoto dheer u eegno xirmooyinka TCP ee lagu soo diro xiriir kasta.
Markii hore, macmiilka iyo server-ka labaduba way xidhan yihiin. Marka hore, server-ku si firfircoon ayuu u dhegeystaa dekedda wuxuuna ku yaalaa gobolka DHAGEYSO, taas oo macnaheedu yahay in server-ka la bilaabo. Marka xigta, macmiilku wuxuu diyaar u yahay inuu bilaabo gelitaanka bogga shabakadda.Waxay u baahan tahay in la sameeyo xiriir la leh server-ka. Qaabka xirmada isku xirka koowaad waa sida soo socota:
Marka macmiilku bilaabo isku xidhka, waxa uu abuuraa lambar isku xigxiga oo random ah (client_isn) oo waxa uu geliyaa goobta "lambarka isku xigxiga" ee madaxa TCP. Isla mar ahaantaana, macmiilku wuxuu dhigayaa booska calanka SYN 1 si uu u muujiyo in baakidhku yahay baakidh SYN ah. Macmiilku waxa uu tilmaamayaa in uu rabo in uu xidhiidh la sameeyo serferka isaga oo u soo diraya xidhmada SYN ee ugu horaysa serferka. Xidhmadan kuma jiraan xogta lakabka codsiga (taasi waa xogta la diray). Halkaa marka ay marayso, heerka macmiilka waxa loo calaamadeeyay SYN-SENT.
Marka server-ku uu ka helo xirmada SYN ee macmiilka, waxa uu si aan kala sooc lahayn u bilaabaya lambarkiisa taxanaha ah (server_isn) ka dibna waxa uu lambarkaas gelinayaa goobta "lambarka Serial" ee madaxa TCP. Marka xigta, server-ku wuxuu galayaa client_isn + 1 goobta "lambarka aqoonsiga" wuxuuna dejiyaa labadaba SYN iyo ACK bits 1. Ugu dambeyntii, server-ku wuxuu u diraa xirmada macmiilka, kaas oo aan ku jirin xogta lakabka codsiga (iyo wax xog ah oo loogu talagalay server-ka diri). Wakhtigan, seerfarku waxa uu joogaa gobolka SYN-RCVD.
Marka macmiilku ka helo xirmada server-ka, wuxuu u baahan yahay inuu sameeyo hagaajinta soo socota si uu uga jawaabo xirmada jawaabta ugu dambeysa: Marka hore, macmiilku wuxuu dejiyaa xoogaa ACK ee madaxa TCP ee xirmada jawaabta 1; Marka labaad, macmiilku wuxuu galayaa qiimaha server_isn + 1 ee goobta "Xaqiiji lambarka jawaabta"; Ugu dambeyntii, macmiilku wuxuu u soo diri xirmada server-ka. Xirmadan waxay xogta ka qaadi kartaa macmiilka una gudbisa server-ka. Marka la dhammeeyo hawlgalladan, macmiilku waxa uu geli doonaa gobolka SAMEEYAY.
Mar uu seerfarku ka helo baakadda jawaabta macmiilka, waxa uu sidoo kale u wareegayaa gobolka ESTABLISHED.
Sida aad ka arki karto habka kor ku xusan, markaad samaynayso gacan-qaad saddex-gees ah, gacan-qaadka saddexaad ayaa loo oggol yahay inuu qaado xogta, laakiin labada gacan-qaad ee hore maaha. Tani waa su'aal inta badan lagu weydiiyo wareysiyada. Marka la dhammeeyo is-gacan-qaadka saddex-geesoodka ah, labada dhinacba waxay gelayaan gobolka ESTABLISHED, taas oo muujinaysa in xidhiidhka si guul leh loo sameeyay, markaas macmiilka iyo server-ka waxay bilaabi karaan inay isku diraan xogta midba midka kale.
Waa maxay sababta saddex gacan qaad? Laba jeer maaha, afar jeer?
Jawaabta guud waa, "Sababtoo ah gacan-qaadka saddex-geesoodka ah wuxuu dammaanad qaadayaa awoodda wax-ku-soo-celinta iyo soo dirida." Jawaabtu waa sax, laakiin waa sababta dusha sare, ma soo bandhigto sababta ugu weyn. Inta soo socota, waxaan ku lafo-guri doonaa sababaha keenay gacan-qaadka saddex-geesoodka ah oo aan ka eegayno saddex dhinac si aan u sii qoto dheerno fahamkeenna arrintan.
Gacanqaad saddex-geesood ah ayaa si wax ku ool ah uga fogaan kara bilowga xiriirinta soo noqnoqda ee taariikh ahaan (sababta ugu weyn)
Gacan-qaadka saddex-geesoodka ahi waxa uu dammaanad qaadayaa in labada dhinacba ay heleen nambar isku xigxig oo bilaw ah oo la isku halayn karo.
Gacan-qaadka saddex-geesoodka ah wuxuu ka fogaanayaa luminta kheyraadka.
Sababta 1: Ka Fogow Ku biirista Kooban ee Taariikhiga ah
Isku soo wada duuboo, sababta ugu weyn ee gacan qaadka saddexda dhinac ah waa in laga fogaado jahawareer ka dhashay xiriirkii hore ee nuqul ka mid ah. Jawi isku-xidhan oo adag, gudbinta baakidhyada xogta mar walba looma diro goobta martida loo yahay iyadoo la raacayo wakhtiga la cayimay, baakidhkii xogta hore ayaa laga yaabaa inay marka hore yimaadaan goobta martida loo yahay sababtoo ah cidhiidhiga shabakada iyo sababo kale. Si taas looga fogaado, TCP waxay isticmaashaa gacan qaad saddex-geesood ah si loo dhiso xiriirka.
Marka macmiilku u soo diro xidhmooyin badan oo xidhiidh ah oo ku xidhidh SYN ah, xaaladaha sida cidhiidhiga shabakada, waxa soo socdaa dhici kara:
1- Baakadihii hore ee SYN waxay soo galaan server-ka ka hor xirmooyinkii ugu dambeeyay ee SYN.
2- Server-ku waxa uu macmiilka ugu jawaabayaa baakidh SYN + ACK ah kadib marka uu helo xidhmada SYN ee hore.
3- Marka uu macmiilku helo xidhmada SYN + ACK, waxa ay go’aaminaysaa in xidhiidhku yahay xidhiidh taariikhi ah (sequence number exered or timeout) sida ay xaaladiisu tahay, kadibna waxa ay u dirtaa baakadda RST ee Server-ka si uu xidhiidhka u joojiyo.
Xiriirka laba-gacan-qaadka ah, ma jirto si loo go'aamiyo haddii xiriirka hadda jira uu yahay xiriir taariikhi ah. Gacan-qaadka saddex-geesoodka ah ayaa u oggolaanaya macmiilka inuu go'aamiyo in xidhiidhka hadda jira uu yahay xidhiidh taariikhi ah oo ku salaysan macnaha guud marka uu diyaar u yahay inuu soo diro xirmada saddexaad:
1- Haddii ay tahay xiriir taariikhi ah (nambarka isku xigxiga wuu dhacay ama waqtigu dhammaaday), baakadda ay soo dirtay gacan-qaadka saddexaad waa baakidh RST ah oo lagu baabi'inayo xidhiidhka taariikheed.
2- Haddii aysan ahayn xiriir taariikhi ah, xirmada mar saddexaad la soo diray waa ACK baakidh, labada dhinac ee wada xiriirayna waxay ku guuleysteen inay xiriiriyaan.
Sidaa darteed, sababta ugu weyn ee TCP ay u isticmaasho is-gacan-qaadka saddex-geesoodka ah waa in ay bilawdo xiriirka si looga hortago isku-xirnaanta taariikhiga ah.
Sababta 2: Si aad isula meel dhigto tirooyinka isku xigxiga ee labada dhinac
Labada dhinac ee borotokoolka TCP waa in ay ilaaliyaan nambarka isku xigxiga, taas oo ah arrin muhiim ah si loo xaqiijiyo gudbinta la isku halayn karo. Tirooyinka isku xigxiga waxay door muhiim ah ka ciyaaraan isku xirka TCP. Waxay sameeyaan kuwa soo socda:
Qaaduhu wuxuu baabi'in karaa xogta nuqul ka mid ah wuxuuna hubin karaa saxnaanta xogta.
Qaadayuhu wuxuu heli karaa baakado siday u kala horreeyaan nambarka isku xigxiga si loo hubiyo daacadnimada xogta.
● Nambarka isku xigxiga wuxuu aqoonsan karaa xirmada xogta ee uu helay dhinaca kale, taasoo u sahlaysa gudbinta xog la isku halayn karo.
Sidaa darteed, marka la sameeyo isku xidhka TCP, macmiilku waxa uu soo diraa baakidhyo SYN ah oo wata lambarka isku xigxiga ee bilawga ah waxana uu u baahan yahay adeegaha inuu kaga jawaabo xidhmo ACK ah oo tilmaamaya soo dhawaynta guusha leh ee xidhmada SYN ee macmiilka. Kadibna, adeeguhu waxa uu u soo diraa xidhmada SYN ee leh nambarka isku xigxiga ee bilowga ah macmiilka oo waxa uu sugayaa macmiilku in uu ka jawaabo, hal mar iyo dhammaanba, si loo hubiyo in tirooyinka isku xigxiga ee bilawga ah si la isku halleyn karo la isla meel dhigay.
In kasta oo gacan-qaadka afar-geesoodka ahi uu sidoo kale suurtogal yahay in si la isku halleyn karo la isu waafajiyo tirooyinka isku xigxiga ee labada dhinac, tillaabooyinka labaad iyo saddexaad waxaa la isugu dari karaa hal tallaabo, taasoo keenta gacan-qaad saddex dhinac ah. Si kastaba ha ahaatee, labada is-gacan-qaadku waxay dammaanad qaadi karaan oo keliya in tirada isku xigxiga ee hal dhinac ay si guul leh u heshay dhinaca kale, laakiin ma jirto dammaanad qaadka in tirada isku xigxiga ee labada dhinacba la xaqiijin karo. Sidaa darteed, is-gacan-qaadka saddex-geesoodka ah ayaa ah doorashada ugu wanaagsan ee la qaadan karo si loo hubiyo xasilloonida iyo isku-kalsoonaanta isku-xirnaanta TCP.
Sababta 3: Ka Fogoow Dhuminta Khayraadka
Haddii ay jirto kaliya "laba gacan qaad", marka codsiga macmiilka SYN laga xannibo shabakada, macmiilku ma heli karo baakadda ACK ee uu soo diray server-ku, markaa SYN waa la soo diraa. Si kastaba ha ahaatee, maadaama aysan jirin gacan-qaad saddexaad, adeeguhu ma go'aamin karo haddii macmiilku helay aqoonsiga ACK si loo dhiso xiriirka. Sidaa darteed, server-ku waxa uu si firfircoon u samaysan karaa xidhiidh ka dib marka uu helo codsi kasta oo SYN ah. Tani waxay keenaysaa kuwan soo socda:
Qashinka kheyraadka: Haddii codsiga SYN ee macmiilka la xannibo, taasoo keentay gudbinta soo noqnoqda ee baakidhyo badan oo SYN ah, adeeguhu wuxuu dhisi doonaa xidhiidho badan oo aan sax ahayn ka dib marka uu helo codsiga. Tani waxay keenaysaa qashinka aan loo baahnayn ee ilaha serverka.
Haynta fariinta: La'aanta gacan qaadka saddexaad awgeed, seerfarku ma hayo si uu ku ogaado in macmiilku si sax ah u helay aqoonsiga ACK si loo dhiso xidhiidhka. Natiijo ahaan, haddii farriimaha ay ku xayirmaan shabakadda, macmiilku wuxuu sii wadi doonaa soo dirida codsiyada SYN marar badan, taasoo keenaysa in server-ku si joogto ah u sameeyo xiriiryo cusub. Tani waxay kordhin doontaa ciriiriga shabakada iyo dib u dhigista waxayna si xun u saameyn doontaa waxqabadka guud ee shabakada.
Sidaa darteed, si loo hubiyo xasilloonida iyo isku halaynta isku xirka shabakada, TCP waxay isticmaashaa gacan-qaadka saddexda dhinac si loo dhiso xiriirka si looga fogaado dhacdooyinka dhibaatooyinkan.
Soo koobid
TheDallaalka Xidhmada ShabakaddaSamaynta isku xirka TCP waxaa lagu sameeyaa gacanqaad saddex geesood ah. Inta lagu guda jiro gacan-qaadka saddexda dhinac, macmiilku wuxuu marka hore u soo dirayaa baakidh uu ku qoran yahay calanka SYN server-ka, taasoo muujinaysa inuu rabo inuu sameeyo xidhiidh. Kadib marka uu helo codsiga macmiilka, adeeguhu waxa uu macmiilka ugu jawaabayaa xidhmo ay ku jiraan calamada SYN iyo ACK, taas oo muujinaysa in codsiga xidhiidhka la aqbalay, oo uu soo dirayo lambarkiisa taxanaha ah. Ugu dambayntii, macmiilku wuxuu kaga jawaabayaa calanka ACK seerfarka si uu u muujiyo in xidhiidhka si guul leh loo sameeyay. Haddaba, labada dhinacba waxay ku sugan yihiin xaaladdii la dhisay oo waxay bilaabi karaan inay isu diraan xogta midba midka kale.
Guud ahaan, habka saddex-geesoodka ah ee is-gacan-qaadka ee aasaaska isku xirka TCP waxaa loogu talagalay in lagu xaqiijiyo xasilloonida iyo isku-kalsoonaanta xiriirka, laga fogaado jaahwareerka iyo qashinka kheyraadka ee xiriirada taariikhiga ah, iyo in la hubiyo in labada dhinacba ay awoodaan inay helaan oo soo diraan xogta.
Waqtiga boostada: Jan-08-2025