Robust Mulilayer Design of Wireless Networks for Distributed Systems Andrea Goldsmith Stanford University wsl.stanford.edu IPAM Workshop May 16, 2002 Massively Distributed Systems Challenges Design and capacity of large wireless adhoc networks are open problems Hard energy and delay constraints change fundamental design principles Many applications fail miserably with a “generic” network approach Example: String Stability Applied to vehicle platoons with linear controllers String stable if spacing error decreases along platoon Communication system: token passing WLAN Controllers unstable for any delay in lead vehicle information Lead vehicle broadcasts or controller redesign stabilizes the system under bounded delay Multilayer Design Hardware Link Design Resource allocation (power, rate, BW) Interference management Networking. Time-varying low capacity channel Multiple Access Power or hard energy constraints Size constraints Routing, prioritization, and congestion control Application Real time media and QOS support Hard delay/quality constraints Multilayer Design Design Issues Some applications require tight coupling across layers, while others can be more flexible Diversity and adaptability are essential for robustness What information should be exchanged across layers and how it should be used Outline Fundamental capacity limits Adaptive modulation and resource allocation Medium access control Ad hoc network design Energy constrained networks Joint control and communication design Multilayer network design Wireless Channel Capacity Fundamental Limit on Data Rates Capacity: The set of simultaneously achievable rates {R1,…,Rn} R1 R2 R3 Broadcast: One Transmitter to Many Receivers. Multiple Access: Many Transmitters to One Receiver. Main drivers of channel capacity Bandwidth and power Statistics of the channel Channel knowledge at transmitter/receiver Number of antennas Minimum rate and delay constraints Min-Rate Capacity Region: Severe Rician Fading P = 10 mW, B = 100 KHz Independent Rician fading with K=1 for both users (severe fading, but not as bad as Rayleigh). Adaptive Modulation and Coding in Flat Fading Uncoded Data Bits Point Selector Buffer log2 M(g) Bits g(t) g(t) To Channel Adapt transmission to channel One of the M(g) Points M(g)-QAM Modulator Power: S(g) Parameters: power,rate,code,BER, etc. Capacity-achieving strategy Recent Work BSPK 4-QAM 16-QAM Adaptive modulation for voice and data (to meet QOS) Adaptive turbo coded modulation (<1 db from capacity) Multiple degrees of freedom (only need exploit 1-2) Adaptive power, rate, and compression with hard deadlines Adaptation under Hard Delay Constraints Power (mW) Optimal Power Control and Joint Source/Channel Coding 30ms constraint 90ms constraint Data Rate (bps) Ad-Hoc Network Capacity Each node generates independent data. Source-destination pairs are chosen at random. Routing can be multihop. Topology is dynamic Generally a fully connected network with different link SNRs Can allocate resources dynamically (rate, power, BW, routes,…) Capacity Region All achievable rate vectors between nodes An n(n-1) dimensional convex polyhedron Each dimension defines (net) rate from one node to each of the others Achievability Time division AWGN or flat fading 1 Centralized control Converse 3 2 5 4 Rate Matrix Transmission scheme at time t for n users (snapshot) Rows represent original data source Negative entries represent bits to send or forward Positive entries represent bits received (data rate) Link rates dictated by link capacity given SIR (variable rate) Multihop routing and power control increase set of matrices Transmission Scheme Rate Matrix 1 Data from 1, rate 10 3 Data from 2, rate 20 2 4 0 0 10 10 0 0 20 20 R 0 0 0 0 0 0 0 0 Time Division Time division of two schemes is a linear combination of their rate matrices. Example: 50% of time under scheme A and 50% of time under scheme B has rate matrix: 0 0 0 0 0 5 5 0 0 10 10 0 0 0 40 40 0 0 20 10 10 0 20 20 0.5 0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 10 0 0 5 5 0 0 Scheme A Scheme B 50/50 Time Division User 1 sends 5 bps/Hz to User 2 User 2 sends 10 bps/Hz to User 3 and 10 bps/Hz to User 4 User 4 sends 5 bps/Hz to User 3 Capacity Region Achievable rate vectors achieved by time division A matrix R belongs to the capacity region if there are rate matrices R1, R2, R3 ,…, Rn such that R ai Ri , i 1 n Capacity region is convex hull of all rate matrices a i 1 i 1, ai 0 n Linear programming problem: Need clever techniques to reduce complexity Power control, fading, etc., easily incorporated Region boundary achieved with optimal routing Example: Six Node Network Capacity region is 30-dimensional Capacity Regions Rij 0, ij 12,34, i j Multiple hops Spatial reuse SIC (a): Single hop, no simultaneous transmissions. (b): Multihop, no simultaneous transmissions. (c): Multihop, simultaneous transmissions. (d): Adding power control (e): Successive interference cancellation, no power control. Extensions: - Capacity vs. network size - Energy constraints - Fading and mobility - Multihop cellular Fading increases capacity Gain matrix alternates between N fading states (a): No routing, no simultaneous transmissions. (b): Routing, no simultaneous transmissions. (c): Routing, simultaneous transmissions. (d): Adding power control. (e): Successive interference cancellation, no power control. In a similar way, mobility also increases capacity Shannon Capacity of Ad-Hoc Networks For n nodes, p(x(1),…,x(n)) s.t. (Cover/Thomas) R ij I(X (S) ;Y (Sc ) |X (Sc ) iX , jS c S {1,..., n} ), Relay transmissions S Sc Xi Yk Xk Yj Rate flow across cutsets bounded by conditional MI Nodes can transmit directly and/or use other nodes as relays Relay Channel Results Direct plus one relay (Cover,El Gamal’79) N2 Source Destination + + N1 Capacity Strategy: - Broadcast coding -Cooperative MAC coding - Source coding -Random, list, block Markov codes Parallel relays (Schein,Gallager’00) N3 + N2 Source Destination + N1 + Bounds not tight: hard problem Capacity Upper Bounds 1) Data processing thm 2) Cover/El Gamal result Achievability 1) Staggered block coding 2) Transponder scheme Capacity Ideas for Ad Hoc Networks Multiple Antenna (MIMO) Channels Can obtain large capacity increases with multiple antennas In sensor networks, sensor clusters can utilize these gains Interference “Dirty paper” coding removes the effect of known interference without increasing required transmit power Random Access Shannon capacity ignores data arrival statistics Does MAC capacity change for bursty data? Can only decrease Need better transmission strategies for Aloha Need better methods of collision resolution Medium Access Control Nodes need a protocol for channel access Minimize packet collisions and insure channel not wasted Collisions entail significant delay First protocols designed for fully-connected networks Suffer from hidden and exposed terminal problems Hidden Terminal Exposed Terminal 1 2 3 4 5 802.11 uses four-way handshake Creates inefficiencies, especially in multihop setting Multiple mini-slots mini-slot pairs data slot Time Multiple mini-slots increase efficiency of collision resolution Different minislot protocols investigated Distributed p-Persistent Algorithm (DPA) Distributed Splitting Algorithm (DSA) Distributed Token Bus (DTB) Propagation delay factored in guard times Non FIFO queueing also improves efficiency Throughput versus Delay (f) (b) (a) (e) (c) (d’) (a): Theoretical bound (b): IEEE802.11 upper bound (d) (f ’) (c): IEEE802.11 (d): DPA (d’): non-FIFO DPA (e): DSA (e’) (e’): non-FIFO DSA (f): DPA (f ’): non-FIFO DPA Numerical results obtained via discrete event simulation DTB Capacity Region (a): Theoretical bound (f) (a) (b): IEEE802.11 upper bound (c): IEEE802.11 (e) (d): DPA (b) (c) (d) (e): DSA (f): DPA MAC with Data Prioritization l2=p2L/T l1=p1L/T Each user transmits whenever he has data to send Coding strategy: Combine broadcast and MAC Each user sends a multiresolution signal Without collisions all data gets through With collisions some data gets through Lost bits may be retransmitted Results High priority data always gets through This coding strategy achieves capacity Superposition coding only needed when users have very different SNRs If (l1,l2)C, these rates will be achieved Burstiness does not decrease capacity! Otherwise code for constant collisions or no collisions, depending on pi. Show that queues in system are stable for any rate pair (l1,l2) inside MAC capacity region. Networks with EnergyConstrained Nodes Capacity per unit energy (Gallager’87, Verdu’90) Number of bits per unit energy such that error probability decreases to zero with increasing energy Not possible to send a finite number of bits with finite energy and Pe arbitrarily small Energy per bit minimized by sending bits over many dimensions (symbols,time,BW) New communication system paradigm Network designs must now consider node lifetime (among other things) in MAC and routing protocols Energy Constrained Networks Channel capacity is the maximum possible rate with arbitrarily small Pe (reliable transmission) Input often has an average or peak power constraint Capacity per unit cost (Gallager’87, Verdu’90) Number of bits that can be transmitted per unit cost for sending these bits (cost is typically energy) Not possible to send a finite number of bits with finite energy and Pe arbitrarily small Capacity per unit energy achieved with on-off signalling We investigate dynamic rate, power, and routing strategies for networks with finite-energy nodes Bits per Unit Energy General channels with a “0” (Verdu’90) ~ sup x D( pY | X x || pY | X 0 ) C , 2 x n 2 x E i 1 Gaussian channels with energy E and M messages n E ~ log 2 M C log 1 E 2E nN 0 / 2 Minimum energy per bit: 1 E/n min Eb lim ~ lim N 0 ln 2 n C n .5 log( 1 E / .5nN 0 ) Codes arbitrarily long for small Pe, and E Energy vs. Symbol per Bit Energy/bit N0 ln2 Symbols/bit Minimum energy per bit achieved with many degrees of freedom Can fading help? For most fading distributions, channel gain is large with small probability With finite energy, can transmit any number of bits with Pe arbitrarily small Transmit when channel is “good” Delay can be large Capacity per unit energy typically infinite We consider maximizing the number of bits transmitted reliably over a block fading channel Delay constraint: can’t average over all fading values System Model m blocks of n symbols (n large) m represents delay constraint Each block has small but nonzero Pe Fading gain on ith block is g[i] (i.i.d.) Transmitter and receiver know g[i] at time i X11,…,X1n g1 X21,…,X2n g2 Xm1,…,Xmn gm Energy on ith block: E[i ] k 1 X ik2 Effective energy on ith block: n n E eff [i ] g[i ]E[i ] g[i ] X ik2 k 1 Maximizing Transmitted Bits AWGN channel with gain g and energy E: Minimum energy per bit: N0 ln 2/g Bits per unit energy: g/(N0 ln 2) Total number of bits sent: B=gE/(N0 ln 2) For block fading, bits sent in ith frame: g[i ]E[i ] B[i ] , N 0 ln 2 m E[i ] E i 1 Goal: optimally allocate E to maximize sum of bits Problem Formulation Optimizing Energy Allocation B* max E [1],..., E [ m ] m g[i ]E[i ] E , g[1],..., g[ m ] i 1 N 0 ln 2 m E[ i ] E i 1 Finite horizon dynamic programming Value iteration algorithm g[i ]E[i ] J i ( g[i ]) max , E[ J i 1 ( g[i 1])] , N 0 ln 2 J m ( g[m ]) g[m ]E[m ] N 0 ln 2 im Threshold Policy Energy allocated according to threshold rule E E[ i ] 0 g[i ] a i , else N 0 ln 2 ai E[ J i 1 ( g[i 1])] E Use all energy in current block if fading exceeds expected future gains Recursion for ai: a i P (a i 1 )a i 1 a xp( x)dx, P ( x ) p( g x ) i 1 Threshold decreases with each block: aiai+1 Threshold Level Threshold Level in Rayleigh Fading for m=20 3.5 3 Transmit Threshold ai 2.5 2 1.5 Don’t Transmit 1 0.5 0 0 2 4 6 8 10 Block Number 12 14 16 18 20 Capacity Evaluation Maximum number of transmitted bits m xE B p( x )dx i 1 a i N 0 ln 2 * Capacity in Rayleigh Fading 15 10 5 0 0 10 20 30 40 50 Block Number 60 70 80 90 100 Energy Constrained Routing A0 Ad hoc network with n nodes An-1 Link gains between nodes are Gij. Each node has finite energy Ei Minimum energy to send 1 bit on link ij is N0ln2/Gij Maximize the total number of bits sent from A0 to An-1 given the node energy constraints Minimum Energy Routing Routing strategy for each bit: Choose a route from A0 to An-1 with the minimum total energy per bit (minimum cost) * arg min { A0 , A1 ,..., An1 ) T N 0 ln 2 Eb Gij Shortest path problem Solved using dynamic programming Reduce node energy after each transmission Total number of transmitted bits depends on node energies Joint Control and Network Design Robust controllers compensate for modeling errors There is little known about incorporating random packet delays and losses into controller design Network-robust controllers must compensate for asynchronous, delayed, and lossy information Network tradeoffs impact controller performance Rate vs delay, hard deadlines, energy constraints. Network requirements defined by controller design Network and controller should be jointly designed Fundamental Trade-offs Effects of communication faults on controller Control system Data rates Random Packet Delay Packet loss Quantization noise Delay and asynchronicity in feedback Vacant sampling High data rates, low latency, low packet loss are competing objectives in wireless networks. General Problem Setup Regulated outputs LTI Plant Sh Sampled outputs Wireless Link Noise & disturbance Measured outputs Hh Actual control input Remote Controller Desired control input Wireless Link Goal: Investigate effects of quantization noise, packet loss/delay, and link design and adaptation on the controller performance. Performance We consider both hard and soft decoding on the link Soft decision implies no packet errors or loss Hard decision entails random packet loss H2 norm – the covariance in the regulated output when the driven noise is N(0, I). Hybrid system (sampled-data system) is not LTI, but it is periodic. We use a generalized H2 norm. Sampled-data H2 optimal control solved via an associated discrete-time system, which depends on sample period h. With packet loss, we use the covariance in the regulated output as performance measure. The regulated output is a Gaussian mixture Its statistics are time-varying. Robustness to Packet Loss Robustness to Imperfect Communication Performance Comparison (average power = .01) Multilayer Design Issues Network Variations Fundamental Questions Variations at take place on difference timescales Variations should be adapted to locally and globally What information should be exchanged across layers? How should that information be used at each layer? Where do “separation theorems” apply? If guaranteed QoS not possible, then what? Coordination How to balance the needs of all users/applications Conclusions Multilayer design of networks an open problem Energy and delay constraints require new design philosophies Some applications require joint design of hardware, link, network, and application protocols.