 Research
 Open Access
Adaptive neighborbased topology control protocol for wireless multihop networks
 Zeeshan Hameed Mir^{1} and
 YoungBae Ko^{2}Email author
https://doi.org/10.1186/16871499201297
© Mir and Ko; licensee Springer. 2012
 Received: 30 October 2011
 Accepted: 9 March 2012
 Published: 9 March 2012
Abstract
Topology control protocols have been proposed to construct efficient network topologies with several design goals, e.g., networkwide connectivity, minimal energy cost, symmetry, lower nodal degree, and therefore higher spatial reuse or lower interferences. Neighborbased topology control protocols are simple and assume that each node in the network is connected to its k leastdistant neighbors. There have been several empirical and theoretical research efforts that recommend a networkwide optimal value of the local parameter k. However, since most of the design goals often run against each other the suggested lower and upper bounds on the values of k are not sufficient to provide a controllable tradeoff among various design goals. In this article, an adaptive neighborbased topology control protocol is presented where the neighboring nodes collaborate and provide feedback on the network connectivity to decide on their respective transmission ranges. Since every node adaptively adjusts its number of neighbors, the parameter k acts as a performance knob to choose a set of backbone nodes and to form a hierarchical topology structure consisting of symmetric links. Through extensive simulationbased study, it is shown that the value of k can be tuned to generate fully connected network topologies while offering an efficient tradeoff among various design goals.
Keywords
 topology control
 neighborbased
 wireless multihop networks
1. Introduction
Topology control [1, 2] leads to a simpler network topology with several design goals such as networkwide connectivity, minimal energy cost, symmetry, lower nodal degree, and therefore higher spatial reuse or lower interferences. In neighborbased [3, 4] topology control protocols, each node connects to its k leastdistant neighbors. The neighborbased protocols are often characterized by their simplicity and the use of minimum amount of information needed by nodes to construct the network topology. However, finding an optimal value of k such that some or most of the design goals are achieved has been a challenging task.
The network topology induced by setting a lower value of k is either not fully connected and/or consists of asymmetric links. On the other hand, the recommended upper bound on the value of k causes significant redundancy in nodal degree which is a measure of the spatial reuse and interference. There have been several research efforts both empirically and theoretically to find an optimal, networkwide value of the local parameter k. However, since most of the design goals such as connectivity, energy cost, symmetry, and nodal degree often run against each other the suggested lower and upper bound on the values of k are not sufficient to provide a controllable tradeoff among various design goals.
While the focus of most of the previous investigations rested on finding the number of neighbors that are necessary for connectivity [5, 6] and on how different network models and design goals influence the value of k [3, 4], they miss the potential of collaboration among neighboring nodes where nodes provide feedback on the network connectivity to decide on their respective transmission ranges. Nodes start with connecting to the leastdistant neighbors, check for local network connectivity information and adjust the number of neighbors to achieve an efficient tradeoff among various design goals.
This study describes an adaptive neighborbased topology control (ANTC) protocol that constructs fully connected network topologies while it addresses number of design goals efficiently. The basic idea is to select a subset of nodes that serve as the network backbone and to form a hierarchical topology structure consisting of symmetric links. The process of backbone node selection is carried out in a distributed manner without requiring global network connectivity knowledge. The proposed ANTC protocol runs in three phases. First each node discovers its onehop neighbors. Next the sink or base station node initiates the topology construction (TC) phase by broadcasting a control message. Among other attributes, the control message contains information on local neighborhood connectivity. On receiving the control message, each node checks for network connectivity requirements and adjusts its number of neighbor accordingly. The control message is then rebroadcasted exactly once by means of controlled flooding. This process is realized by mean of node coloring algorithm where initially all nodes are WHITE in color. During the TC phase nodes change their color according to the feedback information on network connectivity. The backbone nodes are colored BLACK whereas the other nodes are either RED or BLUE. Both RED and BLUE nodes are linked symmetrically with the BLACK node, while BLUE nodes are also candidate BLACK nodes. In the last phase, topology maintenance is performed in order to avoid disconnected networks due to any control message loss or collision.
The simulation results validate our claim that the proposed ANTC protocol shows a versatile performance for the given set of design goals. The following factors make our work extremely useful for wireless ad hoc and sensor networks.

A practical and distributed protocol that construct fully connected network topologies consisting of symmetric links. The local topology parameter k act as a performance knob that offers an efficient tradeoff among several conflicting design goals.

A hierarchy of backbone nodes are selected using the communication overhead of at most 3n messages, where n is the total number of nodes in the networks. Lower message complexity makes the ANTC protocol scalable and suitable for energy and resource constraint sensor networks.

The hierarchy of backbone nodes implicitly setups the forwarding path towards the common sink or base station node.

Through extensive simulationbased study the quality of the generated topology is evaluated against several criteria such as networkwide connectivity, minimal energy cost, higher spatial reuse, or lower interference by means of lower nodal degree.
The rest of this article is organized as follows. Section 2 gives a brief overview of the related work and expands on the problem statement. Section 3 presents an ANTC protocol in detail which is followed by the performance evaluation which is given in Section 4. Finally Section 5 concludes the article.
2. Related work and motivation
2.1. Related work on topology control
In this section, we will discuss a number of neighborbased topology control protocols found in the literature and comment on how they construct network topology with the desired set of deigns goals.
In kNeighbor [3, 4] and XTC [7] protocols, each node creates an ordered neighbor list, which ranks all onehop neighboring nodes with respect to their distance, energy, or link quality. Both protocols are simple to implement, localized, and communication efficient. The kNeighbor protocol simply chooses the value of k to be 6 and 9 to achieve week and strong requirements on connectivity, respectively. However, the final topology is constructed by keeping only symmetric links with fewer than k leastdistant neighbors. In XTC, each node locally traverses the neighbor list in nondecreasing order of their ranks. At some arbitrary node u if a candidate node v can be reached through an intermediate neighbor w with better rank (i.e., link quality), then the link between node u and v is marked redundant and is therefore not included in the final topology.
There is a class of neighborbased topology control protocols that tries to keep the number of neighbors within a certain minimum and maximum threshold values k_{min} and k_{max}. The example protocols include Local Information No Topology (LINT)/Local Information Linkstate Topology (LILT) [8], MobileGRID [9], Novel Topology Control Protocol (NTC) [10], and Cooperative Nearest Neighbor (CNN) [11]. Each protocol consists of two phases which adaptively adjust the transmission ranges by including or excludes links from the final topology. Both phases are responsible for maintaining the nodal degree within certain configurable bounds. Mainly the algorithms differ in actually what triggers the range adjustment at each node. For example, in LILT, the absence/presence of routing updates determines whether the node is disconnected or not. LINT, on the other hand, periodically checks for number of active neighbors and tries to keep the neighbor count around a desired value. Likewise LINT, the MobileGRID protocol, utilizes the nodal degree for maintaining a specific contention index. The nodal degree value is preconfigured and depends on the node density, network area, and transmission range. NTC and CNN are especially designed to mitigate the network partitioning problem which usually arises when the wireless nodes operate at lower values of k. For uniform node distribution, the topology constructed by the local connections can perform well. However, with clustered node distribution the NTC and CNN algorithms may result into partitioned network for the given lower bound of k.
The quality of a generated topology can be measure with respect to several design goals such as connectivity, energy cost, symmetry, spatial reuse and interference, etc. More recently, Banner and Orda [12] proposed a topology control protocol that caters for a wide array of design goals. The authors argue that the previous work concentrated more on finding nodes' transmission range by keeping in mind the rarely occurring worstcase scenarios. Most of the previous approaches towards topology control would certainly yield optimal performance for only a small subset of the design goals which are often conflicting in nature. Through both analytical and simulation studies they demonstrate that their protocol is capable of achieving average performance for a variety of topology related parameters simultaneously.
2.2. Motivation
For the recommended value of k, all the nodes are forced to have larger neighborhood because some of the nodes might have too few neighbors or asymmetric links. However, only a small subset of nodes is required to extend their number of neighbors provided that each node is aware of the local network connectivity for the selected value of k. For example in Figure 1c, each node establishes links to their three leastdistant neighbors (i.e., k = 3). However, there are only two pairs of nodes (8, 9) and (4, 6) that are linked asymmetrically. Considering distance as the metric to decide on which pair, nodes 4 and 6 may collaborate to increase their transmission range enough to have an efficient topology. Likewise in Figure 1b with k = 2 and in Figure 1a with k = 1 there are at least three and five pairs of nodes, respectively.
Interestingly, as the k increases, so does the number of symmetric links and as a result the number of node pairs decreases. It is also noteworthy that how the selection of node pairs could possibly effect the forward progress and nodal degree at each node. For example in Figure 1b for node 9, selecting node 8 instead of node 2, save half of the hop distance towards the sink. Therefore, the value of k certainly acts as a performance knob which can be tuned to achieve an efficient tradeoff among various design goals concurrently. Moreover, instead of following a networkwide value of the local parameter k, all the nodes locally adjust their number of neighbors accordingly.
3. Adaptive neighborbased topology control (ANTC)
Consider a wireless network comprising of n  1 ordinary nodes and a single sink or base station node (thus total n nodes). All the nodes are stationary and deployed randomly throughout the twodimensional space. It is assumed that all the nodes are equipped with homogeneous, single RF radio with an omnidirectional antenna and are capable of adjusting their RF output power at several discrete levels [14, 15]. Furthermore, the underlying topology is fully connected at maximum transmission range Tx_{max}. The main objective of the ANTC protocol is to provide a controllable and efficient tradeoff among various design goals such as networkwide connectivity, minimal energy cost, symmetry, and lower nodal degree for any given value of the local parameter k, with 0 < k ≤ n  1. The proposed ANTC protocol consists of three phases.
3.1. Neighbor discovery phase
Initially, each node i announces its presence using MAC layer beaconing at Tx_{max}. A simple yet practically reliable onehop broadcast mechanism [16] can be used to reduce the chances of a node remain undiscovered by its neighbors. The idea is to make sure that all the nodes receive the discovery message and construct a complete neighbor list. Upon successful receiving the ANNOUNCE message from node i, the neighboring node j estimates its distance to node i. An all neighbor list ${N}_{j}^{*}$ is maintained which consists of two attributes, a unique neighbor identity and their distance. The neighbor list is then stored in nondecreasing order of the distance. Algorithm 1 illustrates the abovementioned procedure.
The higher cost of operating GPSenabled nodes makes this option of acquiring the distance information nearly infeasible. Instead, techniques that utilize different physical measurements, e.g., Received Signal Strength Intensity (RSSI) [17] and Time of Arrival (ToA) [18] can be employed to estimate the distance between two nodes. The use of RSSI and ToAbased mechanisms often raised criticism by the researchers due to the distance measurement error which is usually caused by attenuation present in the atmosphere or nonline of sight (i.e., the obstacles). However, in the performance evaluation section it is shown that the ANTC protocol achieves resilience to error in distance estimation at much lower cost than the previous work. Although this article utilizes the estimated distance between two nodes, other metrics such as link quality, residual energy can also be combined.
3.2. TC phase
Algorithmic notation and data structures
WHITE color  Ordinary node 

RED color  ksymmetric neighbor 
BLUE color  kasymmetric neighbor 
BLACK color  Backbone node 
n  Total number of nodes in the network 
Tx _{max}  Maximum transmission range 
${N}_{i}^{*}$  Set of all onehop neighbors of node i 
${N}_{i}^{k}$  Set of k leastdistant neighbors of node i 
$T{x}_{i}^{k}$  Transmission range of node i required to reach the farthest neighbor in ${N}_{i}^{k}$ 
d _{(i, j)}  Estimated distance between nodes i and j 
T _{max}  Maximum delay a node must wait, before initiating the next step 
T _{d, fwd}  Forwarding delay for TC message 
T _{interval}  Forwarding interval for TC message 
i.msgCache_  { nb.Identity_; nb.Distance_; nb.Color_; nb.Backbone_; nb.HopCount_; } entry; 

WHITE: A node in its initial state which has not received and thus acted upon the information within the TC message.

BLACK: The backbone nodes are colored BLACK, which guarantees symmetric link towards the common sink or base station node.

RED: A RED colored node is associated ksymmetrically with a BLACK node. If a WHITE node j receives the TC message from node i, i.e. ($j\in {N}_{i}^{K}$ and $i\in {N}_{j}^{k}$), it turns into RED color. In other words, nodes i j have symmetric links for the given value of k.

BLUE: A BLUE node is associated kasymmetrically with a BLUE or BLACK node. If a WHITE node j receives the TC message from node i, i.e. ($j\notin {N}_{i}^{k}$ and $i\in {N}_{j}^{k}$), it turns into BLUE color. In other words, node j has an asymmetric link with node i' for the given value of k.
The sink or base station node initiates the TC phase by broadcasting the TC message at Tx_{max}. The ANTC protocol exploits the broadcast nature of the wireless communication channel. Each node selects an appropriate set of neighbors by overhearing the ongoing communication among its neighboring nodes. The process of selecting next node to disseminate its TC message is bit a like peeling the onion layers insideout. Nodes that are closer to the initiator are given higher priority as compare to the farther ones. The TC message is also required to maintain proper value of hop distance value towards the initiator. As the TC phase proceeds, the TC message disseminates in a controlled manner such that each node relays the TC message only once. Each node i maintains and updates the following attributes of the TC message.

i.Identity_: Unique identity of node i.

i.Backbone_: Identity of a neighboring node which guarantees symmetric link towards the common sink or base station node.

i.HopCount_: Total distance in terms of number of hops from sink or base station to the current node.

i.Color_: Color of node i.

kNeighbor list (${N}_{i}^{k}$): A list of k leastdistant neighbors of node i.
Following are the main highlights of the ANTC algorithm.

Algorithm 2 illustrates the TC message attribute initialization at sink node i. The sink node turns BLUE, before it broadcast the TC message into its immediate onehop neighborhood.

Lines 1033 describe the steps taken by node j upon receiving the TC message from node i. There are three courses of actions j may take depending on its current status.

○ Form lines 1018, node j verifies whether it has a ksymmetric or kasymmetric link with node i. If i and j are linked ksymmetrically, the receiver WHITE node becomes RED. In case of kasymmetric link, the receiver WHITE node turns BLUE otherwise the color remains unchanged. This part of the pseudocode also performs two important steps, i.e., first a soft state is maintained for each sender node and secondly asymmetric links are eliminated during this process.

○ Lines 1926 are followed if j has not yet sent its TC message. Before a node broadcasts its TC message further into the network, it has to decide on two aspects, i.e., (1) the backbone node and (2) the TC message forwarding sequence. Later in this section, more details will be provided.

○ Last, lines 2732 are only executed, if j overhears the TC message from one of its neighboring node which has selected j as the backbone node. If the sender's information is not already in the ${N}_{j}^{k}$, it is then included and the transmission range is extended to reach the most distant neighbor in the kNeighbor list.


The topology maintenance phase, ensures that TC phase remain resilient to TC message lose.
To make a single connected topology structure consisting of symmetric links towards a common sink, each node must select a backbone node. The intuition behind selecting a BLUE node as the backbone is very simple. First, for the given value of k the BLUE nodes are farthest from the sender node, which are also linked kasymmetrically with another potential backbone node. Second, the fact that BLUE node would operate at larger transmission ranges therefore they give better performance tradeoff between energy costs and hop distances. The use of distance information further helps in choosing better candidate among several BLUE nodes. Finally, in scenarios (especially for higher values of k) where there exist fewer BLUE nodes, any leastdistant neighbor which is minimal hops away from sink node is selected. In Algorithm 3, lines 1 through 11 describe the backbone node selection procedure. Lines 1215 set the required TC message attributes before they are further broadcasted by the receiver node j. For example, the j.Backbone_ attribute holds the selected backbone' identity, the hop count attribute gets an increment, and finally if nodes current color is WHITE, it changes into BLUE. Lines 1619 simply update the kNeighbor list and set the transmission range that is required to reach the farthest neighbor in ${N}_{j}^{k}$.
In ANTC, each node decides backbone based on the neighbor's color, estimated distance, and hop distance towards the sink node. While the TC phase is in progress the exact path length from the sink to the current node cannot be known in advance. Therefore, the node color and the hop distance information are included within the TC message. The value in the hop count attribute is incremented each time a node forwards the TC message further into the network. To calculate correct accumulated value of the hop count, the forwarding sequence of TC message requires special consideration.
A distancebased message dissemination approach is utilized which introduces forwarding delay for each node based on their distance from the previous node. The delay heuristic is implemented with the help of a simple timer (see Lines 1926, Algorithm 2) and it works in two ways. First, the TC message is flooded in a controlled manner, i.e., it ensures that each node disseminates the TC message only once. Up on receiving the first TC message each node set the timer value based on the parameter T_{d,fwd}, given at line 20. The timer value is set proportional to the distance between the receiving node and the previous node. Once set, the timer value cannot be reinitiated by overhearing of any subsequent TC message. Second, the coloring of the nodes and the increment in hop count value require a proper forwarding sequence, i.e., a node that is at n th hops distance from the previous node forwards the TC message before a node n + 1th hops away. Thus, the cumulative effect is to give higher priority to the nodes that are closer to the pervious node.
In practice, the actual transmission time of a TC message is determined by the combination of the timer value and the time required by functions performed by a particular medium access control protocols. For instance, in contentionbased MAC protocols, random backoff is performed for each message to make sure its successful reception at the receiver. Consider an example where the forwarding interval (T_{interval}) is 1 time unit and the nodes' Tx_{max} is set to 1.5 units. Let, nodes i and j are at the same distance from the previous node S (1 distance unit), they decide to forward the TC message at time 0.67 (= 1 × 1/1.5). However, in order to break the tie between nodes i and j, the actual sending can be differentiated by the CSMA/CA mechanism at the MAC layer. More importantly, nodes are not required any form of strict time synchronization for distancebased forwarding to work properly. Distancebased forwarding can lead to slightly longer time. However, since the TC phase last for very small fraction of overall network operational time, therefore its effect can be consider negligible on the network performance.
In order to construct a fully connected backbone, each node has to be linked symmetrically with a special backbone node so that it guarantees a symmetric link towards the sink. For RED nodes, the selection of backbone node is simple, since they already have symmetric link with a BLUE node. Figure 2b illustrates the process where node A selects S and send the TC message. The decision regarding backbone selection is conveyed to the other nodes while they overhear the ongoing communication. Once node S finds out that node A has selected it as the backbone node it changes its color to BLACK. In Figure 2c, node B repeats the same procedure.
For the given value of k, a node might have no ksymmetric neighbors thus resulting in either asymmetric links or network partitioning. Nodes C, D, and E represent the first case where they are associated kasymmetrically with node S. These nodes select node S as the backbone node (the leastdistant BLUE node) and convey this decision in their respective TC messages. On overhearing the TC messages, node S extends its neighbor list and sets its transmission range to the level that is required to reach the farthest neighbor in the neighbor list. The selected backbone node turns BLACK (if not already BLACK color). In Figure 2d, nodes C and D perform the above procedure with node S, followed by node E in Figure 2e. The nodes retain links with their ksymmetric neighbors. Node F represents the second case where the network is partitioned between nodes F and E. In Figure 2f, the WHITE node F selects node E as the backbone node. Node F is associated kasymmetrically with two other neighbors X and Y (not shown in the figure). Before the TC message is sent further into the network, node F turns BLUE and increments the hop count value by 1. In scenarios where there exists no BLUE node, any leastdistant node which is minimum hops away from the sink is selected. The hop count value is incremented as the TC message is disseminated across the network. The forwarding sequence of the TC message ensures that path length value is incremented properly.
The proposed ANTC protocol results in a single treelike structure, where RED and BLUE nodes are associated symmetrically with the set of BLACK nodes. The BLACK nodes are linked directly with relatively larger transmission ranges, thus forming a connected backbone. In order to control the number of backbone nodes and the associated links, the value of k is utilized as a performance knob. The performance evaluation section shows that the value of k provides an efficient tradeoff among various design goals. The other advantage of topology constructing phase is that it also constructs an implicit data forwarding hierarchy consisting of backbone nodes towards the sink or base station node.
3.3. Topology maintenance phase
This section describes a scenario where the TC message is lost either due to collision or unsuccessfully reception at the receiver. The lost of TC message is significant, because it contains information regarding the backbone node that a potential BLACK node could not receive. The given scenario often leads to asymmetric links where the selected backbone node remains unable to extend its transmission range up to the requesting node. Each node i checks whether it has received/overheard the TC message from all its onehop neighbors. If not, then it broadcasts the Topology Repair Request (TRREQ) message at Tx_{max}. On reception, only those nodes j would respond with the Topology Repair Reply (TRREP) message that has a kasymmetric links with the node i. Finally, on receiving the TRREP message node i extend its transmission range to include node j. Algorithm 4 describes the above procedure.
4. Performance evaluations
4.1. Simulation environment
To evaluate ANTC and other neighborbased topology control protocols, extensive simulations are performed using NS2 [19] simulator. In the simulation study, the network size n is varied from 100 to 250 in increments of 50 and 500 nodes. The network sizes represent sparse, moderate, and densely populated networks. All the nodes are placed randomly over a 1000 × 1000 m^{2} area with the sink or base station node positioned at the center. The maximum transmission range Tx_{max} is set to 250 m. In our simulations, T_{interval} is set to 1 s and Tx_{max} is set to an arbitrary constant large enough to avoid interruption with the ongoing TC phase.
For a comparative study, following neighborbased topology control protocols are considered where all the resultant topology instances are fully connected and consisting of symmetric links.

MST: Most of the topology control protocols idealize topologies generated by the MST algorithms. However, the requirements of global information at some arbitrary common node make the MST algorithm less feasible to implement especially for largescale sensor networks.

CNN with k set to 5: In CNN, all the nodes are connected to their k = k_{min} = k_{max} leastdistant neighbors. The CNN protocol is evaluated with k = 5 (given as kCNN).

kNeighbor with k set to 9: The results obtain for kNeighbor protocol suggest that to achieve strong requirements on connectivity the value of k must be set to 9. The final topology is referred as kNeighbor.
Following three metrics are used for performance evaluations. The final values are obtained by averaging 100 different simulation runs over 100 different randomly generated network topologies. All the measurements are averaged over the network sizes.

Total energy cost is defined as ${\sum}_{i=0}^{n}{\left(T{x}_{i}^{k}\right)}^{\alpha}$, where $T{x}_{i}^{k}$ represents the transmission range assigned to reach the k th neighbor in the neighbor list at the end of individual topology control protocol and α is the path loss constant typically with a value between 2 and 6 [20].

Nodal degree is defined as the number of direct neighbors. We consider both logical and physical nodal degrees, where later is consider as a better measure of expected contention.

Path length is defined as the number of hops towards the common sink or base station node. A shortest path algorithm is executed over the topology controlled network to measure path length between a node and the sink.
4.2. Simulation results
4.2.1. Performance comparison with various network size n
These results demonstrate that the proposed ANTC protocol achieves an efficient tradeoff among various design goals. The value of k acts as a performance knob which can be tuned to construct network topologies with variety of different topological properties. For example, ANTC performed comparable with the optimal MST topologies in term of energy efficient and nodal degree while maintaining shorter path lengths.
4.2.2. Impact of k and n pair with respect to node color
Since, the BLACK nodes dominate the energy cost, it is therefore desirable to minimize the number of BLACK nodes in the network. Interestingly, as given in Figure 7b,d,f, the number of BLACK nodes decreases as the value of k increases for all network sizes. Thus, allowing less number of nodes to extend their transmission ranges. The number of RED nodes on the other hand increases. This is mainly because at higher values of k, the nodes tend to operate at higher transmission range, thus leading to more neighbors nodes to turn RED, i.e., ksymmetric nodes. Finally, the numbers of BLUE nodes are nearly 10% of the network size n, which gradually decreases as the value of k increases.
4.2.3 Impact of distance measurement error (DME)
It is typically assumed that the distance estimations are error free which is far less realistic than the actual situation. Specially, the assumption that the distance can be estimated by mean of measuring certain physical phenomena (i.e., RSSI and ToA), requires extra considerations. In kNeighbor TC protocol, the recommended value of k in presence of distance measurement error is even higher than the actual value needed to achieve the strong connectivity requirement for variety of network sizes. For network sizes n ∈ [100, 500], the preferred value of k is found to be 9 and 10, for ToA and RSSI errors, respectively [3]. Resilience to the error in distance measurement is achieved by simply connecting to the even farther neighbor in the neighbor list.
A transmission range shorter than the actual would certainly results in asymmetric links or network to partition. Like kNeighbor protocol, ANTC also let all the nodes extend their transmission ranges up to the farther neighbor in the neighbor list. However, unlike the kNeighbor protocol, where all nodes follow a networkwide value of the local parameter k, in ANTC nodes operate at different number of leastdistant neighbors according to their color for the given value of k. Each node i maintains an all neighbor ordered list ${N}_{i}^{*}$ with respect to the distance. The farthest node in the kNeighbor list ${N}_{i}^{k}$ is located at some k th entry in the list ${N}_{i}^{*}$, which may not be the actual k th neighbor in ${\widehat{N}}_{i}^{*}$ list. The list ${\widehat{N}}_{i}^{*}$ holds faulty distance measurements, obtained by applying the abovementioned error model during the postprocessing phase. To accommodate error in distance estimation, each node adjusts its transmission range to reach the $\widehat{k}th=k+\eta th$ neighbor in ${\widehat{N}}_{i}^{*}$, where η is a small positive integer constant set according to the desired application requirements. The value of η is increased until the specified requirement on the connectivity is achieved i.e., more than 95% of the nodes are connected in a single structure consisting of symmetric links.
The value of $\widehat{k}th$ for CASEI and CASEII with RSSI error
k  k th without DME (i.e., no error)  $\widehat{k}th$CASEI  η  $\widehat{k}th$ CASEII  η 

1  3.28  5.28  2  6.28  3 
2  4.34  6.34  2  6.34  2 
3  5.67  6.67  1  6.87  1 
4  7.84  8.62  1  8.79  1 
It is noteworthy that as the value of k increases, the network finds sufficient redundant links to maintain the prescribed requirements on the connectivity. Complying with the results obtained for the kNeighbor protocol, our protocol also requires no further stretch in transmission range for higher value of k. Since, the solution for distance measurement error take into account the farthest neighbor in the list, the backbone nodes and their associated nodes relationship remains intact. Once again the proposed ANTC protocol exhibits better performance to accommodate distance measurement error at comparatively much smaller cost.
5. Conclusion
Topology control protocols have been utilized in wireless multihop networks to achieve variety of different design goals. In this article, an ANTC protocol is presented, aimed at constructing efficient network topologies. The proposed ANTC protocol exploits the potential of collaboration among neighboring nodes where nodes provide feedback on the network connectivity information to decide on their respective transmission ranges. Based on the local connectivity information each node selects a backbone node that guarantees hierarchical topology structure consisting of symmetric links. The process of backbone node selection is carried out in a distributed manner without requiring global network connectivity knowledge. To evaluate the performance of ANTC protocol against other protocols, we have performed extensive simulation based study. The results demonstrate that ANTC achieves an efficient tradeoff among various design goals. The value of k acts as a performance knob which can be tuned to construct network topologies with up to 100% and threefold improvements in terms of energy cost and average nodal degrees, respectively, while maintaining shorter path lengths.
Algorithm 1: Neighbor discovery phase
/*All n nodes exchange the ANNOUNCE messages*/
For node j receives ANNOUNCE message from node i :
/*Node j upon receiving an ANNOUNCE message from node i stores onehop neighbor identity and estimated distance in neighbor list ${N}_{j}^{*}$*/
 1.
${N}_{j}^{*}$.insert (i.Identity_, d_{(I,j)});
 2.
${N}_{j}^{*}$.sort (${N}_{j}^{*}$.Distance_, ASC);
 3.
}
Algorithm 2: TC phase
For the sink node i :
 1.
Set: i.Identity_ = Sink;
 2.
Set: i.Color_ = BLUE;
 3.
Set: i.Backbone_ = Sink;
 4.
Set: i.HopCount_ = 1;
 5.
Set: i.isBroadcast_ = 0;
/*Broadcast the TC message at Tx_{max}*/
 6.
Call: sendTC (i.Identity_, i.Color_, i.Backbone_, i.HopCount_,${N}_{i}^{k}$);
 7.
Set: i.isBroadcast_ = 1;
 8.
Wait: T_{max} units;
 9.
Goto: Topology maintenance phase; For the other node j :
/*Upon receiving the TC message*/
 10
receiveTC(i.Identity_, i.Color_, i.Backbone_, i.HopCount_, ${N}_{i}^{k}$) {
/*Add TC message attribute into the msgCache_ data structure*/
 11.
j.msgCache_.insert (i.Identity_, d_{(i,j)}, i.Color_, i.Backbone_, i.HopCount_);
 12.
if ($j\in {N}_{i}^{K}$ and $i\in {N}_{j}^{k}$) {
 13.
if (j.Color_ == WHITE)
 14.
Set: j.Color_ = RED; }
 15.
elseif ($j\notin {N}_{i}^{k}$ and $i\in {N}_{j}^{k}$) {
 16.
${N}_{j}^{k}$.erase (i.Identity_);
 17.
if (j.Color_ == WHITE)
 18.
Set: j.Color_ = BLUE; }
 19.
if (j.isBroadcast_ == 0) {
 20.
Set: T_{ d,fwd } = T_{ interval } × d_{(i, j)}/Tx_{max} units;
 21.
Initiate: diffusionTimer(T_{ d, fwd }) ;
 22.
On expire:
 23.
Call: findBackbone();
 24.
Call: sendTC (j.Identity_, j.Color_, j.Backbone_, j.HopCount_,${N}_{j}^{k}$);
 25.
Set: j.isBroadcast_ = 1;
 26.
}
 27.
if (i.Backbone_ = = j.Identity_) {
 28.
Set: j.Color_ = BLACK;
 29.
if ($i\notin {N}_{j}^{k}$)
 30.
${N}_{j}^{k}$.insert (i.Identity_, d_{(i, j)});
 31.
Set: $T{x}_{j}^{k}=max\left({N}_{i}^{k}\left(1\right).\mathsf{\text{Distance\_:}}\phantom{\rule{0.3em}{0ex}}{N}_{j}^{k}\left({N}_{j}^{k}.\mathsf{\text{size()}}\right).\mathsf{\text{Distance}}\text{\_}\right);$
 32.
}
 33.
}
Algorithm 3: Procedure for finding the backbone node
findBackbone() {
/*Initialize*/
 2.
for (k ∈ j.msgCache_) {
/* Find the leastdistant neighbor with color = BLUE */
 3.
if (k.Distance_ < entry.Distance_) and (k.Color_ == BLUE))
 4.
Set: entry = k;
 5.
}
 6.
if (entry == NULL) {
 7.
for (l ∈ j.msgCache_) {
/* Find the least distant neighbor with least hops towards the sink */
 8.
if (l.Distance_ < entry.Distance_) and (l.HopCount_ ≤ entry.HopCount_))
 9.
Set: entry = l;
 10.
}
 11.
}
 12.
Set: j.Backbone_ = entry.Identity_;
 13.
if (j.Backbone_ ≠ Sink) Set: j.HopCount_ = entry.HopCount_ + 1;
 14.
if (j.Color_ == WHITE) Set: j.Color_ = BLUE;
 15.
if (entry.Color_ == BLACK) Set: j.Color_ = RED;
 16.
if (entry.Identity_ ∉ ${N}_{j}^{k}$)
 17.
${N}_{j}^{k}$.insert (entry.Identity_, d_{(entry.identity _,j)});
 18.
Set: $T{x}_{j}^{k}=max\left({N}_{i}^{k}\left(1\right).\mathsf{\text{Distance\_:}}\phantom{\rule{0.3em}{0ex}}{N}_{j}^{k}\left({N}_{j}^{k}.\mathsf{\text{size()}}\right).\mathsf{\text{Distance}}\text{\_}\right);$
 19.
}
Algorithm 4: Topology maintenance phase
 1.
if (i.msgCache_.size() < ${N}_{i}^{*}$.size())
 2.
Call: sendTRREQ(${N}_{i}^{k}$); For the other node j sends Topology Repair Reply (TRREP) message:
/*Upon receiving the TRREQ message*/
 3.
receiveTRREQ(${N}_{i}^{k}$) {
 4.
if ($j\notin {N}_{i}^{k}$ and $i\in {N}_{j}^{k}$)
 5.
Call: sendTRREP(j.Identity_);
 6.
} For node i receives TRREP message from node j :
 7.
receiveTRREP (j.Identity_) {
 8.
if ($j\notin {N}_{i}^{k}$)
 9.
${N}_{i}^{k}$.insert (j.Identity_, d_{(i, j)});
 10.
Set: $T{x}_{i}^{k}=max\left({N}_{i}^{k}\left(1\right).\mathsf{\text{Distance\_:}}\phantom{\rule{0.3em}{0ex}}{N}_{i}^{k}\left({N}_{i}^{k}.\mathsf{\text{size()}}\right).\mathsf{\text{Distance}}\text{\_}\right);$
 11.
}
Declarations
Acknowledgements
This research was supported by the MKE(The Ministry of Knowledge Economy), Korea, under the ITRC(Information Technology Research Center) support program supervised by the NIPA(National IT Industry Promotion Agency" (NIPA2012(C109012210011)).
Authors’ Affiliations
References
 Santi P: Topology control in wireless ad hoc and sensor networks. ACM Comput Surv 2005, 37(2):164194. 10.1145/1089733.1089736View ArticleGoogle Scholar
 Santi P: Topology Control in Wireless Ad Hoc and Sensor Networks. John Wiley and Sons, Chichester, UK; 2005.View ArticleGoogle Scholar
 Blough DM, Leoncini M, Resta G, Santi P: The Kneigh protocol for symmetric topology control in ad hoc networks. In Proc of ACM MobiHoc 2003. Annapolis, Maryland, USA; 2003:141152.Google Scholar
 Blough DM, Leoncini M, Resta G, Santi P: The kneighbors approach to interference bounded and symmetric topology control in ad hoc networks. IEEE Trans Mobile Comput 2006, 5(9):12671282.View ArticleGoogle Scholar
 Wan P, Yi C: Asymptotic critical transmission radius and critical neighbor number for k connectivity in wireless ad hoc networks. In Proc ACM MobiHoc 2004. Roppongi Hills, Tokyo, Japan; 2004:18.Google Scholar
 Xue F, Kumar PR: The number of neighbors needed for connectivity of wireless networks. Wirel Netw 2004, 10(2):169181.View ArticleGoogle Scholar
 Wattenhofer R, Zollinger A: XTC: a practical topology control algorithm for adhoc networks. In Proc of WMAN 2004. Volume 13. Santa Fe, New Mexico; 2004:216a.Google Scholar
 Ramanathan R, RosalesHain R: Topology control of multihop wireless networks using transmit power adjustment. In Proc of IEEE INFOCOM 2000. Volume 2. Tel Aviv, Israel; 2000:404413.Google Scholar
 Liu J, Li B: MobileGrid: capacityaware topology control in mobile ad hoc networks. In Proc of IEEE ICCCN 2002. Miami, Florida, USA; 2002:570574.Google Scholar
 Hu L: Topology control for multihop packet radio networks. IEEE Trans Commun 1993, 41(10):14741481. 10.1109/26.237882MATHView ArticleGoogle Scholar
 Gerharz M, de Waal C, Martini P, James P: A cooperative nearest neighbors topology control algorithm for wireless ad hoc networks. Springer Telecommun Syst J 2005, 28(34):317331.View ArticleGoogle Scholar
 Banner R, Orda A: Multiobjective topology control in wireless networks. In Proc of IEEE INFOCOM 2008. Phoenix, Arizona, USA; 2008:448456.Google Scholar
 Li N, Hou JC, Sha L: Design and analysis of an MSTbased topology control algorithm. In Proc of IEEE INFOCOM 2003. Volume 3. UrbanaChampaign, Illinois, USA; 2003:17021712.Google Scholar
 CC2420: Datasheet for Chipcon (TI) CC2420 2.4 GHz IEEE 802.15.4/ZigBee RF Transceiver[http://www.ti.com/lit/ds/symlink/cc2420.pdf]
 CC1000: Datasheet for Chipcon (TI) CC1000 315, 433, 868, 915 MHz ultralowpower RF Transceiver[http://www.ti.com/lit/ds/symlink/cc1000.pdf]
 Park S, Palasdeokar RR: Reliable onehop broadcasting (ROB) in mobile ad hoc networks. In Proc of ACM PEWASUN 2005. Montreal, Quebec, Canada; 2005:234237.Google Scholar
 Bahl P, Padmanabhan VN: RADAR: an inbuilding RFbased user location and tracking system. In Proc of IEEE INFOCOM 2000. Volume 2. Tel Aviv, Israel; 2000:775784.Google Scholar
 Girod L, Estrin D: Robust range estimation using acoustic and multimodal sensing. In Proc of IEEE/RSJ ICIRS 2001. Volume 3. Maui, Hawaii, USA; 2001:13121320.Google Scholar
 NS2, The Network Simulator[http://www.isi.edu/nsnam/ns]
 Pahlavan K, Krishnamurthy P: Principles of Wireless Networks A Unified Approach. Edited by: K Pahlavan, P Krishnamurthy. Prentice Hall; 2002. Principles of Wireless Networks  A Unified Approach, Prentice Hall, ISBN 0130930032, Hardcover, 584 pages, January 2002Google Scholar
 Slijepcevic S, Megerian S, Potkonjak M: Location errors in wireless embedded sensor networks: sources, models, and effects on applications. ACM Sigmobile Mobile Comput Commun Rev 2002, 6(3):6778. 10.1145/581291.581301View ArticleGoogle Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.