Download presentation
Presentation is loading. Please wait.
Published byDebra Heath Modified over 9 years ago
1
Scheduling for Communication and Processing Networks Jean Walrand EECS University of California, Berkeley CORNELL, 4/25/2011 Ref: Jiang-Walrand: Scheduling and Congestion Control for Communication and Processing Networks. Morgan-Claypool 2010
2
Walrand - 4/2011 WiFi Network
3
Walrand - 4/2011 WiFi Network
4
Walrand - 4/2011 WiFi Network
5
Walrand - 4/2011 WiFi Network How to schedule transmissions? How many active nodes? Hard to organize. Answer: Try at random! Norman Abramson
6
Walrand - 4/2011 WiFi Network Backoff timers; Random initial value Freeze timer when channel is busy Transmit when timer runs out
7
Walrand - 4/2011 WiFi Network Backoff timers; Random initial value Freeze timer when channel is busy Transmit when timer runs out
8
Walrand - 4/2011 WiFi Network This scheme is called CSMA Carrier Sense Multiple Access
9
Walrand - 4/2011 WiFi Network Collisions are possible: When initial timer values are very similar.
10
Walrand - 4/2011 WiFi Network To reduce chances of collision: When retransmitting a packet, nodes select initial value of timer in a range that is twice as wide.
11
Walrand - 4/2011 WiFi Network This scheme is called Exponential Backoff Thus, WiFi uses CSMA with Exponential Backoff Metcalfe & Boggs
12
Walrand - 4/2011 WiFi Network CSMA with Exponential Backoff works pretty well. About 50% efficient… Most users are happy.
13
Walrand - 4/2011 Ad Hoc Network Why not transmit directly? More efficient (parallel transmissions, lower power,…) Multi-hop to reach destination. If no infrastructure.
14
Walrand - 4/2011 Ad Hoc Network How to schedule transmissions? WiFi scheme? Very unfair to nodes with many neighbors.
15
Walrand - 4/2011 Ad Hoc Network How to schedule transmissions? WiFi scheme? Very unfair to nodes with many neighbors.
16
Walrand - 4/2011 Ad Hoc Network How to schedule transmissions? WiFi scheme? Very unfair to nodes with many neighbors. Also, oblivious to requirements of the different nodes.
17
Walrand - 4/2011 Adaptive CSMA Replace Exponential Backoff by Queue-Based Backoff Libin Jiang
18
Walrand - 4/2011 Adaptive CSMA A node with a bigger backlog should choose its random backoff in a smaller range. Stuff to send Backoff timers
19
Walrand - 4/2011 Adaptive CSMA The node with a bigger backlog will get a higher throughput.
20
Walrand - 4/2011 Adaptive CSMA Adjust R so that the link transmits fast enough. Let R = 1/(average timer value) = rate of transmission attempts Backlog increases increase R. Backlog decreases decrease R. R1R1 R3R3 R2R2
21
Walrand - 4/2011 Adaptive CSMA Adjust R so that the link transmits fast enough. Let R = 1/(average timer value) = rate of transmission attempts Backlog increases increase R. Backlog decreases decrease R. R1R1 R3R3 R2R2
22
Walrand - 4/2011 Adaptive CSMA How to choose the values of R? Do we need to know all the backlogs? Could some nodes starve other nodes? Can such a scheme be efficient and fair? No Yes R = Exp{ .Backlog}
23
Walrand - 4/2011 Dual Algorithm Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 Complex Problem: Congestion Control Simple Solution: TCP: AIMD Max j U j (x j ) s.t. Rate on link k < C k Dual algorithm Local Solution - Each link k posts a price r k ≈ its backlog - Each user j chooses x j to maximize utility - price U j (x j ) – k r k 1{j uses k} Frank Kelly
24
Walrand - 4/2011 Dual Algorithm Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 Much subsequent work; backpressure protocols (see references) Related idea: Maximize drift of Lyapunov function (see references)
25
Walrand - 4/2011 Dual Algorithm Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 Complex Problem: Scheduling Conflicting Links Simple Solution: MWM (Maximum Weighted Matching)
26
Walrand - 4/2011 MWM Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 At any time, the links in the maximal independent set with the largest sum of queue lengths transmit. Conflicting nodes: At any time, either {2} or {1, 3} can transmit. Maximal Independent Sets. 1 2 3 or
27
Walrand - 4/2011 MWM Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 At any time, the links in the maximal independent set with the largest sum of queue lengths transmit. Two problems: 1)Finding out the backlogs of other nodes; 2)Finding the independent set with maximum sum. Property: Stabilizes the queues. [Tassiulas, Ephremides 92]
28
Walrand - 4/2011 Dual Algorithm Complex Problem: Illegal Immigration Simple Solution: Make Mexico a state. Complex Problem: National Debt Simple Solution: Blow it off. Complex Problem: Global WarmingSimple Solution: Everyone run their air conditioners and ice machines 24/7. Complex Problem: High gas prices.Simple Solution: Lower the prices. Complex Problem: AIDSSimple Solution: Don't get it. Complex Problem: ObesitySimple Solution: Send all the fat people to live in areas that are suffering from a famine.Complex Problem: FamineSimple Solution: Send everyone suffering from famine to live where the fat people are. This is really very simple, you know? I don't understand why governments and others in authority have so much trouble dealing with these kind of things.Complex Problem: High gas prices.Simple Solution: Lower the prices. What? It's not like oil companies need a real reason to raise the prices, why do we need to come up with any further motivation to lower them? However, if that's not good enough for you, how about this one?Simple Solution #2: Take over OPEC and establish "Free Oil Month".Now that's a good idea if there ever was one.Complex Problem: AIDSSimple Solution: Don't get it.Article Source: http://EzineArticles.com/1439932 Complex Problem: Random Access Simple Solution: Adaptive CSMA Max H( (R)) s.t. s j > j Service rate at node j Entropy of distribution of independent sets Dual Algorithm Local Solution R j updated based on backlog of j R j ≈ Exp{ X j }
29
Walrand - 4/2011 Example Network Queue Lengths Time λ = 0.98*(convex combination of maximal independent sets) † † 0.2*{1, 3} + 0.3*{1, 4, 6} + 0.3*{3, 5} + 0*{2, 4} + 0.2*{2, 5}
30
Walrand - 4/2011 Congestion Control + Scheduling Links want to maximize the “total utility” u 1 ( λ 1 ) + u 2 ( λ 2 ) + u 3 ( λ 3 ) Congestion control + scheduling [Adjust arrival rates]
31
Walrand - 4/2011 Congestion Control + Scheduling Node i maximizes
32
Walrand - 4/2011 Approach: Q-CSMA + input rate control Fact: (Essentially) achieves maximum utility Congestion Control + Scheduling Node i maximizes
33
Walrand - 4/2011 Congestion Control + Scheduling + Routing Wireless links, with interference (Here, assume that transmitters interfere with each other via carrier sensing.) Goal: maximize total utility of flows Congestion control, scheduling, and routing
34
Walrand - 4/2011 Node [1]: If (9 - 5)C(g) > (9 - 3)C(b): [1] -> [3]; Else: [1] -> [2] Let b[1] = max{(9 - 5)C(g), (9 - 3)C(b)} Let T[1] be exponentially distributed with rate Exp{ α b[1] } [1] [2] [3] Node [2]: If (8 - 4)C(d) > (3 - 0)C(c): (d); Else: (c) Let b[2] = max{(8 - 4)C(d), (3 - 0)C(c)} Let T[2] be exponentially distributed with rate Exp{ α b[2] } Congestion Control + Scheduling + Routing
35
Walrand - 4/2011 [1] [2] [3] Then, use CSMA with those backoff delays. Also, A chooses x that maximizes U A (x) - β10x; B chooses y s.t.... Fact: (Essentially) achieves maximum utility Congestion Control + Scheduling + Routing
36
Walrand - 4/2011 Multipath routing allowed Unicast S2 -> D2 Anycast S1 to any D1 Congestion Control + Scheduling + Routing
37
Walrand - 4/2011 Summary Each node: Adjusts incoming rate: maximize u( λ ) - λβ X Calculates, for every flow backpressure = link rate * (trans. Q - receiver Q) Chooses flow with max. backpressure B Generates backoff with mean = 1/exp{ α B} Then uses CSMA Fact: (Essentially) maximizes sum of utilities
38
Walrand - 4/2011 Status Compatibility with TCP B: Using max (log(1 + x)) [Srikant] Reduce Delays: B+: Placeholder packets, virtual arrivals Routing: C+: Avoid long paths Collisions Without hidden nodes: A: [Srikant et al., LJ-JW] With hidden nodes: B: Using RTS/CTS; [Kim et al.] Unreliable links: A Changing links: C Multicast, Unicast: A Implementations: Promising examples (Rhee, Chiang, …)
39
Walrand - 4/2011 Processing Networks
40
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3
41
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 0
42
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 1-
43
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 1
44
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 2-
45
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 2
46
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 MWM T = 3- Maximum Weighted Matching is not stable.
47
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 DWM: Use MWM based on Virtual Queues
48
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 0- DWM: Use MWM based on Virtual Queues
49
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 0 DWM: Use MWM based on Virtual Queues
50
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 1- DWM: Use MWM based on Virtual Queues
51
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 1 DWM: Use MWM based on Virtual Queues
52
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 2- DWM: Use MWM based on Virtual Queues
53
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 2 DWM: Use MWM based on Virtual Queues
54
Walrand - 4/2011 Processing Networks Task: 1 from queue 1; Task B: 1 from all queues; Task C: 1 from queue 3 T = 3- DWM: Use MWM based on Virtual Queues Deficit Maximum Weighted Matching is stable. [Proof: Lyapunov argument.]
55
Walrand - 4/2011 Conclusions Adaptive-CSMA is throughput optimal Delays: Not perfect, but can be improved Extends to congestion control and routing Key idea: Maximize entropy Approach applies to other distributed allocation problems: Power allocation Peer selection VCG auctions Processing Networks: MWM DWM
56
Walrand - 4/2011 References CSMA & Product-Form R.R. Boorstyn et al, 1987 X. Wang & K. Kar, 2005 S. Liew et al., 2007 MWM Tassiulas & Ephremides, 1992 Primal-Dual Decomposition of NUM Kelly et al., 1998, Low-Lapsley, Low-Tang, … Chiang-Low-Calderbank-Doyle, 2007 Backpressure Protocols + NUM Lin & Shroff, 2004 Neely-Modiano-Li; Eryilmaz-Srikant; Stolyar 2005
57
Walrand - 4/2011 References Adaptive-CSMA Jiang-Walrand 2008/09, Shah, Proutiere, Chiang, … Improvements of Adaptive-CSMA Ni-Tan-Srikant 2009, Jiang-Ni-Leconte-Srikant-JW 2010 Adaptive-CSMA with collisions Ni-Srikant; Jiang-Walrand; Liu et al. 2009 Implementations Warrier-Ha-Wason-Rhee, 2008* Lee-Lee-Yi-Chong-Proutiere-Chiang, 2009
58
Walrand - 4/2011 References Monographs Jiang-Walrand. Scheduling and Congestion Control for Wireless and Processing Networks. Morgan-Claypool 2010. Neely. Stochastic Network Optimization with Application to Communication and Queueing Systems. Morgan Claypool 2010. Pantelidou-Ephremides. Scheduling in Wireless Networks. NOW, 2011
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.