Derivation of Delay Bound

Delay Analysis of Scheduling
Algorithms
Packet Switch
•
Fixed-capacity links
•
Variable delay due to waiting time in buffers
•
Delay depends on
1.
Traffic
2. Scheduling
Traffic Arrivals
MPEG-Compressed Video Trace
350
Peak rate
sizecells)
Traffic Frame
(in 50 byte
300
250
200
150
100
Mean rate
50
0
0
200
400
600
Frame
Framenumber
number
800
1000
First-In-First-Out (FIFO)
• Packets are transmitted in the order of their
arrivals
• FIFO is the default scheduling in packet networks
• Main Drawbacks of FIFO:
• Unfairness in overload: Traffic with most arrivals
receives most of the bandwdith
• Unable to differentiate traffic with different
requirements
Static Priority (SP)
• Blind Multiplexing (BMux):
All “other traffic” has higher priority
Earliest Deadline First (EDF)
Benchmark scheduling algorithm for meeting delay
requirements
Traffic Description
Cumulative arrivals A
• Traffic arrivals in time interval [s,t) is
• Burstiness can be reduced by “shaping” traffic
Shaped Arrivals
Flow 1
Flow N
.
.
.
C
E N ( )
Flows are
shaped
Traffic
A1
E1 ( )


AN
Regulated
arrivals
Buffered Link
is shaped by an envelope
such that:

Popular envelope: “token bucket”
P

s
What is the maximum number of
shaped flows with delay
requirements that can be put on a
single buffered link?
• Link capacity C
• Each flows j has
• arrival function Aj
• envelope Ej
• delay requirement dj
Delay Analysis of Schedulers
• Tagged arrival = arrival from flow j at t• Determine the arrivals transmitted before the
tagged arrival
Arrivals from flow k
0

Tagged
arrival

t
Wj (t)
t Wj (t)

Limit
(Scheduler Dependent)

Departure of
tagged arrival
Delay Analysis of Schedulers
• Determine the arrivals transmitted before the
tagged arrival
FIFO
• Arrivals earlier than tagged arrival have
precedence
Static Priority (SP)
• Tagged arrival has priority p
• All higher priority traffic (q>p) has precedence
• Same priority is like FIFO
Earliest Deadline First (EDF)
• Flow j has delay index dj
Summarizing all three schedulers
• Define Djk:
and
Then for FIFO, SP, and EDF we have:
Delay Analysis of Schedulers
• Tagged arrival = arrival from flow j at t• Determine the arrivals transmitted before the
tagged arrival
Arrivals from flow k
0

Tagged
arrival

t
Wj (t)
t Wj (t)

Limit
(Scheduler Dependent)

Departure of
tagged arrival
Derivation of Delay Bound
(1) Find the last time before t when the
scheduler did not have backlog from traffic
with higher precedence than tagged arrival:
So, after
, the scheduler is only
transmitting traffic with higher precedence
than the tagged arrival
Derivation of Delay Bound
(2) The delay of the
tagged arrival is
Derivation of Delay Bound
(3) Suppose the tagged arrival is still in the
system at time
Then, the departures from flow in the time
interval
are
(Note: tagged arrival is from flow )
Derivation of Delay Bound
(4) We can ensure
inside
holds for
This gives:
if the condition
Derivation of Delay Bound
(5) Now we have all the pieces for
Derivation of Delay Bound
(6) Next, we want to ensure that
This holds when the condition is satisfied
for
:
Derivation of Delay Bound
(7) We now allow to be any value. This gives us
a more strict condition.
Also, we use that
Rewriting this gives:
Derivation of Delay Bound
(8) Now we use that that each flow has an
envelope, that is,
This is a condition that the delay of the tagged flow does not exceed
Since the condition is independent of the arrival time, the condition
holds for any arbitrary arrival from flow
Delay bound
An arrival from flow j never has a delay longer than dj
if