Congestionphenomenon
Nameexplanation
Thethroughputofthenetworkiscloselyrelatedtothecommunicationsubnetload(thatis,thenumberofpacketsbeingtransmittedinthecommunicationsubnet).Whenthecommunicationsubnetloadisrelativelysmall,thenetworkthroughput(numberofpackets/sec)increaseslinearlywiththeincreaseofthenetworkload(theaveragenumberofpacketsineachnode).Whenthenetworkloadincreasestoacertainvalue,ifthenetworkthroughputdropsinstead,itindicatesthatthereiscongestioninthenetwork.Inacongestednetwork,packetsarrivingatanodewillencounternobufferavailable,sothesepacketshavetoberetransmittedbythepreviousnode,orneedtoberetransmittedbythesourcenodeorthesourcesystem.Whenthecongestionisserious,considerabletransmissioncapacityandnodebuffersinthecommunicationsubnetareusedforthiskindofunnecessaryretransmission,whichreducestheeffectivethroughputofthecommunicationsubnet.Thiscausesaviciouscircle,whichmakespartsofthecommunicationsubnetorevenalloftheminadeadlockstate,andultimatelyleadstotheeffectivethroughputofthenetworkbeingclosetozero.
Reasonsforcongestion
(1)Multipleincominglineshavepacketsarrivingandneedthesameoutputline.Atthistime,iftherouterdoesnothaveenoughmemorytostoreallthesepackets,Thensomepacketswillbelost.
(2)Becauseoftherouter'sslowprocessor,itisdifficulttocompletethenecessaryprocessingwork,suchasbufferqueuing,updatingtheroutingtable,andsoon.
Methodstopreventcongestion
(1)Atthetransportlayer,itcanbeused:retransmissionstrategy,out-of-ordercachingstrategy,confirmationstrategy,flowcontrolstrategyanddeterminingtimeoutstrategy.
(2)Atthenetworklayer,itcanbeused:virtualcircuitanddatagramstrategywithinthesubnet,packetqueuingandservicestrategy,packetdiscardstrategy,routingalgorithmandpacketsurvivalmanagement.
(3)Atthedatalinklayer,itcanbeused:retransmissionstrategy,out-of-ordercachingstrategy,confirmationstrategyandflowcontrolstrategy.
Controlmethod
Bufferpre-allocationmethod
Thismethodisusedinvirtualcircuitpacketswitchingnetworks.Whenestablishingavirtualcircuit,letthenodethroughwhichthecallrequestpacketpassestoallocateoneormoredatabuffersforthevirtualcircuitinadvance.Ifthebufferofacertainnodeisfull,thecallrequestpacketselectsanotherroute,orreturnsa"busy"signaltothecaller.Inthisway,throughthepermanentbufferarea(untilthevirtualcircuitisdismantled)establishedbyeachnodeonthewayforeachvirtualcircuit,therewillalwaysberoomtoreceiveandforwardthepassingpacket.Atthistime,packetswitchingisverysimilartocircuitswitching.Whenthenodereceivesapacketandforwardsit,thenodereturnsanacknowledgmentmessagetothesendingnode.Ontheonehand,theconfirmationindicatesthatthereceivingnodehasreceivedthepacketcorrectly,andontheotherhand,ittellsthesendingnodethatthenodehasvacatedthebufferforreceivingthenextpacket.Theaboveisthecaseofthe"stop-wait"protocol.Iftheagreementbetweennodesallowsmultipleunprocessedpacketstoexist,inordertocompletelyeliminatethepossibilityofcongestion,eachnodemustreservetheequivalentofawindowforeachvirtualcircuitThesizeandnumberofbuffers.Thismethodhasconsiderableresources(linecapacityorstoragespace)occupiedbyaconnectionregardlessofwhetherthereistrafficornot,sotheeffectiveutilizationofnetworkresourcesisnothigh.Thiscontrolmethodismainlyusedinoccasionsthatrequirehighbandwidthandlowdelay,suchasvirtualcircuitsthattransmitdigitalvoiceinformation.
Packetdiscardingmethod
Thismethoddoesnotneedtoreservethebufferinadvance.Whenthebufferisfull,theincomingpacketsarediscarded.Ifthecommunicationsubnetprovidesdatagramservices,theuseofpacketdroppingmethodtopreventcongestionwillnotcauseabigimpact.However,ifthecommunicationsubnetprovidesvirtualcircuitservices,abackupofthediscardedpacketsmustbestoredsomewheresothattheycanberetransmittedafterthecongestionisresolved.Therearetwowaystosolvetheretransmissionofthediscardedpacket.Oneistoallowthenodethatsentthediscardedpackettotimeoutandretransmitthepacketuntilthepacketisreceived;theotheristoletthenodethatsentthediscardedpackettryacertainnumberoftimes.Giveupsending,andforcethedatasourcenodetotimeoutandstartsendingagain.However,itisnotappropriatetodiscardpacketswithoutdiscrimination,becauseapacketcontainingconfirmationinformationcanreleasethenode'sbuffer.Ifthenodeelementhasafreebuffertoreceivethepacketcontainingtheconfirmationinformation,thiswillmakethenodebufferloseonetime.Opportunityforrelease.Thewaytosolvethisproblemcanbetopermanentlyreserveabufferforeachinputlinktoreceiveanddetectallincomingpackets.Forpacketswithconfirmationinformation,afterusingthepiggybackconfirmationtoreleasethebuffer,thenDiscardthepacketorsavethepiggybackedpacketinthebufferjustvacated.
QuotaControlMethod
Thismethodsetsanappropriateamountofspecialinformationcalled"licenses"inthecommunicationsubnet,andsomelicensesarepre-setbeforethecommunicationsubnetstartstowork.Itisallocatedtoeachsourcenodebyacertainstrategy,andtheotherpartwilltravelaroundthenetworkafterthesubnetstartstowork.Whenthesourcenodewantstosendapacketfromthesourceendsystem,itmustfirsthavealicense,andcancelalicenseforeachpacketsent.Thedestinationnodewillgeneratealicenseeverytimeitreceivesapacketandsubmitsittothedestinationsystem.Inthisway,itcanbeensuredthatthenumberofpacketsinthesubnetwillnotexceedthenumberoflicenses,thuspreventingtheoccurrenceofcongestion.
Deadlockprevention
Theextremeconsequenceofcongestionisdeadlock.
Deadlockisoneofthemostlikelyfailuresinthenetwork,evenwhenthenetworkloadisnotheavy.Whenadeadlockoccurs,agroupofnodescannotreceiveandforwardpacketsbecausethereisnofreebuffer.Thenodeswaitforeachotherandcanneitherreceivenorforwardpackets.Thisdeadlockhasbeenmaintained,andeventheentirenetworkcanbeparalyzedinseverecases..Atthistime,onlymanualinterventioncanbeusedtorestartthenetworkandremovethedeadlock.However,thehiddendangerofdeadlockisnoteliminatedafterrestarting,sodeadlockmayoccuragain.Deadlockiscausedbysomedefectsincontroltechnology.Thecauseisusuallyelusiveanddifficulttofind.Evenifitisdiscovered,itisoftennotimmediatelyrepaired.Therefore,howtoavoidthedeadlockproblemmustbeconsideredineachlayerprotocol.
Store-and-forwarddeadlockanditsprevention
Themostcommondeadlockisthedirectstore-and-forwarddeadlockthatoccursbetweentwonodes.Forexample,allbuffersofnodeAarefilledwithpacketswaitingtobeoutputtonodeB,andallbuffersofnodeBarealsofilledwithpacketswaitingtobeoutputtonodeA;atthistime,nodeAcannotreceivepacketsfromnodeB,NodeBcannotreceivepacketsfromNodeA,whichcausesadeadlockbetweenthetwonodes.Thissituationmayalsooccurbetweenagroupofnodes.Forexample,nodeAattemptstosendapackettonodeB,nodeBattemptstosendapackettonodeC,andnodeCattemptstosendapackettonodeA,butatthistimeeachnodeThereisnofreebufferforreceivingpackets.Thissituationiscalledindirectstore-and-forwarddeadlock.Whenanodeisinadeadlockstate,alllinksconnectedtoitwillbecompletelycongested.
Onewaytopreventstore-and-forwarddeadlockistosetupM+1buffersforeachnodeandnumberthemfrom0toM.Misthediameterofthecommunicationsubnet,thatis,themaximumnumberoflinksegmentsfromanysourcenodetoanydestinationnode.Eachsourcenodecanreceivethepacketfromthesourcesystemonlywhenitsbuffer0isempty,andthispacketcanonlybeforwardedtotheneighboringnodewherethebuffer1isfree,andthenthenodeforwardsthepackettoits2Neighboringnodeswithfreebuffernumber...Finally,thepacketeithersuccessfullyreachedthedestinationnodeandwasdeliveredtothedestinationsystem,oritcouldnolongerbeforwardedinthebufferofanodenumberedM.Atthistime,itmusthavehappened.Loop,thepacketshouldbediscarded.Sinceeachgroupingallocatesbuffersaccordingtotheincreasingruleofnumber,nodeswillnotwaitforeachotherforfreebufferstocausedeadlock.Thedisadvantageofthismethodisthatwhenanodehasafreebuffer,buthappenstonothaveabufferwithaspecificnumberthatitneeds,thepacketstillhastowait,whichresultsinawasteofbuffersandlinks.
Anotherwaytopreventstore-and-forwarddeadlockistomakeeachpacketcarryaglobalandunique"timestamp",andeachnodemustreserveaspecialThereceivingbufferarea,andotherbufferareascanbeusedtostoretransitpackets.Onthequeueofeachoutputlink,thepacketsarequeuedintheorderoftimestamp.Forexample,nodeAwantstosendapackettonodeB.IfnodeBhasnofreebuffer,buttherehappenstobeapackettobesenttonodeA,thennodeAandnodeBcanexchangepacketsthroughaspecialreceivingbuffer;ifnodeBThereisneitherafreebuffernorapackettobesenttonodeA.NodeBhastoforceapacketwhoseoutletdirectionisroughlythesameasthatofnodeAtoexchangepacketswithnodeA,butatthistime,thepacketinnodeAmustbehigherthanthatinnodeB.Thepacketinthenodehasanearliertimestamp,sothattheearliestpacketinthesubnetcanbeforwardedtothedestinationwithoutbeingblocked.Itcanbeseenthateachpacketwilleventuallybecometheearliestpacketandcanalwaysbesenttothedestinationnodestepbystep,thusavoidingtheoccurrenceofdeadlock.
Reinstallationdeadlockanditsprevention
Themoreseriouscaseofdeadlockisthereinstallationdeadlock.Assumingthatthemessagesenttoanendsystemisverylongandissplitintoseveralpacketsbythesourcenodeandsent,thedestinationnodemustreassembleallpacketswiththesamenumberintoamessageandsubmitittothedestinationsystem.IfthedestinationnodeisusedforreinstallationThebufferspaceofthemessageislimited,anditcannotknowhowmanypacketsthemessageisbeingreceived.Atthistime,aseriousproblemmayoccur:inordertoreceivemorepackets,thedestinationnoderanoutofitsbufferSpace,butitcannotdelivertheunassembledmessagetothedestinationsystem,andtheneighboringnodeisstillsendingpacketstoit,butitcannotreceiveit.Inthisway,aftermanyattempts,theneighboringnodewilldetourtosendpacketstothedestinationnodefromotherways,butthedestinationnodehasbeendeadlocked,anditssurroundingareahasalsobeencongested.Thefollowingmethodscanbeusedtoavoidthereinstallationdeadlock:
①Allowthedestinationnodetosubmitincompletemessagestothedestinationsystem;
②OnecannotbecompletelyreinstalledThemessagecanbedetected,andthesourcesystemthatsendsthemessageisrequiredtoretransmit;
③Eachnodeisequippedwithabackupbufferspacetotemporarilystoreincompletemessages.
①and②twomethodscannotsolvethereinstallationdeadlocksatisfactorily,becausetheycomplicatetheprotocolintheendsystem.Ingeneraldesign,thenetworklayershouldbetransparenttotheendsystem,thatis,theendsystemshouldnotconsiderthingssuchasmessagedisassemblyandassembly.③Althoughthemethoddoesnotinvolvetheendsystem,itincreasesthecostofeachnode.
Currentstandards
TheIETFstandardsforend-to-endcongestioncontrolfocusonspecificprotocols(suchasTCPprotocol[RFC2581],reliablemulticastprotocol[RFC2357]);Thesyntaxandsemanticsofcongestioninformation(suchasexplicitcongestionnotification[RFC2481])exchangebetweentheterminalnodeandtherouter;theexpectedvalueofthequalityofservicefordifferentservices.Theroleofend-to-endcongestioncontrolisalsodiscussedinanRFCreporton"QueueManagementandCongestionAvoidanceintheInternet"[seeRFC2309].RFC2309proposestheconfigurationofthequeuemanagementmechanismactiveintherouterandthecontinuationoftheroutermechanismdesigntohandleflowsthatdonotrespondtocongestionnotifications.Wecaneasilyborrowsomegeneraldiscussionsofend-to-endcongestioncontrolfromRFC2309.
ComparedwiththeRFCsmentionedabove,thisdocumentdiscussestheprinciplesofcongestioncontrolmoregenerally.AkeyfactorforthesuccessoftheInternetisthecongestionavoidancemechanismoftheTCPprotocol.ThecurrentTCPprotocolisstillthedominanttransmissionprotocolintheInternet,butitisnotsuitableforanyplace,andmoreandmoreapplicationshavenotchosentousetheTCPprotocolforsomereason.Communicationsincludenotonlymulticastcommunications,butalsounicastcommunications,suchasstreamingmultimediathatdoesnotrequirereliability,andcommunicationssuchasDNS(DomainNameServer)orroutinginformation,whichcarryinformationthatisconsideredtobeconnectedtothenetwork.Importantshortmessages.Manycommunicationsdonotuseanyformofreservedbandwidthorend-to-endcongestioncontrol.Inordertomaintaintheoptimaltransmissionvolume,thecontinueduseofend-to-endcongestioncontrolisessentialtomaintainthestabilityoftheInternet.
ThisdocumentalsodiscussesthegeneralroleoftheIETFinthestandardizationofthenewcongestioncontrolprotocol.Thediscussionofcongestioncontrolfordifferentiatedservicesandintegratedservicesisnotcoveredinthisdocument.Integratedordifferentiatedservicescanguaranteeend-to-endnetworkbandwidth,sothereisnoneedforend-to-endcongestioncontrolmechanisms.
Determinationprocess
Theprocessofdeterminingthesizeofthecongestionwindow
Theprocessofdeterminingthesizeofthecongestionwindow:whentheconnectionisjustestablished,thesizeofthecongestionwindowisinitializedtoThelengthvalueofthemaximumconnectiondatasegmentrequiredbytheconnection,andsendadatasegmentofthemaximumlength(ofcourseitmustbeallowedbythereceivingwindow).Iftheconfirmationisobtainedbeforethetimerexpires,thesizeofthecongestionwindowisincreasedbythenumberofbytesinthedatasegment,andtwodatasegmentsaresent.Ifeachdatasegmentisconfirmedbeforethetimerexpires,itisincreasedontheoriginalbasis.Double,thatis,thesizeof4datasegments,andsoon,eachtimeitdoublesonthebasisofthepreviousone.Whenthetimerexpiresorreachesthesetvalueofthesendingwindow,theincreaseinthesizeofthecongestionwindowisstopped.Thiskindofrepetitioniscalledslowstart,andallTCPprotocolssupportthismethod.
Researchhotspots
Congestioncontrolisnotonlythekeytothestableandefficientoperationofthenetwork,butalsothefoundationandprerequisiteforrealizingvariousservicequalities.Theactualnetworkisanevolvingsystem,andtheresearchonnetworkcongestioncontrolisalsoaverydifficultandchallengingresearchfield.Thereisstillalotofworktobedoneontheresearchofnetworkcongestioncontrol.Furtherworkincludes:
1)CongestioncontrolisbasedonendhostcontrolstrategyandrouterqueuemanagementStrategyhasarelationshipofmutualinfluenceandinteraction.Howtocombinethetwofromtheperspectiveofthecontrolsystembasedonthedescriptionofthenetworkmodeltodesigntheoptimalcongestioncontrolstrategyisoneoftheresearchesonnetworkcongestioncontroldirection.
2)Activequeuemanagementtechnologyusespacketlosstoactivelyrespondtocongestiontoachievethepurposeofcongestionavoidanceandalleviation,whichisthemostimportantmeansofnetworkcongestioncontrol.HowtorealizetheadvancedAQMstrategy,introducenewartificialintelligencealgorithmandthesynthesisofgeneticalgorithmandfuzzylogicapplicationisahotissueofresearch.
3)Previousworkmainlyusedthelocallinearizationmethod,whichlackedtheoreticalanalysisoftheglobaldynamicsofthesystem.Inaddition,whenmultiplesource-endcongestioncontrolstrategiesandrouteravoidancestrategiescoexist,howtoanalyzethestabilityoftheentirenetworkandhowtoanalyzetheimpactofvariousuncertainfactorsonstabilityarealsoissuesthatneedtobecarefullyconsidered.
4)ThedesignandimplementationofTCP/IPcongestioncontrolfacesmanytrade-offs.Itisimpossibletohaveadesignandimplementationthatis"best"inallenvironments.Existingcongestioncontrolideas,methodsandtechnologiesarefacingchallengesinmulti-objectivedifferentenvironments,andtheystillhavemanyareasforimprovement.
5)MoreandmoremobileusershaveaccesstotheInternetthroughwirelesssystems.Duetotheinherentcharacteristicsofwirelesscommunication,theresearchoncongestioncontrolmechanismsismoredifficultandextremelychallenge.
CongestioncontrolinLTE
Thepurposeofcongestioncontrolistoperformcorrespondingprocessingwhenthesystemisoverloaded,sothatthesystemcanreturntoanormalloadlevelandensurethestableoperationofthesystem.
Therearealsomanyloadcontrolalgorithms,mainlyincludingratecontrolbasedonoverloadandswitchingcontrolbasedonoverload.Ratecontrolistoreducetheloadlevelofthesystembyreducingtherateofservinguserswhenthesystemisoverloaded,sothatthesystemisstabilizedwithintheloadthreshold,andthestableoperationofthesystemisensured.Handovercontrolreferstoreducingtheloadlevelofthecellbyswitchingsomeuserstoothercellswhenthesystemisoverloaded,sothatthesystemisstabilizedwithintheloadthresholdandthestableoperationofthesystemisensured.
Theloadcontrolalgorithmisalsobasedontheimplementationofthesystemandtherequirementsofnetworkoperation.Thealgorithmalsodependsontheimplementationoftheequipmentmanufacturerandisnotlimitedtotheabovetwomethods.