Scheduling in Delay Graphs with Applications to Optical Networks Isaac Keslassy (Stanford...
-
date post
21-Dec-2015 -
Category
Documents
-
view
221 -
download
1
Transcript of Scheduling in Delay Graphs with Applications to Optical Networks Isaac Keslassy (Stanford...
Scheduling in Delay Graphswith Applications to Optical Networks
Isaac Keslassy (Stanford University), Murali Kodialam, T.V. Lakshman, Dimitri Stiliadis (Bell-Labs)
Problem Motivation
MAN WDM optical ring with N nodes
For each node i, one tunable transmitter, and one fixed receiver at wavelength λi.
1 23
i
Nλ1 λ2
λ3
λi
λN
When and how can we guarantee 100% throughput?
Outline
Introduction: Scheduling with no Delays
Bipartite Delay Graph
TSS Algorithm
Theorems on Separable Architectures
Non-Separable Architectures
Assume no propagation delays (each packet transmitted is immediately received)
A single transmitter and receiver per node => when i sends to j, i cannot send to j’≠j and j cannot receive from i’≠i
Slotted time, fixed-size packets
Scheduling with no Delays
Input:
Birkhoff-von Neumann (BvN) schedule: A frame of F matrices S1,…,SF such that Arrivals ≤ Services: R’ ≤ S1 + .. + SF
{Si}’s are permutation matrices: any node sends and receives at most one packet per time-slot
Known result: decomposition always exists
Frame-Based Scheduling
.j,
i,
matrix,integer integer,
: with,1
matrix rate Arrival
iij
jij
FR'
F,R'
R'F
RF
R
Example of BvN Schedule
,...
001
100
010
,
010
001
100
,
010
001
100
,
001
100
010
,
010
001
100
,
010
001
100
:Schedule
001
100
010
010
001
100
010
001
100
':ionDecomposit
021
102
210
3
1'
3
1:matrix Rate
R
RR
No transmitter conflicts
No receiver conflicts
Frame Frame
Propagation delays << time-slot ?
Example: MAN WDM ring 30km ring, 10Gbps, 1kb packets Time-slot = 1kb/(10Gb/s) = 100ns Max propagation delay = 30km/(3.108 m/s)
= 100μs
Clearly impossible to neglect delays
Neglecting Delays?
Outline
Introduction: Scheduling with no Delays
Bipartite Delay Graph
TSS Algorithm
Theorems on Separable Architectures
Non-Separable Architectures
Question: Can we extend Birkhoff-von Neumann (BvN) to general case of WDM mesh with delays
Method:
1. Provide simple model for mesh
2. Use model to extend BvN
Question
General WDM Mesh Architecture
2
λ2
λ11
N λN
i λi
Star Coupler
Examples of WDM Architectures
1
2
N
λ1
λ2
λN
i
λi
1 23
i
Nλ1 λ2
λ3
λi
λN
Ring
Arbitrary mesh with constant delays Arbitrary routing policy such that all paths to a
given node form a spanning tree
Mesh Model
di
sλd
Property: if packets collide on the path, they would also have collided at the receiver
Mesh Model
di
sdd
dd λd
Property: if packets collide on the path, they would also have collided at the receiver
No collision at receiver no collision on path
We need to prevent only two types of collision: At the transmitter At the receiver
Mesh Model
Bipartite delay graph: bipartite graph with weights ij (delay from i to j)
Bipartite Delay Graph
i
j
ij
Example of Bipartite Delay Graph
1
3 2
λ1
λ3 λ2
12=1
23=1
31=12
3
1
2
3
1312
23
1
1 23
Using the Bipartite Delay Graph in the Schedule
,...
001
100
010
,
010
001
100
,
010
001
100
,
001
100
010
,
010
001
100
,
010
001
100
:Schedule
transmitter conflicts
receiver conflicts
2
3
1
2
3
1312
23
1123
1
3 2
λ1
λ3 λ2
12=1
23=1
31=1
Conflict
Delay Graph of a Star Coupler
i
N
1
j
N
1u1
ui
uN
v1
vj
vN
jiij vu
Delay in a star coupler:
Delay Graph of a Ring
Tvu jiij mod
Delay in a ring:
1 2k
i
N
j TvuT
vu
vu
T
ijiij
ikiik
iii
j11
k11
1i1
,
of RTT
ui
vi
Outline
Introduction: Scheduling with no Delays
Bipartite Delay Graph
TSS Algorithm
Theorems on Separable Architectures
Non-Separable Architectures
Birkhoff-von Neumann ScheduleExample with 3 nodes
3
1
2
3
1
2
2
3
1
3
1
2
3
1
2
2
3
1
3
1
2
3
1
2
2
3
1
3
1
2
3
1
2
2
3
1
Frame
Sender 1
Sender 2
Sender 3
time
Frame Frame Frame
2
3
1
2
3
1u1u2
u3
v1
v2
v3
Time-Shifted Scheduling (TSS) in a Star Coupler
2
3
1
2
3
1u1u2
u3
v1
v2
v3
Sender 1
Sender 2
Sender 3
time (at senders)
u1
u2
u3
3 3 2 3 3 2 3 3 2 3 3 2
1 1 3 1 1 3 1 1 3 1 1 3
2 2 1 2 2 1 2 2 1 2 2 1
time (at star coupler)
Time-Shifted Scheduling (TSS) in a Star Coupler
2
3
1
2
3
1u1u2
u3
v1
v2
v3
Sender 1
Sender 2
Sender 3
3 3 2 3 3 2 3 3 2 3 3 2
1 1 3 1 1 3 1 1 3 1 1 3
2 2 1 2 2 1 2 2 1 2 2 1
time (at star coupler)
Time-Shifted Scheduling (TSS) in a Star Coupler
2
3
1
2
3
1u1u2
u3
v1
v2
v3
Sender 1
Sender 2
Sender 3
1 1 1 1 1 1 1 1
1 1 1 1
time (at star coupler)
v1
time (at node 1)
Time-Shifted Scheduling (TSS) in a Star Coupler
In a star coupler, TSS works:
In a ring with RTT T, and a schedule of frame length F=T, TSS also works (shifting time by T doesn’t matter):
and the schedule is modulo F=T.
TSS in a Star Coupler and in a Ring
Tvu jiij mod
jiij vu
Separable architecture:
T-Separable architecture:
A separable architecture is T-separable for all T
F-rate matrix: Rate matrix for which (optimal) BvN decomposition has frame length F
Definitions (more general setting)
Tvu jiij mod
jiij vu
Properties
Property 1: Using the TSS algorithm, an F-separable architecture can schedule any F-rate matrix. Example: ring of RTT F
Property 2: Using the TSS algorithm, a separable architecture can schedule any rate matrix. Example: star coupler
Outline
Introduction: Scheduling with no Delays
Bipartite Delay Graph
TSS Algorithm
Theorems on Separable Architectures
Non-Separable Architectures
Can we always extend BvN?
No! Even for simple matrices… Example: ring
With cyclical scheduling of two matrices, each of the 3 pairs has to be associated to either matrix, but there are at most 3 elements ( one pair) per matrix BvN impossible here
1
3 2
1
1
1
011
101
110
'R ???
010
100
010
001
001
100
011
101
110
'R
Theorems (Necessity and Sufficiency)
Theorem 1: An architecture can schedule any F-rate matrix iff the architecture is F-separable. Proof: if not F-separable, exhibit counter-example
Theorem 2: An architecture can schedule any rate matrix iff the architecture is separable. Proof: needs to be F-separable for all F
Corollary (Negative result): Guaranteed frame-based scheduling cannot be achieved in non-separable architectures.
Outline
Introduction: Scheduling with no Delays
Bipartite Delay Graph
TSS Algorithm
Theorems on Separable Architectures
Non-Separable Architectures
Non-Separable Delay Graphs
Guaranteed schedule in non-separable architecture? need to make it separable
Assume we can add delay lines ij between nodes.
How to minimize the sum of these delay lines?
0
ˆ
:s.t. min,
ij
jiijijij
jiij
vu
Non-Separable Delay Graphs
Dual formulation of Maximum Weight Matching Problem in Bipartite Delay Graph
Separable architecture: all matches are MWM Non-separable architecture: solving MWM
gives minimum amount of additional delay lines
ijji
jj
ii
vu
vu
:s.t. min
Summary
The bipartite delay graph can model any mesh architecture
An architecture can schedule any F-rate matrix iff it is F-separable (e.g. ring of RTT=F)
An architecture can schedule any rate matrix iff it is separable (e.g. star coupler)
Non-separable architectures can schedule any rate matrix at minimum cost by adding delay lines and using maximum weight matching
Thank you.