Lect10b-BWestimation

advertisement
Bandwidth Estimation
System Theory for Networks
• Networks can be viewed as linear systems in a
different algebra:
•
• Addition (+)

Minimum (inf)
• Multiplication (·)

Addition (+)
Min-Plus
Algebra
Network service is described by a service curve
Back to (Classical) Systems
System
Time
Shift
System
eigenfunction
eigenvalue
eigenfunction
• Now:
Eigenfunctions of time-shift systems are also
eigenfunctions of any linear time-invariant system
Min-Plus Linear Systems
Network
• Departures can be calculated from arrivals and service curve:
“min-plus convolution”
Characterizing non-linear systems
• Many networks are not min-plus linear
• i.e., for some t:
• … but can be described by a lower service curve
•
such that for all t:
• Having a lower service curve is often enough, since it provides a
lower bound on the service !!
Available Bandwidth
• Available bandwidth is the unused capacity along a path
i
• Available bandwidth of a link:
• Available bandwidth of a path:
• Goal:
Use end-to-end probing to estimate available bandwidth
Edited slide from: V. Ribeiro, Rice. U, 2003
Probing a network with packet trains
• A network probe consists of a sequence of packets (packet
train)
• The packet train is from a source to a sink
• For each packet, a measurement is taken when the packet is
sent by the source (arrival time), and when the packet arrives at
the sink (departure time)
source
Network
sink
Edited slide from: V. Ribeiro, Rice. U, 2003
Rate Scanning Probing Method
• Each packet trains is sent at a fixed rate r (in
bits per second). This is done by:
• All packets in the train have the same size
• Packets of packet train are sent with same
distance
Packet train:
D
D
D
• If size of packets is L, transmission time of a
packet is T, and distance between packets is
D, the rate is:
r = L/(T+D)
• Rate Scanning:
Source sends multiple packet trains, each with
a different rate r
Bandwidth estimation in the network calculus
• View the network as a min-plus system that is either linear or
nonlinear
1. Timestamp packets of packet train:
Ap(t) - Send probes
Dp(t) - Receive probes
data
Bandwidth estimation scheme:
Ap(t)
delay
Dp(t)
backlog
2. Use probes to find a
satisfies
for all (A,D).
3.
that
is the estimate of the available
bandwidth. The goal is to select
as large as possible.
time t
Bandwidth estimation in a min-plus linear
network
• So: We get an
exact solution when the
probe consist of a burst
(of infinite size and sent with
an infinite rate)
data
• If network is min-plus linear, we get
• If we set
, then
delay
A(t) = d(t)
D(t) = S(t)
time t
• However:
• An infinite-sized instantaneous burst cannot be
realized in practice
(It also creates congestion in the network)
Rate Scanning (1): Theory
data
• Backlog:
• Max. backlog:
• If
, we can write this as:
• Inverse transform: If S is convex we have
A(t)
delay
D(t)
backlog
time t
Rate Scanning (2): Algorithm
Step 1: Transmit a packet train at rate
compute
,
compute
Step 2: If estimate of
has improved, increase
• This method is very close to Pathload !
and go to Step 1.
Non-Linear Systems
• When we exploit
linear system
we assume a min-plus
• In non-linear networks, we can only find a lower service curve
that satisfies
• We view networks as system that are always linear when
the network load is low, and that become non-linear when
the network load exceeds a threshold.
• Note: In rate scanning, by increasing the probing rate, we
eventually exceed the threshold at which the network
becomes non-linear
Example of a non-linear system: FIFO link
• Rate of packet train is determined by gap between packets
CBR:
CBR
800 Byte
25 Mbps
CBR
data [Mb]
Packet size:
Rate:
FIFO
50 Mbps
probe
50
Mbps
40
100
75
50
30
25
20
probe
10
Burst:
Packet size:
Burst size:
Probing rate:
800 Byte
7500 packets
25 … 100 Mbps
0
0
200
400
600
time [ms]
800
1000
• How does this show that FIFO is not a min-plus linear system.
Non-Linear Systems (or: How about FIFO ?)
• When we exploit
linear system
we assume a min-plus
• In a linear system, the system response S does not change with
the input. But in FIFO, the system response changes with the
input rate. So, FIFO is not min-plus linear.
• In a FIFO system with …
… we get
(see Problem Set)
Probing traffic
A(t) = rt
C
Cross traffic
rc t
D(t)
Non-Linear Systems (or: How about FIFO ?)
• If we set
… we can describe a FIFO
system as
• This means: FIFO is a linear system
if total traffic is below capacity,
and non-linear otherwise.
• So, we should not increase rate of
probe traffic beyond
linear
not
linear
Probing rate
Detecting Non-linearity
How to determine the critical rate at which network
becomes non-linear?
Backlog convexity criterion
• Suppose that we probe at constant rates
• Legendre transform is always convex
• In a linear system, the max. backlog is the
Legendre transform of the service curve:
• If we find that for some rate r
we know that system is not linear
EmuLab Measurements
• Emulab is a network testbed at U. Utah
• can allocate PCs and build a network
• controlled rates and latencies
Some Questions:
• How well does theory translate to
real networks?
• What can we learn from the
computed service curve
• How robust are the methods to
changes of the traffic?
Dumbbell Network
• UDP packets with 1480 bytes (probes) and 800 bytes (cross)
• Cross traffic: 25 Mbps
Cross
traffic
100 Mbps
10 ms
100 Mbps
no delay
50 Mbps
10 ms
Probe
traffic
100 Mbps
10 ms
100 Mbps
no delay
Constant Bit Rate (CBR) Cross Traffic
• Cross traffic is sent at a constant rate (=CBR)
Rate Scanning
• The “reference service curve” (red) shows the ideal results.
The “service curve estimates” shows the results of the rate
scanning method
• Figure shows 100 repeated estimates of the service curve
Rate Scanning: Different Cross Traffic
• Exponential: random interarrivals, low variance
• Pareto: random interarrivals, very high variance
Exponential
Pareto
Download