Broadband Lab 4: TCP Congestion Control Algorithms and Analysis

Verified

Added on  2023/03/20

|18
|11746
|62
Practical Assignment
AI Summary
This assignment solution covers TCP congestion control within the context of a broadband multimedia networks lab (Lab 4). The task involves exploring and analyzing three TCP congestion control algorithms: NewReno, CUBIC, and Vegas. The solution includes an executive summary, a table of contents, and an introduction outlining the assignment's objectives. The core of the assignment addresses key concepts such as the meaning of TCP congestion avoidance, the essential characteristics of the mentioned congestion control algorithms, and their real-world application. Calculations of the bandwidth-delay product for various scenarios and graphical representations of TCP metrics over time are presented. Furthermore, the solution analyzes how sockets send buffer occupancy, and cwnd values are related, how to obtain smooth RTT estimates, how stable RTT estimates vary with bandwidth, and how RTT path affects cwnd growth. The solution incorporates insights gained from the provided SIFTR log files and PCAP files, demonstrating the use of Wireshark and data analysis tools to interpret TCP options and other relevant data. The assignment emphasizes the importance of understanding congestion control mechanisms for efficient network performance. The solution concludes with a summary of the findings and references to supporting materials.
Document Page
RunningHeadBROADBANDLAB-4: 1
Networking
Student’sName
Course
University
Date
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
BROADBANDLAB-4 2
Executivesummary
ThetaskisgoingtocoveraboutTCPcongestioncontrol,whichmeansthecontrolofthenetworkcongestion.
ThefollowingtopicsaregoingtobediscussedabriefdescriptionofthemeaningoftermTCPcongestion
avoidance,theessentialcharacteristicsofCCsthatisexploredinthelablikeNewReno,CUBICandVegas,
examplesofCCsandadiscussionoftheyareusedintheinternettoday,thedefaultofTPCcongestion
controlmethod,TCPoptions,calculationofBandwidthDelayProductforthreedifferentscenarios,agraph
ofTCPMetrixvs.timeandthefollowingaretobediscussed;scenarioA,B,andCrepresent,howsockets
sendbufferoccupancy,andcwndvaluesarerelatedtoeachother,howtoobtainsmoothRTTestimates,how
stableRTTestimatesvarywiththebandwidth,howRTTpathaffectcwndgrowthandTCPoptionsthat
werediscussedandagreedonbythegroupsconcerningeachscenario.TCPcongestioncontrol,which
meansTransmissioncontrolprotocolsystemwhichisusedincongestioncontrol.Thesystemcongestion-
avoidancealgorithmisthecongestioncontrolprimarybasisontheinternetwhichisperprinciplefromone
pointtoanother,andthecentralsystem purposeistoserveasaninternethostbutnotthenetwork
specifically.AllofTCP'smeasuredround-tripsdelaysandtimeoutsthatweresetuptothemid-1990swere
generallybasedonlyonthepacketthatwastransmittedlastinthesendbuffer.Nevadaisalargecityof
whichTPCVegasisnamedafter,theround-tripdelaysandsettimeoutsaremeasuredineachpacketthatis
inthetransmitbuffer.TCPNewRenoishelpinginimprovingthetransmissionofTPCRenoduringthe
recoveryfast-face,foreachACKduplicateduringthefastrecoveryisthentakenbacktoTCPNewReno
afterthatanewpacketissentfromthecongestionwindowendthatisusedtofillthetransmitwindow.TPC
CUBICisidentifiedasamoresystematicderivativeandlessaggressiveoftheBIC,windowwhichisa
cubicfunctionoftimethatisfromthelasteventcongestiontotheinflectionpointthatwassetbeforethe
windowevent.TCPcongestion-controlstrategyisthecongestioncontrolmainbasisontheinternetwhichis
perprinciplefromonelocationtoanother,thecongestionavoidancemainpurposeistoserveasaninternet
hostsbutnotthenetworkspecifically;basicallyitusesanalgorithmnetworkcongestion-avoidancewhich
hasthreephaseslikemultiplicativedecreasesystemtogetherwithothersystemslikecongestioncontroland
slowstartphasethatusedinthesuccessofavoidingthenetworkcongestion.
Document Page
BROADBANDLAB-4 3
Tableofcontent
Introduction 5
Question1 5
DescriptionofthetermTPCcongestioncontrol 5
Essentialcharacteristicsofcongestioncontrol 5
ExamplesofCCsandhowtheyareusedontheinternettoday 6
Question2 6
ThedefaultofTPCcongestioncontrolmethod 6
Question3 7
TCPoptions 7
Lab-basedquestion1 7
CalculationofBandwidthDelayProductforthreedifferentscenarios 7
Lab-basedquestion2 8
AgraphofTCPMetrixvs.time 8
Lab-basedquestion3 9
TCPoptionsagreedoneachscenario 10
Document Page
BROADBANDLAB-4 4
Conclusion 12
References 15
Appendices 17
Introduction
ThetaskisgoingtocoveraboutTCPcongestioncontrol,whichmeansthecontrolofthenetworkcongestion
(Cardwell etal.2019).Thefollowingtopicsaregoingtobediscussedabriefdescriptionofthemeaningof
thetermTCPcongestionavoidance,theessentialcharacteristicsofCCsthatisexploredinthelablikeNew
Reno,CUBICandVegas,examplesofCCsandadiscussionoftheyareusedintheinternettoday,the
defaultofTPCcongestioncontrolmethod,TCPoptions,calculationofBandwidthDelayProductforthree
differentscenarios,agraphofTCPMetrixvs.timeandthefollowingaretobediscussed;scenarioA,B,and
Crepresent,howsocketssendbufferoccupancy,andcwndvaluesarerelatedtoeachother,howtoobtain
smoothRTTestimates,howstableRTTestimatesvarywiththebandwidth,howRTTpathaffectcwnd
growthandTCPoptionsthatwerediscussedandagreedonbythegroupsconcerningeachscenario
QUESTION1
BriefdescriptionofthemeaningofthetermTCPcongestionavoidance
TCPcongestioncontrol,whichmeansthecontrolofnetworkcongestion.TCPcongestion-avoidancecontrol
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
BROADBANDLAB-4 5
isthecongestioncontrolmainbasisontheinternetwhichisperprinciplefromonepointtoanother,the
congestioncontrolmainpurposeistoserveasaninternethostbutnotthenetworkspecifically(Cardwell
etal.2016).
EssentialcharacteristicsoftheCCsexploredintheVegas,CUBICandNewReno
a) TCPVegas
AllofTCP'smeasuredround-tripsdelaysandtimeoutsthatweresetuptothemid-1990sweregenerally
basedonlyonthepacketthatwastransmittedlastinthesendbuffer.NevadaisalargecityofwhichTPC
Vegasisnamedafter,theround-tripdelaysandsettimeoutsaremeasuredineachpacketthatisinthe
transmitbuffer(Cardwell etal.,2017).TCPVegasalsouseraisingadditiveinthecongestionwindow,
however,apartfromPeterson'slaboratoryTPCVegaswasnotcommonlyused.IncomparisontoTCP
VegasandTCP,CUBICTCPVegasappearstobethesmootherwhichhasbeenprovenfromdifferentTCP
congestioncontrolalgorithmsstudy.AsadefaultofcongestionmethodofDD-WRT firmwareTCPVegas
wasdeployed(Casoni etal.2015).
b) NewReno
TCPNewRenoisbasicallyhelpinginimprovingthetransmissionofTPCRenoduringtherecoveryfast-
face,foreachACKduplicateduringthefastrecoveryisthentakenbacktoTCPNewRenoafterthatanew
packetissentfromthecongestionwindowendthatisusedtofillthetransmitwindow(Dong etal.,2016).
ThepartialprogressthatismadebyeveryACKinthespacesequenceanewholeispointedoutbyACKas
assumedbythesender,andthenumberbeyondtheACKsequenceissentasthenextpacket.Whenever
thereistransmitbufferprogressthetimertimeoutisresetthishelpstoallowNewRenoinoccupyinglarge
holesorevennumerousgapsinthespacesequence.Duringthelastphaseofcongestionavoidanceofthe
fastrecovery,NewRenosendsnewpacketsduetothismaintenanceofthehighprocessoffillingtheholes
isobservedthroughout.Eveninthecasewheretherearenumerousholesofeachmultiplepackages.Inthe
fastrecoveryperiodofCCs,ahighoutstandingunacknowledgednumberofsequencepacketisrecorded
whenthishappensTPC,therefore,returnstothestateofcongestionavoidance.
Document Page
BROADBANDLAB-4 6
c) TCPCUBIC
TPCCUBICisconsideredasamoresystematicderivativeandlessaggressiveoftheBIC,windowwhichis
acubicfunctionoftimethatisfromthelasteventcongestiontotheinflectionpointthatwassetbeforethe
windowevent(Wang etal.2015).
ExamplesofCCsandadiscussionoftheyareusedontheinternettoday
TCPcongestion-controlstrategyisthecongestioncontrolmainbasisontheinternetwhichisperprinciple
fromonepointtoanother,thecongestionavoidancemainpurposeistoserveasaninternethostsbutnotthe
networkspecifically;basicallyitusesanalgorithmnetworkcongestion-avoidancewhichhasthreephases
likemultiplicativedecreasesystemtogetherwithothersystemslikecongestioncontrolandslowstartphase
thatusedinthesuccessofavoidingthenetworkcongestion.
CongestionAvoidance
ThecongestionAvoidanceisanexampleofCCsitusedindeterminingthenumberofthebytethatattimes
itcanbeoutstanding.Thesendermaintainsthecongestion;however,theflowcontrolthatissupportedby
thereceivermightbeconfused.Thecongestionavoidanceisusedasameansofstoppingthesenderandthe
receiver'slinkwhichhelpspreventtoomuchtrafficthatmaybecomeanoverload,basicallyusedthe
estimationcalculationofthenumberofcongestionbetweenthereceiverandthesenderlink.
Anindependentvalueismaintainedineveryhostinthecongestionavoidancewhenaconnectionissetup,
whichisasmallmultiplethatissetinformofanMMSthatthelinkisallowed.DuringtheAIMDapproach,
afurthervarianceisdictatedinthecongestionwindow.Thecongestionavoidancetendstokeepongrowing
untilthemomentatimeoutoccurs.Whenatimeouthappenstooccur,thefollowingareobserved:
1. Thecongestionavoidanceisthensetnewlyto1MSS.
2. Slowstartthreshold isthensettoahalfcongestionavoidancesizebeforethetimeoutoccurs.
3. Slowstartphasethenbegins.
Document Page
BROADBANDLAB-4 7
Slowstart
TheslowstartwhichisanexampleandapartofCCsthatisusedbytheTCPintheconjunctionofother
algorithmsthatisusedtopreventthemoredatasendingthanthatofthenetworkcanhandlethatpreventsthe
congestionnetworkthatmightbecaused.However,thestrategymoreandquiteaggressivedespiteitsname
slowstart,whichismoreaggressivethanthephaseofcongestionavoidance.Thepre-congestionavoidance
thatexistedbeforetheslowstartwasfaster(Jose etal.2015).CongestionWindowsizeinitiallybeginswith
thedeliberatestartstrategyandthereforethecongestionwindowraisebyonereceivedacknowledgmentof
each,bydoublingthewindowsizeeffectivelybyround-tripeachtime.
Additiveincrease/multiplicativedecrease
Theadditiveincrease/multiplicativedecrease(AIMD),whichisapartofthecongestioncontrolstrategy,
whichmeansaclosed-loopcontrolalgorithm.Thisstrategyhelpsinjoininganexponentialreductionandthe
lineargrowthduringtheoccurrenceofthecongestion.TheAIMDisusedinmultipleflowsbywhichthe
congestioncontrolisthen
Convergedinusingcontendedlinksamountsthatareequal.
QUESTION2
ThedefaultofTPCcongestioncontrolmethod
ThedefaultofTPCcongestionavoidancesystemisusedinthefollowingoperatingsystems.
FreeBSD
FreeBSDisanopen-sourceandafreeUnix-likeoperatingsystemthatdependsontheBerkeleySoftware
Distribution(BSD)whichiscommonlybasedontheUNIXresearch.1993FreeBSDfirstversionwas
released,FreeBSDin2005wasoneoftheleadingBSDoperatingsystemopen-source.FreeBSDoperating
systemacquiressomecommonalitieswithLinux;however,theretwodifferences,whichincludelicensing
andscope(Mudassar etal.2018).FreeBSDmaintainsasystemthatiscompletelikethedevicedrivers,
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
BROADBANDLAB-4 8
userlandutilities,theprojectdeliversakernelandlastlydocumentation,incomparisontoLinux,theyonly
deliverdriversandakernelanddependingonsystemsoftwarewhichwasathirdparty(Heetal.,2016).The
FreeBSDisusedinseveralcaseswhichincludeserverswhichcontainportscollectionwhichFreeBSDis
usedasawebserver,mailserver,DNSserver,router,firewall,andFTPserverandmanyotherapplications,
DesktopandlaptopTheXWindowSystemduetodefaultthatisnotinstalledbuttheFreeBSDport
collectionhasit,Embeddedsystem,NetworkingFreeBSDisbasicallybasedonTCPimplementationwhich
alsosupportsWi-Fi,IPsec,IPv6andSCTP,StorageFreeBSDacquiresdifferentuniquestoragefeaturesthat
helptoprotectsoftupdates,inaddition,thestructuretwoframeworksthatareusedintheencryptiondata
whichincludesGeliandGBDE,Securitythefabrichassomeuniquefeatures
Thatarerelatedinsecuritylikeaccesscontrollists(ACLs),extendedfilesystemattributes,fine-grained
capabilities,mandatoryaccesscontrols(MAC)andsecurityeventauditingandlastlyitsportabilityithas
beendesignedinawayeasilyportable(KimandKnösche2016).
MacOSX
MacOSXfirstversionmainpurposewastotransitionproducts,aninterfacethatwasfeaturedtoresemble
theMacOSclassic;however,thesystemwasnevercompatiblewiththeoldersystemthatwassoftware
designed.ThereleaseofMacOSXconsumerwhichincludedthemorebackwardcompatibility.The
applicationcanbewrittengenerallyviatheAPICarbon.However,manyotherapplicationscanbeoperated
directlyinaperfectenvironmentthathasreducedperformance(Trabelsi,2016).Theappwaslaunchedin
2001thatwasaccompaniedbyMacOSX10.0.TheMacOSXhasreceivedlotsofpraiseduetoitsglossy
andsophisticatedAquainterface;however,theirseveralcriticismsreceivedduetotheirsluggish
performance(PapadimitriouandMoussiades2016).
LinuxKernel
LinusTorvaldscreatedtheoperatingsystemin1991.TheLinuxKernelisanopenandfreesource,Unix-
like,andmonolithicoperatingsystemkernel(Alrshah etal.2015).TheLinuxKernelisanapplicationthatis
usedaspartofanoperatingsystemwhichisbasedonthekernelandwasavailablebothincomputers
Document Page
BROADBANDLAB-4 9
systemsthatweretraditionalliketheserversandpersonalcomputersthatismostlyusedinLinux
distributionformandinotherdifferentembeddeddeviceslikethewirelessaccesspoints,PBXes,FTA
receivers,PVRs,smartTVs,NASappliancesandset-topboxes.In2017November,itwasdiscoveredthat
intheworldthemostpowerfulcomputersarerunbyLinuxisabout500,otherexamplesofLinuxusersis
theAndroidoperationthatisusedinsmartphones,watchesandtabletcomputers(Lin etal.,2018).
WindowXP,7,10
In2001WindowsXPwascreatedwhichwasdesigneddifferentlyandwasmoreattractivetothecustomers
andconsistedofanewoperatingsystemwhichisestablisheddependingonthewindow2000kernelthat
providedafriendlierenvironmenttotheuseraspercomparedtoinitialone.WindowXPconsistsoftwo
differenttypes,whichincludestheprofessionalandhome(Peng etal.2015).TheMicrosoftaimsatthe
portabilityofbotheditionswhichcomprisesofplayandplugfeaturesthatareusedduringtheconnectionof
wirelessnetworks.
QUESTION3
TCPoptions
TheonlytimetheTCPoptionsanalysisneedtoappearisonlywhentheinitialSYNN/ACKandSYNpartof
theperformanceof3-way-handshakeofTCPthatisusedtogiveanexactlinkevenbeforetransferringany
data.DuringthesessionofTCP,otheroptionsmaybeusedaccordingtothechoiceoftheuser.Itisvery
vitalalsototakenotethatTCPoptionmayrequiresomespacehencemayoccupyattheTCPheadersend,
andinlength,itconsistsofmultiplesof8bitsMaximumsegmentsize(MMS)andWindowscalingaretwo
examplesofTCP.
SMMS
Thesmallmaximumsegmentsizeismostlyusedwhenthereisaconnectionbetweentwopeoplewhoare
tryingtocommunicateorpasssomeinformation.DuringtheSYN/ACKandSYNpartoftheperformanceof
3-way-handshakeofTCPthatisusedtogiveanexactlinkevenbeforetransferringanydataMMSoptionis
Document Page
BROADBANDLAB-4 10
theonlyavailableoption.Thelengthofmaximumsegmentsizerequiresaspaceof4byteswhichis32bits,
MTUisalsoacommontermthatmeansMaximumtransferUnitthisisassistedinitsdefinitionbytheMMS
thatisusedinthenetwork(Sung,2015).TheMMScomprisesofthedatasegment,andontheotherside
MTUconsistsofMSS,TCPheaderandtheIPheader,It’salsorecommendedfortheusertoidentifythe
terminologiescorrectlythatareasperthelevelofeachOSImodel.Thelayerfourisknownasasegment
whichconsistsoftheDataandtheTCPHeader,andlayerthreeisknownasIPDatagramwhichconsistsof
thepartandtheIPHeader(JagadeeswaranandAnnamalaisami,2015)
Windowscaling
WindowscalingisgenerallytheextensionoftheWindowsizeflagthisisduetoitspossiblemost
significantvaluewhich65535byteswhichisequalto64kb,forthecreationofWindowscalingwasdueto
theneedofanamplespacebecauseoftheriseofthe1Gigwhoppingvalue.ThevalueofWindowscaling
optionscanbeincreasedtoamaximumof30bits.Thepurposeofwindowscalingcreationwasbecauseof
high-bandwidthandhigh-latency(Wangetal.2017).
Theinterpretationofthediagramisthat64kbsisthemaximumWindowthatiscurrentlybeingusedanddue
toitshigh-bandwidthandhigh-latencysometimeisrequiredforthepackettoreachitsdestinationthatis
basicallytheBhost,whilefortheAhostduetothe64kbsithasstoppedthetransmissionthatisbeingsent
andnoacknowledgmenthasnotbeenreceived(Mehdizadehetal.,2018).However,ifthevalueislargethe
windowscalinginraisedto256kb
LABBASEDQUESTION1
CalculationofthebandwidthdelayproductsofscenarioA,BandC Bandwidth
DelayProduct=bandwidth(bitspersec)*time(inseconds)(Fuxaetal.2017)
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
BROADBANDLAB-4 11
Scenario Bandwidth PathRTT
A 5Mbs 100ms
B 512Kbs 40ms
C 5Mbs 40ms
ScenarioA
5Mbs*1000000bits=5000000bits
5000000bits*0.1s=500000bandwithdelayproduct
ScenarioB
512Kbs*1000bits-512000bits
512000bits*0.04s=20480bandwidthdelayproduct
ScenarioC
5Mbs*1000000bits=5000000bits
5000000bits*0.04s=200000bandwidthdelayproduct
LABBASEDQUESTION2
TCPmatricvs.time
ScenarioArepresentsPCSVEGAS
AllofTCP’smeasuredround-tripsdelaysandtimeoutsthatweresetuptothemid-1990sweregenerally
basedonlyonthepacketthatwastransmittedlastinthetransmitbuffer.Nevadaisalargecityofwhich
TPCVegasisnamedafter,theround-tripdelaysandsettimeoutsaremeasuredineachpacketthatisinthe
Document Page
BROADBANDLAB-4 12
transmitbuffer.TCPVegasalsouseraisingadditiveinthecongestionwindow,however,apartfrom
Peterson'slaboratoryTPCVegaswasnotcommonlyused.IncomparisontoTCPVegasandTCP,CUBIC
TCPVegasappearstobethesmootherwhichhasbeenprovenfromdifferentTCPcongestioncontrol
algorithmsstudy.
ScenarioBrepresentsNewReno TCP
NewRenoisbasicallyhelpinginimprovingthetransmissionofTPCRenoduringtherecoveryfast-face,for
eachACKduplicateduringthefastrecoveryisthenreturnedtoTCPNewRenoafterthatanewpacketis
sentfromthecongestionwindowendthatisusedtofillthetransmitwindow(Dong etal.,2016).Thepartial
progressthatismadebyeveryACKinthespacesequenceanewholeispointedoutbyACKasassumedby
thesender,andthenumberbeyondtheACKsequenceissentasthenextpacket.Wheneverthereistransmit
bufferprogressthetimertimeoutisresetthishelpstoallowNewRenoinfillinglargeholesorevenmultiple
gapsinthespacesequence.Attheendofthecongestionwindowduringthefastrecovery,NewRenosends
newpacketsduetothismaintenanceofhighthroughputisobservedintheprocessofhole-fillingEveninthe
casewheretherearemultipleholesofeachmanypackages.Duringthefastrecoveryoffice,ahigh
outstandingunacknowledgednumberofsequencepacketisrecordedwhenthishappensTPC,therefore,
returnstothestateofcongestionavoidance.
ScenarioCrepresentsCUBIC
TPCCUBICisconsideredasamoresystematicderivativeandlessaggressiveoftheBIC,windowwhichis
acubicfunctionoftimethatisfromthelasteventcongestiontotheinflectionpointthatwassetbeforethe
windowevent
LABBASEDQUESTION3
TheTPCoptionsnegotiatedineachscenario
chevron_up_icon
1 out of 18
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]