optimal load-balancing

25
Optimal Load-Balancing Isaac Keslassy (Technion, Israel), Cheng-Shang Chang (National Tsing Hua University, Taiwan), Nick McKeown (Stanford University, U.S.A.), Duan-Shin Lee (National Tsing Hua University, Taiwan)

Upload: aulani

Post on 03-Feb-2016

76 views

Category:

Documents


3 download

DESCRIPTION

Optimal Load-Balancing. Isaac Keslassy (Technion, Israel) , Cheng-Shang Chang (National Tsing Hua University, Taiwan) , Nick McKeown (Stanford University, U.S.A.) , Duan-Shin Lee (National Tsing Hua University, Taiwan). Router Designer Wishlist. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Optimal Load-Balancing

Optimal Load-Balancing

Isaac Keslassy (Technion, Israel),

Cheng-Shang Chang (National Tsing Hua University, Taiwan),

Nick McKeown (Stanford University, U.S.A.), Duan-Shin Lee (National Tsing Hua University, Taiwan)

Page 2: Optimal Load-Balancing

Router Designer Wishlist

1. Mesh Switch: avoid switch reconfiguration and complex scheduling algorithms. Practical for optics (AWGR).

2. 100% Throughput: router guaranteed to be stable under any admissible traffic matrix

3. Minimum Linecard Complexity Minimize maximum rate at which packets arrive to/depart from any input/output.

Buffering Speed Processing Speed

Page 3: Optimal Load-Balancing

In

In

In

Out

Out

Out

R

R

R

R

R

R

?

?

?

?

?

?

?

?

?

R

R

R

R

R

R

R

R

R

RRRR

Naive Mesh with 100% Throughput

Output Write Speed = NR

Page 4: Optimal Load-Balancing

Output-Queued Mesh

1. Mesh

2. 100% throughput

3. … but output write speed = NR

Page 5: Optimal Load-Balancing

R

In

In

In

Out

Out

Out

R

R

R

R

R

R/N

R/N

R/N

R/NR/N

R/N

R/N

R/N

R/N

If Traffic Is Uniform

RNR /NR /NR /

R

NR / NR /

Page 6: Optimal Load-Balancing

100% Throughput: Non-Uniform Traffic Matrices

R

In

In

In

Out

Out

Out

R

R

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

RNR /NR /NR /

R

RNR /NR /NR /

R

RNR /NR /NR /

R

R

R

R

?

Page 7: Optimal Load-Balancing

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

Load-Balanced Router

Load-balancing mesh Forwarding mesh

In

In

In

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R

R

R

Theorem: 100% Throughput [Val. 82, CLJ 01, K. et al. 03]

Page 8: Optimal Load-Balancing

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

In

In

In

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

112233

Load-balancing mesh

Forwarding mesh

Load-Balanced Router

Page 9: Optimal Load-Balancing

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

In

In

In

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N33

22

11

Load-balancing mesh

Forwarding mesh

Load-Balanced Router

Page 10: Optimal Load-Balancing

Load-Balanced Router

1. Mesh → 2 meshes

2. 100% throughput

3. Node speed?

?

Page 11: Optimal Load-Balancing

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

In

In

In

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

One linecard

In

Out In

Out

Combining the Two Meshes

Page 12: Optimal Load-Balancing

In

Out

In

Out

In

Out

In

Out

RIn

Out

In

Out

In

Out

In

Out

R2R/N

A Single Combined Mesh

Page 13: Optimal Load-Balancing

Matrix for the Combined Mesh

Combined mesh matrix:

The combined mesh matrix gets 100% throughput

Page 14: Optimal Load-Balancing

Node Speed for Combined Mesh

Max input/output read/write speed = 2R

In Out

In Out

In Out

In Out

R In Out

In Out

In Out

In Out

R2R/N

Page 15: Optimal Load-Balancing

Combined Mesh

1. Single Mesh

2. 100% Throughput

3. Max Node Speed = 2R

Question: is 2R optimal?

Any better architecture?

?

Page 16: Optimal Load-Balancing

Other Mesh Architectures We Consider

Any number of stages (e.g., 3 stages, 4 stages….)

Any mesh architecture (e.g., ring) Any link capacities (e.g., non-uniform mesh) Any packet routing algorithm (e.g., adaptive

algorithm)

Any mesh and any routing.

Page 17: Optimal Load-Balancing

Example 1: Add A Third Mesh?

In

In

In

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R

R

R

In

In

In

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

In

In

In

Out

Out

Out

R

R

R

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

R/N

1st stage 2nd stage 3rd stage

Combine the 3 meshes

Max speed = 3R (instead of 2R)

Page 18: Optimal Load-Balancing

Example 2: Use a Non-Uniform Mesh

This is actually a ring!

Page 19: Optimal Load-Balancing

Example 2: Unidirectional Ring

Assume that each node sends all traffic to itself. Then each packet goes through N nodes. To get 100% throughput, each node needs to

run N times faster.

1 23

i

N

Max speed = NR (instead of 2R)

Page 20: Optimal Load-Balancing

At First Glance…

… it seems that the uniform mesh is optimal with 2R!

Why: All links have the same capacity, And it is perfectly symmetric.

However…. uniform mesh is NOT optimal!

Page 21: Optimal Load-Balancing

Why Uniform Mesh is Not Optimal

Links between two different nodes used for spreading and forwarding

Same-node links only used for forwarding, not spreading need less capacity.

Example: packet from node 1 to node 2. No point in sending it from node 1 to node 1 before forwarding to node 2!

1 2

Page 22: Optimal Load-Balancing

Main Result

Slightly Non-Uniform Mesh

Slightly better than 2R

Page 23: Optimal Load-Balancing

However…

The result is actually good for the load-balanced router with uniform mesh.

The uniform mesh is optimal as N → 1

In other words, asymptotically with N, the load-balanced router is at least as good as any other mesh architecture with any other routing algorithm.

The load-balanced router satisfies the wishlist goals.

Page 24: Optimal Load-Balancing

Generalization: Load-Balanced Network

1

3

N

Hotnets III, Nov. 2004: Zhang-Shen and

McKeown Kodialam, Lakshman

and Sengupta Two steps:

1. Uniform spreading of incoming packets (independently of destination)

2. Forwarding to destination

22

10

A uniform load-balanced backbone guarantees 100% throughput for any traffic matrix is at least as good as any other backbone design

Page 25: Optimal Load-Balancing

Thank you.