Centre for Wireless Communications Wireless Sensor Networks Presenter: Carlos Pomalaza-Ráez carlos@ee.oulu.fi 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 Outline Introduction Examples of sensor networks and sensor nodes WIRO – A sensor node developed at CWC Typical features of WSN Design considerations Sensor Network Protocol Stack Energy consumption model – Physical layer MAC power saving mechanisms Data aggregation and Data centrality Transport and Applications layers Outline Networking Issues MAC Routing Transport layer Summary Energy Efficiency Issues Node energy model for multihop WSN Energy efficient error control mechanisms Cooperative communications Distributed source coding 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. Sensor Networks A large grouping of low-cost, low-power, multifunctional, and small-sized sensor nodes They benefit from advances in 3 technologies: • digital circuitry • wireless communication • silicon micro-machining Wireless Sensor Networks (WSN) New technologies have reduced the cost, size, and power of micro-sensors and wireless interfaces Circulatory Net Environmental Monitoring Sensing Networking Computation Structural Some Applications of WSN Battlefield Detection, classification and tracking Examples: AWAIRS (UCLA & Rockwell Science Center) Habitat Monitoring Micro-climate and wildlife monitoring Examples: ZebraNet (Princeton) Seabird monitoring in Maine’s Great Duck Island (Berkeley & Intel) Some Applications of WSN Structural, seismic Bridges, highways, buildings Examples: Coronado Bridge San Diego (UCSD), Factory Building (UCLA) Smart roads Traffic monitoring, accident detection, recovery assistance Examples: ATON project (UCSD) highway camera Contaminants detection Examples: Multipurpose Sensor Program (Boise State University) microphone WSN Communications Architecture Sensing node Sensor nodes can be data originators and data routers Internet Sink Manager Node Sensor nodes Sensor field Examples of Sensor Nodes Sensor Node Evolution Mote Type Date WeC Rene Rene2 Dot Mica Sep-99 Oct-00 Jun-01 Aug-01 Feb-02 Microcontroller (4MHz) Type Prog. mem. (KB) RAM (KB) AT90LS8535 ATMega163 ATMega103/128 8 16 128 0.5 1 4 Communication Radio Rate (Kbps) Modulation Type RFM TR1000 10 10/40 OOK OOK/ASK WIRO Platform WIRO (WIreless Research Object ) 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 - 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 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 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 Sensor board – It has a 2-axis accelerometer, a 2-axis magnetometer, as well as pressure, temperature and humidity sensors Prototype board and Test-Pad board CPU Board 2 Euro coin & RF Board WIRO Box WIRO – Power Consumption CPU Board CPU Active CPU Sleep CPLD 3 mA/3.3 V 9.9 mW 0.01 mA/3.3 V 0.033 mW AT mega128 15 mA/3.3 V 49.5 mW 0.04 mA/3.3 V 0.13 mW Flash-memory 4 mA/3.3 V 13.2 mW 0.002 mA/3.3 V 0.007 mW RF Board Tx Rx Sleep CPLD 3mA/3.3V 9.9mW 3mA/3.3V 9.9mW 0.01mA/3.3V 0.033mW RF-Transceiver 10mA/3.3V 33mW 5.8mA/3.3V 19mW 0.7μA/3.3V 0.0023mW Other Circuitry 0.5mA/5V 2.5mW 0.5mA/5V 2.5mW 0.5mA/5V 2.5mW RF Board Total Power Consumption Power (mW) 50 40 45.5 30 20 10 0 Tx 31.5 Rx Sleep 2.5 WIRO – Power Consumption Sensor Board Active Sleep Magnetometer 20mA/5V 100mW 0 0 Accelerometer 0.6mA/3.3V 2mW 0.6mA/3.3V 2mW Humidity Sensor 0.55mA/3.3V 2mW 0.3μA/5V 0.0015mW Pressure Sensor 6mA/5V 30mW 0 0 CPLD 3mA/3.3V 9.9mW 0.01mA/3.3V 0.033mW Amplifier 0.5mA/5V 2.5mW 0.5mA/5V 2.5mW 150 Sensor Board Total Power Consumption Power (mW) 150 100 50 0 Active Sleep 4.5 WIRO – Power Consumption Power Supply Board Connected to the USB-bus Not Connected to the USB-bus CPLD 1mA/3.3V 3.3mW 0.01mA/3.3V 0.033mW EEPROM 1mA/5V 5mW 0.005mA/5V 0.025mW USB 25mA/5V(from USB) 125mW 0.2mA/5V 1mW Estimated Operation Time on Battery Power ton /tsleep Avg Power Avg Battery Current Op Time/550mAh 100% 325.3mW 104mA 5.3h 10% 44.2mW 14.1mA 39h 1% 16.1mW 5.2mA 107h 0.1% 13.3mW 4.3mA 129h 0% 13.0mW 4.2mA 132h Typical Features of WSN A very large number of nodes, often in the order of thousands Asymmetric flow of information, from the observers or sensor nodes to a command node Communications are triggered by queries or events At each node there is a limited amount of energy which in many applications is impossible to replace or recharge Almost static topology Low cost, size, and weight per node Prone to failures More use of broadcast communications instead of point-to-point Nodes do not have a global ID such as an IP number The security, both physical and at the communication level, is more limited than conventional wireless networks Design Considerations Fault tolerance – The failure of nodes should not severely degrade the overall performance of the network Scalability – The mechanism employed should be able to adapt to a wide range of network sizes (number of nodes) Cost – The cost of a single node should be kept very low Power consumption – Should be kept to a minimum to extend the useful life of network Hardware and software constraints – Sensors, location finding system, antenna, power amplifier, modulation, coding, CPU, RAM, operating system Topology maintenance – In particular to cope with the expected high rate of node failure Deployment – Pre-deployment mechanisms and plans for node replacement and/or maintenance Environment – At home, in space, in the wild, on the roads, etc. Transmission media – ISM bands, infrared, etc. Sensor Network Protocol Stack Data Link Physical Task Management Network Mobility Management Transport Power Management Application 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 Physical Layer Frequency selection – The use of the industrial, scientific, and Application medical (ISM) bands has often been proposed Carrier frequency generation and Signal detection – Depend on Transport the transceiver and hardware design constraints which aim for Network simplicity, low power consumption, and low cost per unit Data Link Modulation Physical Binary and M-ary modulation schemes can transmit multiple bits per symbol at the expense of complex circuitry Binary modulation schemes are simpler to implement and thus deemed to be more energy-efficient for WSN applications Low transmission power and simple transceiver circuitry make Ultra Wideband (UWB) an attractive candidate Baseband transmission, i.e. no intermediate or carrier frequencies Generally uses pulse position modulation Resilient to multipath Low transmission power and simple transceiver circuitry Physical Layer 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. Radio Model – Energy Consumption EL (m, d ) ET (m, d ) ER (m) ET (m, d ) ETC (m) ETA (m, d ) ETC = energy used by the transmitter circuitry ETA = energy required by the transmitter amplifier to achieve an acceptable signal to noise ratio at the receiver Physical Layer Assuming a linear relationship for the energy spent per bit by the transmitter and receiver circuitry ET (m, d ) m eTC eTA d E R (m) meRC eTC, eTA, and eRC are hardware dependent parameters An explicit expression for eTA can be derived as, eTA S 4 ( NFRx )( N 0 )( BW ) N r (Gant )( am p )( Rbit ) Physical Layer 4 ( NFRx )( N 0 )( BW ) (Gant )( am p)( Rbit ) eTA S N r (S/N)r = minimum required signal to noise ratio at the receiver’s demodulator for an acceptable Eb/N0 NFRx = receiver noise figure N0 = 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) Gant = antenna gain ηamp = transmitter power efficiency Rbit = raw bit rate in bits per second Data Link Layer The data link layer is responsible for the multiplexing of the data stream, data frame detection, medium access and error control. Ensures reliable point-topoint and point-to-multipoint connections in a communication network Application Transport Network Data Link Medium Access Control (MAC) Physical Let multiple radios share the same communication media Functions: Code Local Topology Discovery and Management Media Partition By Allocation or Contention Provide Logical Channels to Upper Layers MAC protocols for sensor networks must have built-in power conservation mechanisms, and strategies for the proper management of node mobility or failure Time 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 Random access Centralized MAC protocols 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. Power Saving Mechanisms 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 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 TR 1000 (115kbps) 60 Ebit ( pJ ) 50 40 30 20 10 0 10 100 1000 Packet Size (bits) 10000 Error Control Error control is an important issue in any radio link. In general terms there are two modes of error control: 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. 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. 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. Network Layer Basic issues to take into account when designing the network layer for WSNs are: Application Transport Network Power efficiency Data centric – The nature of the data (interest requests Data Link and advertisement of sensed data) determines the Physical traffic flow Data aggregation is useful to manage the potential implosion of traffic because of the data centric routing Rather than conventional node addresses an ideal sensor network uses attribute-based addressing, e.g. “region where humidity is below 5%” Locationing systems, i.e. ability for the nodes to establish position information Internetworking with external networks via gateway or proxy nodes Routing Phenomenon being sensed Data aggregation takes place here Sink Multihop routing is common due to limited transmission range Some routing issues in WSNs Low node mobility Power aware Irregular topology MAC aware Limited buffer space 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. Phenomenon being sensed 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. 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: The sink or controlling nodes broadcast the nature of the interest, e.g. “four legged animals of at least 50 Kg in weight” Four-legged animal of at least 50 Kg Sink Flow of the request Data Centrality Sensor nodes broadcast an advertisement of available sensed data and wait for a request from the interested sinks Tiger, tiger, burning bright, In the forest of the night, What immortal hand or eye Could frame thy fearful symmetry? Flow of the advertisement Sink 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, Implosion – When duplicated messages are sent to the same node 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 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 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. 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. SPIN messages ADV- advertise data REQ- request specific data DATA- requested data ADV A B REQ A Resource management Nodes decide their capability of participation in data transmissions B DATA A B (†) 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. 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. Setup phase: Controller divides the sensing area into regions Controller performs a directional flood towards each region 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 The border node floods the region with modified packet Sensor nodes in the region use cost information to schedule which border nodes to use (†) 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. Proposed Routing Techniques Data Funneling Data Communication Phase: When a sensor has data it uses the schedule to choose the border node that is to be used It then waits for time inversely proportional to the number of hops from the border Along the way to the border node, the data packets join together until they reach the border node The border node collects all packets and then sends one packet with all the data back to the controller Transport Layer 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: Application Transport Network Data Link Multiple senders, the sensors, and one destination, the sink, Physical which creates a reverse multicast type of data flow 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 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 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 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: Ensure that all data segments are delivered to the intended destinations with minimum special requirements on the nature of the lower layers Minimize number of transmissions to recover lost information Operate correctly even in situations where the quality of the wireless links is very poor Provide loose delay bounds for data delivery to all intended receivers 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. 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: Self-configuration – even in the case of a dynamic topology Energy awareness – sensor nodes are notified to decrease their frequency of reporting if the reliability level at the sink node is above the minimum Congestion control – takes advantage of the high level of correlation between the data flows corresponding to the same event Collective identification – sink only interested in the collective information from a group of sensors, not in their individual reports (†) 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. Application Layer There has not been as much development for this layer as for the Application other layers. Several general potential areas have been suggested as Transport listed below but little work of substance has been reported in any particular area Network Sensor Management Protocol (SMP) – Carries out tasks such as: Data Link Turning sensors on and off Physical Exchanging data related to the location finding algorithms Authentication, key distribution, and other security tasks Sensor movement management 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. 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 Distributed Source Coding (DSC) Aims to take advantage of the high level of correlation of the data collected by spatially close sensor nodes in response to an event. Application Layer 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 Distributed Source Coding (DSC) X Y X Y Encoder 1 Xˆ , Yˆ Joint Decoder Encoder 2 The encoders collaborate and a rate of H(X,Y) is sufficient Encoder 1 Xˆ , Yˆ Joint Decoder Encoder 2 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 Some Words About Cross-Layer Design Motivations: 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 Remove Unnecessary Layers – Some applications do not require all layers 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 Networking Issues 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 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 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 These observations can be extended to the design of other layers as well since WSNs call for new networking paradigms Application Transport Network Data Link Physical 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 Data Link should address. Assumptions made in the design of S-MAC are: Most communications will be between neighboring sensor nodes rather than between a node and a base station 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 The sensor nodes are dedicated to a particular application and thus pernode fairness (channel access) is not as important as the application level performance 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 The application can tolerate latency and has long idle periods (†) 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. Sensor-MAC (S-MAC) The main features of S-MAC are: Periodic listen and sleep Collision and Overhearing avoidance Message passing The basic scheme for each node is: Each node goes into periodic sleep mode during which it switches the radio off and sets a timer to awake later When the timer expires it wakes up and listens to see if any other node wants to talk to it The duration of the sleep and awake cycles are application dependent and they are set the same for all nodes Requires a periodic synchronization among nodes to take care of any type of clock drift Sensor-MAC (S-MAC) The listen and awake periods are much longer than typical clock drift rates The duration of the sleep and awake cycles are application dependent and they are set the same for all nodes Unlike conventional TDMA schemes S-MAC tolerates a much looser synchronization among neighboring nodes Requires a periodic synchronization among nodes to take care of any type of clock drift Nodes are free to choose their own listen/sleep schedules but to reduce control overhead the protocol prefers that neighboring nodes are synchronized Because of the multihop scenario not all neighbors can be synchronized, e.g. 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. Sensor-MAC (S-MAC) Choosing and Maintaining Schedules Each node maintains a schedule table that stores schedules of all its known neighbors To establish the initial schedule the following steps are followed: A node first listens for a certain amount of time If it does not hear a schedule from another node, it randomly chooses a schedule and broadcasts its schedule immediately This node is called a Synchronizer 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 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 It is expected that very rarely a node adopts multiple schedules since every node tries to follow existing schedules before choosing an independent one Sensor-MAC (S-MAC) Maintaining Synchronization Timer synchronization among neighbors is needed to prevent clock drift. The updating period can be relatively long (tens of seconds) Done by periodically sending a SYNC packet that only includes the address of the sender and the time of its next sleeping period Time of next sleep is relative to the moment that the sender finishes transmitting the SYNC packet A node will go to sleep when the timer fires Receivers will adjust their timer counters immediately after they receive the SYNC packet A node periodically broadcasts a SYNC packet to its neighbors even if it has no followers Sensor-MAC (S-MAC) Maintaining Synchronization (cont.) Listen interval is divided into two parts: one for receiving SYNC packets and the other for receiving RTS (Request To Send) Sensor-MAC (S-MAC) Collision and Overhearing Avoidance Similar to IEEE 802.11, i.e. use RTS/CTS mechanism to address the hidden terminal problem Perform carrier sense before initiating a transmission If a node fails to get the medium, it goes to sleep and wakes up when the receiver is free and listening again Broadcast packets are sent without RTS/CTS Unicast packets follow the sequence of RTS/CTS/DATA/ACK between the sender and receiver 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 The node records this value in network allocation vector (NAV) and sets a timer for it 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) The medium is determined as free if both virtual and physical carrier sense indicate the medium is free 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 Sensor-MAC (S-MAC) Message Passing A message is a collection of meaningful, interrelated units of data Transmitting a long message as a packet is disadvantageous as the retransmission cost is high if the packet is corrupted Fragmentation into small packets will lead to high control overhead as each packet should contend using RTS/CTS S-MAC fragments message into small packets and transmits them as a burst Only one RTS and one CTS packets are used 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 Advantages: Reduces latency of the message Reduces control overhead Disadvantage: Node-to-node fairness is reduced, as nodes with small packets to send will have to wait until the message burst is transmitted Sensor-MAC (S-MAC) Implementation Testbed Rene motes, developed at UCB Atmel AT90LS8535 microcontroller with TinyOS 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) Two type of packets. Fixed size data packets with a 6-byte header, a 30byte payload, and a 2-byte CRC. Control packets (RTS, CTS, ACK) with a 6-byte header and a 2-byte CRC MAC protocols implemented Simplified IEEE 802.11 DCF Message passing with overhearing avoidance (no sleep and listen periods). The radio goes to sleep when its neighbors are in transmission 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. The duration of the carrier sensing is random within the contention window. The microcontroller does not go to sleep. Sensor-MAC (S-MAC) Topology Two-hop network with two sources and two sinks Sources periodically generate a sensing message which is divided into fragments Traffic load is changed by varying the inter-arrival period of the messages Sensor-MAC (S-MAC) Sensor-MAC (S-MAC) Sensor-MAC (S-MAC) Sensor-MAC (S-MAC) Conclusion The S-MAC protocol has good energy conserving properties when compared with the IEEE 802.11 standard Comments Need of a mathematical analysis Need to study the effect of different topologies 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 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. 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 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 Routing Problem – How to efficiently route: Data from the sensors to the sink and, Queries and control packets from the sink to the sensor nodes 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. 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: 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 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 In both cases it is assumed that the “return path” (for the events or the queries) is built during the flooding process Other underlying routing mechanisms are recommended if the number of events and queries are of the same order Directed Diffusion(†) A mechanism developed for the case where it is expected that the number of events is higher than the number of queries Is data-centric in nature The sink propagates its queries or “interests” in the form of attributevalue pairs 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 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: Neighbor from whom new events are received Neighbor who consistently performing better than others Neighbor from whom most events received There is also a mechanism of “negative reinforcement” to degrade the importance of a particular path (†) 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. Directed Diffusion Gradient represents both direction towards data matching Uses application-aware communication primitives This Consumer Nodes The process choice diffuse of sets of data path the up initiates interest gradients is made interest towards locally in the inproducers at network data every with node tovia certain draw afor Every route has a probability ofcost being chosen Probability 1/energy Collect energy metrics along the way and status of demand with desired expressed terms of namedupdate data rate sequence events matching every ofin attributes local packet the interactions interest Four-legged animal Source Sink Directed Diffusion Reinforcement negative to reinforcement used Has built and in tolerance nodes moving to converge to range efficient out of ordistribution dying Source Sink Directed Diffusion Pros Energy – Much less traffic than flooding. For a network of size N the total cost of transmissions and receptions is O(n N ) whereas for flooding the order is O(nN ) Latency – Transmits data along the best path Scalability – Local interactions only Robust – Retransmissions of interests Cons The set up phase of the gradients is expensive 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 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. Use information descriptors or meta-data for negotiation prior to transmission of the data Each node has its own energy resource manager which is used to adjust its transmission activity The family of SPIN protocols are: SPIN-PP – For point-to-point communication SPIN-EC – Similar to SPIN-PP but with energy conservation heuristics added to it 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 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 (†) 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. SPIN-BC It Sensor sends broadcasts meta-data data toitself neighbors A Neighbor node senses sends something a REQ listing “interesting” of the data The Neighbors process aggregate repeats data across andall broadcast the network it would likemeta-data to acquire (advertise) ADV REQ DATA SPIN-BC Advertise meta-data Advertise Send data Send data I am tired Send I need to sleep … data Advertise meta-data Advertise Send data Request Nodes dodata need to Requestnot data participate in the process Request data SPIN Pros Energy – More efficient than flooding Latency – Converges quickly Scalability – Local interactions only Robust – Immune to node failures – Cons Nodes always participating 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 Summary In recent years a very large number of routing algorithm for WSNs have been proposed and analyzed For most of the proposed techniques the analysis has been mainly carried out using simulation experiments Recent routing algorithms such as the “Data Funneling”(†) scheme described earlier are more in line with the WSN paradigm Most if not all of the proposed routing algorithms are not supported by a proper MAC protocol 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. Another Data Link Layer aspect that needs more research is the impact of error control coding on the consumption of energy (†) 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. Spatiotemporal MAC 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 Sink Spatiotemporal MAC 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 PSFQ Three basic operations: pump, fetch, and report Pump Node broadcasts a packet to its neighbors every Tmin until all the data fragments have been sent out Neighbors who receive the packet check against their local cache discarding any duplicates 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 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 Ttx, where Tmin Ttx Tmax The random delay before forwarding the message allows a downstream node to recover missing segments before the next segment arrives from an upstream node It also allows reducing the number of redundant broadcasts of the same packet by neighbors PFSQ Fetch A node goes into fetch mode when a sequence number gap is detected In fetch mode a node aggressively sends out NACK messages to its immediate neighbors to request missing segments 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 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, Tr) Neighbors cancel a retransmission when a reply for the same segment is overheard NACK messages are not propagated to avoid message implosion 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 Tpro PFSQ Report Used to provide feedback data of delivery status to source nodes 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 Simulation and experimental evaluation 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 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 Event-to-Sink Reliable Transport (ESRT) 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 Traditional end-to-end reliability requirements do not then apply here What is needed is a measure of the accuracy of the information received at the sink, i.e. and event-to-sink reliability ESRT The basic assumption is that the sink does all the reliability evaluation using parameters that are application dependent One such parameter is the decision time interval τ At the end of the decision interval the sink derives a reliability indicator ri based on the reports received from the sensor nodes ri is the number of packets received in the decision interval If R is the number of packets required for reliable event detection then ri > R is needed for reliable event detection There is no need to identify individual sensor nodes but instead there is the need to have an event ID The reporting rate, f, of a sensor node is the number of packets sent out per unit time by that node The ESRT protocol aims to dynamically adjust the reporting rate to achieve the required detection reliability R at the sink ESRT r versus f based on simulation results n = number of source nodes for f > fmax the reliability drops because of network congestion ESRT – Protocol Overview The algorithms mainly run on the sink Sensor nodes: Listen to sink broadcasts and update their reporting rates accordingly Have a simple congestion detection mechanism and report to the sink The sink: Computes a normalized reliability measure ηi = ri /R Updates f based on ηi and if f > fmax or < fmax in order to achieve the desired reliability Performs congestion decisions based on feedback reports from the source nodes Congestion detection: Uses local buffer level monitoring in sensor nodes When a routing buffer overflows the node informs the sink by setting the congestion notification bit in the header packets traveling downstream ESRT – Network States Optimal Operating Region (Congestion, High reliability) (No congestion, High reliability) (Congestion, Low reliability) (No congestion, Low reliability) ESRT – Frequency Update State f update fi (NC, LR) f i 1 (NC, HR) f f i 1 i 2 (C, HR) f i 1 (C, LR) OOR Multiplicative increase f to achieve required reliability as soon as possible i 1 Decrease f conservatively, reduce energy 1 consumption and not lose reliability i fi i fi 1 fi (i k ) fi 1 fi Action Aggressively decrease f to relieve congestion as soon as possible Exponential decrease. k is the number of successive decision intervals spent in state (C, LR) Unchanged ESRT – Summary and Conclusions Uses a new paradigm for transport layer reliability Sensor networks are more interested in event to sink reliability than on individual end-to-end reliability The congestion control mechanism results in energy savings Analytical performance evaluation and simulation results show that the system converges to the state OOR regardless of the initial state This self configuration property of the protocol is very valuable for random and dynamic topologies Issues still to be addressed are: Extension to handle concurrent multiple events Development of a bi-directional reliable protocol that includes the sink-to-sensor transport 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 Energy Model The energy consumed when sending a packet of m bits over a one hop wireless link can be expressed as, EL (m, d ) ET (m, d ) PT Tst Eencode ER (m) PRTst Edecode where, ET = energy used by the transmitter circuitry and power amplifier ER = energy used by the receiver circuitry PT = power consumption of the transmitter circuitry PR = power consumption of the receiver circuitry Tst = startup time of the transceiver Eencode = energy used to encode Edecode = energy used to decode Energy Model Assuming a linear relationship for the energy spent per bit at the transmitter and receiver circuitry ET and ER can be written as, ET (m, d ) m eTC eTA d E R (m) meRC eTC, eTA, and eRC 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, Tst, 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. Energy Model An explicit expression for eTA can be derived as(†), eTA S 4 ( NFRx )( N 0 )( BW ) N r (Gant )( am p )( Rbit ) Where, (S/N)r = minimum required signal to noise ratio at the receiver’s demodulator for an acceptable Eb/N0 NFRx = receiver noise figure N0 = thermal noise floor in a 1 Hertz bandwidth (Watts/Hz) BW = channel noise bandwidth λ = wavelength in meters α = path loss exponent Gant = antenna gain ηamp = transmitter power efficiency Rbit = 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. Energy Model The expression for eTA can be used for those cases where a particular hardware configuration is being considered. The dependence of eTA on (S/N)r can be made more explicit if the previous equation is written as: eTA S N r where 4 ( NFRx )( N0 )( BW ) (Gant )(amp )( Rbit ) This expression shows explicitly the relationship between eTA and (S/N)r. The probability of bit error p depends on Eb/N0 which in turns depends on (S/N)r. Eb/N0 is independent of the data rate. In order to relate Eb/N0 to (S/N)r, the data rate and the system bandwidth must be taken into account, i.e., Energy Model S N r Eb N 0 R BT b R BT where Eb = energy required per bit of information R = system data rate BT = system bandwidth γb = signal-to-noise ratio per bit, i.e., (Eb/N0) Typical Bandwidths for Various Digital Modulation Methods Modulation Method Typical Bandwidth (Null-To-Null) QPSK, DQPSK 1.0 x Bit Rate MSK 1.5 x Bit Rate BPSK, DBPSK, OFSK 2.0 x Bit Rate Energy Model Power Scenarios Two possible power scenarios are: 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 Eb/N0 at the receiver. The transmission energy per bit is given by, S eTA d d N r 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. Node Energy Model 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 eTA d is fixed to a certain value (ETA) at the transmitter and the (S/N)r at the receiver will then be, ETA S N r d 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. 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. 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, Elinear e e RC e RC eTA (d i ) m eTC eTA (d1 ) n TC i2 eTA (d i ) or m eRC e n TC i 1 It then can be shown that Elinear is minimum when all the distances di’s are made equal to D/n, i.e. all the distances are equal. Energy Consumption - Multihop Networks It can also be shown that the optimal number of hops is, nopt D D or d d char char where 1 d char eTC eRC eTA ( 1) dchar depends only on the path loss exponent α and on the transceiver hardware dependent parameters. Replacing the value of dchar in the expression for Elinear opt Elinear nopt (eTC eRC ) m eRC 1 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 e n Elinearbit neRC TC eRC eTA (d i ) n 1 i i 1 neRC (e eRC )n(n 1) TC eTA 2 n ( n 1 i )( d i ) i 1 (†)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. Energy Consumption - Multihop Networks n Minimizing Elinearbit with constraint D d i is equivalent to i 1 minimizing the following expression, n 1 i (d ) n L eTA i i 1 n di D i 1 where λ is a LaGrange’s multiplier. Taking the partial derivatives of L with respect to di and equating to 0 gives, L eTA (n 1 i)( d i ) 1 0 d i d i eTA (n 1 i) 1 1 Energy Consumption - Multihop Networks n The value of λ can be obtained using the condition d i D i 1 Thus for α=2 the values for di are, di D n 1 i n 1 i i 1 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) 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 equidistant Elinear bit n(n 1) 2 eTC eRC eTA D n neRC 2 The total energy per bit spent by a linear array with optimum separation and α=2 is, optimum linear bit E n(n 1) eTC eRC eTA 2 D2 n 1 i i 1 neRC Energy Consumption - Multihop Networks For eTC= eTR= 50 nJ/bit, eTA= 100 pJ/bit/m2, and α = 2, the total energy consumption per bit for D= 1000 m, as a function of the number of sensors is shown below. Equally spaced Optimum spaced 0.12 Energy (m J) 0.10 0.08 0.06 0.04 0.02 0.00 0 5 10 15 20 Sensor Array Size (n ) 25 30 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 Elinear (i) [( n 1 i)(eTC eTA d i ) (n i)eRC ] Energy consumption at each node (n=20, D=1000 m) Equally Spaced Optimum Spaced 8.0 Total Energy=72.5 u J Energy (u J) 6.0 4.0 2.0 Total Energy = 47.8 u J 0.0 0 5 10 15 Distance (hops) from the sink 20 Error Control – Multihop WSN For link i assume that the probability of bit error is pi. Assume a packet length of m bits. For the analysis below assume that a Forward Error Correction (FEC) mechanism is being used. Then call plink(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: n Pc 1 p link (i ) i 1 Error Control – Multihop WSN Assume the case where all the di’s are the same, i.e. di = D/n. Since variable transmission power mode is also being assumed the probability of bit error for each link is fixed and Pc is, Pc (1 plink ) n The value of plink 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 p FSK 1 2b Where b is the average signal-to-noise ratio. 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 2wi 1 w i i 2 M PM 2 d min b where wi is the weight of the ith code word and M=2k. A simpler bound is: PM (M 1)[4 pFSK (1 pFSK )]dmin For the multihop scenario being discussed here plink = PM and the probability of packet error can be written as: Pe 1 Pc 1 (1 plink ) n 1 (1 PM ) n 1 {1 (2 k 1)[4 p FSK (1 pFSK )]d min }n Error Control – Multihop WSN The probability of successful transmission of a single code word is, Psuccess (1 Pe ) Radio parameters used to obtain the results shown in the next slides Parameter Value NFRx 10dB N0 -173.8 dBm/Hz or 4.17 * 10-21 J Rbit 115.2 Kbits 0.3 m Gant -10dB or 0.1 amp 0.2 3 BW For FSK-modulation, it is assumed to be the same as Rbit eRC 50nJ/bit eTC 50nJ/bit Error Control – Multihop WSN The expected energy consumption per information bit is defined as: i bit Elinear Elinear k Psuccess Parameters for the studied codes are shown in the table below, t is the error correction capability. Code m k dmin Code rate t Hamming 7 4 3 0.57 1 Golay 23 12 7 0.52 3 Shortened Hamming 6 3 3 0.5 1 Extended Golay 24 12 8 0.5 3 Error Control – Multihop WSN Characteristic distance, dchar, as a function of bit error probability for non-coherent FSK-modulation Error Control – Multihop WSN D = 1000 m Error Control – Multihop WSN D = 1000 m Error Control – Multihop WSN D = 1000 m Error Control – Multihop WSN D = 1000 m Error Control – Multihop WSN D = 1000 m Error Control – Multihop WSN D = 1000 m Cooperative Communications in Wireless Sensor Networks Diversity techniques have been proposed and developed to minimize the errors in reception when the channel attenuation is large 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 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 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 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” Cooperative Communications In the example below: T1 and T2 transmit to terminals T3 and T4 Transmitted signals can be received and processed by any number of terminals T1 and T2 can listen to each other’s transmission and jointly communicate their information For sensor networks the objective is to attain an improved performance, e.g. decreased BER and/or decreased energy consumption In cooperative mode each user transmits its own bits as well as some information bits from its partners T1 T3 T2 T4 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. Diversity provided by the coded bits T1 T3 Percent of cooperatio n T2 N2 N1 N 2 (†) 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. Coded Cooperation 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 The users divide their transmissions into two time segments. In the first segment each user transmits N1 bits (rate R1 = K / N1) Each user also receives and decodes the partner’s transmission. If this reception is successful the user computes and transmits N2 additional parity bits for the partner’s data, N1 + N2 = 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 If the user does not successfully decode the partner, N2 additional parity bits for the user’s own data are transmitted. N1 bits User 1 User 1 bits N2 bits User 2 bits Rx User 2 bits N1 bits User 2 Rx User 1 bits Idle or sleep User 2 bits Idle or sleep User 1 bits User 2 bits Rx User 1 bits Idle or sleep N2 bits User 1 bits time U1 time slot U2 time slot U1 time slot Efficient Source Coding and Modulation(†) This example is a simple attempt to combine source coding (application layer) with modulation (physical layer) An On/Off (OOK) modulation and a simple Minimum Energy (ME) coding mechanism is used It is based on the assumption that the transceiver consumes energy only when transmitting a high bit 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. Efficient Source Coding and Modulation k source bits n coded bits k information bits from the source are mapped into n coded bits The encoder generates code words that have a reduced number of 1’s The code words are OOK modulated and then transmitted Minimum Energy code for k=2 and n=3 Source bits Codeword 00 000 01 001 10 010 11 100 Efficient Source Coding and Modulation The proposed ME coding method can be seen as a form of Pulse Position Modulation (PPM) To maintain the same rate of information transmission, the price is an increase in the bandwidth For ME coding, n 2k 1 which translates into the following increase in bandwidth (BW) 2k 1 BW ( ME (n, k ), OOK ) BW (OOK ) k 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 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 Distributed Source Coding(†) In many applications of WSNs an event will cause several sensors to generate highly correlated measurements It is of interest to explore how this correlation can be exploited to compress the information being sent to the controller or sink node (†) J. Chou, D. Petrovic, K. Ramchandran, “A Distributed and Adaptive Signal Processing Approach to Reducing Energy Consumption in Sensor Networks,” IEEE INFOCOM 2003 Distributed Source Coding In the example below assume that the measurements X and Y are correlated Y is available at the decoder on the sink node but not at the node where X is encoded How can X be encoded in a compressed manner knowing that Y is available at the decoder? X Y N 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 Distributed Source Coding Consider an 8-level scalar quantizer, and the correlated variables X and Y Partition the set of 8 quantization levels into 2 cosets (even and odd levels) 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) Knowing Y the decoder finds the closest quantization level in the red coset, and estimates that X takes on the value r4 Coding of Correlated Information All the recently proposed distributed source coding mechanisms can trace back their origins to the fundamental paper by Slepian and Wolf (†) X and Y are correlated sources characterized by a bivariate distribution p(x,y) The sequences ..., X-1, X0, X1, ... and ..., Y-1, Y0, Y1, ... obtained by independent drawings from (X, Y ) can be compressed at rates R1 and R2 if and only if R1 H ( X / Y ) R2 H (Y / X ) R1 R2 H ( X , Y ) (†) D. Slepian and J. Wolf, “Noiseless Coding of Correlated Information Sources,” IEEE Trans. Information Theory, vol. 19, pp. 471-480, July 1973. Routing and Source Coding In traditional routing the upstream data is (at best) attached to the local data and forwarded downstream (, S n1 ) X n1 Combined representation of several sensors’ data (, Sn1, Sn ) Xn An improved technique is to re-encode jointly the data in the queues before sending it downstream Final Words Wireless Sensor Networks provide a fundamentally new set of research and application challenges WSNs are a rich source of problems in communication protocols, sensor tasking and control, sensor fusion, distributed data bases, probabilistic reasoning, and algorithmic design Some of the WSN topics not covered in this tutorial are: Deployment strategies Node localization Network capacity Fault tolerance Security Web site http://www.ee.oulu.fi/~carlos/IWWAN_04_WSN_Tutorial.ppt carlos@ee.oulu.fi