Title: A ReceiverDriven Bandwidth Sharing System BWSS for TCP
1A Receiver-Driven Bandwidth Sharing System (BWSS)
for TCP
- Puneet Mehra, Avideh Zakhor
- UC Berkeley, USA
- Christophe De Vleeschouwer
- Université Catholique de Louvain, Belgium
2Talk Outline
- Motivation Goals
- BWSS Overview
- NS-2 Simulations
- Internet Experiments
- Related Work
- Conclusion
3Motivation
- Most traffic on Internet is TCP
- HTTP, FTP, P2P,
- In many cases access links are bottleneck
- Limited Bandwidth (B/W) eg DSL/Cable lt 1.5Mbps
- User run many apps that compete for B/W
- Problem TCP shares bottleneck B/W according to
RTT - Not fair to flows w/ large RTT
- Doesnt consider application needs or user prefs!
4Example Situation
Low RTT
Med. RTT
High RTT
Congestion
5Goal Approach
- Goal Let user control application B/W
allocations - User preferences dictate bandwidth allocation
- Approach limit throughput of low-priority flows
to provide additional B/W for high-priority ones - Ensure full utilization of access link
- Dont change TCP/senders or routers ? easily
deployable!
6Talk Outline
- Motivation Goals
- BWSS Overview
- NS-2 Simulations
- Internet Experiments
- Related Work
- Conclusion
7BWSS Overview
8Target Rate Allocation Subsystem
T1
- Some apps need minimum guaranteed rate(video),
others dont (ftp) - User assigns each flow
- Priority, minimum rate and weight
- Bandwidth allocation algorithm
- Satisfy minimum rate in decreasing order of
priority - Remaining B/W shared according to weight
9BWSS Overview
10Flow Control System (FCS)
11BWSS Overview
12s Calculation Subsystem
R1
s
RN
- Goal Choose s to maximize link utilization. U
Si Ri (s) - Approach Iteratively increase/decrease s and
measure the impact on utilization
T2 ! R2
T2 R2
T1 R1
T2 R2
Link Capacity
T1 R1
U
s
W1
W2
13BWSS Overview
14Talk Outline
- Motivation Goals
- BWSS Overview
- NS-2 Simulations
- Internet Experiments
- Related Work
- Conclusion
15Example of User Preferences
Time 0 Min. Rate 0 Kb/s weights 1,2,3 for
S0-S2 Priority -gt S0 (max), S2(min) Time 300
Min Rate 600 Kb/s
TCP
BWSS
16Network-Congestion Example
Priorities increasing from S0-S2 Min Rate S0,S2
600Kb/s S1 100 Kb/s Time 400s to
1200s 700Kb/s Interfering TCP traffic S2 limited
to 300Kb/s
17Multimedia Streaming Example
- S0 Ftp traffic. Low Priority
- Min Rate 700Kb/s
- S1 Streaming at 450Kb/s
- High Priority
- 300Kb/s UDP flow (400s-1000s)
18Talk Outline
- Motivation Goals
- BWSS Overview
- NS-2 Simulations
- Internet Experiments
- Related Work
- Conclusion
19BWSS Implementation
BWSS User-space shared library setsockopt() No
Kernel Mods!
ETH0
Invisible to Apps
20Experimental Setup
ATT Cable modem connection
Host PC running Linux 2.4.8 kernel
21Experiment 1 User Preferences
Standard TCP
Minimum Rate of 100Kb/s Priorities Blue, green,
red
Weighted Fair Sharing Ratios 3,2,1
- BWSS allows flexible allocation of B/W
22Related Work
- Network-Modifying Solutions
- Router Scheduling Policies
- WFQ, W2FQ allow B/W allocation
- Require infrastructure changes ? little
deployment - Network Appliances PacketShaper
- Placed at network ingress ? does traffic
management - Not easy to manage individual preferences
- End-Host solution
- Modify receivers window Spring et al, 2000
- Prioritize short-lived flows over longer ones
- Focus reduce queuing delay for interactive apps
(telnet)
23Conclusions
- BWSS allows user to allocate link B/W
- Flexible B/W allocation model
- Adapts to changing network conditions
- No changes to TCP/senders/routers
- Implemented as shared library ? easily deployable
- Enables efficient video streaming over TCP
- Simulations show better performance than standard
TCP - Additional Internet experiments validate
TCP Based Video Streaming using
Receiver-Driven Bandwidth Sharing, Packet Video
2003, To appear