the future of congestion control - internet engineering task force
TRANSCRIPT
The Future of CongestionControl
Feedback from an Implementor’sPerspective
Lawrence Stewart
Centre for Advanced Internet Architectures (CAIA)Swinburne University of Technology
Outline
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 2
Who is this guy (and who let him past security)?
Centre for Advanced Internet Architectures, Swinburne University(2003-2007)
Research assistant/engineer during/after studieshttp://caia.swin.edu.au/
Currently a PhD candidate in telecomms eng at CAIA (2007-)Main focus on transport protocols & congestion controlhttp://caia.swin.edu.au/cv/lstewart/
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 3
Detailed outline (section 1 of 4)
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
1 RecapWhere are we todayOpen issues
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 4
Where are we today
Many incremental (partially implemented) improvements
State of the CC unionNewReno is defacto standard with warts (LFN, wireless)Many new proposalsBSD still uses NewRenoLinux uses CUBICWindows Vista uses Compound
TCP/IP stack enhancements e.g.CSO/TSO/LRO/TOEVarious locking/caching tricksSocket buffer autotuning
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 5
Open issues
High-speed CC algorithms 1
FAST, HS-TCP, H-TCP, CTCP, CUBIC, etc.
Delay based CC algorithms
How do we compare and evaluate TCPs?
Multipath
CSO/TSO/LRO/TOE obscure behaviours
Testing/verification of TCP/IP stack behaviour
1Nice summary:http://kb.pert.geant2.net/PERTKB/TcpHighSpeedVariants
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 6
Detailed outline (section 2 of 4)
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
2 Experimental ToolsFreeBSD As A ResearchPlatformTCP Testbed
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 7
FreeBSD As A Research Platform
Modular congestion controlIn svn project branch, coming to FreeBSD 7 and 8 soonBSD licenced Newreno, HTCP & CUBIC implementations availableSponsord by Cisco Systems
Statistical Information for TCP Research (SIFTR)FreeBSD kld to gather CSV in-kernel TCP endpoint connection dataSimilar concept to Web100 with more variablesSponsored by Cisco Systems and the FreeBSD Foundation
Deterministic Packet Discard (DPD)Adds ’pls’ (packet loss set) option for dummynet pipese.g. ipfw pipe 1 config pls 1,5-10,30 would drop packets 1, 5-10inclusive and 30
Dummynet Forensic logging supportLog queue state on each packet event
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 8
Testbed
Linux/FreeBSD hosts
Modular congestion control
Web100/SIFTR forLinux/FreeBSD testing
Iperf/Tcpreplay for trafficgeneration
FreeBSD dummynet router
Endace DAG 3.7GF capture card
Host A
Host B
Router
Host C
Host D
Endace DAG 3.7GF
drop-tailqueue
drop-tailqueue
RTT/2delay
RTT/2delay
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 9
Detailed outline (section 3 of 4)
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
3 Some ResultsConnection DynamicsCollateral DamageSubtle Queuing Implications
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 10
Connection Dynamics
1 TCP flow, H-TCP, 100ms RTT, 1Mbps, 60000 byte queue
3035
4045
5055
60qu
eue
occu
panc
y (K
byte
s)
60 62 64 66 68 70 72
2530
3540
4550
55
time (secs)
cwnd
(pk
ts)
flow 1 cwndqueue occupancy
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 11
Collateral Damage
Induced delay: 1 TCP vs 1 CBR UDP flow, 50ms RTT, 1Mbps,60000 byte queue
0 100 300 500
0.0
0.4
0.8
delay (ms)
CD
F
newrenohtcpcubic
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 12
Collateral Damage
Induced delay: 1 TCP vs 1 CBR UDP flow, 50ms RTT,1.5Mbps/256Kbps, 20000 byte queue
0
20
40
60
80
100
12 25 50 100
One
way
que
uein
g de
lay
(ms)
One way fixed propogation delay , RTT/2, (ms)
CUBIC (ns-2)NewReno (ns-2)CUBIC (testbed)
NewReno (testbed)
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 13
Collateral Damage
Retransmissions: n TCP vs 1 CBR UDP flow, 50ms RTT, 1Mbps,60000 byte queue
1 2 3 4 5
050
015
00
# flows
avg
retr
ansm
its newrenohtcpcubic
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 14
Subtle Queuing Implications
Induced CBR loss: 1 TCP vs 1 CBR UDP flow, 100ms RTT,1.5Mbps/256Kbps, NS
0
2
4
6
8
10
12
14
10 20 30 40 50 60 70 80 90 100
CB
R %
dro
pped
pac
kets
Q size 103B
FB-loose CUBICFB-loose NewReno
PS CUBICPS NewReno
FB-strict CUBICFB-strict NewReno
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 15
Detailed outline (section 4 of 4)
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
4 General Thoughts for the RG
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 16
General Thoughts for the RG
I-Ds MUST:Stipulate units of variablesExplicitly define default state for variables not discussed in I-DProvide formulae for byte-based and pkt-based stacks
I-Ds SHOULD:Provide more concrete help to implementors e.g. public domaincode snippets
RG SHOULD:Explore the design & impact of compatibility mechanisms morethoroughlySolicit independent implementations more vigorously along withreviews
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 17
Detailed outline (section 5 of 4)
1 Recap
2 Experimental Tools
3 Some Results
4 General Thoughts for the RG
5 Wrapping Up
5 Wrapping UpFurther InformationAcknowledgementsQuestions
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 18
Further Information
PapersLawrence Stewart, Grenville Armitage, Alana Huebner, “CollateralDamage: The Impact of Optimised TCP Variants On Real-timeTraffic Latency in Consumer Broadband Environments”, IFIP/TC6NETWORKING 2009, Aachen, Germany, 11-15 May 2009.Grenville Armitage, Lawrence Stewart, Michael Welzl, JamesHealy, “An independent H-TCP implementation under FreeBSD 7.0- description and observed behaviour ”, ACM SIGCOMM ComputerCommunication Review, vol. 38 no. 3 pp. 29-38, July 2008.
Linkshttp://caia.swin.edu.au/urp/newtcp/
http://caia.swin.edu.au/freebsd/etcp09/
http://people.freebsd.org/~lstewart/
http://lists.freebsd.org/pipermail/freebsd-net/
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 19
Acknowledgements
Cisco Systems
The FreeBSD Foundation
IETF 75 ICCRG http://www.caia.swin.edu.au [email protected] 20