Min-Plus Linear Systems Theory Min-Plus Linear Systems Theory and and Bandwidth Estimation Bandwidth Estimation
Apr 01, 2015
Min-Plus Linear Systems TheoryMin-Plus Linear Systems Theoryandand
Bandwidth EstimationBandwidth Estimation
System
(Classical) System Theory(Classical) System Theory
Linear Time Invariant (LTI) Systems
Linear:Time invariant:
Consider an input signal:
.. and its output at a system:
Note:
Linear Systems TheoryLinear Systems Theory
Linear Systems TheoryLinear Systems Theory
• Consider an arbitrary function
• Approximate by
Now we let
Linear Systems TheoryLinear Systems Theory
• The result of
“convolution”
System
(Classical) System Theory(Classical) System Theory
Linear Time Invariant (LTI) Systems
• If input is Dirac impulse, output is the system response
• Output can be calculated from input and system response:
“convolution”
Min-Plus Linear SystemMin-Plus Linear System
Networkmin-plus Linear:Time invariant:
data
time t
A(t)
D(t)
delay
backlog
Consider arrival function:
.. and departure function:
Note:
Min-Plus Linear SystemMin-Plus Linear System
Min-Plus Linear SystemMin-Plus Linear System
• Consider an arbitrary function
• Approximate by
Now we let
Min-Plus Linear SystemMin-Plus Linear System
• The result of
“min-plus convolution
”
Min-Plus Linear SystemsMin-Plus Linear Systems
Network
• If input is burst function , output is the service curve
Min-Plus Linear SystemsMin-Plus Linear Systems
Network
• Departures can be calculated from arrivals and service curve:
“min-plus convolution”
System
Back to (Classical) SystemsBack to (Classical) Systems
• Now:
Eigenfunctions of time-shift systems are also eigenfunctions of any linear time-invariant
system
Time Shift System
eigenfunction
eigenfunction eigenvalue
System
Back to (Classical) SystemsBack to (Classical) Systems
• Solving:
• Gives:
eigenvalue
Fourier Transform
System
Now Min-Plus Systems againNow Min-Plus Systems again
• Now:
Eigenfunctions of time-shift systems are also eigenfunctions of any linear time-invariant
system
Time Shift System
eigenfunction
eigenfunctioneigenvalue
System
Back to (Classical) SystemsBack to (Classical) Systems
• Solving:
• Gives:
eigenvalue
Legendre Transform
Min-Plus Algebra
System Theory for NetworksSystem Theory for Networks
• Networks can be viewed as linear systems in a different algebra:• Addition (+) Minimum (inf)
• Multiplication (·) Addition (+)
• Network service is described by a service curve
TransformsTransforms
• Classical LTI systems
Fourier transform
• Min-plus linear systems
Legendre transform
Time domain
Frequency domain
Time domain
Rate domain
Properties: (1) . If is convex:
(2) If convex, then
(3) Legendre transforms are always convex
Available BandwidthAvailable Bandwidth
• Available bandwidth is the unused capacity along a path
• 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
i
Probing a network with packet trainsProbing a network with packet trains
Edited slide from: V. Ribeiro, Rice. U, 2003
• 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)
• So: rate at which the packet trains are sent is crucial:
• Rate too high probes preempt existing traffic
• Rate too low probes only measure the input rate
Networksource
sink
Rate Scanning Probing MethodRate 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
• If size of packets is L, transmission time of a packet is T, and distance between packets is the rate is:
r = L/(T+)
• Rate Scanning:
Source sends multiple packet trains, each with a different rate r
Packet train:
Min-Plus Linear SystemsMin-Plus Linear Systems
Networkmin-plus Linear:Time invariant:
• If input is burst function , output is the service curve
• Departures can be calculated from arrivals and service curve:
“min-plus convolution”
data
time t
A(t)
D(t)
delay
backlog
One more thing …One more thing …
• 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 !!
Bandwidth estimation in the network Bandwidth estimation in the network calculuscalculus
• View the network as a min-plus system that is either linear or nonlinear
Bandwidth estimation scheme:
1. Timestamp probesAp(t) - Send probesDp(t) - Receive probes
2. Use probes to find a that satisfies for all (A,D).
3. is the estimate of the available bandwidth.
data
time t
Ap(t)
Dp(t)
delay
backlog
Bandwidth estimation in the network Bandwidth estimation in the network calculuscalculus
• View the network as a min-plus system that is either linear or nonlinear
Bandwidth estimation scheme:
1. Timestamp probesAp(t) - Send probesDp(t) - Receive probes
2. Use probes to find a that satisfies for all (A,D).
3. the goal is to select as large as possible.
data
time t
Ap(t)
Dp(t)
delay
backlog
Bandwidth estimation in a min-plus Bandwidth estimation in a min-plus linear networklinear network
• If network is min-plus linear, we get • If we set , then
• So: We get an exact solution when the probe consist of a burst (of infinite size and sent with an infinite rate)
• However:• An infinite-sized instantaneous burst cannot
be realized in practice(It also creates congestion in the network)
data
time t
A(t) = d(t)
D(t) = S(t)
delay
Rate Scanning (1): TheoryRate Scanning (1): Theory
• Backlog:
• Max. backlog:
• If , we can write this as:
• Inverse transform: If S is convex we have da
ta
time t
A(t)
D(t)
delay
backlog
Rate Scanning (2): AlgorithmRate Scanning (2): Algorithm
Step 1: Transmit a packet train at rate , compute
compute
Step 2: If estimate of has improved, increase and go to Step 1.
• This method is very close to Pathload !
Non-Linear SystemsNon-Linear Systems
• When we exploit we assume a min-plus linear system
• 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
• QUESTION: How to determine the critical rate at which network becomes non-linear
Detecting Non-linearityDetecting Non-linearity
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 MeasurementsEmuLab 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 our theory translate to real networks?
• Does representing available bandwidth by a function (as opposed to a number) have advantages?
• How robust are the methods to changes of the traffic distribution?
Dumbbell NetworkDumbbell Network
• UDP packets with 1480 bytes (probes) and 800 bytes (cross)
• Cross traffic: 25 Mbps
Cross traffic
Probe traffic
50 Mbps10 ms
100 Mbpsno delay
100 Mbpsno delay
100 Mbps10 ms
100 Mbps10 ms
Constant Bit Rate (CBR) Cross TrafficConstant Bit Rate (CBR) Cross Traffic
• Cross traffic is sent at a constant rate (=CBR)
• 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
Rate Scanning: Different Cross Traffic Rate Scanning: Different Cross Traffic
• Exponential: random interarrivals, low variance• Pareto: random interarrivals, very high variance
Exponential Pareto
Dirac impulseDirac impulse
• The Diract delta function, often referred to as the unit impulse function, can usually be informally thought of as a function δ(x) that has the value of infinity for x = 0, the value zero elsewhere. The integral from minus infinity to plus infinity is 1.
From: Wikipedia