360 likes | 495 Views
Scheduling in Delay Graphs with Applications to Optical Networks. Isaac Keslassy (Stanford University), Murali Kodialam, T.V. Lakshman, Dimitri Stiliadis (Bell-Labs). 1. 2. 3. λ 1. λ 2. λ 3. N. λ N. λ i. i. Problem Motivation. MAN WDM optical ring with N nodes
E N D
Scheduling in Delay Graphs with Applications to Optical Networks Isaac Keslassy (Stanford University), Murali Kodialam, T.V. Lakshman, Dimitri Stiliadis (Bell-Labs)
1 2 3 λ1 λ2 λ3 N λN λi i Problem Motivation • MAN WDM optical ring with N nodes • For each node i, one tunable transmitter, and one fixed receiver at wavelength λi. • 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
Scheduling with no Delays • 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
Frame-Based Scheduling • 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
No transmitter conflicts No receiver conflicts Example of BvN Schedule Frame Frame
Neglecting Delays? • 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
Outline • Introduction: Scheduling with no Delays • Bipartite Delay Graph • TSS Algorithm • Theorems on Separable Architectures • Non-Separable Architectures
Question • Question: Can we extend Birkhoff-von Neumann (BvN) to general case of WDM mesh with delays • Method: • Provide simple model for mesh • Use model to extend BvN
General WDM Mesh Architecture λ2 2 λi i λ1 1 N λN
1 2 3 λ1 λ2 λ3 N λ2 λN λ1 2 λi λi 1 i i λN N Examples of WDM Architectures • Ring • Star Coupler
Mesh Model • Arbitrary mesh with constant delays • Arbitrary routing policy such that all paths to a given node form a spanning tree i d λd s
Mesh Model • Property: if packets collide on the path, they would also have collided at the receiver i d λd d s d
Mesh Model • 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
Bipartite Delay Graph • Bipartite delay graph: bipartite graph with weights ij (delay from i to j) i ij j
1 3 1 1 1 λ1 2 2 3 2 2 12=1 31=1 1 1 2 λ3 λ2 3 3 3 3 2 23=1 Example of Bipartite Delay Graph
1 1 2 2 1 3 3 3 λ1 1 2 12=1 2 31=1 3 1 1 λ3 λ2 2 3 2 3 23=1 Using the Bipartite Delay Graph in the Schedule Conflict transmitter conflicts receiver conflicts
Delay Graph of a Star Coupler 1 u1 1 v1 • Delay in a star coupler: vj ui j i vN uN N N
1 2 k N i j Delay Graph of a Ring • Delay in a ring: vi ui
Outline • Introduction: Scheduling with no Delays • Bipartite Delay Graph • TSS Algorithm • Theorems on Separable Architectures • Non-Separable Architectures
Sender 1 3 3 2 3 3 2 3 3 2 3 3 2 Sender 2 1 1 3 1 1 3 1 1 3 1 1 3 Sender 3 2 2 1 2 2 1 2 2 1 2 2 1 Frame Frame Frame Frame time Birkhoff-von Neumann ScheduleExample with 3 nodes
Time-Shifted Scheduling (TSS) in a Star Coupler 1 1 v1 u1 v2 u2 2 2 v3 u3 3 3
u1 3 3 2 3 3 2 3 3 2 3 3 2 u2 1 1 3 1 1 3 1 1 3 1 1 3 u3 2 2 1 2 2 1 2 2 1 2 2 1 Time-Shifted Scheduling (TSS) in a Star Coupler 1 1 v1 u1 v2 u2 2 2 v3 u3 3 3 Sender 1 Sender 2 Sender 3 time (at star coupler) time (at senders)
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-Shifted Scheduling (TSS) in a Star Coupler 1 1 v1 u1 v2 u2 2 2 v3 u3 3 3 Sender 1 Sender 2 Sender 3 time (at star coupler)
1 1 1 1 1 1 1 1 1 1 1 1 v1 Time-Shifted Scheduling (TSS) in a Star Coupler 1 1 v1 u1 v2 u2 2 2 v3 u3 3 3 Sender 1 Sender 2 Sender 3 time (at star coupler) time (at node 1)
TSS in a Star Coupler and in a Ring • 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.
Definitions (more general setting) • 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
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
1 1 1 3 2 1 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
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?
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
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