scheduling in delay graphs with applications to optical networks isaac keslassy (stanford...

Post on 21-Dec-2015

221 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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.

top related