160 likes | 280 Views
LOAD BALANCING IN PACKET SWITCHING Nick Bambos Stanford University *Joint work with Aditya Dua, Stanford. Load Balancing … QoS … Fairness. …. …. Switching in data centers Switching in storage networks Video servers, multimedia streaming … Issues: load balancing, QoS, fairness.
E N D
LOAD BALANCING IN PACKET SWITCHING Nick Bambos Stanford University *Joint work with Aditya Dua, Stanford
Load Balancing … QoS … Fairness … … Switching in data centers Switching in storage networks Video servers, multimedia streaming … Issues: load balancing, QoS, fairness
Background Lots of research on maximum throughput scheduling Much less on QoS Giles et al (1997), Li et al (1999), Rai et al (2001), Keslassy et al 2003), … Focus: … on alternative problem formulation
Model for Constrained Service S1 S2 … … … … Sq … … SQ When S is used in a time slot, Sq cells (1/0) are removed from queue q Empty queues (download content) in a load-balanced manner that is QoS-aware and fair
0 1 1 0 Sa 11 1 1 12 21 2 2 1 0 0 1 22 Sb Input Queued Packet Switches 2x2 switch … simplest model (…not simplistic)… scales to NxN Service vectors Sa and Sb
Traffic Streams, Inter-Packet Deadlines, Rates Slotted time; packets/cells; all available at 0 Regular Traffic StreamX (1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1, …) Inter-Packet Deadlines = constant T … Rate = 1/T General Traffic StreamX (1,0,1,1,1,0,0,0,1,0,1,0,0,0,0,0,1,1,0,0,1,0,0,0,1, …) Inter-Packet Deadlines = variable Inter-Packet Deadlines (IPD) … soft when exceeded … QoS degrades
The Basic Idea – Single Stream 1 Traffic StreamX … desirable (flow control) (0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,1, …) Cumulative Traffic (0,0,0,1,1,2,2,2,2,3,3,3,3,4,4,4,4,4,5,5,5,6, …) Service StreamS … provided (0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,1, …) Cumulative Service (0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,3,4,5,6,7,7,8, …) Deviation D = cumService – cumTraffic (0,1,2,1,1,0,0,0,0,-1,-1,-1,-1,-2,-2,-1,0,1,2,2,2, …)
The Basic Idea – Single Stream 2 Service leads – unfair to other streams Service lags – QoS compromised (0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,1, …) desirable traffic stream (0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,1, …) provided service stream Deviation D = cumService – cumTraffic (0,1,2,1,1,0,0,0,0,-1,-1,-1,-1,-2,-2,-1,0,1,2,2,2,… Deviation0 = (0,0,0,0,0,0, …) perfectly matched service to traffic
Controlled System Dynamics – 2x2 Switch Ex 0 1 1 0 Sa 1 0 0 1 Sb Evolution of Service-Traffic Deviation of 4 Entangled Streams D(n+1) = D(n) + Sa – X(n+1) D11 D12 D21 D22 D(n+1) = D(n) + Sb – X(n+1)
Cost Structure – 2x2 Switch Ex C[Dxy] Per Slot Service Leads Service Lags C[D] = C[D11] + C[D12] + C[D21] + C[D22] Cumulative C = C[D(1)] + C[D(2)] + … + C[D(N)] Dxy Control Problem: Find service sequence S(1), S(2), …,S(n),…,S(N) to miimize cumulative cost up to N … perfectly aligned traffic-service streams have 0 cost
Service Control C[Dxy] Control (DP Formulation) Service sequence S(1), S(2), …,S(n),…,S(N) minimizing cumulative cost up to N Service Leads Service Lags Dxy • Summary of Controls: • Myopic policies are good (Prop) … and easy for 2x2 switches • For NxN switches too many permutations • … check 2x2 neighbors (Giaccone et al 2003) • … convex relaxations
Performance - 3x3 Switch • 3x3 switch … 6 service configurations • Benchmark … round-robin on 6 configurations • 150,000 packets • C[D] = |D| • IPDs = 4/2 from MC • Policies • … myopic / exhaustive • … myopic / neighbors 2x2 • … myopic / convex relaxation
Conclusions • Load balancing, QoS, and fairness can be captured into the same model • The model operates on micro time-scales (IPD), • as opposed to macro (rates) • Versions of the formulation/solution must be tuned to particular situations