1.07k likes | 1.14k Views
WIRELESS SENSOR NETWORKS. `. T opics. Introduction What are WSNs? An example: ESB WSN applications Energy conservation Ad-hoc routing Basic principles Overview of routing protocols Data-centric protocols Rumor Routing Geogra phical protocols. Localization and Positioning
E N D
Topics • Introduction • What are WSNs? • An example: ESB • WSN applications • Energy conservation • Ad-hoc routing • Basic principles • Overview of routing protocols • Data-centric protocols • Rumor Routing • Geographical protocols • Localization and Positioning • Synchronization and Security • The TinyOS operating system • The TinyDB query system • Proto programming language
Introduction: What are WSNs? • Sensors, connected into wireless networks, are: • Very small computer systems • With very high interconnection ability
Introduction: What are WSNs? 2 Overview of networkingtechnologies
Introduction: What are WSNs? 3 • The idea of wireless sensor networkswas first popularized by scientists from UC Berkeley • They have developed: • series of sensor nodes(so-called mica nodes) • open-source software • TinyOS operating system • TinyDB query systemfor efficient manipulation of sensed data • An interesting fact: • one of the first applications for small interconnected autonomous systemswas in submarine warfare • Integrated Undersea Sound Survelliance System (IUSS)
Introduction: What are WSNs? 4 • Sensor network (def): • a set of small autonomous systems (sensor nodes)working together to solve at least one common problem • their tasks always include some way of perception of the physical environment • Sensor nodes: • basic units in a sensor network • they are usually powered by batteriesand they have some kind of a radio transceiver • Alternative names: • motes (most often) • smart dust
Architecture of a sensor node Block diagram of a typical sensor node (mote)
An example: ESB, FU-Berlin Source: [1]
WSN Applications • Treatment of ill people: wearable computing • under-skin implants – measurement of blood parameters,early detection of some illnesses • already marketed – capsules with 24 hours of battery lifewhich move through the patient’s body and relay images to the doctorthrough another device worn externally by the patient • Embedded systems: home automation • temperature measurement • alarm systems • Traffic – sensors in cars,early traffic congestion warning • Military applications • Many other; new applications are constantly devised.
One application: Camalie Vineyards One mote in the vineyards: Crossbow mica2dot mote, NiMH batteries, solarpanel, 3V voltage regulator.Source: [12].
One application: Camalie Vineyards2 The visitors of the Camalie Vineyards website can viewgraphs of ambient temperature (with respect to time) in all points where sensors are present. Slightly colder temperatures come from sensors in the wine cellar; dysfunctional motes report absolute zero. Source: [12].
Topics • Introduction • What are WSNs? • An example: ESB • WSN applications • Energy conservation • Ad-hoc routing • Basic principles • Overview of routing protocols • Data-centric protocols • Rumor Routing • Geographical protocols • Localization and Positioning • Synchronization and Security • The TinyOS operating system • The TinyDB query system • Proto programming language
Energy conservation • Careful use of available energy is of paramount importance in WSNs • Batteries, in most cases,cannot be recharged! • Inefficient energy use shortens battery life considerably! • Some of the methods for reduced energy consumption and prolonged battery life: • Passive conservation methods • Use of sophisticated energy sources • Placement of sensors into energy efficient topologies • Active conservation methods • Hardware solutions(watchdog timer, reduced clock frequency...) • Energy aware routing protocols;energy efficient medium access (MAC layer) • The choice of an energy-saving operating system
Energy sources for motes • Rechargeable macro-batteriesas a secondary energy source • Micro-batteries on a wafer • Ultracapacitors • They not only hold electrical charge in the dielectric, • they also hold ionic charge in the double electrical layer • Energy density larger than in ordinary capacitorsby an order of magnitude • Micro Fuel Cells • Microturbines • Radioactive power sources • Solar cells • Energy of the human body • Wearable computing Hydrogenmicro-fuel cell 4mm micro turbine Source: [13]
Energy conservation: hardware solutions • Watchdog timers • deliberately turn the power downif the software is stuck in an infinite loop • Sleep states • Variable voltage processing • Deliberate performance degradationby dropping the voltage and reducing the clock frequency • so the same task could be done withsmaller energy consumption,at the expense of performance. Variable Voltage Processing Same task can be performed with smaller energy consumption if voltage and frequency are reduced (shaded area).Source: [13]
MAC energy aware protocols • Energy aware protocols are used at the MAC layer(energy efficient medium access). • Basic principle: • Energy required for signal transmission isproportional tod α • d – distance between two nodes • α– attenuation factor(medium dependent)
MAC energy aware protocols 2 • For optimum α = 2, transmitting a signal to ½ of distance requires ¼ of energy:(½ d)2 = ¼ d2 →If a protocol can find a node on ½ distance to target, which can supply additional ¼ of energy to transmit the signal through the remaining half, ½ of energy is saved! (½ d)2 + (½ d)2 = ¼ d2 + ¼ d2 = ½ d2
Energy solutions in the ESB • Microcontroller TI MSP340:energy consumption 3V, 1mA (3mW) • total energy consumption is 12mA at 4.5 V,plus additional 12mA during data transmission • program memory: 8KB EEPROM • only 2KB of conventional RAM memory; 60KB Flash RAM for special purposes only(high energy consumption!) • watchdog timer: uses an NMI interrupt toshut the node down immediately,if software gets stuck in an infinite loop • sleep mod, consumes only 0.008 mA(practically equivalent to battery self-discharge) Printed circuit of the ESB
Topics • Introduction • What are WSNs? • An example: ESB • WSN applications • Energy conservation • Ad-hoc routing • Basic principles • Overview of routing protocols • Data-centric protocols • Rumor Routing • Geographical protocols • Localization and Positioning • Synchronization and Security • The TinyOS operating system • The TinyDB query system • Proto programming language
Ad-hoc routing • Wireless networks:computer networks withwireless communication links • Ad-hoc networks: • in ad-hoc netsevery node can forward packages • the decision whether each node will or will not forward packagesis made dynamically, • with regard to current connectivity matrix. • Comparison: • inconventional computer networks,there are dedicated nodes (routers, switches, hubs...)which forward packages. • Such approach is impossible in ad hoc networks – all nodes are constantly on the move, connectivity changes all the timeso there are no good candidates for dedicated routers.
Ad-hoc routing2 • In ad-hoc networks, individual nodeshave no a priori knowledge of network topology • when connected, they gradually discover othernodes • Basic principle: • a newly connected nodesadvertisesit’s presence • readsbroadcast messages from neighboring nodes • In this way, a node gradually discovers: • the positions of other nodes in a network, • ways to reach each one of them.
Ad-hoc routing 3 • When enough time has passed,routing protocol convergence is established. • When this happens,each node “knows” about all theother nodes in the net,and how to reach each one of them. • Convergence time is total time elapsedfrom when the network topology is changed(for example, when a communication link goes down)to when all nodes have restructured their routing tables in accordance with the change.
Ad-hoc routing4 • Conventional networks usedata-centric routing: each node has an unique data identifierwhich serves as its address on the network(IP-address, MAC-address...) • Some ad-hoc networks use different concepts • For example, it might not be necessary for information to be routed from a specific starting point to a specific endpoint,but only to be propagated and diffused through the network.This is calledRumor Routing. • Or, geographical coordinates could be used as means for addressing (Geographical Routing).
Data-centric protocols1 Proactiveprotocols: maintainconsistent knowledge of network topologythrough routing tableswhich are exchanged between nodes periodically Drawbacks: • network bandwidth is wasted:routing tables are an overheadwhich decreases available bandwidth for useful data • some paths are never used, and yet they are kept in the tables • simulations show very long convergence timesome proactive protocols never converge in large wireless networks! Example: • WRP – Wireless Routing Protocol
Data-centric protocols2 Reactiveprotocols: information about paths is not kept;a path is discovered on demand only, by flooding the network withRoute Requestpackages Drawbacks: • on demand path discovery introduces significant delays • flooding the network can lead to severe network congestion Examples:can be found, in detail, in [10] • AODV – Ad-hoc On-demand Distance Vector • DSR – Dynamic Source Routing • TORA – Temporally Oriented Routing Algorithm
Data-centric protocols3 Hybrid protocols: locally proactive, globally reactive e.g. ZRP – Zone Routing Protocol • The network is divided intorouting zones • the zone is usually an sphere with a specified diameter,measured inhop counts • the nodes positioned at the maximum distance from central node Xare called peripheral nodes for the routing zone centered at X. • When package needs to be sent from node A to node B: • if B is within the same routing zone as A,local routing table is looked up to find the path to B (proactivebehaviour), • if this is not the case, Route Requestpackages are sentto all peripheral nodes • each peripheral node repeats this step(checks whether the destination B is inside its routing zone).
Data-centric protocols4 • ZRP example: • A sphere centered at S:is a zone of radius ρ = 2 • J, G, H, I:peripheral nodes • If a package is sentfrom node Sto node G: • Destination is within the same zone,routing table is looked up. • If a package is sentfrom node S to node T: • Destination is in a different zone, Route Request packages are sent to nodes G, H, I, J. • Node I discovers that T is within its routing zone (d = 2), • It looks up its routing table, and sends the package to L.
Rumor Routing • first proposed by Braginsky and Estrin (UCLA)in their paper [4]. • All nodes are divided into two groups: • nodes that perceive events, • nodes which seek information about events,from the nodes of the preceding group • There is no network topology • There is no coordinate system • The protocol doesn’t try to find an optimum route,it seeks only to relay the information end-to-end • sub-optimum routes are satisfactory for this purpose
Rumor Routing 2 • Rumor Routing protocol: • Events A and B are perceived on some nodes • An agentis sent from both groups (A and B) to “spread rumors” about the whereabouts of possible sources of information for events A and B • When agent B meets agentA on its way, it goes on to spread information about both events A and B 1 1 2 3 2 Illustration of Rumor Routing protocol (Source: [1])
Rumor Routing 3 1 • Handling the information requests: • A node requests information about event A • It’s request “moves blindly” through the network until it stumbles upon a node visited by the information spreading agent. While moving, it leaves traces so it can backtrack when information is found. • When a node visited by the agent is found, a route is followed to the source of information • Information is retrieved and brought back to the source of the request. 2 4 3 Illustration of Rumor Routing protocol (Source: [1])
Geographical Protocols: An Overview • Routing relies on geographical position information(as opposed to data centric routing) • Destination for a package is a specific area • e.g.a city, a section of a highway, or,at the micro level, a part of the conference room • recipient cannot determine exactly who is the sender,it can only determine roughly from wherethe package came from • Routing decision are made with respect toreal, spatial coordinates • For that to be possible,positioning information is necessary • one way of obtaining position information isGPS (Global Positioning System)
An example: GeoCast • Proposed by Navas and Imielinski, 1997. • Three-tiered architecture: • GeoHosts are endpoints of the network • Client processes (applications) are run on them • GeoHosts initiate message transfer • On receipt of the package, they check if their geographical regionis the destination of the package. • GeoGateways are the network’s entry and exit points • GeoHosts communicate with GeoRouters through broadcast messages • a GeoGateway is responsible for a given area specified by a radius • GeoRouters perform the actual routing • they are aware of the coordinates of neighboring GeoRoutersand GeoGateways • they route the package through neighboring GeoRoutersto the destination GeoGatewayso that it can reach the destination geographical area.
GeoCast routing 2 Ilustracija koncepata GeoHost, GeoGateway, GeoRouter
GeoCast routing 3 ClientProcess • GeoCast communication: • A node on Net A perceives the event • It sends a message to its GeoGateway • Gateway forwards the message to a neighboring GeoRouter • Routing is performed • At some moment, destination Gateway is direct neighbor to a router; the router hands the message to destination Gateway. • Destination Gateway delivers the message to Net B. Event GeoRouter GeoGateway GeoHost Directmessage ClientProcess Source: [5]
GeoCast routing4 • With classical IP networks,next hop address is determinedby looking up a routing table • With GeoCast, destination addresses are areasspecified by necessary parameters • if the area is a circle,location of center and length of radius are required • if the area is a polygon,locations of all angles are required • Routers are organized in a hierarchical manner • routers responsible for smaller geographical areas are lower in the hierarchy • routers responsible for larger geographical areas are lower in the hierarchy
GeoCast routing5 • A client process, running on a GeoHost, delivers a message to its GeoRouter through its network’s GeoGateway • GeoRouter consults lower-level GeoRouters and determines: • Is there any overlap between the zone of responsibility of the lower level router, and the destination area? • If there is an overlap,the message is forwared to the lower-level GeoRouter. • When this is repeated for all lower level routers,was the destination area covered completely? • If it was, the procedure ends here. • If it wasn’t, the message is unicast to a higher level router, responsible for wider geographical area,which repeats the procedure starting at 2.
GeoCast routing6 • In order to implement the described procedure,another procedure is necessary, one that will determine if the two areas overlap. • If the two areas are both circles, the procedure is simple • if the distance between centersis smaller than the sum of the radiuses,the circles indeed overlap
GeoCast routing7 • If the two areas are a circle and a polygon, or they are both polygons, things get complicated • Geographical calculations of higher complexity are necessary • Comparison with IP nets: • In IP networks, a simple query on the routing table is all that is necessary • In GeoCast networks,routing decision complexity is several orders of magnitude higher!
Routing Protocols: A Conclusion • Rough classification of protocols: • Data-centric: an address is some kind of datum(e.g. an IP address – 4 bytes of data) • Diffusion: it is not necessary to address individual nodes,only to diffuse the information through the network • Geographical: an address is a geographical area,described by geographical parameters • Most uses for data centric protocols areoutside of wireless sensor networks • Diffusion protocols are simple • but they are suitable only for a small number of use cases • Geographical protocols are conceptually most suitable for wireless sensor networks • but making a routing decision can be very complex
Topics • Introduction • What are WSNs? • An example: ESB • WSN applications • Energy conservation • Ad-hoc routing • Basic principles • Overview of routing protocols • Data-centric protocols • Rumor Routing • Geographical protocols • Localization and Positioning • Synchronization and Security • The TinyOS operating system • The TinyDB query system • Proto programming language
Localization and Positioning • Measurements by sensor networksare substantially more valuableif the location of measurementis known • Therefore, a sensor has to be aware of its position in the real world • Two approaches: • Localization • Positioning B C A
Localization and Positioning 2 • Localization:location of the sensor is givenas relative to some local point • it is then possible to calculatedistances and angles between individual nodes • but it is not possible to determine thesensor’s global position • Positioning:a sensor is given absolute coordinates on the world map • e.g. coordinates can be longitude and latitude
Localization and Positioning 3 • The simplest solution to the problem of positioning is to put a GPS device in each sensor node. • GPS receivers are still too expensive and too big! • The remaining possibilities can be divided into 4 groups (picture).
Localization and Positioning 4 • Global coordinates are available for the complete topology, • Only local coordinates are known, • It is possible only to roughly estimate the position of the whole system, • Only the network’sconnectivity matrixis available.
Localization and Positioning 5 • Since only some nodes need to be aware of their positionin order to establish positioning for the complete network, • only some nodes need to be equipped with a GPS device, • because of high energy consumption,GPS could be turned on only occasionally, • in those intervals, remaining nodes perform localizationwith respect to the GPS-equipped nodes. • Alternate solution:instead of equipping them with a GPS device,some nodes could have their position manually input by an operator (based on measurements from his GPS device). • This solution is sometimes neither practical nor possible! • For mobile networks,public positioning stations are usually used.
Positioning 1 • Positioning of every node is possible in Case 1 from the table • that is the case when positions of some nodes are known,and distances between nodes are known, too. • Three already positioned nodes are enough to determine position of another node • if the distances between nodes are known. • one way of measuring distance is measuring the attenuation of the radio signal • If some of the 3 nodes is not positioned with sufficient precision, the error propagates quickly!
Positioning (2D)2 • pi, pj – already positioned nodes • n – newly added node • We consider two spheres, with radiuses dn, i i dn, j, around their centers pi i pj • They intersect in two points: n i n’ • The final step in positioning is to choose one of these points • In order to do this, we need the third already positioned node • Mutual visibility is checked with the third node, in order to discount one of the points n i n’. In satellite positioning (3D) the final step is usually unnecessary; the object has to be on Earth’s surface→points in space or below surface are instantly discarded
Localization 1 • In case no node is aware of it’s position,but distances between nodes are known,localization is the only possible approach. • Capkun, Hamdi, Hubaux,“GPS-free Positioning in Mobile Ad-hoc Networks” • Describes the procedure which establishesa global coordinate system (CS) • based on measurements of distances between nodes
Localization 2 Basic procedure for establishment of a global coordinate system (CS), in a two-dimensional environment, is as follows: • Each node searches for its immediate neighbors • in this way, “immediate neighborhood”, consisting of allnodes one hop away, is formed. • The distance table obtained in (1) is sent to all neighbors • In each node a local coordinate system is established, with that node in the center • For each node n, two additional nodes p andqare chosen from the immediate neighborhood,in order to definex andy axes • x-axis is a linedrawn from the circle, through node p, oriented outwards • y-axis isalways perpendicular to the x-axis,node q is necessary only to determine its orientation