
Advanced Wireless Networks - 4G Technologies
.pdf568 SENSOR NETWORKS
Other studies have looked at the impact of the transmission radius in wireless networks. In Gupta and Kumar [132] the authors analyzed the critical transmission range to maintain connectivity in wireless networks and present a statistical analysis of the probability of connectivity. On the same line of work, Kleinrock and Silvester [133] analyze the minimum number of neighbors that a node should have to keep the network connected.
In Takagi and Kleinrock [134], the authors describe a similar tradeoff for increasing the transmission radius: a shorter range implies fewer collisions and a longer range implies moving a packet further ahead in one hop. However, in that work the authors want to maximize a parameter called the expected one-hop progress in the desired direction, which essentially measures how fast a packet can reach its destination in point-to-point transmissions.
All these studies were not analyzing a protocol like flooding, but instead trying to obtain an optimal transmission radius for other metrics such as connectivity, throughput or energy. In Ganesan et al. [135] an experimental testbed of 150 Berkeley motes [136] run flooding as the routing protocol. The study showed empirical relations between the reception and settling times – parameters used in this section – for different transmission ranges.
In this section we discuss an optimal transmission radius. However, in this case the important metric is the amount of time that a flooded packet captures the transmission medium. To accomplish the goal of minimizing the settling time, the tradeoff between reception and contention times is studied including the interaction between the MAC-layer and network-level behavior of an information dissemination scheme in wireless networks.
The network model is based on the following assumptions:
(1)The MAC protocol is based on a CSMA/CA scheme.
(2)All the nodes have the same transmission radius R.
(3)The area of the network can be approximated as a square.
(4)No mobility is considered.
(5)The nodes are deployed in either a grid or uniform topology. In a uniform topology, the physical terrain is divided into a number of cells based on the number of nodes in the network, and each node is placed randomly within each cell.
The analytical model is described by the following terms:
(1)Reception time (TR) – average time when all the nodes in the network have received the flooded packet.
(2)Contention time (TC) – average time between reception and transmission of a packet by all the nodes in the network.
(3)Settling time (TS) – average time when all the nodes in the network have transmitted the flooded packet and signals the end of the flooding event.
From these definitions we observe that TS = TR + TC. If the transmission radius of the nodes is not carefully chosen, the flooded packet may take too long to be transmitted by all the nodes in the network, impacting overall network throughput. The more time the channel is captured by a flooding event, the fewer queries can be disseminated, and the less time the channel is available for other packet transmissions. We can state the relation between settling time and throughput Th in sensor networks as T h 1/ TS. So, the goal


570 SENSOR NETWORKS
Ar
R At
S /2
θ
Figure 14.16 The overlapping area between the transmission radius coverage and the effective area of the network.
the square of the radius. In the second region, the number of neighbors increases proportionally to the overlapping area between the transmission range and the network area. The overlapping area (AO) is shown in Figure 14.16
Defining Ar as the residual area beyond S/2, because of symmetry, the total overlapping area is given by
|
|
|
|
|
|
|
AO = 8 |
|
π R2 |
|||||
|
|
|
|
|
|
|
|
|
|
|
− Ar |
|||
|
|
|
|
|
|
|
8 |
|
||||||
where A |
|
|
|
|
|
|
|
|
|
2 |
||||
θ = Ar |
+ At. Since |
θ = arccos(S/2R), we have Aθ = θ (R /2) and At = |
||||||||||||
R |
2 |
|
||||||||||||
|
sin(θ ) cos(θ ). |
|
|
|
|
|
|
|
|
|
|
|||
|
|
As a consequence Ar = θ (R2/2) − R2 sin(θ ) cos(θ ) and we get for the center (+) and |
||||||||||||
corner position ( |
) |
8 |
π R2 |
|
R2 |
− R2 sin(θ ) cos(θ ) |
||||||||
|
|
|
|
|
AO+ = |
− θ |
||||||||
|
|
|
|
|
8 |
2 |
|
AO+ = R2[π − 4θ − 4 sin(θ ) cos(θ )]
In the case of the lower bound, we have one quarter of a circle and φ is given by φ = arccos(S/ R) and
|
|
π R2 |
|
R2 |
π |
|
|||
AO |
= 2 |
|
− θ |
|
− R2 sin(θ ) cos(θ ) , AO |
= R2 |
|
|
− θ − sin(θ ) cos(θ ) |
8 |
2 |
4 |
In the third region, the number of neighbors remains constant and is equal to the total number of nodes in the network. Since the values of R for the three different regions depend on the position of the node in the network, only the bounds of the edge phenomenon will be analyzed.
The node closest to the center of the network is the one increasing its number of neighbors most aggressively, hence it represents the upper bound. For this node, the second region


DATA FUNNELING |
573 |
When a node that is in the target region receives the interest packet from a neighbor node that lies outside the target region, the directional flooding phase concludes. The node realizes that it is on the border of the region and designates itself to be a border node, as shown in Figure 14.8(b). Each border node computes its cost for communicating with the controller in the same manner as was done by the nodes outside the region during the directional flooding phase. It then floods the entire region with a modified version of the interest packet. The ‘cost to reach the controller’ field is reset to zero and becomes the ‘cost to reach the border node field.’ Within the region, each node only keeps track of its cost for communicating with the border node, not its cost for communicating with the controller. Intuitively, it is as if the border node becomes the controller of the specified region. It is at one of the border nodes that all the readings from within the region will be collated into a single packet.
In addition, two new fields are added to the modified interest packet. One field keeps track of the number of hops that have been traversed between the border node and the node currently processing the packet. The other field specifies the border node’s cost for communicating with the controller, and this field, once defined by the border node, does not change as the packet travels from one node to another.
Once the nodes within the region receive the modified interest packet from the border nodes, they will then route their readings to the controller via each of the border nodes in turn. Since there are several border nodes within the region, maximizing aggregation of sensor readings requires all the nodes within the region to agree to route their data via the same border node during every given round of reporting back to the controller. This is accomplished by having every node compute an identical schedule of which border node to use during each round of reporting. This is achieved by each node in the region applying the same deterministic function to the vector of costs to reach the controller seen by each border node. Since all the nodes apply the same function to the same inputs, they will all compute the same schedule, allowing them to collect all of their data at one border node during each round of reporting. The function used to compute the schedule can be similar to the function used to compute the probabilities for selecting different paths in probabilistic routing. This allows border nodes with a low cost for communicating to the controller to be used more frequently than the ones with a high cost.
As data flows within the region from the sensors to the border nodes it can be aggregated along the way, as shown in Figure 14.8(b). When the time comes to send a new round of observations back to the controller, the sensor nodes do not immediately start sending their packets. Instead, they wait an amount of time inversely proportional to their distance (in number of hops) to the border node that will be used in that round of reporting before sending their readings toward that border node. This allows the nodes that are far away from the border node to send their data earlier than the nodes that are closer to the border node. This way, nodes close to the border will first receive the readings from upstream nodes and bundle those readings with their own. In the end, all of the data to be sent out by all the nodes within the region will be collated at one border node and sent back to the controller in a single packet, as shown in Figure 14.8(b).
If α is the ratio of bits in a packet header to the total number of bits in a packet containing the header and a single sensor reading for a particular application, and m is the average number of sensor readings per transmitted packet when data funneling is employed, then the total energy expended by the network on communication is reduced by α × (m − 1/m) × 100 % due to data funneling if no compression of the sensor readings is done at the aggregation

574 SENSOR NETWORKS
points. Performing compression on the sensor readings at the aggregation points within a region, as discussed in the sequel, would result in even greater energy savings. For this purpose coding by ordering is used.
The main idea behind ‘coding by ordering’ is that, when transmitting many unique pieces of data, and the order in which the data is sent is not important to the application (i.e. the transmitter may choose the order in which to send those pieces of data), then the choice of the order in which those pieces of data are sent can be used to convey additional information to the receiver. In fact it is possible to avoid explicitly transmitting some of those pieces of data, and use the ordering of the other information to convey the information contained in the pieces of data that were not sent.
Consider the case of the data funneling algorithm. In each round of reporting, the border node receives the packets containing sensor readings from n sensors in its region. It then places each node’s packet (containing the node ID, which may be just the node’s position, and payload) into a large superpacket containing the data of all the nodes and sends the superpacket to the controller. The border node has to include the ID of each node, which is unique, along with the node’s sensor reading so as to make it clear which payload corresponds to which node. Since all of the sensor readings from the region will reach the controller at the same time and the ordering of the packets within the superpacket does not affect the application, the border node has the freedom to choose the ordering of the packets within the superpacket. This allows the border node to choose to ‘suppress’ some of the packets (i.e. choose not to include them in the superpacket), and order the other packets within the super-packet in such a way as to indicate the values contained within the suppressed packets.
For example, consider the case when there are four nodes with IDs 1, 2, 3 and 4 in the region. Each of the four sensors generates an independent reading, which is a value from the set {0, . . . , 5}. The border node can choose to suppress the packet from node 4 and, instead, choose the appropriate ordering among the 3! = 6 possible orderings of the packets from nodes 1, 2 and 3 to indicate the value generated by node 4. Note that in this case the border node need not encode the ID of the suppressed node because that information can be recovered from the fact that there are only four nodes and the packets of three of them were explicitly given in the superpacket. The question is, how many packets can be suppressed? Let n be the number of packets present at the encoder, k be the range of possible values generated by each sensor (e.g. if each sensor generates a 4-b value, then k = 24), and d be the range of node IDs of the sensor nodes. Given n, k and d, what is the largest number of packets, l, that can be suppressed?
One strategy is to have the encoder (located at the border node) throw away any l packets and appropriately order the remaining n − l packets to indicate what values were contained in the suppressed packets. A total of (n − l)! values can be indexed by ordering n − l distinct objects. Each of the suppressed packets contains a payload that can take on any of the k possible values and an ID, which can be any value from the set of d valid IDs except for the ones that belong to the packets included in the super packet. The values contained within the suppressed packets can be regarded as symbols from a (d − n + l) × k ary alphabet, giving (d − n + l)l × kl possible values for the suppressed packets. In order for it to be
possible to suppress l out of n packets in this manner, the following relationship must be
√
satisfied (n − l)! ≥ (d − n + l)l kl ; or by using approximation, n! = 2π n(n/e)n we have (n − l)[ln(n − i) − 1] + 0.5 ln[2π (n − l)] − l ln k − l ln(d − n + l) ≥ 0
EQUIVALENT TRANSPORT CONTROL PROTOCOL IN SENSOR NETWORKS |
575 |
If this inequality is satisfied, then it is possible to suppress l packets. The suppressed packets can contain identical values. While their payloads may be identical, each packet has to have a unique ID. Since each packet has to be identified with a unique ID from among the d possible IDs, and n − l of the possible IDs are taken up by the transmitted packets, there are possible combinations of IDs that the l suppressed packets can take on; therefore, when enumerating the possible values contained within the suppressed packets, the (d − n + l)l term should be replaced by giving (n − l)! ≥ kl as the relationship that must be satisfied in order for it to be possible to suppress l out of n packets. Again, approximation can be used to convert the inequality to the following equivalent relationship with more manageable terms:
ln(2π ) + l + (l + 0.5) ln l + (n − l + 0.5) ln(n − l) + (d − n + 0.5) ln(d − n) − l ln k
− (d − n + l + 0.5) ln(d − n + l) − n ≥ 0
The two schemes presented above assume that the encoder will suppress l packets without giving much consideration to which l packets are suppressed; however, since the encoder has the freedom to choose which l packets to suppress, the number of values that may be indexed by dropping l out of n packets and ordering the remaining n − l packets increases by a factor of ( nl ). Combining this with the previous condition gives the following relationship, which must be satisfied if it is to be possible to suppress l out of n packets:
n! |
≥ |
d − n + l |
kl |
|
l! |
||||
l |
|
As before, applying approximation and some manipulation can reduce the inequality to an equivalent one:
(n + 0.5) ln n + (d − n + 0.5) ln(d − n) + 0.5 ln(2π ) − d − 0.5 ln(d − n + l)
+ (d − n + l)[ln(d − n + l) − 1] + l ln k ≥ 0
For example when n = 30, using the low-complexity scheme allows the encoder to suppress l = 6 packets, a 20 % saving in energy spent on transmitting sensor data. The bound on the number of packets that can be suppressed at n = 30 is 10. As n grows, the savings also increase. When n = 100, the low-complexity scheme provides 32 % savings, the highercomplexity scheme guarantees 44 % savings, while the bound is 53 %.
14.10 EQUIVALENT TRANSPORT CONTROL PROTOCOL IN SENSOR NETWORKS
The need for a transport layer for data delivery in WSN can be questioned under the premise that data flows from source to sink are generally loss tolerant. While the need for end-to-end reliability may not exist due to the sheer amount of correlated data flows, an event in the sensor field still needs to be tracked with a certain accuracy at the sink. So, instead of a traditional TCP layer, the sensor network paradigm necessitates an event-to-sink reliability notion at the transport layer that will be referred to as equivalent TCP (ETCP) [143–148]. Such a notion of collective identification of data flows from the event to the sink was illustrated earlier in Figure 14.10. An example of ETCP is event-to-sink reliable transport
576 SENSOR NETWORKS
(ESRT) protocol for WSN, discussed in Sankarasubramaniam et al. [123]. Some of its features are
(1)Self-configuration – ESRT is self-configuring and achieves flexibility under dynamic topologies by self-adjusting the operating point.
(2)Energy awareness – if reliability levels at the sink are found to be in excess of that required, the source nodes can conserve energy by reducing their reporting rate.
(3)Congestion control – required event detection accuracy may be attained even in the presence of packet loss due to network congestion. In such cases, however, a suitable congestion control mechanism can help conserve energy while maintaining desired accuracy levels at the sink. This is done by conservatively reducing the reporting rate.
(4)Collective identification – ESRT does not require individual node IDs for operation. This is also in tune with ESRT model rather than the traditional end-to-end model. More importantly, this can ease implementation costs and reduce overhead.
(5)Biased Implementation – the algorithms of ESRT mainly run on the sink with minimum functionalities required at sensor nodes.
In another example [141, 142], the PSFQ mechanism is used for reliable retasking/reprogramming in WSN. PSFQ is based on slowly injecting packets into the network, but performing aggressive hop-by-hop recovery in case of packet loss. The pump operation in PSFQ simply performs controlled flooding and requires each intermediate node to create and maintain a data cache to be used for local loss recovery and in-sequence data delivery. Although this is an important transport layer solution for WSN, it is applicable only for strict sensor-to-sensor reliability and for purposes of control and management in the reverse direction from the sink to sensor nodes. Event detection/tracking in the forward direction does not require guaranteed end-to-end data delivery as in PSFQ. Individual data flows are correlated and loss-tolerant to the extent that desired event features are collectively and reliably informed to the sink. Hence, the use of PSFQ for the forward direction can lead to a waste of valuable resources. In addition to this, PSFQ does not address packet loss due to congestion. For this reason in the sequel we elaborate more ESRT algorithm.
The operation of the algorithm is based on the notion of observed event reliability, ri (the number of received data packets in decision interval i at the sink), and desired event reliability, R (the number of data packets required for reliable event detection). R depends on the application. If the observed event reliability, ri , is greater than the desired reliability, R, then the event is deemed to be reliably detected. Else, appropriate action needs to be taken to achieve the desired reliability, R. With the above definition, ri can be computed by stamping source data packets with an event ID and incrementing the received packet count at the sink each time the ID is detected in decision interval i. Note that this does not require individual identification of sensor nodes. Further, we model any increase in source information about the event features as a corresponding increase in the reporting rate, f , of sensor nodes. The reporting rate of a sensor node is defined as the number of packets sent out per unit time by that node. The transport problem in WSN is to configure the reporting
