Priority layered approach to Transport protocol for Long fat networks Vidhyashankar Venkataraman Cornell University 18th December 2007

Download Report

Transcript Priority layered approach to Transport protocol for Long fat networks Vidhyashankar Venkataraman Cornell University 18th December 2007

Priority layered approach to
Transport protocol for Long fat
networks
Vidhyashankar Venkataraman
Cornell University
18th December 2007
1
TCP: Transmission Control Protocol
NSFNet: 1991 (1.5Mbps)
Abilene backbone: 2007 (10Gbps)

TCP: ubiquitous end-to-end protocol for reliable communication

Networks have evolved over the past two decades


TCP has not
TCP is inadequate for current networks
18th December 2007
2
Long Fat Networks (LFNs)

Bandwidth delay product



BW X Delay = Max. amount of data ‘in the pipe’
Max. data that can be sent in one round trip time
High value in long fat networks



Optical eg. Abilene/I2
Satellite networks
Eg: 2 satellites 0.5 secs, 10Gbps radio link can send up to 625MB/RTT
18th December 2007
3
TCP: Basics
Window
AI


MD
Reliability, in-order delivery
Congestion-aware:
SS

Slow Start (SS): Increase window size (W) from 1 segment


Additive Increase Multiplicative Decrease (AIMD)
AI: Conservative increase by 1 segment/RTT
MD: Drastic cutback of window by half with loss

AIMD ensures fair throughput share across network flows

18th December 2007
t
4
TCP’s AIMD revisited
(Adapted from Nick Mckeown’s slide)
Rule for adjusting W
Only W packets
may be outstanding


AI : If an ACK is received: W ← W+1/W
MD: If a packet is lost:
W ← W/2
Bottleneck
Source
Dest
Window size
Wmax
Loss
MD
Early
cutback
AI
Wmax
2
SS
18th December 2007
Multiple cutbacks
Timeout
t
5
TCP’s inadequacies in LFNs

W ~ 105 KB or more in LFNs

Two problems
 Sensitivity to transient congestion and random losses
 Ramping up back to high W will take a long time (AI)

Detrimental to TCP’s throughput


Example: 10 Gbps link, 100ms; Loss rate of 10-5 yields only
10Mbps throughput!
Another problem: Slow start: Short flows take longer
time to complete
18th December 2007
6
Alternate Transport Solutions
Taxonomy based on Congestion signal to end host
Congestion Control in LFNs
Explicit
• Explicit notification from
routers
• XCP
General Idea:
Window growth curve `better’
than AIMD
18th December 2007
End-to-end (like TCP)
Loss
• Loss: signal for
congestion
• CUBIC,
HS-TCP, STCP
Implicit
Delay
• RTT increase: signal for
congestion
(Queue builds up)
• Fast
7
Problems with existing solutions

These protocols strive to achieve both:



Aggressiveness: Ramping up quickly to fill pipe
Fairness: Friendly to TCP and other flows of same protocol
Issues

Unstable under frequent transient congestion events
Achieving both goals at the same time is difficult

Slow start problems still exist in many of the protocols

Example:



XCP: Needs new router hardware
FastTCP, HS-TCP: Stability is scenario-dependent
18th December 2007
8
A new transport protocol

Need: “good” aggressiveness without loss in
fairness


“good”: Near-100% bottleneck utilization
Strike this balance without requiring any new
network support
18th December 2007
9
Our approach: Priority Layered Transport
(PLT)
Subflow 1: Legacy TCP
Dst1
Src1
Bottleneck
Subflow 2
Separate aggressiveness and fairness: Split flow into 2 subflows
 Send TCP (SS/AIMD) packets over subflow 1 (Fair)
 Blast packets to fill pipe, over subflow 2
(Aggressive)

Requirement: Aggressive stream ‘shouldn’t affect’ TCP
streams in network
18th December 2007
10
Prioritized Transfer
Sub flow 2 fills the troughs
Window size
W+B
(W+Buffer)
W
(Pipe capacity)
t

Sub-flow 1 strictly prioritized over sub-flow 2

Meaning: Sub-flow 2 fills pipe whenever 1 cannot and does that
quickly

Routers can support strict priority queuing: DiffServ

Deployment issues discussed later
18th December 2007
11
Evident Benefits from PLT


Fairness
 Inter protocol fairness: TCP friendly
 Intra protocol fairness: As fair as TCP
Aggression

Overcomes TCP’s limitations with slow start

Requires no new network support

Congestion control independence at subflow 1

Sub flow 2 supplements performance of sub flow 1
18th December 2007
12
PLT Design

Scheduler assigns packets to sub-flows

High priority Congestion Module (HCM): TCP


Low priority Congestion Module (LCM)


Module handling subflow 1
Module handling subflow 2
LCM is lossy


Packets could get lost or starved when HCM saturates pipe
LCM Sender knows packets lost and received from
receiver
18th December 2007
13
The LCM

Is naïve no-holds-barred sending enough?




No! Can lead to congestion collapse
Wastage of Bandwidth in non-bottleneck links
Outstanding windows could get large and simply
cripple flow
Congestion control is necessary…
18th December 2007
14
Congestion control at LCM

Simple, Loss-based, aggressive


Loss-rate based:



Multiplicative increase Multiplicative Decrease (MIMD)
Sender keeps ramping up if it incurs tolerable loss rates
More robust to transient congestion
LCM sender monitors loss rate p periodically




Max. tolerable loss rate μ
p<μ
=> cwnd = *cwnd (MI, >1)
p >= μ
=> cwnd = *cwnd (MD, <1)
Timeout also results in MD
18th December 2007
15
Choice of μ

Too High: Wastage of bandwidth
Too Low : LCM is less aggressive, less robust

Decide from expected loss rate over Internet



Preferably kernel tuned in the implementation
Predefined in simulations
18th December 2007
16
Sender Throughput in HCM and LCM
LCM fills pipe
in the desired
manner
LCM cwnd = 0 when
HCM saturates pipe
18th December 2007
17
Simulation study

Simulation study of
PLT against TCP,
FAST and XCP

250 Mbps
bottleneck

Window size: 2500

Drop Tail policy
18th December 2007
18
FAST TCP

Delay-based congestion control for LFNs: Popular


Ramp up much faster than AI


If queuing delay builds up, increase factor reduces
Uses parameter to decide reduction of increase factor


Congestion signal: Increase in delay
Ideal value depends on number of flows in network
TCP-friendliness scenario-dependent

Though equilibrium exists, difficult to prove convergence
18th December 2007
19
XCP: Baseline

Requires explicit feedback from routers

Routers equipped to provide cwnd increment

Converges quite fast

TCP-friendliness requires extra router
support
18th December 2007
20
Single bottleneck topology
18th December 2007
21
Effect of Random loss
PLT: Near-100%
goodput if loss rate< μ
TCP, Fast and XCP
underperform at high
loss rates
0
18th December 2007
22
Short PLT flows
Frequency distribution of
flow completion times
Flows pareto distributed
(Max size = 5MB)
Most PLT flows finish
within 1 or 2 RTTs
18th December 2007
23
Effect of flow dynamics
3 flows in the network
Flows 1 and 2 leave, the
other flow ramps up quickly
Congestion in LCM due to
another flow’s arrival
18th December 2007
24
Effect of cross traffic
18th December 2007
25
Effect of Cross traffic
18th December 2007

Aggregate
goodput of flows

FAST yields poor
goodputs even
with low UDP
bursts

PLT yields 90%
utilization even
with 50 Mbps
bursts
26
Conclusion

PLT: layered approach to transport



Prioritize fairness over aggressiveness
Supplements aggression to a legacy congestion
control
Simulation results are promising


PLT robust to random losses and transient
congestion
We have also tested PLT-Fast and results are
promising!
18th December 2007
27
Issues and Challenges ahead

Deployability Challenges




PEPs in VPNs
Applications over PLT
PLT-shutdown
Other issues


Fairness issues
Receiver Window dependencies
18th December 2007
28
Future Work: Deployment
(Figure adapted from Nick Mckeown’s slides)
PEP
PLT
connection
PEP

How could PLT be deployed?



In VPNs, wireless networks
Performance Enhancing Proxy boxes sitting at the edge
Different applications?


18th December 2007
LCM traffic could be a little jittery
Performance of streaming protocols/ IPTV
29
Deployment: PLT-SHUTDOWN

In the wide area, PLT should be disabled if no
priority queuing

Unfriendly to fellow TCP flows otherwise!

We need methods to detect priority queuing
at bottleneck in an end-to-end manner

To be implemented and tested on the real
internet
18th December 2007
30
Receive Window dependency

PLT needs larger outstanding windows



LCM is lossy: Aggression & Starvation
Waiting time for retransmitting lost LCM packets
Receive window could be bottleneck


LCM should cut back if HCM is restricted
Should be explored more
18th December 2007
31
Fairness considerations

Inter-protocol fairness: TCP friendliness
Intra-protocol fairness: HCM fairness

Is LCM fairness necessary?




LCM is more dominant in loss-prone networks
Can provide relaxed fairness
Effect of queuing disciplines
18th December 2007
32
EXTRA SLIDES
18th December 2007
33
Analyses of TCP in LFNs

Some known analytical results



At loss p, (p. (BW. RTT)2)>1 => small throughputs
Throughput  1/RTT
Throughput  1/√p
(Padhye et. al. and Lakshman et. al.)

Several solutions proposed for modified
transport
18th December 2007
34
Fairness

Average goodputs of PLT and TCP flows in small
buffers

Confirms that PLT is TCP-friendly
18th December 2007
35
PLT Architecture
Sender
Receiver
App
App
Input buffer
Socket
interface
PLT Sender
PLT Receiver
HCM Packet
LCM Rexmt
Buffer
HCM
HCM-R
HCM ACK
LCM Packet
LCM
Dropped Packets
18th December 2007
LCM-R
Strong ACK
36
Other work: Chunkyspread

Bandwidth-sensitive peer-to-peer multicast for livestreaming

Scalable solution:



Robustness to churn, latency and bandwidth
Heterogeneity-aware Random graph
Multiple trees provided: robustness to churn

Balances load across peers

IPTPS’ 06, ICNP’ 06
18th December 2007
37