Arf Cyfrinachol TCP: Rheoli Llif Rhwydwaith a Rheoli Tagfeydd Rhwydwaith

Cludiant Dibynadwyedd TCP
Rydyn ni i gyd yn gyfarwydd â phrotocol TCP fel protocol trafnidiaeth dibynadwy, ond sut mae'n sicrhau dibynadwyedd cludiant?

Er mwyn trosglwyddo'n ddibynadwy, mae angen ystyried llawer o ffactorau, megis llygredd data, colled, dyblygu a shardiau y tu allan i drefn. Os na ellir datrys y problemau hyn, ni ellir trosglwyddo trosglwyddiad dibynadwy.

Felly, mae TCP yn cyflogi mecanweithiau fel rhif dilyniant, ateb cydnabod, ail -reoli, rheoli cysylltiad, a rheoli ffenestri i gyflawni trosglwyddiad dibynadwy.

Yn y papur hwn, byddwn yn canolbwyntio ar y ffenestr lithro, rheoli llif a rheoli tagfeydd TCP. Mae'r mecanwaith ail -drosglwyddo wedi'i gwmpasu ar wahân yn yr adran nesaf.

Rheoli Llif Rhwydwaith
Mae rheoli llif rhwydwaith neu a wyddys fel rheoli traffig rhwydwaith mewn gwirionedd yn amlygiad o'r berthynas gynnil rhwng cynhyrchwyr a defnyddwyr. Mae'n debyg eich bod wedi dod ar draws y senario hwn lawer yn y gwaith neu mewn cyfweliadau. Os yw gallu'r cynhyrchydd i gynhyrchu yn fwy na gallu'r defnyddiwr i fwyta, bydd yn achosi i'r ciw dyfu am gyfnod amhenodol. Mewn achos mwy difrifol, efallai y byddwch chi'n gwybod pan fydd negeseuon Rabbitmq yn pentyrru gormod, y gall achosi diraddiad perfformiad y gweinydd MQ cyfan. Mae'r un peth yn wir am TCP; Os cânt eu gadael heb eu gwirio, bydd gormod o negeseuon yn cael eu rhoi yn y rhwydwaith, a bydd y defnyddwyr wedi rhagori ar eu gallu, tra bydd y cynhyrchwyr yn parhau i anfon negeseuon dyblyg, a fydd yn effeithio'n fawr ar berfformiad y rhwydwaith.

Er mwyn mynd i'r afael â'r ffenomen hon, mae TCP yn darparu mecanwaith i'r anfonwr reoli faint o ddata a anfonir yn seiliedig ar gapasiti derbyn gwirioneddol y derbynnydd, a elwir yn rheoli llif. Mae'r derbynnydd yn cynnal ffenestr dderbyn, tra bod yr anfonwr yn cynnal ffenestr anfon. Dylid nodi bod y ffenestri hyn ar gyfer un cysylltiad TCP yn unig ac nid yw pob cysylltiad yn rhannu ffenestr.

Mae TCP yn darparu rheolaeth llif trwy ddefnyddio newidyn ar gyfer ffenestr dderbyn. Mae'r ffenestr dderbyn yn rhoi arwydd i'r anfonwr faint o le storfa sydd ar gael o hyd. Mae'r anfonwr yn rheoli faint o ddata a anfonir yn unol â gallu derbyn gwirioneddol y derbynnydd.

Mae'r gwesteiwr derbynnydd yn hysbysu'r anfonwr o faint y data y gall ei dderbyn, ac mae'r anfonwr yn anfon hyd at y terfyn hwn. Y terfyn hwn yw maint y ffenestr, cofiwch bennawd y TCP? Mae maes ffenestri derbyn, a ddefnyddir i nodi nifer y beitiau y mae'r derbynnydd yn gallu neu'n barod i'w derbyn.

Bydd y gwesteiwr anfonwr o bryd i'w gilydd yn anfon pecyn stiliwr ffenestr, a ddefnyddir i ganfod a yw'r gwesteiwr derbynnydd yn dal i allu derbyn data. Pan fydd byffer y derbynnydd mewn perygl o orlifo, mae maint y ffenestr wedi'i osod i werth llai i gyfarwyddo'r anfonwr i reoli faint o ddata a anfonir.

Dyma ddiagram rheoli llif rhwydwaith:

Rheolaeth traffig

Rheoli Tagfeydd Rhwydwaith
Cyn cyflwyno rheolaeth tagfeydd, mae angen i ni ddeall, yn ychwanegol at y ffenestr dderbyn a'r ffenestr anfon, bod ffenestr tagfeydd hefyd, a ddefnyddir yn bennaf i ddatrys y broblem ar ba gyfradd y mae'r anfonwr yn dechrau anfon data i'r ffenestr dderbyn. Felly, mae'r ffenestr tagfeydd hefyd yn cael ei chynnal gan yr anfonwr TCP. Mae angen algorithm arnom i benderfynu faint o ddata sy'n briodol i'w anfon, gan nad yw anfon rhy ychydig neu ormod o ddata yn ddelfrydol, a dyna pam y cysyniad o ffenestr tagfeydd.

Yn y rheolaeth llif rhwydwaith flaenorol, yr hyn y gwnaethom ei osgoi oedd yr anfonwr yn llenwi storfa'r derbynnydd â data, ond nid oeddem yn gwybod beth oedd yn digwydd yn y rhwydwaith. Yn nodweddiadol, mae rhwydweithiau cyfrifiadurol mewn amgylchedd a rennir. O ganlyniad, efallai y bydd tagfeydd rhwydwaith oherwydd cyfathrebu rhwng gwesteiwyr eraill.

Pan fydd tagfeydd ar y rhwydwaith, os bydd nifer fawr o becynnau yn parhau i gael eu hanfon, gall achosi problemau fel oedi a cholli pecynnau. Ar y pwynt hwn, bydd TCP yn ail -drosglwyddo'r data, ond bydd yr ail -drosglwyddo yn cynyddu'r baich ar y rhwydwaith, gan arwain at oedi mwy a mwy o golledion pecyn. Gall hyn fynd i gylch dieflig a pharhau i gynyddu.

Felly, ni all TCP anwybyddu'r hyn sy'n digwydd ar y rhwydwaith. Pan fydd tagfeydd ar y rhwydwaith, mae TCP yn aberthu ei hun trwy leihau faint o ddata y mae'n ei anfon.

Felly, cynigir rheoli tagfeydd, sy'n ceisio osgoi llenwi'r rhwydwaith cyfan â data o'r anfonwr. Er mwyn rheoleiddio faint o ddata y dylai'r anfonwr ei anfon, mae TCP yn diffinio cysyniad o'r enw'r ffenestr tagfeydd. Bydd yr algorithm rheoli tagfeydd yn addasu maint y ffenestr tagfeydd yn unol â gradd tagfeydd y rhwydwaith, er mwyn rheoli faint o ddata a anfonir gan yr anfonwr.

Beth yw ffenestr tagfeydd? Beth sydd a wnelo hyn â'r ffenestr anfon?

Mae'r ffenestr tagfeydd yn newidyn gwladol a gynhelir gan yr anfonwr sy'n pennu faint o ddata y gall yr anfonwr ei anfon. Mae'r ffenestr tagfeydd yn newid yn ddeinamig yn ôl lefel tagfeydd y rhwydwaith.

Mae'r ffenestr anfon yn faint ffenestr y cytunwyd arno rhwng yr anfonwr a'r derbynnydd sy'n nodi faint o ddata y gall y derbynnydd ei dderbyn. Mae'r ffenestr tagfeydd a'r ffenestr anfon yn gysylltiedig; Mae'r ffenestr anfon fel arfer yn hafal i isafswm y tagfeydd a'r ffenestri derbyn, hynny yw, swnd = min (cwnd, rwnd).

Mae'r ffenestr tagfeydd CWND yn newid fel a ganlyn:

Os nad oes tagfeydd yn y rhwydwaith, hy, nid oes amseriad ail -drosglwyddo yn digwydd, mae'r ffenestr tagfeydd yn cynyddu.

Os oes tagfeydd yn y rhwydwaith, mae'r ffenestr tagfeydd yn lleihau.

Mae'r anfonwr yn penderfynu a yw'r rhwydwaith yn llawn tagfeydd trwy arsylwi a yw'r pecyn cydnabod ACK yn cael ei dderbyn o fewn yr amser penodedig. Os nad yw'r anfonwr yn derbyn y pecyn cydnabod ACK o fewn yr amser penodedig, ystyrir bod tagfeydd ar y rhwydwaith.

Yn ychwanegol at y ffenestr tagfeydd, mae'n bryd trafod algorithm rheoli tagfeydd TCP. Mae algorithm rheoli tagfeydd TCP yn cynnwys tair prif ran:

Dechrau Araf:I ddechrau, mae ffenestr Tagfeydd CWND yn gymharol fach, ac mae'r anfonwr yn cynyddu'r ffenestr tagfeydd yn esbonyddol i addasu'n gyflym i allu'r rhwydwaith.
Osgoi tagfeydd:Ar ôl i'r ffenestr tagfeydd fod yn fwy na throthwy penodol, mae'r anfonwr yn cynyddu'r ffenestr tagfeydd mewn modd llinol i arafu cyfradd twf y ffenestr tagfeydd ac osgoi gorlwytho'r rhwydwaith.
Adferiad Cyflym:Os bydd tagfeydd yn digwydd, mae'r anfonwr yn haneru'r ffenestr tagfeydd ac yn mynd i mewn i'r wladwriaeth adferiad cyflym i bennu lleoliad adferiad y rhwydwaith trwy'r ACKs dyblyg a dderbynnir, ac yna mae'n parhau i gynyddu'r ffenestr tagfeydd.

Dechrau Araf
Pan sefydlir cysylltiad TCP, mae'r ffenestr tagfeydd CWND yn cael ei gosod i ddechrau i isafswm gwerth MSS (maint segment uchaf). Fel hyn, mae'r gyfradd anfon gychwynnol yn ymwneud â MSS/RTT beit/ail. Mae'r lled band gwirioneddol sydd ar gael fel arfer yn llawer mwy na MSS/RTT, felly mae TCP eisiau dod o hyd i'r gyfradd anfon orau, y gellir ei chyflawni trwy ddechrau araf.

Yn y broses cychwyn araf, bydd gwerth y ffenestr tagfeydd CWND yn cael ei gychwyn i 1 MSS, a phob tro y cydnabyddir y segment pecyn a drosglwyddir, bydd gwerth CWND yn cael ei gynyddu gan un MSS, hynny yw, bydd gwerth CWND yn dod yn 2 MSS. Ar ôl hynny, mae gwerth CWND yn cael ei ddyblu ar gyfer pob trosglwyddiad llwyddiannus o segment pecyn, ac ati. Dangosir y broses dwf benodol yn y ffigur canlynol.

 Rheoli Tagfeydd Rhwydwaith

Fodd bynnag, ni all y gyfradd anfon dyfu bob amser; Rhaid i'r twf ddod i ben rywbryd. Felly, pryd mae'r gyfradd anfon yn cynyddu i ben? Mae cychwyn araf fel arfer yn gorffen y cynnydd yn y gyfradd anfon mewn un o sawl ffordd:

Y ffordd gyntaf yw achos colli pecyn yn ystod y broses anfon o ddechrau araf. Pan fydd colled pecyn yn digwydd, mae TCP yn gosod ffenestr tagfeydd yr anfonwr CWND i 1 ac yn ailgychwyn y broses cychwyn araf. Ar y pwynt hwn, cyflwynir cysyniad o drothwy cychwyn araf SSTHREST, y mae ei werth cychwynnol yn hanner gwerth CWND sy'n cynhyrchu colli pecyn. Hynny yw, pan ganfyddir tagfeydd, mae gwerth SSthresh yn hanner gwerth y ffenestr.

Yr ail ffordd yw cydberthyn yn uniongyrchol â gwerth y trothwy cychwyn araf SSTHREST. Gan fod gwerth SSTHREST yn hanner gwerth y ffenestr pan ganfyddir tagfeydd, gall colli pecyn ddigwydd gyda phob yn dyblu pan fydd CWND yn fwy na SSthresh. Felly, mae'n well gosod CWND i SSTHREST, a fydd yn achosi i TCP newid i'r modd rheoli tagfeydd a dod i ben yn araf.

Y ffordd olaf y gall cychwyn araf ddod i ben yw os canfyddir tri ACK diangen, mae TCP yn perfformio ail -drosglwyddo cyflym ac yn mynd i mewn i'r wladwriaeth adfer. (Os nad yw'n glir pam mae tri phecyn ACK, bydd yn cael ei egluro ar wahân yn y mecanwaith ail -drosglwyddo.)

Osgoi tagfeydd
Pan fydd TCP yn mynd i mewn i'r wladwriaeth rheoli tagfeydd, mae CWND wedi'i osod i hanner y trothwy tagfeydd SSTHREST. Mae hyn yn golygu na ellir dyblu gwerth CWND bob tro y derbynnir segment pecyn. Yn lle, mabwysiadir dull cymharol geidwadol lle mae gwerth CWND yn cael ei gynyddu gan un MSS yn unig (hyd segment pecyn uchaf) ar ôl cwblhau pob trosglwyddiad. Er enghraifft, hyd yn oed os cydnabyddir 10 segment pecyn, dim ond un MSS y bydd gwerth CWND yn cynyddu. Mae hwn yn fodel twf llinol ac mae ganddo hefyd rwymyn uchaf ar dwf. Pan fydd colli pecyn yn digwydd, mae gwerth CWND yn cael ei newid i MSS, ac mae gwerth SSthresh wedi'i osod i hanner CWND. Neu bydd hefyd yn atal twf MSS pan dderbynnir 3 ymateb ACK diangen. Os derbynnir tri ACK diangen o hyd ar ôl haneru gwerth CWND, cofnodir gwerth SSthresh fel hanner gwerth CWND a chofnodir y wladwriaeth adferiad cyflym.

Adferiad Cyflym
Yn y cyflwr adferiad cyflym, mae gwerth y ffenestr tagfeydd CWND yn cael ei gynyddu gan un MSS ar gyfer pob ACK diangen a dderbynnir, hynny yw, ack nad yw'n cyrraedd yn eu trefn. Mae hyn er mwyn defnyddio'r segmentau pecyn sydd wedi'u trosglwyddo'n llwyddiannus yn y rhwydwaith i wella'r effeithlonrwydd trosglwyddo gymaint â phosibl.

Pan fydd ACK o'r segment pecyn coll yn cyrraedd, mae TCP yn lleihau gwerth CWND ac yna'n mynd i mewn i'r wladwriaeth osgoi tagfeydd. Mae hyn er mwyn rheoli maint y ffenestr tagfeydd ac osgoi cynyddu tagfeydd y rhwydwaith ymhellach.

Os bydd amser yn digwydd ar ôl y wladwriaeth rheoli tagfeydd, mae cyflwr y rhwydwaith yn dod yn fwy difrifol ac mae TCP yn mudo o'r wladwriaeth osgoi tagfeydd i'r wladwriaeth cychwyn araf. Yn yr achos hwn, mae gwerth y ffenestr tagfeydd CWND wedi'i osod i 1 MSS, hyd y segment pecyn uchaf, ac mae gwerth y trothwy cychwyn araf SSTHREST wedi'i osod i hanner CWND. Pwrpas hyn yw cynyddu maint y ffenestr tagfeydd ar ôl i'r rhwydwaith wella i gydbwyso'r gyfradd drosglwyddo a graddfa tagfeydd y rhwydwaith.

Nghryno
Fel protocol trafnidiaeth dibynadwy, mae TCP yn gweithredu cludiant dibynadwy yn ôl rhif dilyniant, cydnabod, rheoli ail -drosglwyddo, rheoli cysylltiad a rheoli ffenestri. Yn eu plith, mae'r mecanwaith rheoli llif yn rheoli faint o ddata a anfonir gan yr anfonwr yn unol â gallu derbyn gwirioneddol y derbynnydd, sy'n osgoi problemau tagfeydd rhwydwaith a diraddio perfformiad. Mae'r mecanwaith rheoli tagfeydd yn osgoi digwyddiadau rhwydwaith trwy addasu faint o ddata a anfonir gan yr anfonwr. Mae cysyniadau ffenestr tagfeydd a ffenestr anfon yn gysylltiedig â'i gilydd, ac mae faint o ddata yn yr anfonwr yn cael ei reoli trwy addasu maint y ffenestr tagfeydd yn ddeinamig. Dechrau araf, osgoi tagfeydd ac adferiad cyflym yw tair prif ran algorithm rheoli tagfeydd TCP, sy'n addasu maint y ffenestr tagfeydd trwy wahanol strategaethau i addasu i raddau gallu a thagfeydd y rhwydwaith.

Yn yr adran nesaf, byddwn yn archwilio mecanwaith ail -drosglwyddo TCP yn fanwl. Mae mecanwaith ail -drosglwyddo yn rhan bwysig o TCP i gael trosglwyddiad dibynadwy. Mae'n sicrhau trosglwyddiad data yn ddibynadwy trwy ail -drosglwyddo data coll, llygredig neu oedi. Bydd egwyddor weithredu a strategaeth y mecanwaith ail -drosglwyddo yn cael ei gyflwyno a'i ddadansoddi yn fanwl yn yr adran nesaf. Arhoswch yn tiwnio!


Amser Post: Chwefror-24-2025