Post on 22-Dec-2015
transcript
Receiver-Driven Bandwidth Sharing for TCP and its Application to Video Streaming
Puneet Mehra, Christophe De Vleeschouwer, and Avideh ZakhorIEEE Transactions on Multimedia, August 2005
Introduction Last-hop connections are often the
bottleneck on the Internet Many applications run together to
compete for the bandwidth resource Propose Receiver-Driven Bandwidth
Sharing System (BWSS) Apply on last-hop link Allocate bandwidth according to user
preferences
System overview Objectives:
Achieve full utilization of receiver’s access link
Satisfy user preferences (how the bottleneck bandwidth should be shared)
Essential idea: constrain the throughput of certain low priority flows to provide additional bandwidth to high priority flows
Block diagram of bandwidth sharing system (BWSS)
TCP flow control system (FCS) Achieve a particular bit-rate for a given
TCP flow Input: desired bit rate
Output: advertised window (an integer number of packets, must be greater than zero)
Goal: R: actual rate, T: target rate
])1(,)1[( TTR
T ω
FCS algorithm
FCS analysis
( )
T: target rate set ω to Proceed in an iterative bandwidth esti
mation to adjust advertised window
RTT
pR size
sizepRTTT /)(
RTT
pR size
sizep
RTTR
T ω
R
FCS analysis
5.0
5.0
RTTp
TR
R
TR
size
RTTp
RT
R
RT
size
Measuring flow RTT and bandwidth Calculate RTT: use TCP Timestamp
option Calculate bandwidth
Estimate at the end of each period ψ, ψ is set to in all experiments
, εis set to 0.3 in all experiments
RRR )1( RTT2
Frequency to adjust the advertisement window Frequency φ is bounded based on:
Round trip time (RTT) Bandwidth estimation period (ψ) φ should be greater than RTT+ψ
We set φ>RTT+3 ψ Allow enough time for the window
adjustment to affect on throughput
Bandwidth sharing system (BWSS) Separate “priority” and “weight”
Some aps require minimal bandwidth, but the more is not necessarily the better, ex: streaming
Some aps don’t require minimal bandwidth, but the more is the better, ex: ftp
Minimal rate should be provided to each connection in decreasing order of priority
The remaining bandwidth should be shared proportionally to the weight
Target rate allocation & receiver preferences If system’s total bit rate
Else =min( , max(0, ) )
1
0
N
j jm
1
0
1
0
)( N
jj
iN
jjii mmT
1
0
i
jjm
iT im
Congestion Congestion in certain connection
Threshold: γT allocate bandwidth to other application or not
Experiment environment
Buffer incoming packets to limit
bandwidth
Throughput: 960kbpsAdditional delay: 30ms
Experiment 1: the ideal case
First 40 seconds: standard TCP
Weights: 2, 1, 3, respectively
No minimal rate
Experiment 2: Link bandwidth reduction
Weight: 1, 2, respectively
40~80s: a 320 kbps UDP stream
Experiment 3: bandwidth redistribution
Stream minimal rate: 496 kbps
40~100s: congestion, stream ↓ 160kbps
Experiment 4: RealVideo streaming (under standard TCP)
Experiment 4: RealVideo streaming (under UDP)
Experiment 4: RealVideo streaming (under BWSS)
Conclusion Investigated a bandwidth-sharing
system (BWSS) for TCP connections Allow users specify preferences Don’t need to change network
infrastructure Experiment results show that
streaming with BWSS offers superior performance
Drawback: BWSS may suffer starving condition