IWWAN 2004 Tutorial


Published on

  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

IWWAN 2004 Tutorial

  1. 1. Wireless Sensor Networks Presenter: Carlos Pomalaza-Ráez [email_address] International Workshop on Wireless Ad Hoc Networks May 31 – June 3, 2004 University of Oulu, Finland http://www.ee.oulu.fi/~carlos/IWWAN_04_WSN_Tutorial.ppt
  2. 2. Outline <ul><li>Introduction </li></ul><ul><ul><li>Examples of sensor networks and sensor nodes </li></ul></ul><ul><ul><li>WIRO – A sensor node developed at CWC </li></ul></ul><ul><ul><li>Typical features of WSN </li></ul></ul><ul><ul><li>Design considerations </li></ul></ul><ul><li>Sensor Network Protocol Stack </li></ul><ul><ul><li>Energy consumption model – Physical layer </li></ul></ul><ul><ul><li>MAC power saving mechanisms </li></ul></ul><ul><ul><li>Data aggregation and Data centrality </li></ul></ul><ul><ul><li>Transport and Applications layers </li></ul></ul>
  3. 3. Outline <ul><li>Networking Issues </li></ul><ul><ul><li>MAC </li></ul></ul><ul><ul><li>Routing </li></ul></ul><ul><ul><li>Transport layer </li></ul></ul><ul><ul><li>Summary </li></ul></ul><ul><li>Energy Efficiency Issues </li></ul><ul><ul><li>Node energy model for multihop WSN </li></ul></ul><ul><ul><li>Energy efficient error control mechanisms </li></ul></ul><ul><ul><li>Cooperative communications </li></ul></ul><ul><ul><li>Distributed source coding </li></ul></ul>
  4. 4. Introduction What is a sensor? A device that produces a measurable response to a change in a physical or chemical condition, e.g. temperature, ground composition. <ul><li>Sensor Networks </li></ul><ul><li>A large grouping of low-cost, low-power, multifunctional, and small-sized sensor nodes </li></ul><ul><li>They benefit from advances in 3 technologies: </li></ul><ul><li>digital circuitry </li></ul><ul><li>wireless communication </li></ul><ul><li>silicon micro-machining </li></ul>
  5. 5. Wireless Sensor Networks (WSN) Circulatory Net Environmental Monitoring Structural New technologies have reduced the cost, size, and power of micro-sensors and wireless interfaces Sensing Computation Networking
  6. 6. Some Applications of WSN <ul><li>Battlefield </li></ul><ul><li>Detection, classification and tracking Examples: AWAIRS (UCLA & Rockwell Science Center) </li></ul><ul><li>Examples: </li></ul><ul><ul><li>ZebraNet (Princeton) </li></ul></ul><ul><ul><li>Seabird monitoring in Maine’s Great Duck Island (Berkeley & Intel) </li></ul></ul><ul><li>Habitat Monitoring Micro-climate and wildlife monitoring </li></ul>
  7. 7. Some Applications of WSN <ul><li>Structural, seismic </li></ul><ul><li>Bridges, highways, buildings </li></ul><ul><li>Examples: Coronado Bridge San Diego (UCSD), Factory Building (UCLA) </li></ul><ul><li>Smart roads </li></ul><ul><li>Traffic monitoring, accident detection, recovery assistance </li></ul><ul><li>Examples: ATON project (UCSD) </li></ul>highway camera microphone <ul><li>Contaminants detection Examples: Multipurpose Sensor Program (Boise State University) </li></ul>
  8. 8. WSN Communications Architecture Sensor field Sensor nodes Internet Sink Manager Node Sensing node Sensor nodes can be data originators and data routers
  9. 9. Examples of Sensor Nodes
  10. 10. Sensor Node Evolution OOK/ASK OOK Modulation Type 10/40 10 Rate (Kbps) RFM TR1000 Radio Communication 4 1 0.5 RAM (KB) 128 16 8 Prog. mem. (KB) ATMega103/128 ATMega163 AT90LS8535 Type Microcontroller (4MHz) Feb-02 Aug-01 Jun-01 Oct-00 Sep-99 Date Mica Dot Rene2 Rene WeC Mote Type
  11. 11. WIRO Platform WIRO ( WI reless R esearch O bject ) is a modular embedded system developed by the Centre for Wireless Communications , Oulu, Finland. The system consists of a set of boards 35 mm x 35 mm in size. They are: CPU Board 2 Euro coin & RF Board WIRO Box <ul><li>CPU board - Controls all other WIRO boards and is needed in all WIRO stacks. It has an AVR Mega128 microcontroller running at 7.37 MHz and a 4 Mb serial flash memory. The CPU has a 128 kB flash memory for programs, 4 kB of SRAM , and 8 ADCs </li></ul><ul><li>RF board – It has an RFM model TR3100 radio transceiver chip capable of up to 576 kbps speeds. The radio interface on this board is configured for 230.4 kbps . Data encoding and decoding can use the onboard CPLD ( Complex Programmable Logic Device ) or the microcontroller on the CPU board. The transceiver uses ASK modulation </li></ul><ul><li>Power supply board – It has electronics to charge a battery pack from the USB bus and to provide the other boards with 5V, +3.3V and +1.8V voltages </li></ul><ul><li>Sensor board – It has a 2-axis accelerometer, a 2-axis magnetometer, as well as pressure, temperature and humidity sensors </li></ul><ul><li>Prototype board and Test-Pad board </li></ul>
  12. 12. WIRO – Power Consumption RF Board Total Power Consumption CPU Board 0.007 mW 0.002 mA/3.3 V 13.2 mW 4 mA/3.3 V Flash-memory 0.13 mW 0.04 mA/3.3 V 49.5 mW 15 mA/3.3 V AT mega128 0.033 mW 0.01 mA/3.3 V 9.9 mW 3 mA/3.3 V CPLD CPU Sleep CPU Active Sleep Rx Tx RF Board 2.5mW 0.5mA/5V 2.5mW 0.5mA/5V 2.5mW 0.5mA/5V Other Circuitry 0.0023mW 0.7 μ A/3.3V 19mW 5.8mA/3.3V 33mW 10mA/3.3V RF-Transceiver 0.033mW 0.01mA/3.3V 9.9mW 3mA/3.3V 9.9mW 3mA/3.3V CPLD Tx Rx Sleep
  13. 13. WIRO – Power Consumption Sensor Board Total Power Consumption 2.5mW 0.5mA/5V 2.5mW 0.5mA/5V Amplifier 0.033mW 0.01mA/3.3V 9.9mW 3mA/3.3V CPLD 0 0 30mW 6mA/5V Pressure Sensor 0.0015mW 0.3 μ A/5V 2mW 0.55mA/3.3V Humidity Sensor 2mW 0.6mA/3.3V 2mW 0.6mA/3.3V Accelerometer 0 0 100mW 20mA/5V Magnetometer Sleep Active Sensor Board Active Sleep
  14. 14. WIRO – Power Consumption 1mW 0.2m A/5V 125mW 25mA/5V(from USB) USB 0.025mW 0.005mA/5V 5mW 1mA/5V EEPROM 0.033mW 0.01mA/3.3V 3.3mW 1mA/3.3V CPLD Not Connected to the USB-bus Connected to the USB-bus Power Supply Board 132h 4.2mA 13.0mW 0% 129h 4.3mA 13.3mW 0.1% 107h 5.2mA 16.1mW 1% 39h 14.1mA 44.2mW 10% 5.3h 104mA 325.3mW 100% Op Time/550mAh Avg Battery Current Avg Power t on /t sleep Estimated Operation Time on Battery Power
  15. 15. Typical Features of WSN <ul><li>A very large number of nodes, often in the order of thousands </li></ul><ul><li>Asymmetric flow of information, from the observers or sensor nodes to a command node </li></ul><ul><li>Communications are triggered by queries or events </li></ul><ul><li>At each node there is a limited amount of energy which in many applications is impossible to replace or recharge </li></ul><ul><li>Almost static topology </li></ul><ul><li>Low cost, size, and weight per node </li></ul><ul><li>Prone to failures </li></ul><ul><li>More use of broadcast communications instead of point-to-point </li></ul><ul><li>Nodes do not have a global ID such as an IP number </li></ul><ul><li>The security, both physical and at the communication level, is more limited than conventional wireless networks </li></ul>
  16. 16. Design Considerations <ul><li>Fault tolerance – The failure of nodes should not severely degrade the overall performance of the network </li></ul><ul><li>Scalability – The mechanism employed should be able to adapt to a wide range of network sizes (number of nodes) </li></ul><ul><li>Cost – The cost of a single node should be kept very low </li></ul><ul><li>Power consumption – Should be kept to a minimum to extend the useful life of network </li></ul><ul><li>Hardware and software constraints – Sensors, location finding system, antenna, power amplifier, modulation, coding, CPU, RAM, operating system </li></ul><ul><li>Topology maintenance – In particular to cope with the expected high rate of node failure </li></ul><ul><li>Deployment – Pre-deployment mechanisms and plans for node replacement and/or maintenance </li></ul><ul><li>Environment – At home, in space, in the wild, on the roads, etc. </li></ul><ul><li>Transmission media – ISM bands, infrared, etc. </li></ul>
  17. 17. Sensor Network Protocol Stack Transport Data Link Physical Network Power Management Application Mobility Management Task Management Power Management – How the sensor uses its power, e.g. turns off its circuitry after receiving a message. Mobility Management – Detects and registers the movements of the sensor nodes Task Management – Balances and schedules the sensing tasks given to a specific region
  18. 18. Physical Layer Physical Data Link Network Transport Application <ul><li>Frequency selection – The use of the industrial, scientific, and medical (ISM) bands has often been proposed </li></ul><ul><li>Carrier frequency generation and Signal detection – Depend on the transceiver and hardware design constraints which aim for simplicity, low power consumption, and low cost per unit </li></ul><ul><li>Modulation </li></ul><ul><ul><li>Binary and M-ary modulation schemes can transmit multiple bits per symbol at the expense of complex circuitry </li></ul></ul><ul><ul><li>Binary modulation schemes are simpler to implement and thus deemed to be more energy-efficient for WSN applications </li></ul></ul><ul><li>Low transmission power and simple transceiver circuitry make Ultra Wideband (UWB) an attractive candidate </li></ul><ul><ul><li>Baseband transmission, i.e. no intermediate or carrier frequencies </li></ul></ul><ul><ul><li>Generally uses pulse position modulation </li></ul></ul><ul><ul><li>Resilient to multipath </li></ul></ul><ul><ul><li>Low transmission power and simple transceiver circuitry </li></ul></ul>
  19. 19. Physical Layer Radio Model – Energy Consumption Energy consumption minimization is of paramount importance when designing the physical layer for WSN in addition to the usual effects such as scattering, shadowing, reflection, diffraction, multipath, and fading. E TC = energy used by the transmitter circuitry E TA = energy required by the transmitter amplifier to achieve an acceptable signal to noise ratio at the receiver
  20. 20. Physical Layer Assuming a linear relationship for the energy spent per bit by the transmitter and receiver circuitry e TC , e TA , and e RC are hardware dependent parameters An explicit expression for e TA can be derived as,
  21. 21. Physical Layer ( S/N ) r = minimum required signal to noise ratio at the receiver’s demodulator for an acceptable E b /N 0 NF Rx = receiver noise figure N 0 = thermal noise floor in a 1 Hertz bandwidth (Watts/Hz) BW = channel noise bandwidth λ = wavelength in meters α = path loss exponent whose value varies from 2 (for free space) to 4 (for multipath channel models) G ant = antenna gain η amp = transmitter power efficiency R bit = raw bit rate in bits per second
  22. 22. Data Link Layer <ul><li>Medium Access Control (MAC) </li></ul><ul><li>Let multiple radios share the same communication media </li></ul><ul><li>Functions: </li></ul><ul><li>Local Topology Discovery and Management </li></ul><ul><li>Media Partition By Allocation or Contention </li></ul><ul><li>Provide Logical Channels to Upper Layers </li></ul>Physical Data Link Network Transport Application The data link layer is responsible for the multiplexing of the data stream, data frame detection, medium access and error control. Ensures reliable point-to-point and point-to-multipoint connections in a communication network MAC protocols for sensor networks must have built-in power conservation mechanisms , and strategies for the proper management of node mobility or failure Time Code Frequency
  23. 23. Wireless MAC Protocols Wireless MAC protocols can be classified into two categories, distributed and centralized, according to the type of network architecture for which they have been designed. Protocols can be further classified, based on the mode of operation, into random access protocols, guaranteed access protocols, and hybrid access protocols Wireless MAC protocols Distributed MAC protocols Centralized MAC protocols Random access Random access Guaranteed access Hybrid access Since it is desirable to turn off the radio as much as possible in order to conserve energy some type of TDMA mechanism is often suggested for WSN applications. Constant listening times and adaptive rate control schemes have also been proposed.
  24. 24. Power Saving Mechanisms <ul><li>The amount of time and power needed to wake-up (start-up) a radio is not negligible and thus just turning off the radio whenever it is not being used is not necessarily efficient </li></ul><ul><li>The energy characteristics of the start-up time should also be taken into account when designing the size of the data link packets. The values shown in the figure below clearly indicate that when the start-up energy consumption is taken into account the energy per bit requirements can be significantly higher for the transmission of short packets than for longer ones </li></ul>
  25. 25. Error Control Error control is an important issue in any radio link. In general terms there are two modes of error control: <ul><li>Forward Error Correction (FEC) – There is a direct tradeoff between the overhead added to the code and the number of errors that can be corrected. The number of bits in the code word impacts the complexity of the receiver and transmitter. If the associated processing power is greater than the coding gain, then the whole process in energy inefficiency. </li></ul><ul><li>Automatic Repeat Request (ARQ) – Based on the retransmission of packets that have been detected to be in error. Packets carry a checksum which is used by the receiver to detect errors. Requires a feedback channel. </li></ul>With FEC one pays an a priori battery power consumption overhead and packet delay by computing the FEC code and transmitting the extra code bits. In return one gets a reduced probability of packet loss. With ARQ one gambles that the packet will get through and if it does not one has to pay battery energy and delay due to the retransmission process. Whether FEC or ARQ or a hybrid error control system is energy efficient will depend on the channel conditions and the network requirements such as throughput and delay.
  26. 26. Network Layer Physical Data Link Network Transport Application Basic issues to take into account when designing the network layer for WSNs are: <ul><li>Power efficiency </li></ul><ul><li>Data centric – The nature of the data (interest requests and advertisement of sensed data) determines the traffic flow </li></ul><ul><li>Data aggregation is useful to manage the potential implosion of traffic because of the data centric routing </li></ul><ul><li>Rather than conventional node addresses an ideal sensor network uses attribute-based addressing , e.g. “region where humidity is below 5%” </li></ul><ul><li>Locationing systems , i.e. ability for the nodes to establish position information </li></ul><ul><li>Internetworking with external networks via gateway or proxy nodes </li></ul>
  27. 27. Routing Multihop routing is common due to limited transmission range Phenomenon being sensed Sink <ul><li>Low node mobility </li></ul><ul><li>Power aware </li></ul><ul><li>Irregular topology </li></ul><ul><li>MAC aware </li></ul><ul><li>Limited buffer space </li></ul>Some routing issues in WSNs Data aggregation takes place here
  28. 28. Data Aggregation It is a technique used to solve the problem of implosion in WSNs. This problem arises when packets carrying the same information arrive at a node. This situation can happen when more than one node senses the same phenomenon. This is different than the problem of “ duplicate packets ” in conventional ad hoc networks. Here it is the high level interpretation of the data in the packets is that determines if the packets are the “same.” Even for the case when the packets are deemed to be different they could still be aggregated into a single packet before the relaying process continues. In this regard data aggregation can be considered as data fusion . Data coming from multiple sensor nodes are aggregated, if they have about the same attributes of the phenomenon being sensed, when they reach a common routing or relaying node on their way to the sink. In this view the routing mechanism in a sensor network can be considered as a form of reverse multicast tree . Phenomenon being sensed
  29. 29. Data Centrality In data-centric routing, an “interest ” dissemination is performed in order to assign the sensing tasks to the sensor nodes. This dissemination can take different forms such as: <ul><li>The sink or controlling nodes broadcast the nature of the interest, e.g. “four legged animals of at least 50 Kg in weight” </li></ul>Sink Four-legged animal of at least 50 Kg Flow of the request
  30. 30. Data Centrality <ul><li>Sensor nodes broadcast an advertisement of available sensed data and wait for a request from the interested sinks </li></ul>Sink Flow of the advertisement Tiger, tiger, burning bright, In the forest of the night, What immortal hand or eye Could frame thy fearful symmetry?
  31. 31. Flooding & Gossiping Flooding is a well known technique used to disseminate information across a network. It is a simple, easy to implement reactive mechanism that could be used for routing in WSNs but it has severe drawbacks such as, <ul><li>Implosion – When duplicated messages are sent to the same node </li></ul><ul><li>Overlap – When two or more nodes share the same observing region, they may sense the same stimuli at the same time. As a result, neighbor nodes receive duplicated messages </li></ul><ul><li>Resource blindness – Does not take into account the available energy resources. Control of energy consumption is of paramount importance in WSNs, a promiscuous routing technique such as flooding wastes energy unnecessarily </li></ul>Gossiping is a variation of flooding attempting to correct some of its drawbacks. Nodes do not indiscriminately broadcast but instead send a packet to a randomly selected neighbor who upon receiving the packet, repeats the process. It is not as simple to implement as the flooding mechanism and it takes longer for the propagation of messages across the network.
  32. 32. Proposed Routing Techniques SPIN – Sensor Protocols for Information via Negotiation (†) – Attempts to correct the major deficiencies of classical flooding, in particular the indiscriminate flow of packets with the related energy waste. The sensor nodes minimize the amount of traffic and transmissions by first sending an advertisement of the nature of the sensed data in a concise manner followed by the transmission of the actual data to only those nodes that are interested in receiving it. <ul><li>SPIN messages </li></ul><ul><ul><li>ADV- advertise data </li></ul></ul><ul><ul><li>REQ- request specific data </li></ul></ul><ul><ul><li>DATA- requested data </li></ul></ul><ul><li>Resource management </li></ul><ul><ul><li>Nodes decide their capability of participation in data transmissions </li></ul></ul>A B A B A B ADV REQ DATA (†) W. Heinzelman, J. Kulik, and H. Balakrishnan, “Adaptive Protocols for Information Dissemination in Wireless Sensor Networks,” Proc. 5th ACM/IEEE Mobicom Conference (MobiCom '99), Seattle, WA, August, 1999.
  33. 33. Proposed Routing Techniques Data Funneling (†) – Attempts to minimize the amount of communication from the sensors to the information consumer node (sink). It facilitates data aggregation and tries to concentrate, e.g. funnel, the packet flow into a single stream from the group of sensors to the sink. It also attempts to reduce (compress) the data by taking advantage that the destination is not that interested in a particular order of how the data packets arrive. <ul><li>Controller divides the sensing area into regions </li></ul><ul><li>Controller performs a directional flood towards each region </li></ul><ul><li>When the packet reaches the region the first receiving node becomes a border node and modifies the packet (add fields) for route cost estimations within the region </li></ul><ul><li>The border node floods the region with modified packet </li></ul><ul><li>Sensor nodes in the region use cost information to schedule which border nodes to use </li></ul>Setup phase: (†) D. Petrovic, R. C. Shah, K. Ramchandran, and J. Rabaey, “Data Funneling: Routing with Aggregation and Compression for Wireless Sensor Networks,” SNPA 2003, pp. 1-7.
  34. 34. Proposed Routing Techniques <ul><li>When a sensor has data it uses the schedule to choose the border node that is to be used </li></ul><ul><li>It then waits for time inversely proportional to the number of hops from the border </li></ul><ul><li>Along the way to the border node, the data packets join together until they reach the border node </li></ul><ul><li>The border node collects all packets and then sends one packet with all the data back to the controller </li></ul>Data Funneling Data Communication Phase:
  35. 35. Transport Layer Physical Data Link Network Transport Application TCP variants developed for the traditional wireless networks are not suitable for WSNs where the notion of end-to-end reliability has to be reinterpreted due to the “sensor” nature of the network which comes with features such as: <ul><li>Multiple senders, the sensors, and one destination, the sink, which creates a reverse multicast type of data flow </li></ul><ul><li>For the same event there is high level of redundancy or correlation in the data collected by the sensors and thus there is no need for end-to-end reliability between individual sensors and the sink but instead between the event and the sink </li></ul><ul><li>On the other hand there is need of end-to-end reliability between the sink and individual nodes for situations such as re-tasking or reprogramming </li></ul><ul><li>The protocols developed should be energy aware and simple enough to be implemented in the low-end type of hardware and software of many WSN applications </li></ul>
  36. 36. Proposed Transport Layer Techniques Pump Slowly, Fetch Quickly (PSFQ) (†) – Designed to distribute data from a source node by pacing the injection of packets into the network at relatively low speed (pump slowly) which allows nodes that experience data loss to aggressively recover missing data from their neighbors (fetch quickly). Goals of this protocol are: <ul><li>Ensure that all data segments are delivered to the intended destinations with minimum special requirements on the nature of the lower layers </li></ul><ul><li>Minimize number of transmissions to recover lost information </li></ul><ul><li>Operate correctly even in situations where the quality of the wireless links is very poor </li></ul><ul><li>Provide loose delay bounds for data delivery to all intended receivers </li></ul>PFSQ has been designed to guarantee sensor-to-sensor delivery and to provide end-to-end reliability for control management distribution from the control node (sink) to the sensors. It does not address congestion control (†) C-Y Wan, A. T. Campbell, and L. Krishnamurthy, “PSFQ: A Reliable Transport Protocol For Wireless Sensor Networks,” First ACM International Workshop on Wireless Sensor Networks and Applications (WSNA 2002), Atlanta, September 28, 2002, pp. 1-11.
  37. 37. Proposed Transport Layer Techniques Event-to-Sink Reliable Transport (ESRT) (†) – Designed to achieve reliable event detection (at the sink node) with a protocol that is energy aware and has congestion control mechanisms. Salient features are: <ul><li>Self-configuration – even in the case of a dynamic topology </li></ul><ul><li>Energy awareness – sensor nodes are notified to decrease their frequency of reporting if the reliability level at the sink node is above the minimum </li></ul><ul><li>Congestion control – takes advantage of the high level of correlation between the data flows corresponding to the same event </li></ul><ul><li>Collective identification – sink only interested in the collective information from a group of sensors, not in their individual reports </li></ul>(†) Y. Sankarasubramaniam, O. B. Akan, and I. F. Akyildiz, “ESRT: Event-to-Sink Reliable Transport in Wireless Sensor Networks” Proceedings of ACM MobiHoc`03, Annapolis, Maryland, USA, June 2003, pp. 177-188.
  38. 38. Application Layer Physical Data Link Network Transport Application There has not been as much development for this layer as for the other layers. Several general potential areas have been suggested as listed below but little work of substance has been reported in any particular area <ul><li>Sensor Management Protocol (SMP) – Carries out tasks such as: </li></ul><ul><ul><li>Turning sensors on and off </li></ul></ul><ul><ul><li>Exchanging data related to the location finding algorithms </li></ul></ul><ul><ul><li>Authentication, key distribution, and other security tasks </li></ul></ul><ul><ul><li>Sensor movement management </li></ul></ul><ul><li>Interest Dissemination – Interest is sent to a sensor or a group of sensors. The interest is expressed in terms of an attribute or a triggering event. </li></ul><ul><li>Advertisement of Sensed Data – Sensor nodes advertise sensed data in a concise and descriptive way and users reply with requests of data they are interested in receiving </li></ul>
  39. 39. Distributed Source Coding (DSC) Application Layer Aims to take advantage of the high level of correlation of the data collected by spatially close sensor nodes in response to an event. The goal is to remove this redundancy in a distributed manner. There is the need to be able to make reliable decisions from the contribution of a large number of individual unreliable components with a considerable amount of system redundancy. Any method that can strip this redundancy in a distributed manner, e.g. minimizing inter-node communications, will make efficient use of the bandwidth and also save energy. One way to remove the redundancy is by joint processing based on exchange of information between the sensors ( †) . Proposed DSC methods make use of the Slepian-Wolf coding theorem that states that if the joint distribution quantifying the sensor correlation structure is known then there is no theoretical loss in performance using DSC under certain conditions. (†) S. Pradhan and K. Ramchandran, “Distributed Source Coding Using Syndromes (DISCUS): Design and Construction,” IEEE Trans. Information Theory, vol. 49, no. 3, March 2003, pp. 626-643
  40. 40. Distributed Source Coding (DSC) The encoders collaborate and a rate of H(X,Y) is sufficient Encoder 1 Encoder 2 Joint Decoder X Y The encoders do not collaborate. The Slepian-Wolf theorem says that a rate H(X,Y) is also sufficient provided decoding of X and Y is done jointly. It puts more burden on the decoding side Encoder 1 Encoder 2 Joint Decoder X Y
  41. 41. Some Words About Cross-Layer Design <ul><li>Avoid Conflicting Behavior – For example a routing protocol that favors smaller hops to save transmission energy consumption does require a proper MAC protocol to coordinate the transmissions along the data flow that minimizes contention and keeps the transceivers off as much as possible </li></ul><ul><li>Remove Unnecessary Layers – Some applications do not require all layers </li></ul><ul><li>New Paradigm – WSNs do not have many of the features of the conventional networks for which the OSI protocol layer stack model has proven to be successful. Therefore it is quite possible that a different mix of layers might prove to be more efficient for many WSN applications </li></ul>Motivations:
  42. 42. Networking Issues Physical Data Link Network Transport Application <ul><li>Unlike conventional wireless networks, the protocols designed for the efficient networking of nodes in a WSN have to allow for a closer collaboration or awareness among the layers of the protocol stack , in particular the first three layers </li></ul><ul><li>Conversely, WSN routing algorithms designed with the concepts of data centric and data aggregation create special requirements on the underlying MAC protocols that should be met for the routing mechanisms to work as intended </li></ul><ul><li>These observations can be extended to the design of other layers as well since WSNs call for new networking paradigms </li></ul><ul><li>For example, the MAC protocols must try to have the radio transceivers in a sleeping mode as much as possible in order to save energy, however if the MAC protocol is not jointly designed with the routing algorithms (network layer) the overall performance of the network could be severely degraded, e.g. excessive packet delay </li></ul>
  43. 43. Example of a MAC Protocol for WSN Sensor-MAC (S-MAC) ( † ) – Is an energy-aware protocol that illustrates design considerations that MAC protocols for WSNs should address. Assumptions made in the design of S-MAC are: <ul><li>Most communications will be between neighboring sensor nodes rather than between a node and a base station </li></ul><ul><li>There are many nodes that are deployed in a casual, e.g. not precise, manner and as such the nodes must be able to self-configure </li></ul><ul><li>The sensor nodes are dedicated to a particular application and thus per-node fairness (channel access) is not as important as the application level performance </li></ul><ul><li>Since the network is dedicated to a particular application the application data processing can be distributed through the network. This implies that data will be processed as whole messages at a time in store-and-forward fashion allowing for the application of data aggregation techniques which can reduce the traffic </li></ul><ul><li>The application can tolerate latency and has long idle periods </li></ul>Data Link ( † ) W. Ye, J. Heidemann and D. Estrin, “An Energy-Efficient MAC Protocol for Wireless Sensor Networks,” In Proceedings of the 21st International Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2002), New York, NY, USA, June, 2002, pp. 1-10.
  44. 44. Sensor-MAC (S-MAC) <ul><li>The main features of S-MAC are: </li></ul><ul><li>Periodic listen and sleep </li></ul><ul><li>Collision and Overhearing avoidance </li></ul><ul><li>Message passing </li></ul><ul><li>The basic scheme for each node is: </li></ul><ul><li>Each node goes into periodic sleep mode during which it switches the radio off and sets a timer to awake later </li></ul><ul><li>When the timer expires it wakes up and listens to see if any other node wants to talk to it </li></ul><ul><li>The duration of the sleep and awake cycles are application dependent and they are set the same for all nodes </li></ul><ul><li>Requires a periodic synchronization among nodes to take care of any type of clock drift </li></ul>
  45. 45. Sensor-MAC (S-MAC) <ul><li>The listen and awake periods are much longer than typical clock drift rates </li></ul><ul><li>The duration of the sleep and awake cycles are application dependent and they are set the same for all nodes </li></ul><ul><li>Unlike conventional TDMA schemes S-MAC tolerates a much looser synchronization among neighboring nodes </li></ul><ul><li>Requires a periodic synchronization among nodes to take care of any type of clock drift </li></ul><ul><li>Nodes are free to choose their own listen/sleep schedules but to reduce control overhead the protocol prefers that neighboring nodes are synchronized </li></ul><ul><li>Because of the multihop scenario not all neighbors can be synchronized, e.g. </li></ul>Nodes A and B are neighbors but they are synchronized to their “other” neighbors, C and D respectively. Nodes broadcast their schedules from time to time to ensure that neighboring nodes can talk to each other even if they have different schedules. If multiple neighbors want to talk to a node, they need to contend for the medium.
  46. 46. Sensor-MAC (S-MAC) <ul><li>Choosing and Maintaining Schedules </li></ul><ul><li>Each node maintains a schedule table that stores schedules of all its known neighbors </li></ul><ul><li>To establish the initial schedule the following steps are followed: </li></ul><ul><ul><li>A node first listens for a certain amount of time </li></ul></ul><ul><ul><li>If it does not hear a schedule from another node, it randomly chooses a schedule and broadcasts its schedule immediately </li></ul></ul><ul><ul><li>This node is called a Synchronizer </li></ul></ul><ul><ul><li>If a node receives a schedule from a neighbor before choosing its own schedule, it just follows this neighbor’s schedule, i.e. becomes a Follower and it waits for a random delay and broadcasts its schedule </li></ul></ul><ul><ul><li>If a node receives a neighbor’s schedule after it selects its own schedule, it adopts both schedules and broadcasts its own schedule before going to sleep </li></ul></ul><ul><li>It is expected that very rarely a node adopts multiple schedules since every node tries to follow existing schedules before choosing an independent one </li></ul>
  47. 47. Sensor-MAC (S-MAC) <ul><li>Maintaining Synchronization </li></ul><ul><li>Timer synchronization among neighbors is needed to prevent clock drift. The updating period can be relatively long (tens of seconds) </li></ul><ul><li>Done by periodically sending a SYNC packet that only includes the address of the sender and the time of its next sleeping period </li></ul><ul><li>Time of next sleep is relative to the moment that the sender finishes transmitting the SYNC packet </li></ul><ul><li>A node will go to sleep when the timer fires </li></ul><ul><li>Receivers will adjust their timer counters immediately after they receive the SYNC packet </li></ul><ul><li>A node periodically broadcasts a SYNC packet to its neighbors even if it has no followers </li></ul>
  48. 48. Sensor-MAC (S-MAC) <ul><li>Maintaining Synchronization (cont.) </li></ul><ul><li>Listen interval is divided into two parts: one for receiving SYNC packets and the other for receiving RTS ( Request To Send ) </li></ul>
  49. 49. Sensor-MAC (S-MAC) <ul><li>Collision and Overhearing Avoidance </li></ul><ul><li>Similar to IEEE 802.11, i.e. use RTS/CTS mechanism to address the hidden terminal problem </li></ul><ul><li>Perform carrier sense before initiating a transmission </li></ul><ul><li>If a node fails to get the medium, it goes to sleep and wakes up when the receiver is free and listening again </li></ul><ul><li>Broadcast packets are sent without RTS/CTS </li></ul><ul><li>Unicast packets follow the sequence of RTS/CTS/DATA/ACK between the sender and receiver </li></ul><ul><li>Duration field in each transmitted packet indicates how long the remaining transmission will be, so if a node receives a packet destined for another node, it knows how long it has to keep silent </li></ul><ul><li>The node records this value in network allocation vector (NAV) and sets a timer for it </li></ul><ul><li>When a node has data to send, it first looks at NAV. If this value is not zero, then the medium is busy (virtual carrier sense) </li></ul><ul><li>The medium is determined as free if both virtual and physical carrier sense indicate the medium is free </li></ul><ul><li>All immediate neighbors of both the sender and receiver should sleep after they hear the RTS or CTS packet until the current transmission is over </li></ul>
  50. 50. Sensor-MAC (S-MAC) <ul><li>Message Passing </li></ul><ul><li>A message is a collection of meaningful, interrelated units of data </li></ul><ul><li>Transmitting a long message as a packet is disadvantageous as the re-transmission cost is high if the packet is corrupted </li></ul><ul><li>Fragmentation into small packets will lead to high control overhead as each packet should contend using RTS/CTS </li></ul><ul><li>S-MAC fragments message into small packets and transmits them as a burst </li></ul><ul><li>Only one RTS and one CTS packets are used </li></ul><ul><li>Every time a data fragment is transmitted the sender waits for an ACK from the receiver, if it does not arrive the fragment is retransmitted and the reservation is extended for the duration of the fragment </li></ul><ul><li>Advantages: </li></ul><ul><ul><li>Reduces latency of the message </li></ul></ul><ul><ul><li>Reduces control overhead </li></ul></ul><ul><li>Disadvantage: </li></ul><ul><ul><li>Node-to-node fairness is reduced, as nodes with small packets to send will have to wait until the message burst is transmitted </li></ul></ul>
  51. 51. Sensor-MAC (S-MAC) <ul><li>Implementation </li></ul><ul><li>Testbed </li></ul><ul><ul><li>Rene motes, developed at UCB </li></ul></ul><ul><ul><li>Atmel AT90LS8535 microcontroller with TinyOS </li></ul></ul><ul><ul><li>Uses the TR 1000 from RFM which provides a transmission rate of 19.2 Kbps (OOK). Three working modes: receiving (4.5mA), transmitting (12mA, peak), and sleeping (5 μ A) </li></ul></ul><ul><ul><li>Two type of packets. Fixed size data packets with a 6-byte header, a 30-byte payload, and a 2-byte CRC. Control packets (RTS, CTS, ACK) with a 6-byte header and a 2-byte CRC </li></ul></ul><ul><li>MAC protocols implemented </li></ul><ul><ul><li>Simplified IEEE 802.11 DCF </li></ul></ul><ul><ul><li>Message passing with overhearing avoidance (no sleep and listen periods). The radio goes to sleep when its neighbors are in transmission </li></ul></ul><ul><ul><li>The complete S-MAC. Listen period is 300 ms and sleep time can take different values, e.g. 300 ms, 500 ms, 1 s, etc. </li></ul></ul>The duration of the carrier sensing is random within the contention window. The microcontroller does not go to sleep.
  52. 52. Sensor-MAC (S-MAC) <ul><li>Topology </li></ul><ul><li>Two-hop network with two sources and two sinks </li></ul><ul><li>Sources periodically generate a sensing message which is divided into fragments </li></ul><ul><li>Traffic load is changed by varying the inter-arrival period of the messages </li></ul>
  53. 53. Sensor-MAC (S-MAC)
  54. 54. Sensor-MAC (S-MAC)
  55. 55. Sensor-MAC (S-MAC)
  56. 56. Sensor-MAC (S-MAC) <ul><li>Conclusion </li></ul><ul><li>The S-MAC protocol has good energy conserving properties when compared with the IEEE 802.11 standard </li></ul><ul><li>Comments </li></ul><ul><li>Need of a mathematical analysis </li></ul><ul><li>Need to study the effect of different topologies </li></ul><ul><li>Fragmenting long packets into smaller ones is not energy efficient. The argument about more chances of the packet being corrupted is not correct unless other options such as the use of error control coding have also been explored </li></ul><ul><li>Several features behind the S-MAC protocol are still “captured” in the traditional way to do business at the Link Layer level, e.g. use of RTS/CTS/ACK, etc. </li></ul><ul><li>The protocol does not address the fact that in most sensor net applications neighboring nodes are activated almost at the same time by the event to be sensed and as such they will attempt to communicate at approximately the same time. There is also a high degree of correlation between the data they want to communicate </li></ul>
  57. 57. Deep Sleep is Healthy not just for WSN sol 101-102 (May 10, 2004) “ ... Opportunity awoke on sol 102 from its first “deep sleep.” This set of activities was initiated to conserve the energy that ...” http://marsrovers.jpl.nasa.gov
  58. 58. Routing <ul><li>Problem – How to efficiently route: </li></ul><ul><li>Data from the sensors to the sink and, </li></ul><ul><li>Queries and control packets from the sink to the sensor nodes </li></ul>
  59. 59. Routing In addition to the concepts of data aggregation , data centrality , flooding , and gossiping that were described earlier it is important to identify the nature of the WSN traffic, which will depend on the application. Assuming a uniform density of nodes, the number of transmissions can be used as a metric for energy consumption. Since receiving a packet consumes almost as much energy as transmitting a packet it is then important that the MAC protocol limits the number of listening neighbors in order to conserve energy.
  60. 60. Routing If N is the number of nodes, Q the number of queries, and E the number of events, and some type of flooding mechanism is being used then: <ul><li>If the number of events is much higher than the number of queries it is better to use some type of query flooding since the number of transmissions is proportional to N*Q which is much less than N*E </li></ul><ul><li>If the number of events is low compared with the number of queries it is better to use some type of event flooding since now N*E is much less than N*Q </li></ul><ul><li>In both cases it is assumed that the “return path” (for the events or the queries) is built during the flooding process </li></ul><ul><li>Other underlying routing mechanisms are recommended if the number of events and queries are of the same order </li></ul>
  61. 61. Directed Diffusion (†) A mechanism developed for the case where it is expected that the number of events is higher than the number of queries <ul><li>Is data-centric in nature </li></ul><ul><li>The sink propagates its queries or “interests” in the form of attribute-value pairs </li></ul><ul><li>The interests are injected by the sink and disseminated throughout the network. During this process, “gradients” are set at each sensor that receives an interest pointing towards the sensor from which the interest was received </li></ul><ul><li>This process can create, at each node, multiple gradients towards the sink. To avoid excessive traffic along multiple paths a “reinforcement” mechanism is used at each node after receiving data, e.g. reinforce: </li></ul><ul><ul><li>Neighbor from whom new events are received </li></ul></ul><ul><ul><li>Neighbor who consistently performing better than others </li></ul></ul><ul><ul><li>Neighbor from whom most events received </li></ul></ul><ul><li>There is also a mechanism of “negative reinforcement” to degrade the importance of a particular path </li></ul>( † ) C. Intanagonwiwat, R. Govindan, and D. Estrin, “Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks,” Proc. ACM Mobicom, Boston MA, August 2000, pp. 1-12.
  62. 62. Directed Diffusion Gradient represents both direction towards data matching and status of demand with desired update rate Probability  1/energy cost The choice of path is made locally at every node for every packet Uses application-aware communication primitives expressed in terms of named data Consumer of data initiates interest in data with certain attributes Nodes diffuse the interest towards producers via a sequence of local interactions This process sets up gradients in the network to draw events matching the interest Collect energy metrics along the way Every route has a probability of being chosen Sink Source Four-legged animal
  63. 63. Directed Diffusion Reinforcement and negative reinforcement used to converge to efficient distribution Has built in tolerance to nodes moving out of range or dying Source Sink
  64. 64. Directed Diffusion <ul><li>Pros </li></ul><ul><ul><li>Energy – Much less traffic than flooding. For a network of size N the total cost of transmissions and receptions is whereas for flooding the order is </li></ul></ul><ul><ul><li>Latency – Transmits data along the best path </li></ul></ul><ul><ul><li>Scalability – Local interactions only </li></ul></ul><ul><ul><li>Robust – Retransmissions of interests </li></ul></ul><ul><li>Cons </li></ul><ul><ul><li>The set up phase of the gradients is expensive </li></ul></ul><ul><ul><li>It does not propose the type of MAC layer needed to support an efficient implementation of this protocol. The simulation analysis uses a modified 802.11 MAC protocol </li></ul></ul>
  65. 65. Sensor Protocol for Information via Negotiation (SPIN) (†) A mechanism developed for the case where the number of queries is higher than the number of events. <ul><li>Use information descriptors or meta-data for negotiation prior to transmission of the data </li></ul><ul><li>Each node has its own energy resource manager which is used to adjust its transmission activity </li></ul><ul><li>The family of SPIN protocols are: </li></ul><ul><ul><li>SPIN-PP – For point-to-point communication </li></ul></ul><ul><ul><li>SPIN-EC – Similar to SPIN-PP but with energy conservation heuristics added to it </li></ul></ul><ul><ul><li>SPIN-BC – Designed for broadcast networks. Nodes set random timers after receiving ADV and before sending REQ to wait for someone else to send the REQ </li></ul></ul><ul><ul><li>SPIN-RL – Similar to SPIN-BC but with added reliability. Each node keeps track of whether it receives requested data within the time limit, if not, data is re-requested </li></ul></ul>( † ) J. Kulik, W. Rabiner Heinzelman, and H. Balakrishnan, “Negotiation-Based Protocols for Disseminating Information in Wireless Sensor Networks,” ACM/IEEE Int. Conf. on Mobile Computing and Networking, Seattle, WA, Aug. 1999.
  66. 66. SPIN-BC A node senses something “interesting” Neighbor sends a REQ listing all of the data it would like to acquire Sensor broadcasts data Neighbors aggregate data and broadcast (advertise) meta-data The process repeats itself across the network DATA REQ ADV It sends meta-data to neighbors
  67. 67. SPIN-BC I am tired I need to sleep … Advertise meta-data Request data Send data Advertise Advertise Nodes do need not to participate in the process Request data Send data Send data Advertise meta-data Request data Send data
  68. 68. SPIN <ul><li>Pros </li></ul><ul><ul><li>Energy – More efficient than flooding </li></ul></ul><ul><ul><li>Latency – Converges quickly </li></ul></ul><ul><ul><li>Scalability – Local interactions only </li></ul></ul><ul><ul><li>Robust – Immune to node failures – </li></ul></ul><ul><li>Cons </li></ul><ul><ul><li>Nodes always participating </li></ul></ul><ul><ul><li>It does not propose the type of MAC layer needed to support an efficient implementation of this protocol. The simulation analysis uses a modified 802.11 MAC protocol </li></ul></ul>
  69. 69. Summary <ul><li>In recent years a very large number of routing algorithm for WSNs have been proposed and analyzed </li></ul><ul><li>For most of the proposed techniques the analysis has been mainly carried out using simulation experiments </li></ul><ul><li>Recent routing algorithms such as the “Data Funneling” ( † ) scheme described earlier are more in line with the WSN paradigm </li></ul><ul><li>Most if not all of the proposed routing algorithms are not supported by a proper MAC protocol </li></ul><ul><li>A proper MAC protocol should also be more in tune with the important features of the WSN paradigm, e.g. asymmetric flow, no need to have to use individual node addresses or links, have the radio in sleep mode as much as possible, etc. </li></ul><ul><li>Another Data Link Layer aspect that needs more research is the impact of error control coding on the consumption of energy </li></ul>( † ) D. Petrovic, R. C. Shah, K. Ramchandran, and J. Rabaey, “Data Funneling: Routing with Aggregation and Compression for Wireless Sensor Networks,” SNPA 2003, pp. 1-7.
  70. 70. Spatiotemporal MAC Sink Rationale To be able to save energy it is necessary to have a schedule for the radios to be awake or asleep. This means that there is a mechanism to distribute this schedule across the network, e.g. a long range broadcast from the sink node. There is no reason why the MAC schedule has to be the same for all nodes. A spatiotemporal schedule would help to avoid contention for the channel, allowing time for data aggregation, and finally “forcing” the sensed data to come to the sink
  71. 71. Spatiotemporal MAC
  72. 72. Pump Slowly, Fetch Quickly (PSFQ) A transport protocol for WSNs that attempts to pace the data from a source node at a relatively low speed to allow intermediate nodes to fetch missing data segments from their neighbors, e.g. hop-by-hop recovery instead of traditional transport layer end-to-end recovery mechanisms
  73. 73. PSFQ Three basic operations: pump , fetch , and report <ul><li>Pump </li></ul><ul><li>Node broadcasts a packet to its neighbors every T min until all the data fragments have been sent out </li></ul><ul><li>Neighbors who receive the packet check against their local cache discarding any duplicates </li></ul><ul><li>If it is just a new message the packet is buffered and the Time-To-Live (TTL) field in the header is decreased by 1 </li></ul><ul><li>If TTL is not zero and there is no gap in the sequence number the packet then is scheduled for transmission within a random time T tx , where </li></ul><ul><li>The random delay before forwarding the message allows a downstream node to recover missing segments before the next segment arrives from an upstream node </li></ul><ul><li>It also allows reducing the number of redundant broadcasts of the same packet by neighbors </li></ul>
  74. 74. PFSQ <ul><li>Fetch </li></ul><ul><li>A node goes into fetch mode when a sequence number gap is detected </li></ul><ul><li>In fetch mode a node aggressively sends out NACK messages to its immediate neighbors to request missing segments </li></ul><ul><li>Since it is very likely that consecutive packets are lost because of fading conditions, a “window” is used to specify the range of missing packets </li></ul><ul><li>A node that receives a NACK message checks the loss window field against its cache. If found the packet is scheduled for transmission at a random time in (0, T r ) </li></ul><ul><li>Neighbors cancel a retransmission when a reply for the same segment is overheard </li></ul><ul><li>NACK messages are not propagated to avoid message implosion </li></ul><ul><li>There is also a “ proactive fetch ” mode to take care of situations such as when the last segment of a message is lost. In this case the node sends a NACK for the remaining segments when they have not been received after a time period T pro </li></ul>
  75. 75. PFSQ <ul><li>Report </li></ul><ul><li>Used to provide feedback data of delivery status to source nodes </li></ul><ul><li>To minimize the number of messages, the protocol is designed so that a report message travels back from a target node to the source nodes intermediate nodes can also piggyback their report messages in an aggregated manner </li></ul><ul><li>Simulation and experimental evaluation </li></ul><ul><li>When compared to a previously proposed similar protocol (Scalable Reliable Multicast) the simulation results show that the PFSQ protocol has a better performance in terms of error tolerance, communications overhead, and delivery latency </li></ul><ul><li>The experimental results were obtained by using the TinyOS platform on RENE motes. The performance results were much poorer than the simulation results. The discrepancy is attributed to the simulation experiment being unable to accurately model the wireless channel and the computational demands on the sensor node processor </li></ul>
  76. 76. Event-to-Sink Reliable Transport (ESRT) <ul><li>In a typical sensor network application the sink node is only interested in the collective information of the sensor nodes within the region of an event and not in any individual sensor data </li></ul><ul><li>Traditional end-to-end reliability requirements do not then apply here </li></ul><ul><li>What is needed is a measure of the accuracy of the information received at the sink, i.e. and event-to-sink reliability </li></ul>
  77. 77. ESRT <ul><li>The basic assumption is that the sink does all the reliability evaluation using parameters that are application dependent </li></ul><ul><li>One such parameter is the decision time interval τ </li></ul><ul><li>At the end of the decision interval the sink derives a reliability indicator r i based on the reports received from the sensor nodes </li></ul><ul><li>r i is the number of packets received in the decision interval </li></ul><ul><li>If R is the number of packets required for reliable event detection then r i > R is needed for reliable event detection </li></ul><ul><li>There is no need to identify individual sensor nodes but instead there is the need to have an event ID </li></ul><ul><li>The reporting rate, f , of a sensor node is the number of packets sent out per unit time by that node </li></ul><ul><li>The ESRT protocol aims to dynamically adjust the reporting rate to achieve the required detection reliability R at the sink </li></ul>
  78. 78. ESRT r versus f based on simulation results n = number of source nodes r increases with the source reporting rate f for f > f max the reliability drops because of network congestion
  79. 79. ESRT – Protocol Overview <ul><li>The algorithms mainly run on the sink </li></ul><ul><li>Sensor nodes: </li></ul><ul><ul><li>Listen to sink broadcasts and update their reporting rates accordingly </li></ul></ul><ul><ul><li>Have a simple congestion detection mechanism and report to the sink </li></ul></ul><ul><li>The sink: </li></ul><ul><ul><li>Computes a normalized reliability measure η i = r i / R </li></ul></ul><ul><ul><li>Updates f based on η i and if f > f max or < f max in order to achieve the desired reliability </li></ul></ul><ul><ul><li>Performs congestion decisions based on feedback reports from the source nodes </li></ul></ul><ul><li>Congestion detection: </li></ul><ul><ul><li>Uses local buffer level monitoring in sensor nodes </li></ul></ul><ul><ul><li>When a routing buffer overflows the node informs the sink by setting the congestion notification bit in the header packets traveling downstream </li></ul></ul>
  80. 80. ESRT – Network States (No congestion, Low reliability) (Congestion, Low reliability) (Congestion, High reliability) (No congestion, High reliability) Optimal Operating Region
  81. 81. ESRT – Frequency Update Unchanged OOR Exponential decrease. k is the number of successive decision intervals spent in state (C, LR) (C, LR) Aggressively decrease f to relieve congestion as soon as possible (C, HR) Decrease f conservatively, reduce energy consumption and not lose reliability (NC, HR) Multiplicative increase f to achieve required reliability as soon as possible (NC, LR) Action f update State
  82. 82. ESRT – Summary and Conclusions <ul><li>Uses a new paradigm for transport layer reliability </li></ul><ul><li>Sensor networks are more interested in event to sink reliability than on individual end-to-end reliability </li></ul><ul><li>The congestion control mechanism results in energy savings </li></ul><ul><li>Analytical performance evaluation and simulation results show that the system converges to the state OOR regardless of the initial state </li></ul><ul><li>This self configuration property of the protocol is very valuable for random and dynamic topologies </li></ul><ul><li>Issues still to be addressed are: </li></ul><ul><ul><li>Extension to handle concurrent multiple events </li></ul></ul><ul><ul><li>Development of a bi-directional reliable protocol that includes the sink-to-sensor transport </li></ul></ul>
  83. 83. Energy Efficiency Issues Node Energy Model ( †) A typical node has a sensor system, A/D conversion circuitry, DSP and a radio transceiver. The sensor system is very application dependent. As discussed earlier the communication components are the ones who consume most of the energy on a typical wireless sensor node. A simple model for a wireless link is shown below (†) H. Karvonen, Z. Shelby, and C.A. Pomalaza-Ráez, “Coding for Energy Efficient Wireless Embedded Networks,” to be presented at the International Workshop on Wireless Ad Hoc Networks, May 31 - June 3, 2004, Oulu, Finland
  84. 84. Energy Model The energy consumed when sending a packet of m bits over a one hop wireless link can be expressed as, where, E T = energy used by the transmitter circuitry and power amplifier E R = energy used by the receiver circuitry P T = power consumption of the transmitter circuitry P R = power consumption of the receiver circuitry T st = startup time of the transceiver E encode = energy used to encode E decode = energy used to decode
  85. 85. Energy Model Assuming a linear relationship for the energy spent per bit at the transmitter and receiver circuitry E T and E R can be written as, e TC , e TA , and e RC are hardware dependent parameters and α is the path loss exponent whose value varies from 2 (for free space) to 4 (for multipath channel models). The effect of the transceiver startup time, T st , will greatly depend on the type of MAC protocol used. To minimize power consumption it is desirable to have the transceiver in a sleep mode as much as possible however constantly turning on and off the transceiver also consumes energy to bring it to readiness for transmission or reception.
  86. 86. Energy Model An explicit expression for e TA can be derived as ( †) , Where, ( S/N ) r = minimum required signal to noise ratio at the receiver’s demodulator for an acceptable E b /N 0 NF Rx = receiver noise figure N 0 = thermal noise floor in a 1 Hertz bandwidth (Watts/Hz) BW = channel noise bandwidth λ = wavelength in meters α = path loss exponent G ant = antenna gain η amp = transmitter power efficiency R bit = raw bit rate in bits per second (†) P. Chen, B. O’Dea, E. Callaway, “Energy Efficient System Design with Optimum Transmission Range for Wireless Ad Hoc Networks,” IEEE International Conference on Comm. (ICC 2002), Vol. 2, pp. 945-952, 28 April -2 May 2002, pp. 945-952.
  87. 87. Energy Model The expression for e TA can be used for those cases where a particular hardware configuration is being considered. The dependence of e TA on ( S/N ) r can be made more explicit if the previous equation is written as: This expression shows explicitly the relationship between e TA and ( S/N ) r . The probability of bit error p depends on E b /N 0 which in turns depends on ( S/N ) r . E b /N 0 is independent of the data rate. In order to relate E b /N 0 to ( S/N ) r , the data rate and the system bandwidth must be taken into account, i.e.,
  88. 88. Energy Model where E b = energy required per bit of information R = system data rate B T = system bandwidth γ b = signal-to-noise ratio per bit, i.e., ( E b /N 0 ) Typical Bandwidths for Various Digital Modulation Methods 2.0 x Bit Rate BPSK, DBPSK, OFSK 1.5 x Bit Rate MSK 1.0 x Bit Rate QPSK, DQPSK Typical Bandwidth (Null-To-Null) Modulation Method
  89. 89. Energy Model Power Scenarios Two possible power scenarios are: <ul><li>Variable transmission power . In this case the radio dynamically adjust its transmission power so that ( S/N ) r is fixed to guarantee a certain level of E b /N 0 at the receiver. The transmission energy per bit is given by, </li></ul>Since ( S/N ) r is fixed at the receiver this also means that the probability p of bit error is fixed at the same value for each link.
  90. 90. Node Energy Model Since for most practical deployments d is different for each link, then ( S/N ) r will also be different for each link. This translates to a different probability of bit error for each wireless hop. <ul><li>Fixed transmission power . In this case the radio uses a fixed power for all transmissions. This case is considered because several commercial radio interfaces have a very limited capability for dynamic power adjustments. In this case is fixed to a certain value ( E TA ) at the transmitter and the ( S/N ) r at the receiver will then be, </li></ul>
  91. 91. Energy Consumption - Multihop Networks Consider the following linear sensor array To highlight the energy consumption due only to the actual communication process; the energy spent in encoding, decoding, as well as on the transceiver startup is not considered in the analysis that follows.
  92. 92. Energy Consumption - Multihop Networks The initial assumption is that there is one data packet being relayed from the node farthest from the sink node towards the sink. The total energy consumed by the linear array to relay a packet of m bits from node n to the sink is, It then can be shown that E linear is minimum when all the distances d i ’s are made equal to D/n , i.e. all the distances are equal.
  93. 93. Energy Consumption - Multihop Networks It can also be shown that the optimal number of hops is, where d char depends only on the path loss exponent α and on the transceiver hardware dependent parameters. Replacing the value of d char in the expression for E linear
  94. 94. Energy Consumption - Multihop Networks A more realistic assumption for the linear sensor array is that there is a uniform probability along the array for the occurrence of events ( †) . In this case, on the average, each sensor will detect the same number of events and the information collected needs to be relayed towards the sink. Without loss of generality one can then assume that each node senses one event. This means that sensor i will have to relay ( n-i ) packets from the upstream sensors plus the transmission of its own packet. The average energy per bit consumption by the linear array is then ( †) Z. Shelby, C.A. Pomalaza-Ráez, and J. Haapola, “Energy Optimization in Multihop Wireless Embedded and Sensor Networks,” to be presented at the 15th IEEE International Symposium on Personal, Indoor, and Mobile Radio Communications, September 5-8, 2004, Barcelona, Spain.
  95. 95. Energy Consumption - Multihop Networks where λ is a LaGrange’s multiplier. Taking the partial derivatives of L with respect to d i and equating to 0 gives, Minimizing with constraint is equivalent to minimizing the following expression,
  96. 96. Energy Consumption - Multihop Networks Thus for α =2 the values for d i are, For n =10 the next figure shows an equally spaced sensor array and a linear array where the distances are computed using the equation above ( α =2) The value of λ can be obtained using the condition
  97. 97. Energy Consumption - Multihop Networks The sensors farther away consume most of their energy by transmitting over longer distances whereas sensors closer to the sink consume a large portion of their energy by relaying packets from the upstream sensors towards the sink. The total energy per bit spent by a linear array with equally spaced sensors is The total energy per bit spent by a linear array with optimum separation and α =2 is,
  98. 98. Energy Consumption - Multihop Networks For e TC = e TR = 50 nJ/bit, e TA = 100 pJ/bit/m 2 , and α = 2, the total energy consumption per bit for D = 1000 m, as a function of the number of sensors is shown below.
  99. 99. Energy Consumption - Multihop Networks The energy per bit consumed at node i for the linear arrays discussed can be computed using the following equation. It is assumed that each node relays packets from the upstream nodes towards the sink node via the closest downstream neighbor. For simplicity’s sake only one transmission is used, e.g. no ARQ type mechanism Energy consumption at each node ( n =20, D =1000 m)
  100. 100. Error Control – Multihop WSN For link i assume that the probability of bit error is p i . Assume a packet length of m bits. For the analysis below assume that a Forward Error Correction (FEC) mechanism is being used. Then call p link ( i ) the probability of receiving a packet with uncorrectable errors. Conventional use of FEC is that a packet is accepted and delivered to the next stage which in this case is to forward it to the next node downstream. The probability of the packet arriving to the sink node with no errors is then:
  101. 101. Error Control – Multihop WSN Assume the case where all the d i ’s are the same, i.e. d i = D/n. Since variable transmission power mode is also being assumed the probability of bit error for each link is fixed and P c is, The value of p link will depend on the received signal to noise ratio as well as on the modulation method used. For a noncoherent (envelope or square-law) detector with binary orthogonal FSK signals in a Rayleigh slow fading channel the probability of bit error is Where is the average signal-to-noise ratio.
  102. 102. Error Control – Multihop WSN Consider a linear code ( m, k, d ) is being used. For FSK-modulation with non-coherent detection and assuming ideal interleaving the probability of a code word being in error is bounded by where w i is the weight of the i th code word and M =2 k . A simpler bound is: For the multihop scenario being discussed here p link = P M and the probability of packet error can be written as:
  103. 103. Error Control – Multihop WSN The probability of successful transmission of a single code word is, Radio parameters used to obtain the results shown in the next slides 50nJ/bit e TC 50nJ/bit e RC For FSK-modulation, it is assumed to be the same as R bit BW 3  0.2  amp -10dB or 0.1 G ant 0.3 m  115.2 Kbits R bit -173.8 dBm/Hz or 4.17 * 10 -21 J N 0 10dB NF Rx Value Parameter
  104. 104. Error Control – Multihop WSN The expected energy consumption per information bit is defined as: Parameters for the studied codes are shown in the table below, t is the error correction capability. 3 0.5 8 12 24 Extended Golay 1 0.5 3 3 6 Shortened Hamming 3 0.52 7 12 23 Golay 1 0.57 3 4 7 Hamming t Code rate d min k m Code
  105. 105. Error Control – Multihop WSN Characteristic distance, d char , as a function of bit error probability for non-coherent FSK-modulation
  106. 106. Error Control – Multihop WSN D = 1000 m
  107. 107. Error Control – Multihop WSN D = 1000 m
  108. 108. Error Control – Multihop WSN D = 1000 m
  109. 109. Error Control – Multihop WSN D = 1000 m
  110. 110. Error Control – Multihop WSN D = 1000 m
  111. 111. Error Control – Multihop WSN D = 1000 m
  112. 112. Cooperative Communications in Wireless Sensor Networks <ul><li>Diversity techniques have been proposed and developed to minimize the errors in reception when the channel attenuation is large </li></ul><ul><li>In frequency diversity the same information is transmitted on L carriers, where the separation between successive carriers equals or exceeds the coherence bandwidth of the channel </li></ul><ul><li>In time diversity the same information is transmitted in L different time slots, where the separation between successive time slots equals or exceeds the coherence time of the channel </li></ul><ul><li>In space, or multi-antenna, diversity the antennas are sufficiently far apart that the multipath components of the signal have different propagation delays so they fade independently </li></ul><ul><li>Unlike conventional space diversity techniques that rely on antenna arrays at the transmitter or receiver terminal the cooperative communications discussed here assume that each node has its own information to transmit and has one antenna. The terminals cooperate, i.e. share their antennas and other resources, to create a “virtual array” </li></ul>
  113. 113. Cooperative Communications T 1 T 2 T 3 T 4 <ul><li>In the example below: </li></ul><ul><li>T1 and T2 transmit to terminals T3 and T4 </li></ul><ul><li>Transmitted signals can be received and processed by any number of terminals </li></ul><ul><li>T1 and T2 can listen to each other’s transmission and jointly communicate their information </li></ul><ul><li>For sensor networks the objective is to attain an improved performance, e.g. decreased BER and/or decreased energy consumption </li></ul><ul><li>In cooperative mode each user transmits its own bits as well as some information bits from its partners </li></ul>
  114. 114. Coded Cooperation (†) Works by sending different portions of each user’s code word via independent fading paths. Each terminal tries to transmit incremental redundancy for its partner, if that is not possible the terminal transmits incremental redundancy for itself. It is important that this mechanism works through code design and not through actual communication between the cooperating terminals. T 1 T 2 T 3 Diversity provided by the coded bits (†) M. Janani, A. Hedayat, T. E. Hunter, and A. Nosratinia, “Coded Cooperation in Wireless Communications: Space-Time Transmission and Iterative Decoding,” IEEE Trans. Signal Processing, vol. 52, pp. 362-371, February 2004. N 1 user 1 bits N 2 user 2 bits N 2 user 2 bits N 1 user 1 bits
  115. 115. Coded Cooperation User 2 bits User 1 bits User 1 User 2 time U 1 time slot U 2 time slot U 1 time slot <ul><li>In this proposed method K bits of source bits (including CRC) are encoded with an FEC code with an overall code rate R = K / N </li></ul><ul><li>The users divide their transmissions into two time segments. In the first segment each user transmits N 1 bits (rate R 1 = K / N 1 ) </li></ul><ul><li>Each user also receives and decodes the partner’s transmission. If this reception is successful the user computes and transmits N 2 additional parity bits for the partner’s data, N 1 + N 2 = N. These additional parity bits are such that they can be combined with the first frame code word to produce a more powerful R code word </li></ul><ul><li>If the user does not successfully decode the partner, N 2 additional parity bits for the user’s own data are transmitted. </li></ul>N 1 bits N 2 bits N 1 bits N 2 bits User 1 bits User 2 bits Rx User 1 bits Idle or sleep Rx User 2 bits Idle or sleep User 1 bits User 2 bits Rx User 1 bits Idle or sleep
  116. 116. Efficient Source Coding and Modulation (†) <ul><li>This example is a simple attempt to combine source coding (application layer) with modulation (physical layer) </li></ul><ul><li>An On/Off (OOK) modulation and a simple Minimum Energy (ME) coding mechanism is used </li></ul><ul><li>It is based on the assumption that the transceiver consumes energy only when transmitting a high bit </li></ul>Typical OOK Modulation (†) Y. Prakash, S.K.S Gupta, “Energy Efficient Source Coding and Modulation for Wireless Applications,” IEEE Wireless Communications and Networking Conference, 2003. WCNC 2003. Volume: 1, 16-20 March 2003, pp. 212-217.
  117. 117. Efficient Source Coding and Modulation <ul><li>k information bits from the source are mapped into n coded bits </li></ul><ul><li>The encoder generates code words that have a reduced number of 1’s </li></ul><ul><li>The code words are OOK modulated and then transmitted </li></ul>Minimum Energy code for k =2 and n =3 k source bits n coded bits 100 11 010 10 001 01 000 00 Codeword Source bits
  118. 118. Efficient Source Coding and Modulation <ul><li>The proposed ME coding method can be seen as a form of Pulse Position Modulation (PPM) </li></ul><ul><li>To maintain the same rate of information transmission, the price is an increase in the bandwidth </li></ul><ul><li>For ME coding, </li></ul>which translates into the following increase in bandwidth (BW) <ul><li>Another drawback of this simple approach to saving energy through a combination of source and channel coding is that the proposed code is not balanced. Balanced codes are recommended for OOK modulation </li></ul><ul><li>In balanced codes each code word contains the same number of ones and zeros to aid the receiver in distinguishing a period when no transmission takes place from a period when a long sequence of 0’s is sent. Also the receiver needs enough symbol transitions to maintain bit synchronization </li></ul>
  119. 119. Distributed Source Coding (†) <ul><li>In many applications of WSNs an event will cause several sensors to generate highly correlated measurements </li></ul><ul><li>It is of interest to explore how this correlation can be exploited to compress the information being sent to the controller or sink node </li></ul>(†) J. Chou, D. Petrovic, K. Ramchandran, “A Distributed and Adaptive Signal Processing Approach to Reducing Energy Consumption in Sensor Networks,” IEEE INFOCOM 2003
  120. 120. Distributed Source Coding <ul><li>In the example below assume that the measurements X and Y are correlated </li></ul><ul><li>Y is available at the decoder on the sink node but not at the node where X is encoded </li></ul><ul><li>How can X be encoded in a compressed manner knowing that Y is available at the decoder? </li></ul>N is a random variable that represents the correlation between X and Y . If N is Gaussian, one can get the same performance by knowing only the statistics of N at the encoder as when Y is known at the encoder
  121. 121. Distributed Source Coding <ul><li>Consider an 8-level scalar quantizer, and the correlated variables X and Y </li></ul><ul><li>Partition the set of 8 quantization levels into 2 cosets (even and odd levels) </li></ul><ul><li>If Y is available at the decoder only the index of the coset containing X, the red coset, is needed to be transmitted (1 bit) </li></ul><ul><li>Knowing Y the decoder finds the closest quantization level in the red coset, and estimates that X takes on the value r 4 </li></ul>
  122. 122. Coding of Correlated Information <ul><li>All the recently proposed distributed source coding mechanisms can trace back their origins to the fundamental paper by Slepian and Wolf ( †) </li></ul><ul><li>X and Y are correlated sources characterized by a bivariate distribution p(x,y) </li></ul><ul><li>The sequences ..., X -1 , X 0 , X 1 , ... and ..., Y -1 , Y 0 , Y 1 , ... obtained by independent drawings from ( X, Y ) can be compressed at rates R 1 and R 2 if and only if </li></ul>(†) D. Slepian and J. Wolf, “Noiseless Coding of Correlated Information Sources,” IEEE Trans. Information Theory, vol. 19, pp. 471-480, July 1973.
  123. 123. Routing and Source Coding Event n -1 Event n In traditional routing the upstream data is (at best) attached to the local data and forwarded downstream An improved technique is to re-encode jointly the data in the queues before sending it downstream Combined representation of several sensors’ data
  124. 124. Final Words <ul><li>Wireless Sensor Networks provide a fundamentally new set of research and application challenges </li></ul><ul><li>WSNs are a rich source of problems in communication protocols, sensor tasking and control, sensor fusion, distributed data bases, probabilistic reasoning, and algorithmic design </li></ul><ul><li>Some of the WSN topics not covered in this tutorial are: </li></ul><ul><ul><li>Deployment strategies </li></ul></ul><ul><ul><li>Node localization </li></ul></ul><ul><ul><li>Network capacity </li></ul></ul><ul><ul><li>Fault tolerance </li></ul></ul><ul><ul><li>Security </li></ul></ul>