3.2 Two-dimensional virtual coordinate under unreliable links
3.2.2 Process of virtual coordinate routing protocol
In this subsection, we want to describe the basic process of virtual coordinate routing protocol which mainly includes the following two parts: (1) an initialization phase where every node can get their virtual coordinates, (2) routing with the virtual coordinates.
Initialization phase for getting virtual coordinates
At the beginning, every node except the sink node and the perimeter nodes which know their exact locations randomly chooses a two-dimensional virtual coordinate (for example, (50, 50) in our simulations). Every node sends the packet containing the virtual coordinates of them- selves at different time in order to avoid collisions. As it is shown in Figure 3.10, every node is scheduled a different sending time (they could send the packet at the time that is chosen according to their identifications, e.g. node 1 sends first and node 1000 sends last). During one round (the duration when every node sends one packet and updates its virtual coordinate is called one round), every node will receive the virtual coordinates of part or all of its neighbors and update the virtual coordinate of itself according to different schemes.
... ...
Node 1 Node 2 Node 3 Node 4 Node N-1 Node N Nodes update Round 1
... ...
Round 2
... ...
Time
Figure 3.10: A simple example to explain the initialization phase
During the period when the nodes exchange their virtual coordinates, these packets can be used to estimate the link quality by counting the number of packets received from their neighbors. So, every node can get the virtual coordinate and the link quality simultaneously during the initialization phase.
Routing with virtual coordinates
After the initialization phase, each node knows both its neighbors’ and its own virtual coordi- nates as well as the link qualities between them. Because every node needs to exchange packets in order to update their virtual coordinate, those packets can be used to measure the link quality (e.g. PRR) without introducing any additional cost. The PRR is calculated as the ratio of the number of received packets to the number of iterations. Because PRR can precisely represent the link quality compared with the RSSI (Receive Signal Strength Indicator), it is used as the routing metric. During the routing process, greedy routing with some enhanced strategies is adopted. In [Seada et al., 2004b], the metric called “Dist × P RR” (Dist denotes the distance between the sender and the receiver.P RR indicates the packet receive ratio of the receiver) has
the best performances among the other different metrics [Seada et al., 2004b]. Those metrics are listed as follows:
(1) Greedy: chooses the neighboring node which is closer than itself and closest to the destination among the neighboring nodes.
(2) Distance-based: first blacklists the neighboring nodes which are above a chosen distance from itself, then chooses the neighboring node which is closest to the destination from the remaining neighboring nodes.
(3) Absolute Reception-based: first blacklists the neighboring nodes which are below a cer- tain reception ratio from itself, then chooses the neighboring node which is closest to the destination from the remaining neighboring nodes.
(4) Relative Reception-based: first blacklists some neighboring nodes which have the lowest reception ratio (for example, the 20% neighboring nodes which have the lowest reception ratio), then chooses the neighboring node which is closest to the destination from the remaining neighboring nodes.
(5) Best Reception: without blacklisting, chooses the neighboring node which has the high- est reception ratio.
We have implemented the “Dist × P RR” metric for routing with the virtual coordinates constructed by “Average-all” [Rao et al., 2003]. But the metric does not have a better perfor- mance under virtual coordinate based greedy routing. So an improved metric, “Dist × P RR and PRR Blacklisting” (PRR Blacklisting means that only the node with a PRR bigger than or equal to a threshold will be considered), is used, which has a better performance than the “Dist×P RR” metric. Here, the proposed metric means that the node which can be considered to be the next hop not only has to have a bigger “Dist × P RR” but also needs to have a bigger PRR. Then, the node with the biggest “Dist × P RR” will be chosen as the next hop.
0.15 0.2 0.25 0.3 0.35 0.4 0 20 40 60 80 100 120
Average delivery ratio
Number of iterations Dist-PRR-02
Dist-PRR
Figure 3.11: The delivery ratio of “Dist × P RR” and “Dist × P RR and PRR Blacklisting”
3.2 : Two-dimensional virtual coordinate under unreliable links 51
In Figure 3.11, it is shown that the delivery ratio of “Dist × P RR” which is denoted by “Dist-PRR” is smaller than the delivery ratio of “Dist × P RR and PRR Blacklisting” which is denoted by “Dist-PRR-02”. In the simulations, only the node with PRR greater than or equal to 0.2 can be considered. As we have presented in Section 2.9.2, log-normal shadowing model is adopted. In our simulations, the physical layer environment is set harsh, for example, the path loss exponent (n) is set to 4 (the greater the exponent is, the harsher the environment will be. Generally, it is about 2, for example, at an apartment hallway [Sohrabi et al., 1999]). And because retransmission can increase the delivery ratios of all the compared schemes, for the sake of simplicity, we do not allow retransmission in the simulations. These result in the fact that the delivery ratio is low in the simulation results. If we set less harsher environment and allow retransmission, the delivery ratio can be increased. The reason why “Dist × P RR and
PRR Blacklisting” has the higher delivery ratio than “Dist × P RR” is as follows:
(1) “Dist × P RR and PRR Blacklisting” avoids to choose the neighbors with bad link qualities which may have a bigger “Dist × P RR”.
(2) If the virtual coordinate of every neighbor is updated in every period, “Dist × P RR and PRR Blacklisting” chooses the neighbor with a higher link quality.