250 likes | 392 Views
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.
E N D
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 • Mesh Switch: avoid switch reconfiguration and complex scheduling algorithms. Practical for optics (AWGR). • 100% Throughput: router guaranteed to be stable under any admissible traffic matrix • Minimum Linecard Complexity Minimize maximum rate at which packets arrive to/depart from any input/output. • Buffering Speed • Processing Speed
Naive Mesh with 100% Throughput R R ? ? Out R ? R ? R R R R ? R R R R ? Out Output Write Speed = NR ? R R R R ? ? R Out R In R In In
Output-Queued Mesh • Mesh • 100% throughput • … but output write speed = NR
If Traffic Is Uniform R R/N R/N Out R/N R/N R R R R/N R/N Out R/N R R/N R/N Out R In R In R In
100% Throughput: Non-Uniform Traffic Matrices R R R R ? R/N In R R/N Out R/N R/N R R R R R In R R R/N R/N Out R/N R R R R/N In R/N Out
Load-Balanced Router Out Out Out Out Out R R R R/N R/N In Out R/N R/N R/N R/N R/N R/N R R R In R/N R/N R/N R/N R/N R/N R R R R/N R/N In R/N R/N Load-balancing mesh Forwarding mesh Theorem:100% Throughput[Val. 82, CLJ 01, K. et al. 03]
Load-Balanced Router Out Out Out Forwarding mesh Load-balancing mesh R R In 3 2 1 R/N R/N R/N R/N R/N R/N R/N R/N R R In R/N R/N R/N R/N R/N R/N R/N R R R/N In R/N R/N
Load-Balanced Router Out Out Out Forwarding mesh Load-balancing mesh R R In R/N R/N R/N R/N 1 R/N R/N R/N R/N R R In R/N R/N 2 R/N R/N R/N R/N R/N R R R/N In R/N R/N 3
Load-Balanced Router ≈ • Mesh→ 2 meshes • 100% throughput • Node speed? ?
Combining the Two Meshes R R/N R/N Out R/N One linecard R/N R R/N R/N Out R/N R/N R R/N Out In In Out Out R In R/N R/N R/N R/N R In R/N R/N R/N R R/N In R/N
A Single Combined Mesh R R In In Out Out In In 2R/N Out Out In In Out Out In In Out Out
Matrix for the Combined Mesh • Combined mesh matrix: • The combined mesh matrix gets 100% throughput
Node Speed for Combined Mesh R R In In Out Out In In 2R/N Out Out In In Out Out In In Out Out Max input/output read/write speed = 2R
Combined Mesh • Single Mesh • 100% Throughput • 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? R R R R In In In R/N R/N R/N R/N R/N R/N Out Out Out R/N R/N R/N R R R R R/N R/N R/N In In In R/N R/N R/N R/N R/N R/N R/N R/N R/N Out Out Out R R R R In In In R/N R/N R/N R/N R/N R/N Out Out Out 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 1 2 3 N i • 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. 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 1 2 • 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!
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 2 • Hotnets III, Nov. 2004: • Zhang-Shen and McKeown • Kodialam, Lakshman and Sengupta • Two steps: • Uniform spreading of incoming packets (independently of destination) • Forwarding to destination 1 2 0 1 3 N … A uniform load-balanced backbone • guarantees 100% throughput for any traffic matrix • is at least as good as any other backbone design