A General Model of Wireless Interference L. Qiu, Y. Zhang, F. Wang, M. Han, R. Mahajan Mobicom 2007 A Model for ? • Misleading title – Nothing new about wireless interference • Indeed, a model for predicting the throughput/goodput of wireless networks • Motivation – Helpful in evaluating design/protocols (e.g. channel assignment) – Direct measurements alone is insufficient • Lacks predictive power and scalability Problem Statement • Given characteristics of – RSS between each pair (RSSm,n) – Background noise (Bn) – Traffic demand between pairs (dm,n) • What is the pairwise throughput/goodput? • My dumb solution – Calculate SINR at every node – Throughput = B*log2(1+SINR) Bn RSSm,n • Problems – Non-constant RSS – Ignoring Underlying MAC Contributions • State of the Art: only handle restricted traffic – Only two senders or two flows – Only broadcast traffic – Only saturated demands • Contributions – Interference among an arbitrary number of senders – Both broadcast and unicast traffic – Both saturated and unsaturated demand State of the Art This paper Its limit Reality Dumb solution Limit of analytical methods Overview of the Model given network RF profile measurement pairwise RSS traffic demand sender model throughput receiver model goodput • How it works – Measure pairwise RSS via broadcast probes • One node broadcast at a time, others measure RSS O(n) probes – Saturated broadcast sender/receiver models • Markov-chain model – Extend to unsaturated broadcast – Extend to saturated/unsaturated unicast Broadcast Sender: Overview • Estimate how much a sender can send – MAC: 802.11 DCF • Markov chain (simplification #1) – State i: a set of active nodes Si – Stationary probabilities: i (fraction of time that the system is in state i) – Throughput of node m: tm = ∑i|mSi i 00 0…1 01 0…0 0..10 . 11 10 1…1 . . . Broadcast Sender: Overview (Cont.) • State transition probability – – – – – Staying idle: P00(n|Si) Idle to active: P01(n|Si) Active to idle: P10(n|Si) Staying active: P11(n|Si) Assume node independence (simplification #2) • Compute stationary probabilities i by solving LP – Highly efficient for sparse M Broadcast Sender: Transition Probabilities P01 (m | Si ) Pr[ medium is clear & counter 0 & m has data] Pr[medium is clear] Pr[counter 0 | medium is clear] Pr[m has data | medium is clear & counter 0] 1 C(m | Si ) __________ ___________ Q(m) CW (m) OH (m) where Q(m) 1 under saturated demands P00 (m | Si ) 1 P01 (m | Si ) Tslot P10 (m | Si ) T (m) P10 (m | Si ) 1 P10 (m | Si ) T DIFS / t slot CW min / 2 Simplification #3 Under the assumption that both transmission and idle times are exponential (simplification #4) Broadcast Sender: Clear Probability • C (m | S i ) Pr[ I m|S m ] i • How to estimate Im|Si? – Im|Si=Wm+Bm+∑sSi\{m} Rsm – Assume each term is lognormal variable (simplification #5) – Approximate the sum using a lognormal variable by matching mean and variance Broadcast Sender: Handle Similar Packet Sizes • Synchronization occurs when packet sizes used by different nodes are similar – When several nearby nodes transmit together, they will end transmission together – Independence assumption fails • Handle synchronization – Construct synchronization graph Gsyn • Two nodes are connected iff C(m|{n}) 0.1 and C(n|{m}) 0.1 – Find all synchronization groups • Each connected component in Gsyn is a synchronization group (simplification #6) – If m and n in the same synchronization group • mSj and n Sj’ M(i,j) = 0 • P10(mn|Si) = Tslot/T(m) instead of (Tslot/T(m))|G| Broadcast Sender: Handle Unsaturated Demands • Estimate Q(m): probability m has data to send when its backoff counter is 0 and channel is clear at m • Under saturated demands, Q(m) = 1 • Under unsaturated demands, compute Q(m) iteratively to ensure that demands are not exceeded Initialize Q(m) = 1 Solve the Markov chain Update Q(m) Brief overview of other parts • Broadcast Receiver – Estimate packet loss rate • Extending to unicast: challenges – Binary backoff • Sending rate depends on loss rates – DATA losses due to collisions with ACKs • Model ACK sending rate, which in turn depends on DATA sending rate and loss rates – Traffic demand • Account for retransmissions Simulation Evaluation: Saturated Broadcast 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 Ours (RMSE=0.0050) UW (RMSE=0.1664) Actual 1.2 1 Ours (RMSE=0.0028) UW (RMSE=0.1450) Actual Goodput Throughput 2 saturated broadcast 0 2 4 6 8 10 12 14 16 18 20 Sender ID (a) throughput 0.8 0.6 0.4 0.2 0 0 100 200 300 400 500 Sender-Receiver Pair ID (b) goodput More accurate than UW 2-node model Simulation Evaluation: Saturated Broadcast 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0.6 Ours (RMSE=0.0460) Actual Ours (RMSE=0.0189) Actual 0.5 Goodput Throughput 10 saturated broadcast 0.4 0.3 0.2 0.1 0 0 10 20 30 40 50 60 70 80 90 100 Sender ID (a) throughput 0 500 1000 1500 2000 2500 Sender-Receiver Pair ID (b) goodput Accurate for 10 saturated broadcast Testbed Evaluation UW traces: 2 senders, 30 mW, broadcast, saturated (a) throughput (b) goodput More accurate than UW-model for 2-sender Summary • A model for predicting the throughput of wireless networks • Validated by simulation and testbed evaluation State of the Art This paper Less simplifications Dumb solution Its limit RTS/CTS, different MAC Traffic modelling, human behavior Limit of analytical methods Reality