4.3 SpeedDetet: handling sudden apaity inrease
4.3.3 Measurement results
Our algorithm an be implemented on top of any ongestion ontrol algorithm that measures
RTT samples(mostloss-basedTCPs). Wehoseto implement SpeedDetetontop ofNewReno
and BIC TCP, the two versions most widespread today. We refer to these modied version as
RenoSD and BICSD. Our Linux-based, kernel-level implementation ontains about 40 lines of
C ode. The algorithm impliessmall omputation overhead: three extra words of memory per
TCP ow, and up to three extra basi operations (omparison/assignment) per RTT samples
reeived.
Oursimpletestbedhasthreenodes. ThedatapathonsistsoftheTCPsender,theemulation
node,and thereeiver, witha singlebottlenekqueueat the emulation node. We arryouttwo
dierent types ofexperiments.
First,weemulateinter-systemhandovers,wherethenewlinkhassigniantlylargerapaity
handovertime,apaityofthelinkfollowingthe emulationnodeishangedto zeroforsome
pe-riod(interruptiontime)toaount forphysial linkoutage. Duringthisperiodnotransmissions
are madebythe emulation node,but end hosts arenot notied ofthe event. In partiular, the
TCP sender is ontinuing to ll up the bottlenek queue with more data pakets (aslong as it
keepsreeivingupstreamACKsalreadyontheirwayfromtheemulation node). After the
inter-ruption time haspassed, new linkharateristis are set, thus resuming transmissionalong the
whole path. Certainly, this modeldoesnot apture every aspetof a handover, but we believe
itmodelsrealityadequatelyfromthe apaity point of view.
Seond,westart anumberofparallel TCPowsalongthesame pathandstopmostofthem
simultaneouslyafter aertaintime. Thisowdynamis reatesaapaityinreaseaspereived
by the remaining ows in the system. As it an be notied, this senario does not assume a
wirelessenvironment,resultsfromthesetypeofexperimentsareharateristitowirednetworks
aswell.
Note that serious apaity hanges an our due to dierent reasons, as well. Wireless
tehnologies thatimplement the shared hannel onept (WLAN, HSPA, 3GPP-LTE, WiMAX
et.) areprimary andidatesforsuhevents. Capaityhangesaremainlyausedbypopulation
hangesinaellbeauseofmobility,andradiolinkqualityhange duetointerfereneandfading
eets. OneouldimagineanextremesituationofauserwithanativeTCPsessionmovingfrom
a denselypopulated ell into anemptyone. In thisase this user'sTCP session willexperiene
a seriousapaityup-swith. Although we donot investigate radiolinkqualityhange anduser
mobility, we believe that results presented below arevalid in ase of sudden apaity inreases
of any kind.
Eetiveness
First, we investigate the time needed to reah full linkutilization by RenoSDand BICSD
om-paredto their respetive baseversions afteraninter-system handover. Link apaitybeforethe
handover was set to 10 Mbit/s and propagation RTT was set to 70 ms. Post-handover, link
apaityis inreasedto 100 Mbit/s,while thepropagationRTT remainsunhanged.
Results an be seen in Figure 4.10. RenoSD shows a 20 seond improvement ompared to
basi NewReno measured when their respetive ongestion window reahes its rst maximum
afterthe handoverevent. Itisalsoimportantto seethatRenoSDreahes50%linkutilizationin
lessthan 2seonds; thisisthepoint wherethe trigger isdeativatedasRenoSDrevertsbakto
normalongestionavoidane. NotethatFigure4.10(a) depitsasingleexperiment,nevertheless
all experiment runs exhibited almost the same harateristis with slight variations due to the
exat state of therespetive TCP owwhen the triggerwasativated.
BICSD also outperforms its ounterpart by approximately 3 seonds in reahing full link
(a)NewRenovs.RenoSD (b)BICvs.BICSD
Figure4.10: Congestion windows during handover
Wehoseto present the worst-asegain: inthisasethe BICowwasaught inaluky state
bythehandover,whenitwaslosetoswithingtoitsmostaggressivewindowupdatemode[83℄.
Detetion time
Next,wemeasurethedetetiontimeofSpeedDetetomparedtoPNCD[88℄inourowdynamis
senario. We usea self-developed Linuximplementation of PNCD (inludingthe orresponding
bandwidth estimators BEand RE) asthe authors'versionis not available. Theapaityof the
bottleneklink is100 Mbit/s,thepropagation RTT is 70ms andthe bottlenek queueis setto
1.2 BDP.
We start
N
parallel TCP owsover abottlenek link, andat timet 0
we stopN − K
ows.Thisauses aapaityinrease proportionalto
N
K
,thatthealgorithmseither detetor don't. Iftheydo,wereordthetimeelapsed sine
t 0
. Speiallyfor SpeedDetet,themeasuredreation time issimply thetime whenthe triggeris ativated. PNCD on theother hand detetsanup-swith ifits internal
ncc
variable exeedstheurrentcwnd
,thereforewe monitor thediereneof thetwo variables and reordthetimestamp when
ncc > cwnd
beomestrue.First, we show the senario where
N = 20
andK = 2
. As it an be seen in Figure 4.11,SpeedDetetreatssigniantlyquikerthanPNCDwiththedierenebeingapproximately370
ms for ow 2 and more than 700 ms for ow 1. Note that SD triggers at about the same time
for both ows.
Thedistributionof detetiontimesisdemonstrated onFigure4.12. Using logsale onthey
axis reveals two regimes for both algorithms. The rst is the range where both of them detet
up-swithes and we all it the reliable range. This range is
K = 1..12
in this ase, whihorrespondstoapaityinreases70%andup. Belowthislimit, for
K = 13..19
,bothalgorithmsFigure4.11: SD versus PNCD:
N = 20, K = 2
of apaity inrease is lessthan some threshold, and this threshold an be eetively tunedfor
SpeedDetet byhangingsensitivityparameter
p 1
.We observe thatin thereliable regime, reation times of our algorithm arealways lessthan
those of PNCD's. Thedierene inthis partiular setup isaround
100..150
ms,andit isdue tothefat thatPNCD needs
2 · RT T ≈ 140
ms timeto establisha new, aurate estimatefor thehanged bandwidth.
Our main observation is thatSD operates onsistently when parallel ows are present (i.e.,
whethertotriggerornot),whilePNCDtypiallytriggersforasingleowrightaftertheup-swith
andmissestotriggerforallotherows. Furthermore,SDdetetssuddenapaityinreasesfaster
than PNCD inawide range ofsettings.