BodyQoS: Adaptive and Radio-Agnostic QoS for Body Sensor Networks Gang Zhou College of William and Mary Jian Lu University of Virginia Chieh-Yih Wan, Mark D. Yarvis Intel Research John A. Stankovic IEEE INFOCOM 2008
Hurricane Katrina Relief
911 Terrorist Attack
Health Monitoring During Emergency Manual tracking of patient status, based on papers and phones, is the past; Real-time & continuous monitoring, through body sensor networks, is the future;
A Typical Body Sensor Network Limb motion & muscle activity Heart rate & blood oxygen saturation Sweat Two-Lead EKG Temp.
Quality of Service for Body Sensor Networks EKG BodyQoS Goals Priority-based admission control Wireless resource scheduling Providing effective bandwidth Sweat Design Constraints Heterogeneous resources Heterogeneous radio platforms Data Light Control
BodyQoS Contributios The first Running QoS System for Body Sensor Networks Asymmetric Architecture Most work for the aggregator Little work for sensor nodes Virtual MAC Separate QoS scheduling from underlying real MAC Easy to port to different radio platforms Effective BW Allocation Adaptive resource scheduling, so that statistically the delivered BW meets QoS requirements, even during interference
Asymmetric Architecture Virtual MAC Effective BW Allocation Asymmetric Architecture Decide which streams to serve and which not to serve Schedule wireless resources Calculate effective bandwidth Put radio to sleep BodyQoS Abstract wireless resource for QoS scheduling Implemented by calling real MAC’s functions Poll Data
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction VMAC is used to abstract resource Parameters are used for abstracting the wireless resources Tinterval Npkt Spkt TPkt TmaxPkt TminSleep
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Npkt Spkt TPkt TmaxPkt TminSleep The length of each interval Tinterval
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Tinterval Npkt Spkt TPkt TmaxPkt TminSleep The maximum number of packets QoS Scheduler can send/receive within each interval, if there is no interference Npkt
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Tinterval Npkt Spkt TPkt TmaxPkt TminSleep The effective data payload size in each packet that can carry application data Spkt
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Tinterval Npkt Spkt TPkt TmaxPkt TminSleep The minimum time needed to send out a packet, if there is no interference Tpkt
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Tinterval Npkt Spkt TPkt TmaxPkt TminSleep The maximum time needed to send out a packet or finally report giving up, if it suffers maximum backoffs/retransmissions TmaxPkt
Wireless Resource Abstraction Asymmetric Architecture Virtual MAC Effective BW Allocation Wireless Resource Abstraction Tinterval Npkt Spkt TPkt TmaxPkt TminSleep The minimum time for putting radio to sleep, which includes the sleeping/activation switch time and also considers the energy cost; TminSleep
Delivered Bytes / Actual Time Asymmetric Architecture Virtual MAC Effective BW Allocation Virtual MAC Operation BWeffective Delivered Bytes / Actual Time
Effective BW Allocation Asymmetric Architecture Virtual MAC Effective BW Allocation Effective BW Allocation The ideal case: no Interference The general case: when interference is present If application requests BW bi, BodyQoS allocates BW bi That is, in each interval Tinterval, QoS scheduler requests VMAC to send/receive Di packets within time Ti=Di*Tpkt Minimum per packet transmission time Interval length Packet size
Effective BW Allocation Asymmetric Architecture Virtual MAC Effective BW Allocation Effective BW Allocation The general case: when interference is present Per Packet Trans. Time: # Requested Packets: Max. MAC Retrans. Time H H Interference Interference
Performance Evaluation Setup EKG Location Aggregator Adaptive QoS Best effort Explicit Noise Data Collection Temperature RTP-Like QoS Implemented at Intel with Imote2 Ported to MicaZ at UVA
Performance Adaptive QoS always delivers requested BW Delivered BWs for RTP-Like QoS and best-effort reduce when interference increase RTP-like QoS has better performance than best-effort 135s 0s 225s 315s 400s Noise Node Off Noise Node On 30ms per packet Noise Node On 25ms per packet Noise Node On 20ms per packet
Conclusions We designed, implemented, and evaluated the first Running QoS System for Body Sensor Networks Asymmetric Architecture Most work for the aggregator Little work for sensor nodes Virtual MAC Separate QoS scheduling from underlying real MAC Easy to port to different radio platforms Effective BW Allocation Adaptive resource scheduling, so that statistically the delivered BW meets QoS requirements, even during interference For more information, visit: www.cs.wm.edu/~gzhou
The End
Effective BW Allocation Asymmetric Architecture Virtual MAC Effective BW Allocation Effective BW Allocation The general case: when interference is present Per Packet Trans. Time: # Requested Packets: Max. MAC Retrans. Time H H Interference Interference
Implementation 1:17 1:4 Implemented at Intel with Imote2 Ported to MicaZ at UVA Ported to Telos at W&M 1:17 1:4 The same Easy to Port to Different Radio Platforms Only need to modify VMAC VMAC <100 lines of code BodyQoS ~3700 lines of code Most Work Done at the Aggregator
Evaluation -- Bandwidth Delivery Ratio Adaptive QoS always delivers requested BW Delivered BWs for RTP-Like QoS and best-effort reduce when interference increase RTP-like QoS has better performance than best-effort 135s 0s 225s 315s 400s Noise Node Off Noise Node On 30ms per packet Noise Node On 25ms per packet Noise Node On 20ms per packet Aggregator Side
Evaluation -- Data Buffer Fetching Speed Adaptive QoS always maintains 4Kbps fetching speed Fetching speeds of RTP-Like QoS and best-effort reduce when interference is present Fetching speed of RTP-like QoS is higher than that of best-effort 135s 0s 225s 315s 400s Noise Node Off Noise Node On 30ms per packet Noise Node On 25ms per packet Noise Node On 20ms per packet Mote Side