Utility-Optimal Scheduling in TimeVarying Wireless Networks with Delay Constraints I-Hong Hou P.R. Kumar University of Illinois, Urbana-Champaign 1/30 Wireless Networks A system with one server and N clients Links can fade Links interfere with each other Clients have strict per-packet delay bounds for their packets Impossible to deliver all packets on-time 2 1 AP 3 2 /30 Wireless Networks Each client needs a minimum throughput of ontime packets Additional throughput for each client n increases its utility through its utility function, Un(·) 2 1 AP 3 3 /30 Conflict of Interests Server’s goal: maximize TOTAL utility while supporting minimum throughput Server is in charge of scheduling clients Support minimum throughput of each client Offer additional throughput to maximize total utility Each client’s goal: maximize its OWN utility Can lie about its utility function to gain more throughput 4 /30 Overview of Results An on-line scheduling policy for the server that achieves maximum total utility while respecting all minimum throughput requirements A truthful auction conducted by the server that makes all clients report their true utility functions Three applications Networks with Delay Constraints Mobile Cellular Networks Dynamic Spectrum Allocation 5 /30 Networks with Delay Constraints Each client periodically generates one packet ever T time slots τn = prescribed delay bound for client n tc,n = # of time slots needed for transmitting a packet to client n under channel state c T time slots 6 /30 Networks with Delay Constraints Each client periodically generates one packet ever T time slots τn = prescribed delay bound for client n tn,c = # of time slots needed for transmitting a packet to client n under channel state c t1,c t2,c t3,c τ1 τ2 τ3 T time slots t1,c t3,c 7 /30 Networks with Delay Constraints Each client periodically generates one packet ever T time slots τn = prescribed delay bound for client n tn,c = # of time slots needed for transmitting a packet to client n under channel state c t1,c t2,c t3,c τ1 T time slots t1,c X τ2 τ3 t2,c 8 /30 Mobile Cellular Network α channels Each channel between the base station and mobile fades ON or OFF X 9 /30 Mobile Cellular Network α channels Each channel between the base station and mobile fades ON or OFF X X 10 /30 Dynamic Spectrum Allocation One primary user and many secondary users Channel unused by the primary user can be used by secondary users However, secondary users can interfere with each other Schedule an interference-free allocation 2 4 1 3 5 11 /30 General Model A system with one server and N clients Time is divided into time intervals An interval may consist of multiple time slots Server schedules a feasible set of clients in each interval Feasibility depends on network constraints 2 1 AP 3 12 /30 Network Feasibility Model c(k) = network “state” at interval k State = sets of feasible clients {c(1),c(2),c(3),…} are i.i.d. random variables Prob{c(k)=c} = pc {1,2} {1,3} {1} {2,3} {1,2,3} {1,2} {1,3} {1,2} {2,3} {2} {3} 2 1 AP 3 13 /30 Utilities of Clients Server schedules a feasible set in each interval Suppose qn = long-term service rate provided to client n Un(qn) = utility of client n {1,2} {1,3} {1} {2,3} {1,2,3} {1,2} {1,3} {2} {3} 2 1 q1 = 3/6 {1,2} {2,3} AP 3 q2 = 5/6 q3 = 4/6 14 /30 NUM in Wireless Max ∑Un(qn) s.t. Network dynamics constraints Network feasibility constraints qn ≥ qn Enhancing fairness or supporting minimum service requirements 15 /30 Server Scheduling Policy Server adapts λn(k) based on (qn – qn)+ n (k 1) {n (k ) k [qn q n ]} In each interval, server schedules feasible set S that maximizes (U 'n (qn ) n (k )) nS Favor clients that improve total utility most Compensate under-served clients Max-Weight Scheduling Policy Solves NUM without knowing pc 16 /30 Concepts of Truthful Auction Clients may lie about their utility functions In each interval, each client n receives a reward rn proportional to Un(qn) en = amount that n has to pay Each client n greedily maximizes its net reward = rn-en Marginal utility of client n = {rn if it is served} – {rn if it is not served} An auction is truthful if all clients report their true marginal utility 17 /30 Design of a Truthful Auction The server announces a discount dn(k) in each interval k Each client n offers a bid bn(k) The server schedules the set S that maximizes nS (bn (k ) dn (k )) Each scheduled client n is charged max S ':nS ' [ mS ' (bm (k ) d m (k ))] mS ,m n (bm (k ) d m (k )) d n (k ) Theorem: For each client n, choosing bn(k) to be its marginal utility is optimal 18 /30 Optimality of the Auction Theorem: Let dn(k)≡λn(k). The auction schedules the same set as the Max-Weight Scheduling Policy This auction design also solves the NUM problem 19 /30 Simulation Overview Compare with one state-of-the-art technique and a random policy Utility functions qn an 1 U n (qn ) wn an Metrics: total utility n U n (qn ) and total penalty n (q n qn ) 20 /30 Networks with Delay Constraints Each client generates one packet ever T time slots τn = prescribed delay bound for client n tn,c = # of time slots needed for transmitting a packet to client n under channel state c A variation of knapsack problem Solved by dynamic programming in O(N2T) τ1 τ2 τ3 T time slots 21 /30 Network with Delay Constraints 45 clients generate VoIP traffic at 64 kbit/sec An interval = 20 ms tn,c = 480 μs (under 11 Mb/sec) or 610 μs (under 5.5 Mb/sec) wn = 3 + (n mod 3), an = 0.05 + 2n, qn = 0.5+0.01(20n mod 300) Compared against the modified-knapsack policy of [Hou and Kumar] Modified-knapsack focuses on satisfying minimum service rate requirements only 22 /30 Simulation Results 23 /30 Mobile Cellular Network α channels Each channel between the base station and mobile fades ON or OFF Schedule the α ON clients with largest bn (k ) dn (k ) X 24 /30 Mobile Cellular Networks 20 clients and one base station with three channels wn = 1 + (n mod 3), an = 0.2 + 0.1(n mod 7), qn = 0.05(n mod 5), Prob(n is ON) = 0.6+0.02(n mod 10) Compared against the WNUM policy in [O’Neil, Goldsmith, and Boyd] WNUM optimizes utility on a per-interval basis without considering long-term average 25 /30 Simulation Results 26 /30 Dynamic Spectrum Allocation One primary user and many secondary users Channel unused by the primary user can be used by secondary users Secondary users can interfere with each other Schedules a maximum weight independent set with weights bn (k ) dn (k ) 2 4 1 3 5 27 /30 Dynamic Spectrum Allocation 20 clients randomly deployed in a 1X1 square wn = 1 + (n mod 3), an = 0.2 + 0.1(n mod 7), qn = 0.05(n mod 8) Compared against the VERITAS policy of [Zhou, Gandhi, Suri, and Zheng] VERITAS optimizes utility on a per-interval basis without considering long-term average behavior 28 /30 Simulation Results 29 /30 Conclusions Network Utility Maximization (NUM) in wireless Client utilities depend on long-term average throughput of on-time packets Network constraints are dynamic with unknown distribution Clients may lie about utility functions to gain more service Solutions of the NUM problem: An on-line scheduling policy for the server A truthful auction design Applied the solutions to three applications 30 /30