optimal load-balancing

Post on 03-Feb-2016

76 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

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

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

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

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

Output-Queued Mesh

1. Mesh

2. 100% throughput

3. … but output write speed = NR

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 /

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

?

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]

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

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

Load-Balanced Router

1. Mesh → 2 meshes

2. 100% throughput

3. Node speed?

?

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

In

Out

In

Out

In

Out

In

Out

RIn

Out

In

Out

In

Out

In

Out

R2R/N

A Single Combined Mesh

Matrix for the Combined Mesh

Combined mesh matrix:

The combined mesh matrix gets 100% throughput

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

Combined Mesh

1. Single Mesh

2. 100% Throughput

3. Max Node Speed = 2R

Question: is 2R optimal?

Any better architecture?

?

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.

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)

Example 2: Use a Non-Uniform Mesh

This is actually a ring!

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)

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!

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

Main Result

Slightly Non-Uniform Mesh

Slightly better than 2R

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.

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

Thank you.

top related