An Efficient Bypassing Void Routing Algorithm for Wireless Sensor Network

Since the sensor node’s distribution in a wireless sensor network (WSN) is irregular, geographic routing protocols using the greedy algorithm can cause local minima problem. This problem may fail due to routing voids and lead to failure of data transmission. Based on the virtual coordinate mapping, this paper proposes an efficient bypassing void routing protocol to solve the control packet overhead and transmission delay in routing void of WSN, which is called EBVRPVCM. The basic idea is to transfer the random structure of void edge to a regular one through mapping the coordinates on a virtual circle. In EBVRPVCM, some strategies, executed in different regions, are selected through virtual coordinates to bypass routing void efficiently. The regular edge is established by coordinate mapping that can shorten the average routing path length and decrease the transmission delay. The virtual coordinatemapping is not affected by the real geographic node position, and the control packet overhead can be reduced accordingly. Compared with RGP and GPSR, simulation results demonstrate that EBVRPVCM can successfully find the shortest routing path with higher delivery ratio and less control packet overhead and energy consumption.


Introduction
In recent years, wireless sensor network (WSN) has been widely used in various fields [1].Routing is one of the key technologies in WSN.Geographic routing [2] selects path only relying on the location information of neighbor nodes.Since geographic routing protocol has the characteristic of better scalability and is less affected by the network size, it has broad application prospects [3] in large-scale WSNs.Due to the node's irregularity in distribution, geographic routing protocol using greedy algorithm can cause local minima problem thus leading to data transmission failure eventually [4], which is called routing void problem.
To solve the routing void, [5] designated a quarantine program around the cavity.The program using the ban in the area of separation node acts as a relay node to avoid routing void.Reference [6] put forward a RCF (Ring-Constraint Forwarding) algorithm.RCF creates an annular cavity around the band.To avoid voids, the policy routing is created by selecting the relay node in the annular band.Chang et al. proposed the RGP (Route-Guiding Protocol) algorithm [7].
To avoid routing voids, RGP is selected for each node in the network from the overall perspective of the destination node according to the position relationship between the relay node and the void area.While the above methods are adopted to select a special area designating relay node to reduce computational complexity, the implementation process will have greater control packet overhead and transmission delays.RGP is not conducive to network energy-saving and also unable to resolve planning given special area inside the node routing void problem.Reference [4] proposed GPSR (greedy perimeter stateless routing) protocol.To solve the problem, GPSR used a network link topology through a combination of greedy mode and edge forwarding mode.Reference [8] presented a subeffective interface routing algorithm.But the routing algorithms in [4,8] need to build and maintain peripheral node link diagram (such as Gabriel Graph), which is not conducive to the expansion of large-scale networks.
At present the method which uses virtual geography information to solve the routing void problem has achieved some initial research results [9,10].But the key problem is that network nodes use the preselected reference node [9] or the neighbor node information to rebuild their coordinate information [10].If the network node corresponding to the destination node is changed, it uses the virtual reconstruction location information.It can only apply to a fixed destination node, and the network is inevitably void.Node in virtual position based routing protocol is limited by the real physical position, and the virtual location can be adjusted.Although the greedy algorithm is simple and less complex, the existing virtual routing protocols are not suitable for every node in the network.
To overcome the drawbacks of the above protocols, an effective bypass void routing protocol based on the virtual coordinates mapping (EBVRPVCM) is proposed in this paper.The protocol not only maps the routing void of edge node coordinate to a void in the center of the cavity so as to cover a virtual circle in the network, but also creates the virtual coordinate of the edge node.Therefore the edge node with a virtual coordinate can be selected as a relay node.For the void area on the network, a circular virtual structure can effectively bypass routing void.Compared with the traditional protocols, the proposed protocol selects the relay node by greedy algorithm on one node and saves the energy consumption effectively.Through establishing the virtual location, it is independent of the destination node.There is no need to rebuild the virtual location information even if the destination node changes.
The rest of the paper is organized as follows.Section 2 describes the related work of routing void generation and network edge structure.Section 3 describes the components, stages, and design of the proposed protocol.Section 4 analyzes the virtual coordinated, actual coordinates, path, and control cost of EBVRPVCM.Section 5 evaluates the performance through numerical simulation on NS2 platform.Section 6 is the conclusion and future work.

The Related Work
2.1.Routing Void Generation.For routing based geographic information, we use the greedy algorithm to choose the relay nodes which is closer than their neighbor nodes to the destination.If such neighbor node does not exist, there will be routing void [11].Figure 1 illustrates the void generate schematic.
As shown in Figure 1, node  2 receives the data transmitted by  1 , and the destination node is  1 .A set of neighbor nodes for the node  2 is { 1 ,  3 , and  4 }; since the distances from the nodes  1 ,  3 , and  4 to the destination node  1 are greater than that of  2 , the route appears void according to the greedy algorithm [12].The data will not be able to pass through.Similarly, when the node  5 sends data to the destination node  2 , routing void will appear too.

No Routing
the distribution of the edge node to the center of the circle  is determined. is the radius of the circle, as shown in Figure 2. In the edge of the structure around the area of the obstacle, each edge node has only two neighbor edge nodes.
From isotropic circular geometry, the packet routing is not void for any destination node while going through the region.
Each node uses the greedy algorithm to select the relay node path.As an example, the source node  sends packets to destination node  and shows the generation of free routing void.The edge node  1 receives the packet and uses the greedy algorithm to find the next hop relay node.The same is for edge node  2 .The two nodes are distributed in a concentric circle, and the distance of  2 to destination node  is less than that of  1 .Then  1 selects  2 as the next hop node, and the routing void problem does not occur.Packets in the edge node  3 will not either incur routing void problem.The edge node  4 uses greedy algorithm to select the next hop node  5 , and the packet is sent to the edge node  4 .Until the data is sent to the destination node , in this process, the greedy algorithm mechanism has not failed.

EBVRPVCM Routing Protocol
EBVRPVCM is composed of the greedy mode and the void processing mode.In this protocol, the relay node uses the conventional greedy mode to forward data.If the greedy mode fails, and the routing void appears, it changes to the void processing mode.According to the execution sequence, the void processing is divided into void detection, virtual coordinate mapping, and void area division.Through the void processing, the virtual coordinates of edge node are established.After starting the greedy mode again, these edge nodes with virtual coordinates can be selected as relay nodes.The details of designing the void processing mode about EBVRPVCM are given in the following subsection.There are three main stages of the given protocol.

Void Probe Stage.
The void detection stage is responsible for collecting information of the void edge node after routing void appears.When the packets meet the routing void during data transmission within the network, we called it the failed node of the greedy algorithm and try to find a substitute node.When the substitute node detects the routing void, it caches the data packets, generates a void robe packet, and initiates the process of void detection.The void probe packet stores the whole founded time and labels each edge node and geographic coordinates.The detection process can be implemented through using left (right) hand technology [11].When the detection packet goes back to the founded node, it contains the information of the edge node set that is named In the detection process, it is found that there are multiple nodes and multiple probe packets within the same void detection area simultaneously.To reduce the detection of repeated forwarding different probe packets to the same node, the node receives probe packets and labels the void founded time recorded in the probe packets.According to the void founded time, it discards the probe packets if the founded time in the node labeled by new probe packets is later than that in the node and otherwise continues to probe until it reaches the corresponding founded node.Eventually only the probe packets sent by the earliest founded node complete the void detection in the entire void region.

Virtual Coordinate Mapping Stage.
The virtual coordinate mapping stage mainly maps the node information to a virtual circle, where the founded node is obtained from the void edge node.Eventually it is converted into the structure without the routing void network edge as mentioned in Section 2.2.
The probe packets launched by the discovery node and eventually returned to the founded node contain the ID and the corresponding geographic coordinate information of the edge nodes in the routing void.Let ( 1 ,  1 ), ( 2 ,  2 ), . . ., (   ,    ) denote the coordinates of each edge node, and the coordinates of the void center point  are The maximum distance from the edge node to the void center is Here, void center  is the center of the circle, and   is the radius of virtual circle for mapping of virtual circle.When the mapping of virtual circle is determined, the virtual coordinate maps the void edge node [12].
Let  indicate the line segments of the connection of adjacent edge node, which maps the virtual circle of center  as a starting point and denotes the rays passing by node   as   . is a set temporarily storing a plurality of node information,  stands for the base, and the virtual coordinates of the edge node need to be determined, respectively.The pseudo code of virtual coordinate mapping algorithm is shown in Pseudocode 1.
Figure 3 is the diagram of virtual coordinate mapping schematic.As shown in Figure 3,  stands for the void center, and the arc is the part of the mapping virtual circular.Edge nodes  1 and  5 are the mapped virtual location of   1 and   5 , respectively.After mapping, the virtual positions of edge nodes  2 ,  3 , and  4 are between the virtual nodes   1 and   5 .The mapped nodes are   2 ,   3 , and   4 , respectively.Once the virtual coordinate mapping is completed, the discovered node initializes the virtual location distribution package.Also it distributes the virtual location coordinates of the edge nodes and the void center to the edge of the corresponding node and sends the probe packets along with the path (void edge).After receiving the virtual location of the distribution package, each edge node broadcasts the information to the neighbor nodes.The broadcast message contains a virtual coordinate of edge node itself and that of the void center point.

Void Zone Division Stage.
In order to perform different routing strategies in different regions, the void zone division stage is responsible for the current void surrounding dividing.According to the location of void and the destination node, the void and the surrounding area are divided into the closer region and the free zone, as shown in Figure 4.
In Figure 4,  is mapped as the virtual circle center,  is the destination node, and the dotted line, as shown in the circle, determines the mapping of virtual circle.We draw two tangents from the destination node  to the mapped virtual circle which crosses at the points  and , respectively.The quadrilateral region surrounded by , , , and  is the detachment area of the mapped virtual circle, which is the area  shown in Figure 4.The rest of the region within the two tangent lines and mapped virtual circle with the removal of detachment area is called the closer region of the mapped virtual circle, that is, the area  shown in Figure 4.The lateral region from the tangent of the mapped virtual circle is known as the free zone of the mapped virtual circle, which is the area  shown in Figure 4.The three areas are divided according to the current route void based on the different destination node correspondingly.

Virtual Coordinate
Based Routing Design.After performing above three phases, the edge node of the void contains the location information of the actual coordinates and virtual coordinates.According to the destination node, the peripheral void is divided into three different regions.The founded nodes use the virtual coordinate to initiate a routing event and send the cached packets in the first phase to the related nodes.In route search, the nodes distributed in three different regions select the relay nodes in different ways.But they adopt the conventional greedy algorithm.The main steps of EBVRPVCM are as follows.
Step 1.A node receives a data packet.
Step 2. The node determines whether itself or a neighbor uses the virtual coordinates.If it does, go to Step 3, otherwise to Step 4.
Step 3. If the node is closer to the area, it uses the virtual coordinates to select a relay node; if the node is out of the area, it uses the actual coordinate prior to selecting nonedge node as the relay node; if it is in the free zone, it uses the actual coordinate to select a relay node.
Step 4. If there is no void during the process of selecting relay node using the greedy mode, go to Step 6, otherwise to Step 5.
Step 5.The node starts void processing mode and establishes the current void virtual coordinates and returns to Step 2.
Step 6.The node sends data packets to the selected relay node.
Since the mapping of virtual round void constitutes a nonvoid edge routing structure, the packets going through the void can bypass the void.It is not affected by the position of source node and destination node.

The Virtual Coordinates and Actual
Coordinates.After executing the virtual coordinate mapping algorithm, virtual coordinates of edge nodes are sequentially distributed on the current mapped virtual void circle correspondingly.So it is possible that there exists the dislocation among the mapped edge virtual coordinates and the nonvoid edge node coordinates.It is known from Section 3.3 that the virtual coordinate is only used between the void edge node and its neighbor nodes.According to the routing steps mentioned in Section 3.4, it uses the virtual coordinate to select the relay node in the closer region.Once bypassing the current void and entering the detachment region, it prefers to use the actual coordinate to select the relay node.The virtual coordinate plays a guiding role in the process of selecting relay node.Since it is independent of geographical coordinates [13], the execution of greedy algorithm [12] is only limited either within the geographical coordinates or within the virtual coordinates.Therefore, even if there is coordinates overlap between the virtual coordinate of the edge and the coordinates of nodes on the nonvoid edge, it does not affect the routing selection.

Path Analysis.
From Section 3.2, it is known that all the neighbor nodes of edge node receive the broadcast void information after mapping the virtual coordinate.Nodes use this void information to judge the void in advance, and correspondingly the transmission path is shortened.As shown in Figure 5(a), the node   sends a packet to the destination node, and the void appears when   sends data packets to node  V using the greedy algorithm [12] before the establishment of virtual coordinates.
If we use the edge forwarding protocol to solve void problem, the packet is always at  V to enter the edge forwarding mode.Assuming that there is a uniform distribution of the network nodes, the node density is .When the current void virtual coordinate is established using EBVRPVCM routing protocol, the probability of at least one edge node falling in the communication radius of node   and node where  is the area of intersection region within communication radius that does not contain the obstacle region.In this case, the edge node   will be directly selected as the forwarding node according to the virtual coordinate, which shortens the transmission path.With the increase of the node's probability density , the probability of shortening the transmission path is increased gradually.Therefore, EBVR-PVCM can obtain the shortest routing path.Meanwhile, it is conducive to further shorten the routing path in the case of using the whole information of void during the process of relay node selection.As shown in Figure 5(b), nodes  and  are the source node and destination node, respectively. 2 is the ideal transmission path of nonvoid. 1 is the transmission path selected by routing protocol based on the edge forwarding. 3 is the transmission path selected by EBVRPVCM.
As the number  of packet sent across the network increases, the average size of the control packet in EBVR-PVCM protocol is close to the greedy algorithm.
To compare with the edge forwarding protocol, we have the following notations.The edge forwarding control packet size is FCP efp , the ratio of the greedy algorithm for routing is , and the average number of hops data reaching the destination node is hrd gr , and then the number of control packets used to send  packets is The average size of a control packet is From Section 4.2, because under the edge forwarding mode FCP fp > CPS gr and 0 <  < 1, it is known that hrd EBVRPVCM < hrd gr . ( Correspondingly, we obtain the following results: CPS gr hrd EBVRPVCM < CPS gr hrd gr < ACP efp < FCP efp hrd gr . For the same fixed node of wireless sensor network,  is constant.From ( 9), the average control packet size ACP efp is independent of the amount of data packet size , and the range of the value is set in (11).While  EBVRPVCM is reduced with the increase of data packets sent in the network, there exists   that satisfies ACP EBVRPVCM < ACP efp , when  >   .So the size of control packet used in EBVRPVCM is smaller than that in the edge forwarding protocol.

Parameter Setting.
To verify the performance of EBVR-PVCM routing protocol, this paper simulates it on the platform of NS2 [14] and compares it with RGP and GPSR.Simulation scenario is a square area, and sensor nodes are evenly distributed within the square area.We simulate routing void of the real application environment through prohibiting deploying nodes around the center.
For the convenience of comparison, we randomly select the destination nodes in the lower region of the square area and source nodes in the upper region, respectively.The source nodes send packets to the destination nodes.During the simulation, we randomly select one node as the destination node and 4 nodes as the source node.The void radius changes from 90 m to 270 m.The simulation performance indexes are ratio of packet successfully transmitted, end-to-end delay, average number of hops, cost of control packet, and energy consumption.Because the routing protocols of [5,9] do not guarantee that any node in the network is effective, even if there exists a routing path, it may not be possible to establish a link.So we compare the performance of EBVRPVCM with RGP [7] and GPSR [4].Specific parameters are shown in Table 1.

Scenario 1: Effects of Void Radius on Transmission Ratio.
Effect of void size on the successful transmission ratio is shown in Figure 6.
With the gradual increasing of void radius, the successful transmission ratios of EBVRPVCM and GPSR are in the trend of decreasing.While the successful transmission ratio of RGP keeps at around 95%.When the void is small, the performance of EBVRPVCM and GPSR is better than that of RGP.
With the increase of void radius, RGP remains the stable success transmission ratio because it is a flooding based routing protocol that has stronger ability to establish an effective path.When the void radius is over 210 m, the success transmission ratio of EBVRPVCM is lower than that of RGP.

Scenario 2: Effects of Void Radius on Average Transmission
Delay. Figure 7 illustrates the effects of void size on the average transmission delay.
The average transmission delay is mean value of transmission delay of packet successfully reaching destination node.As the RGP needs to establish a routing path firstly and then transmits data, the transmission delay is higher, and the transmission delay is two times more than that of the other two kinds of routing protocols.When the void is small, the transmission delay of EBVRPVCM is slightly smaller than that of GPSR.With the increasing of void radius, the transmission delay is increased accordingly, but the growth of transmission delay of GPSR is faster than that of EBVRPVCM.

Scenario 3: Effects of Void
Size on Average Hops.The effect of void size on the average hops is shown in Figure 8.The number of average hops of EBVRPVCM is around 8 hops less than that of RGP.With the increasing void radius, the number of average hops becomes larger gradually.When the void radius is over 240 m, there is relatively substantial increase of the average number of hops of GPSR routing.As the EBVRPVCM routing can select the shortest path to bypass the void region according to position of void and the destination, the corresponding growth of average transmission delay and hop increases flatly with the growing of the void radius as shown in Figures 7 and 8.

Scenario 4: Effects of Void Size on Average Energy
Consumption.Table 2 shows the statistical results of average energy consumed by sending the unit packet under different void radius during the simulation periods of 0∼100 s and 0∼200 s, respectively.
Because there are more nodes participating in path establishment in RGP and needs to maintain the link, the average energy consumption is far higher than that of the other two kinds of routing algorithms.The routing path establishment of EBVRPVCM and GPSR only needs the information of neighbor nodes, so the average energy consumption is less than that of RGP.But after void is mapped through the virtual coordinate, EBVRPVCM uses the greedy mode to select routing path.Correspondingly, the average energy consumption of EBVRPVCM is less than that of GPSR.
The subsequent routing uses greedy mode to alleviate it.With the simulation time increasing, the average energy consumption reduces gradually.So the longer the network's working cycle, the more the advantages EBVRPVCM has.

Scenario 5: Effects of Packet Size on Routing Performance.
When the size of data packet increases, the average transmission delay becomes higher.The collision probability is increasing during wireless transmission.The collision causes the decreasing of the transmission success ratio and increasing of the transmission delay.Figures 9 and 10 illustrate the effects on transmission success ratio and average transmission delay when the source node sends different packet sizes under the condition of maintaining the void radius at 150 m, respectively.
As shown in Figure 9, EBVRPVCM has the minimum effect caused by the packet size.With the increasing of packet size from 128 bytes to 512 bytes, the transmission success ratio of EBVRPVCM is decreased about 5%, while that of GPSR and RGP is decreased by approximately 15% and 25%, respectively.Since there are more control packets in RGP, with the increasing of the packet size, the collision probability during wireless transmission becomes higher, which leads to the rapid increasing of packet loss rate.GPSR did not optimize the transmission path in path selection, so the data is overconcentrated in the edge nodes of the void, which caused the increasing of transmission collision.While EBVRPVCM optimized transmission path and rationally dispersed the data packets, it alleviated the transmission collision problem.
Known from Figure 10, the average transmission delay of RGP is very sensitive to data packet size, and the average transmission delay increases nearly 8 times with data packet increasing from 128 bytes to 512 bytes, while EBVRPVCM and GPSR are less affected by the packet size, and the transmission delay of EBVRPVCM is slightly less than that of GPSR.lifetime.Figure 11 illustrates the relationship between the void radius and control packet cost.
As the EBVRPVCM gets the whole void information only through one routing void detecting, it makes the subsequent data packets, generated by other source nodes and bypass the void, only work in the single greedy mode while passing the void.Therefore EBVRPVCM not only has less control packet cost, but also is less affected by the void size, although the control packet cost of RGP routing is less affected by void radius, since it uses the flooding mechanism, which causes the larger control packet cost.
While each time GPSR routing passes through the routing void, it enters into edge forwarding mode using more control packets.With the increasing of void, correspondingly there are more nodes switching to edge forwarding mode.And each time when the different data packets pass through the void surrounding, they enter the edge forwarding mode, which cause the control packet cost growing faster.

Conclusion and Future Work
For routing void problems in geographical position, we use the network edge structure of nonrouting void to design an EBVRPVCM routing protocol.EBVRPVCM routing is implemented through void detection and virtual coordinate mapping.The void process is divided into three stages.In the void and the surrounding area routing, it selects the relay nodes using the corresponding virtual coordinate information.For a routing void, EBVRPVCM routing only needs one probe and mapping process.Thus it can greatly reduce the complexity of routing protocols.The simulation results show that the proposed EBVRPVCM routing protocol has a better performance of average transmission success rate, delay, and the average hops.The control packet overhead is less, and the proposed EBVRPVCM is conducive to save network energy.
We are trying to monitor the habitat information and establish the monitoring WSN of Qinling stub-nosed monkey.Because of its habitat, Qinling Mountain is a complex terrain with many obstacles, the void of monitoring WSN is unavoidable.For the further work, we will optimize EBVRPVCM and use it in the habitat monitoring WSN of the Qinling stub-nosed monkey.

Figure 4 :
Figure 4: View of the region division of the void.

Figure 6 :
Figure 6: Effects of void radius on transmission ratio.

Figure 7 :Figure 8 :
Figure 7: Effects of void radius on average transmission delay.

Figure 9 :
Figure 9: Effect of packet size on success transmission ratio.

5. 7 .
Scenario 6: The Cost of Control Packet.The smaller routing control packet overhead can improve the energy efficiency of wireless sensor network and prolong the network

Figure 11 :
Figure 11:  The relationship between control packet cost and void radius.

Table 2 :
Average energy consumed under different void radius.