Available Bandwidth Available Bandwidth Estimation in IEEE 802.11- - Estimation in IEEE 802.11 Based Wireless Networks Based Wireless Networks Samarth Shah, Kai Chen, Shah, Kai Chen, Klara Klara Nahrstedt Nahrstedt Samarth Department of Computer Science Department of Computer Science University of Illinois at Urbana- -Champaign Champaign University of Illinois at Urbana { shshah,kaichen,klara} @cs.uiuc.edu shshah,kaichen,klara} @cs.uiuc.edu { http:// cairo.cs.uiuc.edu/adhoc cairo.cs.uiuc.edu/adhoc http:// This work was funded by the DoD ONR MURI N00014-00-1-0564 and NSF EIA 99-72884 grants
Introduction Introduction ! Theoretical channel capacity depends on the Theoretical channel capacity depends on the ! physical layer physical layer – 1, 2, 5.5 or 11 Mbps for IEEE 802.11 1, 2, 5.5 or 11 Mbps for IEEE 802.11 – ! Bandwidth actually available to the application is Bandwidth actually available to the application is ! less due to: less due to: – Protocol overhead Protocol overhead – – MAC layer contention MAC layer contention – » Location » Location- -dependent in multi dependent in multi- -hop or multi hop or multi- -cell environments cell environments – Location Location- -dependent channel errors dependent channel errors – » Signal fading, bit Signal fading, bit- -errors due to physical objects such as walls, doors, etc. errors due to physical objects such as walls, doors, etc. »
IEEE 802.11 MAC and Our IEEE 802.11 MAC and Our Scheme Scheme ! IEEE 802.11 MAC: IEEE 802.11 MAC: ! – Carrier sense: Carrier sense: – » Medium idle? Send RTS Medium idle? Send RTS » » Medium busy? Wait until medium idle, Medium busy? Wait until medium idle, backoff backoff for collision avoidance, for collision avoidance, » send RTS send RTS – RTS RTS- -CTS CTS- -DATA DATA- -ACK ACK – – Collision? Increase Collision? Increase backoff backoff interval exponentially interval exponentially – ! Our scheme: Our scheme: ! – Does not modify IEEE 802.11 in any way Does not modify IEEE 802.11 in any way – – Uses data transmissions for bandwidth estimation Uses data transmissions for bandwidth estimation – » » No separate probing packets, etc. No separate probing packets, etc. – Performed in the device driver of the wireless interface Performed in the device driver of the wireless interface – » Device driver loaded as a module under Linux Device driver loaded as a module under Linux »
Bandwidth Estimation Bandwidth Estimation channel busy, backoff, contention RTS CTS DATA (size S) ACK time t s packet ready t r packet recvd ! Measured BW = S/( Measured BW = S/(t t r r – – t t s ) ! s ) – Running average with decay/Average over an interval Running average with decay/Average over an interval – – More contention? More time channel sensed as busy, More contention? More time channel sensed as busy, – more RTS/CTS collisions, higher backoffs backoffs = > BW = > BW more RTS/CTS collisions, higher estimate smaller estimate smaller – More channel errors? Bit More channel errors? Bit- -errors in RTS/DATA cause errors in RTS/DATA cause – RTS/DATA retransmission = > BW estimate smaller RTS/DATA retransmission = > BW estimate smaller – Only successfully transmitted MAC frames used in Only successfully transmitted MAC frames used in – estimate estimate
Packet Size Packet Size ! Packet size affects BW estimate Packet size affects BW estimate ! – Low channel bit Low channel bit- -error rate (BER)? Larger packet size error rate (BER)? Larger packet size – = > higher throughput = > higher throughput – High BER? Larger packet size = > Larger probability of High BER? Larger packet size = > Larger probability of – bit- -error = > lower throughput error = > lower throughput bit Higher BER T’put Lower BER size ! Indexed table of BW estimates for different packet size Indexed table of BW estimates for different packet size ! ranges ranges – Separate estimation for data and Separate estimation for data and acks acks (i.e., higher (i.e., higher- -layer layer acks acks) at ) at – source and destination respectively source and destination respectively
Normalization Normalization ! For low BERs BERs ! For low – – Scenarios used in our simulation and testbed Scenarios used in our simulation and testbed experiments experiments – – Linear part of BER- Linear part of BER -packet size packet size- -throughput curve throughput curve Packet size from 64B to 640B ! Packet size from 64B to 640B ! ! We can have a single single estimate estimate normalized normalized to a reference packet size to a reference packet size ! We can have a (512B) (512B) Key observations for normalization: ! Key observations for normalization: ! – Channel busy + backoff backoff + RTS/CTS + ACK overhead same for packets of all sizes + RTS/CTS + ACK overhead same for packets of all sizes – Channel busy + – – Once channel captured, DATA is transmitted at physical channel rate, for all packet Once channel captured, DATA is transmitted at physical channel r ate, for all packet sizes sizes ! Normalization enables estimation at source for both data and acks Normalization enables estimation at source for both data and acks !
Simulation Results Simulation Results ! CBR Contention experiments: CBR Contention experiments: ! – Running average with decay – Running average with decay ! Variable contention experiments (for predictability): Variable contention experiments (for predictability): ! – %age difference between successive 2 sec. intervals – %age difference between successive 2 sec. intervals – – 1 contending TCP flow: > 97% of the time < = 20% difference 1 contending TCP flow: > 97% of the time < = 20% difference – – 7 contending TCP flows: > 80% of the time < = 20% difference 7 contending TCP flows: > 80% of the time < = 20% difference
Application Application Channel Time Proportion (CTP) (CTP) ! ! Channel Time Proportion – A link has bandwidth estimate k k bps, a flow over it requires bps, a flow over it requires j j bps = > it bps = > it – A link has bandwidth estimate requires a fraction j requires a fraction j / / k k of the channel shared by nodes in its neighborhood of the channel shared by nodes in its neighborhood ! Use this in admission control for both single- - and multi and multi- -hop IEEE hop IEEE ! Use this in admission control for both single 802.11 networks 802.11 networks Admission control inaccurate ! ! Admission control inaccurate – Admitting new traffic increases contention in the shared channel – Admitting new traffic increases contention in the shared channel – Changes bandwidth estimate of flows – Changes bandwidth estimate of flows Dynamic bandwidth management ! Dynamic bandwidth management ! For more see: ! For more see: ! Dynamic Bandwidth – – S. Shah, K. Chen and K. Nahrstedt S. Shah, K. Chen and K. Nahrstedt, , Dynamic Bandwidth Management in Single- -hop Ad hoc Wireless Networks hop Ad hoc Wireless Networks , Management in Single , MONET MONET journal special issue on Algorithmic Solutions for Wireless, Mobile, Ad Hoc ile, Ad Hoc journal special issue on Algorithmic Solutions for Wireless, Mob and Sensor Networks (eds. Bar- and Sensor Networks (eds. Bar -Noy Noy, , Bertossi Bertossi, , Pinotti Pinotti and and Raghavendra Raghavendra), ), 2004. 2004. – K. Chen and K. Nahrstedt Nahrstedt, , EXACT: An Explicit Rate EXACT: An Explicit Rate- -based Flow based Flow – K. Chen and K. Control Framework in MANET , Technical Report UIUCDCS Control Framework in MANET , Technical Report UIUCDCS- -R R- -2002 2002- - 2286/UILU- -ENG ENG- -2002 2002- -1730, Department of Computer Science, University 1730, Department of Computer Science, University 2286/UILU of Illinois at Urbana- -Champaign, updated December, 2002. Champaign, updated December, 2002. of Illinois at Urbana
Recommend
More recommend