## 4 Self-Selective Routing (SSR)
### Route Repair in Self-Healing Routing (SHR)
Our approach focuses on the reduction of these control packet overheads and efficient data delivery ratio. Rather than using local information to route a given packet to the desired destinations, our approach combines both the local and global state information in order to avoid faults and collisions in the network. The most important issues to address are: (1) at the initial phase of network construction, how to avoid the problem of packet flooding because of broadcast and (2), when the network is scaled to a large network, the broadcast packet will overflow the network, thus causing too much delay and packet collisions that consume much energy. In order to address these issues, the autonomous self-awareness and adaptive scheme proposed in this paper will ensure reliable and efficient transmission and retransmission of network packets. For the self-awareness scheme, the sensor node that transmits the packets contains information pertaining to its neighbors in the control packet. The node is self-aware and adaptive if it knows all the local and global information on the packet. Then, the receiver node knows whether its neighbors have been covered based on the global information obtained in the neighbor's control packet list information. In this case, the sensor node will compute the auto self-awareness back-off delay according to Equations (4)-(10) in order to obtain the entire network state information. The sensor node with the auto self-awareness back-off information now has higher priority to forward the network packet. In this case, the sensor node that uses the global information of its neighbors has a very low back-off delay. The self-awareness and adaptive features of the node's neighbor network state information minimizes the network end-to-end delay and enhances the entire network routing performance. Here, we define global, local, and auto-self-awareness back-off delays as given in Equations (4)-(10). Ideally, this combines both the local and global network state information to have full autonomic self-awareness of the entire network state information, and reduces the time to converge to minimal routing path for efficient packet routing throughout the entire network [24,40,41,42,43,44,45,46,47,48,49,51,52,53]. Herein, we define the parameters used in Equations (4)-(10). \(Hopcount_{Dest}\) is the number of hop counts from the current node to the destination; \(NumHopCount_{expected}\) is the expected number of hops contained in the destination reference packet header information; \(Scale_{Factor}\) is a parameter used to stretch the random function in order to avoid network packet collision; Rand (seed) is a random function generator that produces random floating point numbers within the interval [0,1] based on the value of the seed; and \(Slot\_size\) is the size of the slot or the transmission window width. The global awareness transmission back-off delay is computed for each node using Equations (4) and (5):  
\[\begin{split}&\text{If }Hopcount_{Dest}\ >NumHopCount_{expected}\\ &\text{ \  
If \(\mathit{Hopcount}_{\mathit{best}}>\mathit{NumHopCount}_{\mathit{expected}}\)  
\[ \begin{split}&\mathit{Local-Awareness-Back-offDelay}=\\ &\mathit{Scale}_{\mathit{Factor}}*(\mathit{Hopcount}_{ \mathit{best}}-\mathit{NumHopCount}_{\mathit{expected}}+\mathit{Rand}(0,1))\\ &\mathit{Else\ Hopcount}_{\mathit{best}}\leq\mathit{NumHopCount}_{ \mathit{expected}}\\ &\mathit{Local-Awareness-Back-offDelay}=\mathit{Global-Awareness-Back-offDelay}\end{split}  \tag{6}\]  
The autonomous self-awareness technique combines both the local and global back-off delay transmission strategies in order to find the entire network state information for efficient transmission and retransmissions of packets. Equation (8) combines two randomized functions to allow both the near and far nodes minimize the back-off delay. Based on this, the sender node has a greater probability of transmitting the packet:  
If \(\mathit{Hopcount}_{\mathit{best}}>\mathit{NumHopCount}_{\mathit{expected}}\)  
\[