
Advanced Wireless Networks - 4G Technologies
.pdf
548 SENSOR NETWORKS
(a) |
|
(b) |
(c) |
|
Sink |
Sink |
Sink |
|
|
Source |
Source |
Source |
|
Figure 14.9 An example of directed diffusion [27]: (a) propagate interest, (b) set up gradient and (c) send data.
where P is the desired percentage to become a cluster-head; r, the current round; and G, the set of nodes that have not being selected as a cluster-head in the last 1/ P rounds. After the cluster-heads are selected, the cluster-heads advertise to all sensor nodes in the network that they are the new cluster-heads. During the steady phase, the sensor nodes can begin sensing and transmitting data to the cluster-heads. After a certain period of time spent on the steady phase, the network goes into the set-up phase again and entering into another round of selecting the cluster-heads.
14.3.3.5 Directed diffusion
The directed diffusion data dissemination is discussed in Intanagonwiwat et al. [27]. The sink sends out interest, which is a task description, to all sensors, as shown in Figure 14.9(a). The task descriptors are named by assigning attribute-value pairs that describe the task. Each sensor node then stores the interest entry in its cache. The interest entry contains a timestamp field and several gradient fields. As the interest is propagated throughout the sensor network, the gradients from the source back to the sink are set up as shown in Figure 14.9(b). When the source has data for the interest, the source sends the data along the interest’s gradient path as shown in Figure 14.9(c). The interest and data propagation and aggregation are determined locally. Also, the sink must refresh and reinforce the interest when it starts to receive data from the source. The directed diffusion is based on data-centric routing where the sink broadcasts the interest.
14.3.4 Transport layer
The need for transport layer is discussed in References [44, 46]. This layer is especially needed when access to the system is planned through Internet or other external networks. TCP with its current transmission window mechanisms, as discussed in Chapter 9, does match to the extreme characteristics of the sensor network environment. In Bakre and Badrinath [62] an approach called TCP splitting is considered to make sensor networks interact with other networks such as the Internet. In this approach, TCP connections are ended at sink nodes, and a special transport layer protocol can handle the communications between the sink node and sensor nodes. As a result, the communication between the user and the sink node is by UDP or TCP via the Internet or Satellite. Owing to sensor node limited memory, the communication between the sink and sensor nodes may be purely by UDP type protocols.

550 SENSOR NETWORKS
individual report. Most of the complexity of the protocol falls on the sink node, minimizing the requirements on the sensor nodes.
14.3.5 Application layer
In this section, we discuss three application layer protocols, i.e. sensor management protocol (SMP), task assignment and data advertisement protocol (TADAP), and sensor query and data dissemination protocol (SQDDP). Additional work is expected in this segment of sensor networks.
14.3.5.1 Sensor management protocol
Sensor networks have many different application areas, and accessing them through networks such as the Internet is an option [44]. Designing an application layer management protocol has several advantages. It makes the hardware and software of the lower layers transparent to the sensor network management applications. System administrators interact with sensor networks using the sensor management protocol (SMP). Unlike many other networks, sensor networks consist of nodes that do not have global IDs, and they are usually infrastructureless. Therefore, SMP needs to access the nodes by using attributebased naming and location-based addressing, which are explained in detail earlier in this section. SMP is a management protocol that provides the software operations needed to perform the following administrative tasks: introducing the rules related to data aggregation, attribute-based naming and clustering to the sensor nodes, exchanging data related to the location-finding algorithms, time synchronization of the sensor nodes, moving sensor nodes, turning sensor nodes on and off, querying the sensor network configuration and the status of nodes, re-configuring the sensor network, and authentication, key distribution and security in data communications. Discussion of these issues is given in References [15, 41, 48, 49, 65, 95–97].
The task assignment and data advertisement protocol controls interest dissemination in sensor networks. As discussed earlier in this section (Figure 14.6), users send their interest to a sensor node, a subset of the nodes or whole network. This interest may be about a certain attribute of the phenomenon or a triggering event. Another approach is the advertisement of available data in which the sensor nodes advertise the available data to the users, and the users query the data they are interested in. An application layer protocol that provides the user software with efficient interfaces for interest dissemination is useful for lower layer operations, such as routing, as explained in Figure 14.6.
The sensor query and data dissemination protocol (SQDDP) provides user applications with interfaces to issue queries, respond to queries and collect incoming replies. Note that these queries are generally not issued to particular nodes. Instead, attribute-based or locationbased naming is preferred. For instance, ‘the locations of the nodes in the supermarket where the selling items stock is bellow a threshold and should be re-supplied’ is an attribute-based query. Similarly, ‘the selling item stock size at the node A’ is an example for location-based naming.
Sensor query and tasking language (SQTL) [49] is proposed as an application that provides even a larger set of services. SQTL supports three types of events, which are defined by the keywords receive, every and expire. Receive keyword defines events generated by
MOBILE SENSOR NETWORKS DEPLOYMENT |
551 |
a sensor node when the sensor node receives a message; every keyword defines events occurring periodically due to a timer time-out; and the expire keyword defines the events occurring when a timer is expired. If a sensor node receives a message that is intended for it and contains a script, the sensor node then executes the script. Although SQTL is proposed, different types of SQDDP can be developed for various applications. The use of SQDDPs may be unique to each application.
14.4 MOBILE SENSOR NETWORKS DEPLOYMENT
A mobile sensor network is composed of a distributed collection of nodes, each of which in addition to sensing, computation and communication also has locomotion capabilities. Locomotion facilitates a number of useful network capabilities, including the ability to selfdeploy and self-repair. The use of mobile sensor networks includes applications ranging from urban combat scenarios to search-and-rescue operations and emergency environment monitoring. An example is a scenario involving a hazardous materials leak in an urban environment. In general, we would like to be able to throw a number of sensor nodes into a building through a window or doorway. The nodes are equipped with chemical sensors that allow them to detect the relevant hazardous material, and deploy themselves throughout the building in such a way that they maximize the area ‘covered’ by these sensors. Data from the nodes are transmitted to a base station located safely outside the building, where they are assembled to form a live map showing the concentration of hazardous compounds within the building.
For the sensor network to be useful in this scenario, the location of each node must be determined. In urban environments, accurate localization using GPS is generally not possible (due to occlusions or multipath effects), while landmark-based approaches require prior models of the environment that may be either unavailable (destroyed), incomplete or inaccurate. This is particularly true in disaster scenarios, were the environment may have undergone recent (and unplanned) structural modifications. Therefore it is of interest to determine the location of network nodes using the nodes themselves as landmarks. This particular technique, however, requires that nodes maintain line-of-sight relationships with one another. This condition also enables establishment of line-of-sight communications links which operate with minimum energy consumption. An additional demand is that nodes should deploy in such a way that they maximize the area ‘covered’ by the network, while simultaneously ensuring that each node can be seen by at least one other node.
The concept of coverage as a paradigm for evaluating multi-robot [98–114] systems was introduced in Gage [93]. Three basic types of coverage were defined: blanket coverage, where the objective is to achieve a static arrangement of nodes that maximizes the total detection area; barrier coverage, where the objective is to minimize the probability of undetected penetration through the barrier; and sweep coverage, which is more or less equivalent to a moving barrier. The problem of exploration and map-building by a single robot in an unknown environment has been considered by a number of authors [113–115]. The frontier-based approach described in References [113,114] proceeds by incrementally building a global occupancy map of the environment, which is then analyzed to find the ‘frontiers’ between free and unknown space. The robot is directed to the nearest such frontier. The network deployment algorithm described in Howard et al. [98] shares a number of similarities with [113]. It also builds a global occupancy grid of the environment and
552 SENSOR NETWORKS
direct nodes to the frontier between free and unknown space. However, in this deployment algorithm the map is built entirely from live, rather than stored, sensory data. It also satisfies an additional constraint: that each node must be visible to at least one other node.
Multi-robot exploration and map-building has been explored by a number of authors [100,106,109,111] who use a variety of techniques ranging from topological matching [100] to fuzzy inference [106] and particle filters [111]. Once again, there are two key differences between these earlier works and the work described in Howard et al. [98], where maps are built entirely from live, not stored, sensory data, and the deployment algorithm must satisfy an additional constraint (i.e. line-of-sight visibility).
A distributed algorithm for the deployment of mobile robot teams has been described in [108], where the concept of ‘virtual pheromones’ is introduced. These are localized messages that are emitted by one robot and detected by nearby robots. Virtual pheromones can be used to generate either ‘gas expansion’ or ‘guided growth’ deployment models. The key advantage of this approach is that the deployment algorithm is entirely distributed, and has the potential to respond dynamically to changes in the environment. This algorithm does, however, lead to relatively slow deployment; it is also unclear, from the published results, how effective this algorithm is at producing good area coverage. A somewhat similar algorithm based on artificial potential fields is described in Howard et al. [104].
The algorithm elaborated in this section is an incremental deployment algorithm [98], where nodes are deployed one at a time, with each node making use of information gathered by the previously deployed nodes to determine its ideal deployment location. The algorithm aims to maximize the total network coverage, i.e. the total area that can be ‘seen’ by the network. At the same time, the algorithm must ensure that the visibility constraint is satisfied, i.e. each node must be visible to at least one other node. The algorithm relies on a number of key assumptions:
(1)Homogeneous nodes – all nodes are assumed to be identical. We also assume that each node is equipped with a range sensor, a broadcast communications device, and is mounted on some form of mobile platform.
(2)Static environment – the environment is assumed to be static, at least to the extent that gross topology remains unchanged while the network is deploying.
(3)Model-free – this algorithm is intended for applications in which environment models are unavailable; indeed, a key task for the network may be to generate such models.
(4)Full communication – all nodes in the network can communicate with some remote base station on which the deployment algorithm is executed. Note that this does not automatically imply that all nodes must be within radio range of the base station; the nodes may, for example, form an ad hoc multihop network.
(5)Localization – the position of each node is known in some arbitrary global coordinate system. This technique does not require external landmarks or prior models of the environment, but does require that each node is visible to at least one other node. It is this requirement that gives rise to the visibility constraint, i.e. each node must be visible to at least one other node at its deployed location.
Two performance metrics are of interest: coverage, i.e. the total area visible to the network’s sensors; and time, i.e. the total deployment time, including both the time taken to perform the necessary computations and the time taken to physically move the nodes. The objective is to maximize the coverage while minimizing the deployment time.

556 SENSOR NETWORKS
data to direct interests. For example, if in response to an earlier interest, a node heard from some neighbor A data sent by some sensor within the region specified by the rect attribute, it can direct this interest to A, rather than broadcasting to all neighbors.
Figure 14.11(a) shows the gradients established in the case where interests are flooded through a sensor field. Unlike the simplified description in Figure 14.9(b), notice that every pair of neighboring nodes establishes a gradient towards each other. This is a consequence of local interactions.
For a sensor network, a gradient specifies both a data rate and a direction in which to send events. More generally, a gradient specifies a value and a direction. Figure 14.9(c) implicitly depicts binary valued gradients. In the sensor networks presented in this section, gradients have two values that determine the event reporting rate. In other sensor networks, gradient values might be used to, for example, probabilistically forward data along different paths, achieving some measure of load balancing.
14.5.1 Data propagation
A sensor node that is within the specified rect processes interests as described in the previous section. In addition, the node tasks its local sensors to begin collecting samples. A sensor node that detects a target searches its interest cache for a matching interest entry. In this case, a matching entry is one whose rect encompasses the sensor location, and the type of the entry matches the detected target type. When it finds one, it computes the highest requested event rate among all its outgoing gradients. The node tasks its sensor subsystem to generate event samples at this highest data rate. In the previous example, this data rate is initially one event per second (until reinforcement is applied). The source then sends to each neighbor for whom it has a gradient, an event description every second of the form:
type = human |
/ / type of intruder seen |
instance = military |
/ / instance of this type |
location = [125, 220] |
/ / node location |
intensity = 0.6 |
/ / signal amplitude measure |
confidence = 0.85 |
/ / confidence in the match |
timestamp = 01:20:40 |
/ / local time when event was generated |
This data message is unicast individually to the relevant neighbors. A node that receives a data message from its neighbors attempts to find a matching interest entry in its cache. The matching rule is as described in the previous paragraph. If no match exists, the data message is silently dropped. If a match exists, the node checks the data cache associated with the matching interest entry for loop prevention. If a received data message has a matching data cache entry, the data message is silently dropped. Otherwise, the received message is added to the data cache and the data message is re-sent to the node’s neighbors.
By examining its data cache, a node can determine the data rate of received events. To resend a received data message, a node needs to examine the matching interest entry’s gradient list. If all gradients have a data rate that is greater than or equal to the rate of incoming events, the node may simply send the received data message to the appropriate neighbors. However, if some gradients have a lower data rate than others (caused by selectively reinforcing paths, then the node may downconvert to the appropriate gradient.
AGGREGATION IN WIRELESS SENSOR NETWORKS |
557 |
14.5.2 Reinforcement
The sink initially diffuses an interest for a low event-rate notification (one event per second). Once sources detect a matching target, they send low-rate events, possibly along multiple paths, towards the sink. After the sink starts receiving these low data rate events, it reinforces one particular neighbor in order to ‘draw down’ higher quality (higher data rate) events. In general, this feature of directed diffusion is achieved by data driven local rules. One example of such a rule is to reinforce any neighbor from which a node receives a previously unseen event. To reinforce this neighbor, the sink re-sends the original interest message but with a smaller interval (higher data rate). The reinforcement propagates back, and one way to chose reinforced path is to pick up one with low delay, as shown in Figure 14.11(b). Similar mechanisms are used to handle multiple source and multiple sinks scenarios, as shown in Figure 14.11(c) and (d).
In directed diffusion, intermediate nodes on a previously reinforced path can also apply the reinforcement rules. This is useful to enable local repair of failed or degraded paths as indicated in Figure 14.11(e).
14.6 AGGREGATION IN WIRELESS SENSOR NETWORKS
Data fusion or aggregation is an important concept in sensor networks. The key idea is to combine data from different sensors to eliminate redundant transmissions, and still provide a rich, multidimensional view of the environment being monitored. This concepts shifts the focus from address-centric approaches (finding routes between pairs of end nodes) to a more data-centric approach (finding routes from multiple sources to a destination that allows in-network consolidation of data).
Consider a network of n sensor nodes 1, 2, . . . , n and a sink node t labeled n + 1 distributed over a region. The locations of the sensors and the sink are fixed and known apriori. Each sensor produces some information as it monitors its vicinity. We assume that each sensor generates one data packet per time unit to be transmitted to the base station. For simplicity, we refer to each time unit as a transmission cycle or simply cycle. We assume that all data packets have size k bits. The information from all the sensors needs to be gathered at each cycle and sent to the sink for processing. We assume that each sensor has the ability to transmit its packet to any other sensor in the network or directly to the sink. Further, each sensor i has a battery with finite, non-replenishable energy Ei . Whenever a sensor transmits or receives a data packet, it consumes some energy from its battery. The sink has an unlimited amount of energy available to it. Typical assumptions used in the modeling of energy consumption are that sensor consumes elec = 50 nJ/b to run the transmitter or receiver circuitry and amp = 100 pJ/bit/m2 for the transmitter amplifier. Thus, the energy consumed by a sensor i in receiving a k-bit data packet is given by, Rxi = elec × k, while the energy consumed in transmitting a data packet to sensor j is given by, T xi, j = elec × k + amp × di2, j × k, where di, j is the distance between nodes i and j.
We define the lifetime T of the system to be the number of cycles until the first sensor is drained of its energy. A data gathering schedule specifies, for each cycle, how the data packets from all the sensors are collected and transmitted to the base station. A schedule can be thought of as a collection of T directed trees, each rooted at the base station and