TCP Libra: Exploring RTT-Fairness for TCP

Recent Congestion Control Research at UCLA
TCP Libra - RTT-Fairness for TCP
Authors: Gustavo Marfia*, Claudio E. Palazzi**,
G. Pau*, Mario Gerla*, M. Y. Sanadidi*, Marco Roccetti**
NRL – UCLA*
Universita` di Bologna**
TCP Evaluation Suite
Authors: Hideyuki Shimonishi*, Tutomu Murase*, Cesar
Marcondes**, M.Y. Sanadidi**, Mario Gerla**, Padmanabhan
Vasu**
NEC Japan*
NRL – UCLA**
Presenter:
Cesar Marcondes
PhD Candidate CS/UCLA
Chicago, July 24 2007
IRTF/ICCRG Meeting
Recent Congestion Control Research at UCLA
TCP Libra - RTT-Fairness for TCP
Authors: Gustavo Marfia*, Claudio E. Palazzi**,
G. Pau*, Mario Gerla*, M. Y. Sanadidi*, Marco Roccetti**
NRL – UCLA*
Universita` di Bologna**
Presenter:
Cesar Marcondes
PhD Candidate CS/UCLA
Chicago, July 24 2007
IRTF/ICCRG Meeting
Motivation & Previous Work
 RTT fairness:
 TCP sessions share
same bottleneck =>
same bandwidth
 Not true with TCP
NewReno, bandwidth
share is RTT-biased
 TCP RTT-bias first recognized
by Floyd et al, SIGCOMM
1991
 Simple solution was
proposed, but proved
unstable (Henderson et al)
 Research community never
lost interest in the RTTfairness problem
 FAST
 BIC (Improving RTT-unfairness)
 Hybla
IRTF/ICCRG Meeting
Chicago July 24 2007
Beyond RTT-Fairness
 Other Challenges:
 Libra Algorithm Solutions
 Scalability:
 TCP NewReno doesn’t scale
to Gbps
 Scalability:
 The congestion window
initially grows proportional
to the narrow link capacity
 Friendliness:
 Compatible TCP NewReno
performance (Coexistence)
 Friendliness:
 A parallel Libra goal
 Stability:
 Stability:
 Lack of Control Theoretical
Proofs of Congestion
Control Protocols Stability
IRTF/ICCRG Meeting
Chicago July 24 2007
 The congestion window
growth slows down as the
MAX RTT is approached
(avoid heavy congestion in
the network)
Libra Congestion Control Algorithm
Derived directly from Fluid model:
On a successful transmission:
1
Tn2
w(n  1)  w(n) 
n
w(n) To  Tn
On a packet loss:
w(n)
T1
w(n 1)  w(n) 

2 (To  Tn )
 n  k1Ce

Fairness Control
T0, controls
Thrput Variance
& Convergence
-----------T1 controls
RTT-fairness
n
 MAX
IRTF/ICCRG Meeting
Chicago July 24 2007
Scalability Control
C represents Estimated Capacity
and the Penalty Function is
based on queueing delay
Perfect-RTT Fairness
Linear-RTT Fairness
Perfect-RTT Fairness
Libra-RTT Fairness
Protocols with “perfect” RTT fairness:
But Hybla has narrower stability
region
Delay based protocols (Vegas,
Fast) have co-existence problems
with TCP Reno
Libra's perfect fairness can be tuned
Linear-RTT Fairness
by T1
Libra-RTT Fairness
IRTF/ICCRG Meeting
Chicago July 24 2007
DumbBell Topology
 Based on BIC original
Test Simulation Suite
 4 forward + 4 backward
regular long-lived TCP Sack
flows
 25 TCP flows in both
directions, window limited
to 64 segments
 Web traffic in both
directions (20-50% of
bandwidth)
 Studied Connections:
 Short RTT conn: 21 ms
 Long RTT conn: 119ms
IRTF/ICCRG Meeting
Chicago July 24 2007
DumbBell Topology Results
Pipe Size Buffer
Small Buffer
 Studied Flows Achieved Jain
Index while competing with crosstraffic
 TCP Libra obtained the best
Jain’s Index
 specially on small buffers
IRTF/ICCRG Meeting
Chicago July 24 2007
Jain’s Index
Parking Lot Topology
 Parking lot topology
 Flows 1 and 2: 180ms
 Flows 3 and 4: 90ms
 Flows 5 through 8: 30ms
 2 buffer sizes:
 375 and 2250 pkts
 Jain’s Index
IRTF/ICCRG Meeting
Chicago July 24 2007
Parking Topology Results
Same Experiment #1
Different Protocols
Jain Index Computed over Flows 1-4
Buffer Size = 375 pkts
Same Experiment #1
Different Protocols
Jain Index Computed over Flows 1-8
50% (even) SACK + 50% (odd) Other TCP
SACK Only Point of View
when Competing with Other Protocols
Buffer Size = Pipe Size = 2250 pkts
• TCP Libra obtained optimal RTTFairness among flows utilizing the
same number of congested queues
IRTF/ICCRG Meeting
Chicago July 24 2007
 FAST shows unfriendliness
by reducing flows 2 and 4
 BIC couldn’t reach good utilization
 Libra balancea:
 RTT-Fairness and Friendliness
Improved RTT-Fairness of SACK !!
Conclusion
 The main contribution of
this work is to propose a
stable solution to an old
problem RTT-fairness (Floyd
et al 1991)
 A complete proof of the
stability bound for a simple
case may be found in recent
publication at IFIP/Networking
2007
 TCP Libra proves to have an
excellent trade-off between
fairness, efficiency and
friendliness
 http://www.tcplibra.org/
IRTF/ICCRG Meeting
Chicago July 24 2007
Recent Congestion Control Research at UCLA
TCP Evaluation Suite
Authors: Hideyuki Shimonishi*, Cesar Marcondes**, M.Y.
Sanadidi**, Mario Gerla**, Padmanabhan Vasu**
NEC Japan*
NRL – UCLA**
Presenter:
Cesar Marcondes
PhD Candidate CS/UCLA
Chicago, July 24 2007
IRTF/ICCRG Meeting
Motivation
 TCP NewReno well-known doesn’t scale to Gbps
 Many New Congestion Control Proposed (ARENO, Westwood, BIC,
FAST, HTCP, STCP)
 However, there is a need of a standard TCP Evaluation Suite for
general use
 Lack of Meaningful Qualitative Comparison between Proposals
How do they behave differently
•Resource fairness vs throughput fairness
•Efficiency and throughput
•Fairness and friendliness
How do they co-exist with Reno
•Can we have reasonable scenario
for migration ?
IRTF/ICCRG Meeting
Chicago July 24 2007
TCP Evaluation Suite
Random, tree,
parking-lot, etc…
Topology-generator
Link
A-B BW
Delay
Link
LinkA-B
A-BBW
BWDelay
Delay
Flow-generator
Src
A
Src

SrcA
Dest
BA 
Dest
DestBB
Workload-generator
Src
A
Src

SrcA
Dest
BA 
Dest
DestBB
Reno+Reno Reno+HS
Simulation run 1
Heavy-tail, long-live,
real trace data, etc…
Client-server,
peer-to-peer, etc…
Simulation run 2
Compare
Time, size
Time
: size
Time,
size
Time
Time: :size
size
・・・
…
…
…
HS+HS
Simulation run 3
 Reproducible simulation
experiments for different set of
protocols
 Pre-configured Environment
to be used in Simulation
 Core Network Size / Link Delay /
Workload (Flow Size) / Start time
Equal
Configurable (Example)
Parking Lot Topology
4 core routers w/ 2MB
Links delays 15 ms (exponential)
Short Lived Flow 1MB/1sec
(pareto/exponential)
 Long Lived Flow 4.7GB/2min
(fixed/exponential)





IRTF/ICCRG Meeting
Chicago July 24 2007
Qualitative TCP Evaluation Comparison
 TReno_iReno+Reno is the throughput
of Reno flow i in the first SET where
all flow use Reno (RENO+RENO)
 After several simulations
using different seeds we
have the following results:
 RENO + RENO (today)
 RENO + HS (2008)
 HS + HS (2012)
 Where TReno_iHS+Reno is the
throughput of Reno flow i in the
second SET in which half of the
flows use high-speed protocols
RENO + HS).
 Where TiHS+HS and TiReno+Reno are
the throughput of flow i in the third
SET where all flows use high-speed
protocols (HS+HS) and the first SET
where all flows use Reno
(RENO+RENO), respectively
IRTF/ICCRG Meeting
Chicago July 24 2007
Qualitative Comparison with TCP NewReno and
Congestion Window Dynamics Details
Sorted by Link Utilization
Long-Lived Flow 1
Sorted by Number of Hops
Queue Fluctuation (10ms)
IRTF/ICCRG Meeting
Chicago July 24 2007
Sorted by Flow RTT
Cumulative Packet Losses
The suite is available for download
http://netlab.cs.ucla.edu/tcpsuite/
Topology
generator
Flow
generator
Workload
generator
Scenario
library
Link A-B BW
Delay
Link A-B BW Delay
Tcl scripts for NS2
Log data
Plotting tools
New set of metrics allow qualitative
comparison with the current state of
the network
It is also possible to investigate
individual flow dynamics and
queues reproducibly
Please submit YOUR scenario
Library for public sharing !
Questions, comments, contributions,
to: [email protected],
[email protected]
IRTF/ICCRG Meeting
Chicago July 24 2007