**3.1. Routing process**

Nodes in a routing table are classified into three categories: 1) parent node, 2) sibling node and 3) child node. A parent node is a node in the transmission range of another sending node and having a hop count one less than the sending node. A sibling node is a node in the transmission range of another sending node and having the same hop count as the sending node. A child node is a node in the transmission range of another sending node and having a hop count one more than the sending node. After deploying sensor nodes into the network field, the routing tables of the underlying sensor nodes are established. To illustrate the process, a network is constructed in Fig. 3. The network has eight sensors: a sink node, two mission-critical sensors (*A* and *F*), and five regular sensors (*B*, *C*, *D*, *E*, and *G*).

The routing process is started when the sink node broadcasts a setup packet to all nodes within its transmission range. The setup packet contains several parameters including the number

**Figure 3.** Routing process configuration

4 Will-be-set-by-IN-TECH

maximum number of link-cuts is identified as the worst-case cut (i.e the region in Fig. 2a). On the other hand, the failure region depicted in Fig. 2b disconnects the dashed region (8 nodes) from the rest of the network which has a greater impact on the network than the case shown

Therefore, we first propose a new model for the worst-case region-cut considering disconnected nodes (Node-Based) due to a region-failure as the major criteria for identifying the worst-case region-cut. In our proposed model, we may select a region with less number of link-cuts as the worst-case cut if it isolates a larger number of nodes. Moreover, in our proposed model mission-critical nodes are given more weight during the worst-case analysis

The network model we consider here is composed of a base station, a sink node, and a set of distributed wireless sensor nodes. The base station can be inserted in any suitable place whether in the field or somewhere else. It is directly connected to the sink node through a wire or wireless link. The sink node is a wireless sensor with high capability in memory, processing, power, and wireless coverage. It works as an intermediate node between the base station and the other sensors. It receives commands from the base station and then conveys them to the deployed sensors. In addition, it collects data from the sensors and sends it to the base station. The other sensor nodes are categorized into mission-critical (MC) sensor nodes and regular sensor nodes. A mission-critical sensor node is a node that is responsible for sensing or reading mission-critical information such as a sensor node in the battle field. while the regular sensor node is any other node. These sensors which have limited capabilities in their battery-powers, memory, and processing are distributed all over the area of interest in

In the rest of this section we present the problem formulation of our proposed model in section 3.1. Then, in section 3.2 we introduce the routing process based on the above mentioned network model. Finally, we demonstrate the region failure analysis under single and dual

Nodes in a routing table are classified into three categories: 1) parent node, 2) sibling node and 3) child node. A parent node is a node in the transmission range of another sending node and having a hop count one less than the sending node. A sibling node is a node in the transmission range of another sending node and having the same hop count as the sending node. A child node is a node in the transmission range of another sending node and having a hop count one more than the sending node. After deploying sensor nodes into the network field, the routing tables of the underlying sensor nodes are established. To illustrate the process, a network is constructed in Fig. 3. The network has eight sensors: a sink node,

The routing process is started when the sink node broadcasts a setup packet to all nodes within its transmission range. The setup packet contains several parameters including the number

two mission-critical sensors (*A* and *F*), and five regular sensors (*B*, *C*, *D*, *E*, and *G*).

such a way that any deployed node has at least one path to the sink node.

in Fig. 2a which has only 6 disconnected nodes.

**3. Proposed model**

region-failures in section 3.3.

**3.1. Routing process**

process to reflect the importance of its service continuity.

of hops *h* between the sending node and the sink node. Each sensor node receiving the setup packet from the sink node sets its value of *h* to the incremented value of the received *h* and marks the sink node as a parent node. For the network shown in Fig. 3a, each of the nodes *A*, *B*, and *C* in the solid circle marks the sink node as its parent. Then, every node with hop count of 1 broadcasts a newly constructed setup packet. For example, suppose that the node *B* sends its setup packet. In this case, the sink node (belongs to the third category), the sensor nodes *A* and *C* (belong to the second category), and the sensor nodes *D* and *E* (belong to the first category) mark the node *B* as a child, sibling, and parent, respectively. Each node in the first category (in this case, *D* and *E*) sets its value of *h* to 2 (i.e., the value of received *h* + 1). Each of the nodes *D* and *E* constructs its setup packets and broadcasts it to its neighbors. This broadcasting process is repeated hop-by-hop by the nodes of the first category until all the deployed sensor nodes establish their routing tables. This will end up with the Fig. 3b, where a headed-arrow represents a link between a parent node and a child and it starts from the parent and heads into its child. A line with no arrow-head refers to a link between two sibling nodes.

### **3.2. Problem formulation**

When considering circular cuts, we assume that a disaster results in a cut of radius *r*, which is centered at [x,y]. We define the worst-case region-cut of a network topology *nt* as *WCC*(*nt*) which can be evaluated as follows.

$$\text{WCC}(nt) = \max\_{\forall\_{x,y}} (rw\_{x,y}) \tag{1}$$

Where *rwx*,*y* is the weight function of the region-cut centered at (x,y) and can be evaluated as follows.

$$rw\_{\mathbf{x},\mathcal{Y}} = \csc\underbrace{\sum\_{\mathbf{s}\_{i}\in\mathbf{ds}\_{\mathbf{x},\mathbf{y}}}}\_{\text{Disconnected nodes}} + \sum\_{\substack{\mathbf{s}\_{\mathbf{j}}\in\mathbf{\tilde{f}}\mathbf{s}\_{\mathbf{x},\mathbf{y}}\\ \text{Faidel nodes}}} \mathbf{w}(\mathbf{s}\_{\mathbf{j}}) + \sum\_{\substack{\mathbf{b}\_{\mathbf{i}}\in\mathbf{b}r\_{\mathbf{x},\mathbf{y}}\\ \text{Faidel links}}} \mathbf{b}w(\mathbf{b}\_{\mathbf{i}}) \tag{2}$$

#### 6 Will-be-set-by-IN-TECH 122 Wireless Sensor Networks – Technology and Protocols

Where *c* is a constant that gives the disconnected nodes higher weight than link-cuts, *dsx*,*y* is the set of disconnected sensor nodes due to the region-cut centered at (*x*,*y*), and *nw*(*si*) is the weight of the sensor node *si* that differentiates between a regular node and a mission-critical node.

*f sx*,*<sup>y</sup>* is the set of failed sensor nodes within the region-failure centered at (x,y), and *pw*(*sj*) is the weight of the sensor node *sj* on the path from a source node *S* to the sink node. The *pw*(*sj*) is used to distinguish between a node on a regular path or a mission-critical path. *brx*,*y* is the set of paths (bridges) connecting a disconnected network partition (due to the region-cut centered at (x,y)) with a connected network section. *bw*(*bi*) is the weight of the bridge *bi*.

Equation 1 indicates that, the worst-case cut can be located by evaluating a weight function *rwx*,*y* for each region cut and the region-cut with maximum weight is considered the worst-case region-cut.

Equation 2 evaluates the weight of a region cut centered at [x,y] by estimating the importance of three main factors: disconnected nodes, failed nodes, and link-cuts as described in Eq. 2.

The first term <sup>∑</sup>*si*∈*dsx*,*<sup>y</sup> nw*(*si*) is the summation of the weights of all disconnected nodes due to the region-failure. Through the node weight *nw*(*si*), we provide more weight to mission-critical nodes than regular nodes as indicated by Equation 3.

$$mw(s\_i) = \begin{cases} 1 & \text{if } s\_i \in RS\_\prime \\ 2^c & \text{if } s\_i \in MS\_\prime \end{cases} \tag{3}$$

Where *RS* is the set of all regular sensor nodes in the network field and *MS* is the set of all mission-critical sensor nodes.

The second term <sup>∑</sup>*sj*∈*rsx*,*<sup>y</sup> pw*(*sj*) represents the summation of all path weights of the failed nodes (all nodes within the region cut).

This weight function *pw*(*sj*) is used to grant higher weights to the failed nodes within the region failure that are used in forwarding mission-critical information as described in Eq. 4.

$$pw(s\_j) = \begin{cases} 0 & \text{if } s\_j \in RS \text{ & } s\_j \notin MS\_\prime\\ 2^c & \text{if } s\_j \in MS\_\prime\\ \sum\_{s\_k \in SC(s\_j)} \frac{pw(s\_k)}{pn\_k} & \text{if } s\_j \in RS \text{ & } s\_j \in MP. \end{cases} \tag{4}$$

Where *MP* is the set of mission-paths which we refer to as paths carrying mission-critical information, *SC* is set of children of the sensor *sj* and *pnk* is the number of parents of the sensor *sk* .

In Eq.4, the path weight *pw*(*sj*) is assigned a value of zero if a failed node is a regular node that is not located on a mission-path (i.e., it is not used to forward mission-critical information). on the other hand, if the failed node is mission-critical node it receives higher path weight. Finally, if the failed node *sj* is a regular node that is located on a mission-critical path, then the path weight is evaluated recursively by the summation of the ratio of path weights *pw*(*sk*) of the child node *k* to the number of parent nodes *pnk* of the child node *k*.

The last term *bw*(*bi*) is the weight of the bridge *bi*. This weight function reflects the importance of a failed link due to a region-cut. Here, a failed link can participate in more than one bridge. Hence, we are interested in calculating the the For example, if all links on the failed bridge are not located on mission-path it is given a weight of 1.

6 Will-be-set-by-IN-TECH

Where *c* is a constant that gives the disconnected nodes higher weight than link-cuts, *dsx*,*y* is the set of disconnected sensor nodes due to the region-cut centered at (*x*,*y*), and *nw*(*si*) is the weight of the sensor node *si* that differentiates between a regular node and a mission-critical

*f sx*,*<sup>y</sup>* is the set of failed sensor nodes within the region-failure centered at (x,y), and *pw*(*sj*) is the weight of the sensor node *sj* on the path from a source node *S* to the sink node. The *pw*(*sj*) is used to distinguish between a node on a regular path or a mission-critical path. *brx*,*y* is the set of paths (bridges) connecting a disconnected network partition (due to the region-cut centered at (x,y)) with a connected network section. *bw*(*bi*) is the weight of the bridge *bi*.

Equation 1 indicates that, the worst-case cut can be located by evaluating a weight function *rwx*,*y* for each region cut and the region-cut with maximum weight is considered the

Equation 2 evaluates the weight of a region cut centered at [x,y] by estimating the importance of three main factors: disconnected nodes, failed nodes, and link-cuts as described in Eq. 2.

The first term <sup>∑</sup>*si*∈*dsx*,*<sup>y</sup> nw*(*si*) is the summation of the weights of all disconnected nodes due to the region-failure. Through the node weight *nw*(*si*), we provide more weight to

Where *RS* is the set of all regular sensor nodes in the network field and *MS* is the set of all

The second term <sup>∑</sup>*sj*∈*rsx*,*<sup>y</sup> pw*(*sj*) represents the summation of all path weights of the failed

This weight function *pw*(*sj*) is used to grant higher weights to the failed nodes within the region failure that are used in forwarding mission-critical information as described in Eq. 4.

<sup>2</sup>*<sup>c</sup>* if *sj* <sup>∈</sup> *MS*,

*pw*(*sk*)

Where *MP* is the set of mission-paths which we refer to as paths carrying mission-critical information, *SC* is set of children of the sensor *sj* and *pnk* is the number of parents of the

In Eq.4, the path weight *pw*(*sj*) is assigned a value of zero if a failed node is a regular node that is not located on a mission-path (i.e., it is not used to forward mission-critical information). on the other hand, if the failed node is mission-critical node it receives higher path weight. Finally, if the failed node *sj* is a regular node that is located on a mission-critical path, then the path weight is evaluated recursively by the summation of the ratio of path weights *pw*(*sk*) of

1 if *si* ∈ *RS*,

0 if *sj* ∈ *RS* & *sj* �∈ *MS*,

*pnk* if *sj* ∈ *RS* & *sj* ∈ *MP*.

<sup>2</sup>*<sup>c</sup>* if *si* <sup>∈</sup> *MS*. (3)

(4)

�

mission-critical nodes than regular nodes as indicated by Equation 3.

*nw*(*si*) =

node.

worst-case region-cut.

mission-critical sensor nodes.

sensor *sk* .

nodes (all nodes within the region cut).

*pw*(*sj*) =

⎧ ⎪⎪⎨

⎪⎪⎩

∑*sk*∈*SC*(*sj*)

the child node *k* to the number of parent nodes *pnk* of the child node *k*.

on the other hand,if all links on the failed bridge are located on mission-path it is given the highest weight.

Finally, if not all of the links on the failed bridge are located on a mission-path, its weight is a percentage of the highest weight. This percentage can be evaluated by the ratio of the number of links carrying mission-critical information of the bridge *MLbi* to its total number of links *TLbi* as described in Equation 5

$$bw(b\_i) = \begin{cases} 1 & \text{if all sensors in } b\_i \notin MP\_\prime \\ c & \text{if all sensors in } b\_i \in MP\_\prime \\ \frac{ML\_{b\_i}}{TL\_{b\_i}} \cdot c & \text{otherwise.} \end{cases} \tag{5}$$

where *bi* is a linking path (bridge) connecting a disconnected node with a connected nodes and passing through failed nodes. Each of the connected and disconnected nodes should have a direct link with a failed node. The bridge direction should be from a child toward a parent (i.e. any bridge linking two sibling nodes is excluded). *MLbi* is the number of mission-critical links located on the bridge *bi*, and *TLbi* is the total number of links of the bridge *bi*.

To further illustrate the evaluation of the worst-case region-failure, we provide the following example shown in Fig. 4. In this example compare two different region failures as shown in Fig. 4c and Fig. 4d. Herefater, we also provide the corresponding analytical calculations.

For the network shown in Fig. 4a, to find the worst-case region-failure we have to apply the routing process discussed earlier to configure the routing tables by the category (parent, sibling, child) of each neighbor. The result of routing phase for the given network topology is depicted in Fig. 4b. As described earlier in this section, the headed-arrow represents a child node toward the head and a parent node toward the tail while a line without heads represents a sibling relationship. Hereafter in the following example, we assume that the value of the constant c is equal to 5.

For the failure *Region*1 shown in Fig. 4c, to find the worst-case region-cut, we apply Eq. 2 of our proposed model to get the weight of this region-failure as follows. For the calculation of the node weight *nw*(*si*) based on Eq. 3, each node in the disconnected partition of the topology is assigned a value of 1. Hence, <sup>∑</sup>*si*∈*dsRegion*<sup>1</sup> *nw*(*si*) = 6. Note that, there is no mission-critical nodes in the disconnected partition. For the calculation of the path weight *pw*(*sj*) we use Eq. 4. As all the failed nodes within the region-failure are not carrying mission critical information, then <sup>∑</sup>*sj*∈*f sRegion*<sup>1</sup> *pw*(*sj*) = 0. Finally, for the bridge weight *bw*(*bi*) we use Eq. 5. Here we have 6 different paths (bridges) crossing the region-failure and none of these bridges is carrying mission-critical informations. Hence, each bridge will be given a weight of 1. Consequently, <sup>∑</sup>*bi*∈*brx*,*<sup>y</sup> bw*(*bi*) = 6. Finally, since the constant c is assumed to have the value of 5, we have *rwRegion*<sup>1</sup> = 5 ∗ 6 + 0 + 6 = 36. Note that, any bridge that has a link connecting two sibling nodes will be execluded.

**Figure 4.** Calculations of the worst-case region-cut

Similarly, For the failure *Region*2 shown in Fig. 4d, we apply Eq. 2 to get the weight of this region-failure as follows. For the calculation of the node weight *nw*(*si*) based on Eq. 3,each node in the disconnected partition of the topology is assigned a value of 1 except each of the mission-critical nodes *<sup>A</sup>* and *<sup>B</sup>* will have the value of 32. Hence, <sup>∑</sup>*si*∈*dsx*,*<sup>y</sup> nw*(*si*) = <sup>64</sup>+ <sup>6</sup> = 70.

For the calculation of the path weight *pw*(*sj*) we use Eq. 4. As the failed nodes within the region-failure are carrying mission critical information of node *A* and *B*, we have to find the weight of each node on a mission-path to the sink node. The estimation of the *pw*(*sj*) is performed as follows. first, each mission-critical node such as *A* and *B* receives a weight of 32 based on equation 4. Since the node *B* has only two parent nodes (node *F* and node *E*), each of them will receive half of the weight of the node *B* (i.e 16). Node *D* will receive its *pw*(*D*) weight of 24 which is the sum of 8 (half of the *pw*(*F*) as node *F* has two parent nodes) and 16 (the *pw*(*E*) as node *E* has only one parent node) received from its child nodes *F* and *E*, respectively. In the same way, Node *G* will have a *pw*(*G*) weight of 8 ( half of the *pw*(*F*) of its child node *F*), Node *C* will have a *pw*(*C*) weight of 52 (the sum of *pw*(*G*) , *pw*(*A*), and half of *pw*(*D*)), Node *H* will receive a *pw*(*H*) of zero since the node *H* is not on a mission-path, Node *I* will receive a *pw*(*I*) weight of 12 which is half of the *pw*(*D*) weight of its child node *D*, Node *J* will receive a *pw*(*J*) of 64 that is the sum of *pw*(*I*) and *pw*(*C*). This process continues in the same way up to the sink node as shown in Fig. 4d. Then,

<sup>∑</sup>*sj*∈*f sRegion*<sup>2</sup> *pw*(*sj*) = *pw*(*I*) + *pw*(*J*) = 76. Note that, In Fig. 4c and Fig. 4d, a node *<sup>z</sup>* without a *pw*(*z*) weight indicates that this node is not on a mission-path.

Finally, we calculate the bridge weight *bw*(*bi*) for each bridge using Eq. 5.In Fig. 4d, we have 4 different paths (bridges) crossing the region-failure and all of them carrying mission-critical informations. Hence, each bridge will be given a weight of 5 according to Equation 4. Consequently, <sup>∑</sup>*bi*∈*brRegion*<sup>2</sup> *bw*(*bi*) = 20. Finally, we have *rwRegion*<sup>2</sup> = <sup>5</sup> ∗ <sup>70</sup> + <sup>76</sup> + <sup>20</sup> = 446.

Based on Eq. 1 of the proposed model, the region-failure with maximum weight will be chosen as the worst-case region-failure ( *Region*2 in this example).
