The objective of the GAR protocol is to resolve the void problem such that the packet delivery from NS to ND can be guaranteed. Before diving into the detail formulation of the proposed GAR algorithm, an introductory example is described in order to facilitate the understanding of the GAR protocol. As shown in Fig. 2.1, the data packets initiated from the source node NS to the destination node ND will arrive in NV based on the GF algorithm. The void problem occurs as NV receives the packets, which leads to the adoption of the RUT scheme
as the forwarding strategy of the GAR protocol. A circle is formed by centering at sV with its radius being equal to half of the transmission range R/2. The circle is hinged at NV and starts to conduct counter-clockwise rolling until an SN has been encountered by the boundary of the circle, i.e., NA as in Fig. 2.1. Consequently, the data packets in NV will be forwarded to the encountered node NA.
Subsequently, a new equal-sized circle will be formed, which is centered at sA and hinged at node NA. The counter-clockwise rolling procedure will be proceeded in order to select the next hop node, i.e., NB in this case. Similarly, same process will be performed by other intermediate nodes (such as NB and NX) until the node NY is reached, which is considered to have a smaller distance to ND than that of NV to ND. The conventional GF scheme will be resumed at NY for delivering data packets to the destination node ND. As a consequence, the resulting path by adopting the GAR protocol becomes {NS, NV, NA, NB, NX, NY, NZ, ND}.
In the following subsections, the formal description of the RUT scheme will be described in Subsection 2.3.1; while the detail of the GAR algorithm is explained in Subsection 2.3.2. The proofs of correctness of the GAR protocol are given in Subsection 2.3.3.
2.3.1 Rolling-ball UDG Boundary Traversal (RUT) Scheme
The RUT scheme is adopted to solve the boundary finding problem, and the combination of the GF and the RUT scheme (i.e., the GAR protocol) can resolve the void problem, leading to the guaranteed packet delivery. The definition of boundary and the problem statement are described as follows.
Definition 2 (Boundary). If there exists a set B ⊆ N such that (i) the nodes in B form a simple unidirectional ring and (ii) the nodes located on and inside the ring are disconnected with those outside of the ring, B is denoted as the boundary set and the unidirectional ring is called a boundary.
Problem 3 (Boundary Finding Problem). Given a UDG G(P, E) and the one-hop neigh-bor tables T = {TNi| ∀ Ni∈ N}, how can a boundary be obtained by exploiting the distributed computing techniques?
si
sj
sk
sl
sm
R 1/2R
Nl Nm
Ni Np
Nj
Nk
Nq
Eij
Figure 2.2: The rolling-ball UDG boundary traversal (RUT) scheme.
There are three phases within the RUT scheme, including the initialization, the boundary traversal, and the termination phases.
2.3.1.1 Initialization Phase
No algorithm can be executed without the algorithm-specific trigger event. The trigger event within the RUT scheme is called the starting point (SP). The RUT scheme can be initialized from any SP, which is defined as follows.
Definition 3 (Rolling Ball). Given Ni ∈ N, a rolling ball RBNi(si, R/2) is defined by (i) a rolling circle hinged at PNi with its center point at si∈ R2 and the radius equal to R/2; and (ii) there does not exist any Nk∈ N located inside the rolling ball as {RBN∼i(si, R/2)∩N} = ∅, where RBN∼i(si, R/2) denotes the open disk within the rolling ball.
Definition 4 (Starting Point). The starting point of Ni within the RUT scheme is defined as the center point si ∈ R2 of RBNi(si, R/2).
As shown in Fig. 2.2, each node Ni can verify if there exists an SP since the rolling ball RBNi(si, R/2) is bounded by the transmission range of Ni. According to Definition 4, the SPs should be located on the circle centered at PNi with a radius of R/2. As will be proven
in Lemmas 1 and 2, all the SPs will result in the red solid flower-shaped arcs as in Fig. 2.2.
It is noticed that there should always exist an SP while the void problem occurs within the network, which will be explained in Subsection 2.3.2. At this initial phase, the location si can be selected as the SP for the RUT scheme.
2.3.1.2 Boundary Traversal Phase
Given sias the SP associated with its RBNi(si, R/2) hinged at Ni, either the counter-clockwise or clockwise rolling direction can be utilized. As shown in Fig. 2.2, RBNi(si, R/2) is rolled counter-clockwise until the next SN is reached (i.e., Nj in Fig. 2.2). The unidirectional edge Eij = (PNi, PNj) can therefore be constructed. A new SP and the corresponding rolling ball hinged at Nj (i.e., sj and RBNj(sj, R/2)) will be assigned, and consequently the same procedure can be conducted continuously.
2.3.1.3 Termination Phase
The termination condition for the RUT scheme happens while the first unidirectional edge is revisited. As shown in Fig. 2.2, the RUT scheme will be terminated if the edge Eij is visited again after the edges Eij, Ejk, Ekl, Elm, and Emi are traversed. The boundary set initiated from Ni can therefore be obtained as B = {Ni, Nj, Nk, Nl, Nm}.
2.3.2 Detail Description of Proposed GAR Protocol
As shown in Fig. 2.1, the packets are intended to be delivered from NS to ND. NS will select NV as the next hop node by adopting the GF algorithm. However, the void problem prohibits NV to continue utilizing the same GF algorithm for packet forwarding. The RUT scheme is therefore employed by assigning an SP (i.e., sV) associated with the rolling ball RBNV(sV, R/2) hinged at NV. As illustrated in Fig. 2.1, sV can be chosen to locate on the connecting line between NV and ND with R/2 away from NV. It is noticed that there always exists an SP for the void node (NV) since there is not supposed to have any SN located within the blue-shaded region (as in Fig. 2.1), which is large enough to satisfy the requirements as in Definitions 3 and 4. The RUT scheme is utilized until NY is reached (after traversing
NA, NB, and NX). Since d(PNY, PND) < d(PNV, PND), the GF algorithm is resumed at NY and the next hop node will be selected as NZ. The route from NS to ND can therefore be constructed for packet delivery. Moreover, if there does not exist a node NY such that d(PNY, PND) < d(PNV, PND) within the boundary traversal phase, the RUT scheme will be terminated after revisiting the edge EV A. The result indicates that there does not exist a routing path between NS and ND.
2.3.3 Proof of Correctness
In this subsection, the correctness of the RUT scheme is proven in order to solve Problem 3; while the GAR protocol is also proven for resolving the void problem (i.e., Problem 2) in order to guarantee packet delivery.
Fact 1. A simple closed curve is formed by traversing a point on the border of a closed filled two-dimensional geometry with fixed orientation.
Lemma 1. All the SPs within the RUT scheme form the border of a shape that results from overlapping the closed disks D(PNi, R/2) for all Ni ∈ N, and vice versa.
Proof: Based on Definitions 3 and 4, the set of SPs can be obtained as S = R1 ∩ R2 = {si| ksi − PNik = R/2, ∃Ni ∈ N, si ∈ R2} ∩ {sj| ksj − PNjk ≥ R/2, ∀Nj ∈ N, sj ∈ R2} by adopting the (i) and (ii) rules within Definition 3. On the other hand, the border of the resulting shape from the overlapped closed disks D(PNi, R/2) for all Ni ∈ N can be denoted as Ω = Q1 − Q2 = S
Ni∈NC(PNi, R/2) −S
Ni∈ND(PNi, R/2), where C(PNi, R/2) and D(PNi, R/2) represent the circle and the open disk centered at PNi with a radius of R/2 respectively. It is obvious to notice that R1 = Q1 and R2 = Q02, which result in S = Ω. It
completes the proof. ¤
Lemma 2. A simple closed curve is formed by the trajectory of the SPs.
Proof: Based on Lemma 1, the trajectory of the SPs forms the border of the overlapped closed disks D(PNi, R/2) for all Ni ∈ N. Moreover, the border of a closed filled two-dimensional
geometry is a simple closed curve according to Fact 1. Therefore, a simple closed curve is constructed by the trajectory of the SPs, e.g., the solid flower-shaped closed curve as in Fig.
2.2. It completes the proof. ¤
Theorem 1. The boundary finding problem (Problem 3) is resolved by the RUT scheme.
Proof: Based on Lemma 2, the RUT scheme can draw a simple closed curve by rotating the rolling balls RBNi(si, R/2) hinged at PNi for all Ni ∈ N. The closed curve can be divided into arc segments S(si, sj), where si is the starting SP associated with Ni; and sj is the anchor point while rotating the RBNi(si, R/2) hinged at PNi. The arc segments S(si, sj) can be mapped into the unidirectional edges Eij = (PNi, PNj) for all Ni, Nj ∈ U, where U ⊆ N.
Due to the one-to-one mapping between S(si, sj) and Eij, a simple unidirectional ring is constructed by Eij for all Ni, Nj ∈ U.
According to the RUT scheme, there does not exist any Ni ∈ N within the area traversed by the rolling balls, i.e., inside the light blue region as in Fig. 3. For all Np ∈ N located inside the simple unidirectional ring, the smallest distance from Np to Nq, which is located outside of the ring, is greater than the SN’s transmission range R. Therefore, there does not exist any Np ∈ N inside the simple unidirectional ring that can communicate with Nq ∈ N located outside of the ring. Based on Definition 2, the set U is identical to the boundary set,
i.e., U = B. It completes the proof. ¤
Theorem 2. The void problem (Problem 2) in unit disk graphs is solved by the GAR protocol with guaranteed packet delivery.
Proof: With the existence of the void problem occurred at the void node NV, the RUT scheme is utilized by initiating an SP (sV) with the rolling ball RBNV(sV, R/2) hinged at NV. The RUT scheme within the GAR protocol will conduct boundary (i.e., the set B) traversal under the condition that d(PNi, PND) ≥ d(PNV, PND) for all Ni ∈ B. If the boundary within the underlying network is completely traveled based on Theorem 1, it indicates that the SNs inside the boundary (e.g., NV) are not capable of communicating with those located outside of the boundary (e.g., ND). The result shows that there does not exist a route from the void
node (NV) to the destination node (ND), i.e., the existence of network partition. On the other hand, if there exists a node NY such that d(PNY, PND) < d(PNV, PND) (as shown in Fig. 2), the GF algorithm will be adopted within the GAR protocol to conduct data delivery toward the destination node ND. Therefore, the GAR protocol solves the void problem with
guaranteed packet delivery, which completes the proof. ¤