A directional broadcasting algorithm for routing discovery in ZigBee networks
© Mu; licensee Springer. 2014
Received: 14 May 2014
Accepted: 28 May 2014
Published: 13 June 2014
ZigBee provides a simple and reliable solution for the low-cost networks. The ZigBee ad hoc on-demand distance vector (Z-AODV) could use the global shortest path for data transmission by flooding the routing quest when necessary. However, the current routing algorithms cannot fully address the energy consumption issue. In this paper, we propose a directional broadcasting algorithm in routing discovery (DBRD) to reduce the routing overhead. Based on the network addresses, the network is divided into several continuous ‘clusters’. The node relative positioning and direction information are represented by the sequence of the clusters, and the devices which are not in the clusters covering the shortest path may not take part in the routing request rebroadcasting. The simulation results show that the DBRD could improve the performances of routing discovery, the routing overhead was effectively reduced and the end-to-end delay was also shortened since the algorithm occupied less finding time.
KeywordsZigBee Routing discovery Routing overhead Directional broadcasting
ZigBee uses a mixed routing mechanism combined with hierarchical routing protocol (HRP) and ZigBee ad hoc on-demand distance vector (Z-AODV) . For the Z-AODV, each node may initiate routing discovery when necessary; a global shortest path between the source and destination is obtained during the process and the data frame was sent along the route. However, ZigBee devices have limited processing capabilities, storage, power supplies and communication bandwidth. They may also move about randomly, which results in topology changes of the network. These constraints make it very difficult to find proper routing mechanisms that ensure high network throughput [2, 3]. The routing protocols described in the specification still need more improvement [4, 5].
In this paper, we focus on the improvement of the performance in routing discovery. In the original Z-AODV, an intermediate node may rebroadcast a certain routing request only once and abandon the other duplications. By this method, the routing request can arrive every device in the network. Nevertheless, this mechanism is not efficient since not all the devices have to take part in this procedure . The coverage of the routing request broadcasting should be the whole network theoretically to ensure that the global shortest path can be found. However, this range can be reduced if some prior knowledge is available. The path length and direction are two common parameters to optimize the routing discovery if they are predictable in some level. Some improved broadcasting strategies based on the length control have been proposed in the ZigBee networks, e.g. the rebroadcasting times of the routing request can be limited to no more than the hierarchical hop counts . By contrast, the path direction is more difficult to forecast because of the lack of the nodes’ spatial information and the high cost of operation and maintenance .
In this paper, a simple directional rebroadcasting algorithm in routing discovery which follows the ZigBee specification is proposed. In our method, the two difficulties mentioned above are solved as follows. In the ZigBee networks, the recommended distributed address allocation mechanism (DAAM) guarantees a hierarchical topology, in which each subtree and its root can be regarded as the cluster and the cluster head. The transmission link between the nodes in different clusters can be described by a sequence of clusters. If the clusters are organized based on the location information, this sequence may also contain the directional information. Due to the limited resources and power supply in the ZigBee devices, it is impossible to realize positioning by itself or external devices. However, the relative position information would be enough to indicate the direction, and it can be easily obtained from the neighbour table, which is specified in the ZigBee specification. We propose an address reassignment algorithm based on relative position to ensure that the hierarchical structure is formed according to the nodes’ spatial deployment. To address the energy cost issue, all the needed information are sent to the ZC, which has sufficient computing and storage capabilities. The ZC is responsible to calculate the cluster sequence to represent the direction and announce it to all the other devices.
The rest of this paper is organized as follows: The related works are reviewed in Section 2. Section 3 briefly introduces the ZigBee specification, and the directional broadcasting algorithm in routing discovery is proposed in Section 4. In Section 5, simulation results are presented. Finally, the conclusion is drawn in Section 6.
2 Related works
Considering the improvement of the routing discovery broadcasting, some progress has been made . In , a hybrid routing algorithm without flooding is proposed. The hierarchical topology information is utilized to optimize the routing request broadcasting to reduce the overhead, and the residential energy of nodes is considered as one routing metric to balance the energy consumption. Because the link may follow the hierarchical path when a corresponding entry is found in the neighbour table of a certain intermediate node, the path it found is not proved the global shortest. In , an improved architecture for the combined routing mechanism is studied. The subtree parameter of the ZigBee network and network addresses of destination nodes are used to control the transmission range and restrict its transmission direction in Z-AODV. The algorithm could significantly improve the routing performance, but the routing cost and routing selection is not considered. It requires the accurate location information which is from external positioning devices. Sahinoglu et al.  propose self-pruning and forward node selection algorithms that exploit the hierarchical address space in ZigBee networks. The simulation results show that it improves the performance in terms of the number of rebroadcast nodes, number of duplicates received, coverage time and communication overhead. Nevertheless, this method is designed for data transmission, and it only excludes some high-depth nodes from the ones which rebroadcast a certain frame. The retransmission range is not well controlled. In , an effective broadcast algorithm called ZigBee broadcasting algorithm on route discovery (ZBARD) is proposed. As a known path, the HRP hop counts, which can be obtained when the network addresses of the source and destination devices are given, must be no less than the shortest path, and it can be used as the maximum retransmission times of the routing request. The ZBARD sets the broadcast radius to this value to reduce the control packets issued by the route discovery. This work effectively limits the retransmission range of routing requests, yet the direction of the coverage is not considered.
3 ZigBee specification and routing methods
3.1 Overview of ZigBee
Based on the IEEE 802.15.4 protocol, the ZigBee specification defines the standard of higher layers. Three device types are defined: ZigBee coordinator (ZC), ZigBee routers (ZR) and ZigBee end devices (ZED). ZC is responsible for starting a new network. ZC and ZR are routing capable, while the ZED cannot participate in routing and have to rely on their corresponding ZigBee parent routers for that functionality .
ZigBee network layer (NWK) provides functionality such as dynamic network formation, addressing, routing and discovering 1-hop neighbours. The network address is recommended to be assigned in a hierarchical tree structure with the DAAM. The deployed ZigBee devices automatically construct the network, and then changes such as joining/leaving of devices are automatically reflected in the network configuration .
3.2 Link quality indication
ZigBee devices support the function of testing the link quality indication (LQI) measurement every time they receive a frame. The LQI measurement is a characterization of the strength and/or quality of a received packet. The measurement may be implemented using receiver energy detection (ED), a signal-to-noise ratio estimation or a combination of these methods. The use of the LQI result by the network or application layers is not specified in IEEE 802.15.4 standard.
The LQI measurement shall be performed for each received packet, and the result shall be reported to the MAC sublayer. The minimum and maximum LQI values (0x00 and 0xff) should be associated with the lowest and highest quality IEEE 802.15.4 signals detectable by the receiver, and link quality (LQ) values in between is uniformly distributed between these two limits. The LQI information of every single received packet can be simply acquired according to the standard with no more extra calculation and communication .
3.3 Address allocation and HRP
where Aparent represents the address of the parent and 1 ≤ n ≤ Rm.
The hierarchical topology in ZigBee network is based on DAAM. In this tree-shaped structure, if the destination address is in the address space that a node is managing, the node forwards the packet to one of its child nodes. Otherwise, it forwards the packet to its parent.
3.4 Neighbour table
Each ZigBee device maintains a neighbour table which has all its neighbours’ information in the 1-hop transmission range. The contents for a neighbour entry are the network’s personal area network (PAN) identifier, node’s extended address, network address, device type, relationship, LQI, etc. Optionally, additional information such as the depth can be included. Entries in the table are created when the node joins to an existing network. Conversely, the neighbour entry is removed when the neighbour node leaves the network. Since the information on the neighbour table is updated every time a device receives any frame from some neighbour node, the information of the neighbour table can be said to be up-to-date all the time.
4 Directional broadcasting algorithm in routing discovery
The Aparent is the address of its parent, which is also a router. For the depth 1 routers, their parent is the ZC whose address is 0. So, we can use the sequential number k to differentiate the clusters. Since the clusters are fan-shaped and not overlapping with a common vertex, each one may have at most two neighbours on both sides. Their relative positioning information can be represented by a sequence of adjacency (SoA). Since the neighbour device information is maintained by the neighbour table for each node, and we can tell which cluster a node belongs to if its network address is given, the SoA can be easily obtained. In Figure 1, nodes 1 and C can find each other in their neighbour tables, so it is the case with nodes D and 3; therefore, it can be concluded that cluster 1 is adjacent to clusters 2 and 3. However, if two clusters are too far apart to communicate, it may lead to the isolation. If all the nodes in one cluster can only find neighbours for the only other cluster, the cluster is isolated on one side, and if the communication is limited in the cluster, it is completely isolated. We use an isolation indicator (II) to announce such situations. Cluster 5 is a completely isolated cluster; the whole SoA of the network is [2,1,3,4,II,5,II]. The SoA is recursive and the last and the first clusters are adjacent by default, so another II is needed at the last.
The ZigBee network is organized as a hierarchical structure based on the DAAM, so the only task in the clustering is to choose the proper heads. Since the nodes in the same depth have different address spaces, it results in the fact that the number of the clusters can be only some specific integers, such as Cm and 2 × Cm − 1. This may decline the performance of the algorithm. In the hierarchical network, the address subblock overlapping of two routers (not including the ZC) only occurs when one node is the ancestor of the other, and the smaller space must be part of the greater one. So, we may allow the overlapping by making the nodes in the common parts only belong to the cluster with the smaller address space. For the cluster members, if it finds more than one ancestor in the cluster head list, the principle can be simply implemented by joining the cluster with the greatest depth. The above mechanism guarantees that the clusters are not overlapping by any cluster numbers.
In our algorithm, the clustering begins a short time after the network initialized. The ZC is in the charge of deciding the cluster heads (will be explained later). Then, all the devices that may find neighbours from other clusters are asked to report the adjacency to the head. Considering the overhead, if a certain device has announce its neighbour nodes from another cluster, all its descendants may be allowed to not monitor their neighbour tables anymore. Each cluster head may also report its adjacent cluster to the ZC, and the ZC may work out the SoA and announce it to the whole network.During the routing discovery, besides the range and duplication control, all the receiving nodes have to decide whether to rebroadcast or not based on the following principle: the node may find which clusters the source and the destination belong to separately; if possible, it may obtain the intervals between the two clusters in the SoA for both the forward and the reverse sequence. If the node is in the cluster which is part of the shorter path, it may rebroadcast the request; otherwise, the frame is abandoned. As shown in Figure 1, the nodes in clusters 2 and 5 may not participate the routing discovery from nodes 1 to 2. By this method, the routing request rebroadcasting can be roughly limited in the smaller sector. If there is one II in the SoA, the mechanism of calculating the length of the bi-directional sequence is similar, whereas if the II is in the shorter part, it can be deduced that the best link is a polyline whose inflection point is or near the ZC, so only the nodes in the source and target clusters may rebroadcast the routing request. In the case of at least two IIs in the SoA, the network is absolutely segmented into more than two parts. If the start and the end devices are in the same section, the rebroadcasting is limited in the area from the source cluster to the destination one; otherwise, the request can be transmitted within only these two clusters.
Note that due to the limited transmission range of the ZigBee nodes, it is possible that two neighbours of the ZC may not find each other in their own neighbour tables. For that case, it implies that one node is out of the transmission range of the other, the LQIi,j is considered the least value.
However, this method cannot guarantee that every device outside the ZC’s neighbourhood belongs to a certain cluster. To solve this problem, when the n candidates are decided, the address space of all the clusters is also obtained. If it cannot cover the whole network, the ancestor nodes that contain the missing region may substitute the origin candidates. In the rare case that part of addresses are still not included, if the k routers with lower depths which have the corresponding address subblocks have other child devices, they will be selected as k determined cluster heads and the deciding process will be repeated for the other n-k candidates. If one candidate has missing addresses, but it is the only child of the parent, it is decided as the cluster head and its parent may take part in all the routing discovery as a free node.
There is only one more issue we should consider. The effectiveness of the directional broadcasting algorithm requires that all the newly joining devices have to decide their parents (clusters) based on the minimum distance. The specified mechanism in the ZigBee, which meet this demand, is that a node tries to take the node with the best LQI as its parent. However, when the router with the best LQI has no more addresses to allocate, it may decline the joining request, and the joining node has to be the child of the second best candidate that may be from different clusters. In our algorithm, a node should be aware of the SoA when joining the network. When finding the potential parent refuses its joining, it is only allowed to be the descendant of the declining device by checking the network addresses.
Based on the scheme described in the subsection, the direction of the routing request broadcasting is controlled. In our algorithm, the transmission range is also limited by a similar method as the ZBARD. As a known path, the length of the hierarchical path that passes through the first common ancestor is used as the maximum hops in the routing discovery, and that length can be worked out if the network addresses of the source and destination are given.
The performance of the proposed directional broadcasting algorithm in routing discovery is discussed in this section. The simulation was implemented in the MATLAB. Some parameters in the simulation were set as follows: the time duration was 300 s; the simulation area was 300 m × 300 m; the node numbers in the network varied from 25 to 200 (with the interval 25), and all of them were the ZigBee routers; the nodes were randomly deployed following the uniform distribution; Cm, Rm and Lm were set 4, 4 and 5 separately; the packet interval time was 1 s; the first packet arrival time followed a uniform distribution from 10 to 11 for each node; the source and destination were randomly chosen; and the cluster number was 5. For one scenario, the simulation was carried out 500 times to calculate the average.
The node mobility should be considered in the wireless networks. Since the ZigBee network is not for mobile communication, the node mobility is not high. In our simulations, each node was stationary for a random time that followed a uniform distribution from 50 to 150 s. Then, the node moved to a new position which is randomly chosen, and the moving speed was uniformly distributed from 1 to 10 m/s.
The overall comparison of different methods in routing discovery
Routing discovery time
Obtained path length
In this paper, we proposed a DBRD to reduce the routing overhead. Due to the sufficient computational and memory recourses in the ZC, it was required to gather the node distribution information and clustering the network into parts with similar coverage. The adjacency of the clusters, also the direction, was represented by the SoA that was announced to every device in the network. The routing request was limited in the area of the shorter path in the SoA to reduce the routing overhead. Our algorithm was compared with the ones specified in the ZigBee and some classic improved methods. Although the DBRD could not always find the global shortest path, it had an acceptable performance. The simulation results showed that the DBRD could significantly lower the routing overhead. The normalized routing overhead might be 40% cut and the latency was slightly reduced.
Our further work will keep optimizing the clustering method in the directional broadcasting algorithm since the routing overhead is closely related to the size and node numbers in each cluster.
This work is funded by the National Science Foundation of China (NSFC: 61271411, 61372097), the Project of Tianjin University Technology Development Fund (20130714) and the Doctoral Scientific Foundation of Tianjin Normal University (52XB1106).
- Cuomo F, Luna SD, Monaco U, Melodia T: Routing in ZigBee benefits from exploiting the IEEE 802.15.4 association tree. In Paper Presented at the IEEE International Conference on Communications. Glasgow; 2007:3271-3276. doi:10.1109/ICC.2007.542Google Scholar
- Tareq AA, Yang SH: A ZigBee-based mobile tracking system through wireless sensor networks. Int. J. Adv. Mechatronic. Syst. 2008, 1(1):63-70. doi:10.1504/IJAMechS.2008.020839 10.1504/IJAMECHS.2008.020839View ArticleGoogle Scholar
- Liang Q, Wang L, Ren Q: Fault-tolerant and energy efficient cross-layer design for wireless sensor networks. Int. J. Sens. Netw. 2007, 2(3):248-257.View ArticleGoogle Scholar
- Metin T, Ibrahim K: PSAR: power-source-aware routing in ZigBee networks. Wireless. Netw. 2012, 18(6):635-651. doi:10.1007/s11276-012-0424-5 10.1007/s11276-012-0424-5View ArticleGoogle Scholar
- Ren Q, Liang Q: Throughput and energy-efficiency-aware protocol for ultrawideband communication in wireless sensor networks: a cross-layer approach. IEEE Trans. Mobile. Comput. 2008, 7(6):805-816.View ArticleGoogle Scholar
- Liang Q, Wang L: Event detection in wireless sensor networks using fuzzy logic system. In IEEE Int Conference on Computational Intelligence for Homeland Security and Personal Safety. Orlando; 2005:52-56. doi:10.1109/CIHSPS.2005.1500610Google Scholar
- Zhang Q, Sun YG, Cui ZH: Application and analysis of ZigBee technology for smart grid. In Paper Presented at the International Conference on Computer and Information Application. Tianjin; 2010:171-174. doi:10.1109/ICCIA.2010.6141563Google Scholar
- Liang Q: Designing power aware self-reconfiguring topology for mobile wireless personal area networks using fuzzy logic. IEEE Trans. Syst. Man Cybernetics Part C Appl. Rev. 2003, 33(3):390-394. 10.1109/TSMCC.2003.817356View ArticleGoogle Scholar
- Ren Q, Liang Q: Fuzzy logic-optimized secure media access control (FSMAC) protocol wireless sensor networks. In IEEE Int Conference on Computational Intelligence for Homeland Security and Personal Safety. Orlando; 2005:37-43. doi:10.1109/CIHSPS.2005.1500608Google Scholar
- Ren Z, Tian LH, Cao JL, Li JB: An efficient hybrid routing algorithm for ZigBee networks. IMSNA 2012, 2: 415-418. doi: 10.1109/MSNA.2012.6324608Google Scholar
- Li J, Zhu X, Tang N, Sui J: Study on ZigBee network architecture and routing algorithm. Paper Presented at the 2010 2nd International Conference on Signal Processing Systems (ICSPS), Dalian, vol. 2 2010, 389-393. doi:10.1109/ICSPS.2010.5555486Google Scholar
- Sahinoglu Z, Orlik P, Zhang J, Bhargava B: Tree-based data broadcast in IEEE 802.15.4 and ZigBee networks. IEEE. Trans. Mobile. Comput. 2011, 5(11):1561-1574.Google Scholar
- Lee KK, Kim SH, Park HS: An effective broadcast strategy for route discovery in the ZigBee network. Paper Presented at the 10th International Conference on Advanced Communication Technology, Gangwon-Do, vol. 2 2008, 1187-1191. doi:10.1109/ICACT.2008.4493977Google Scholar
- Baronti P, Pillai P, Chook VWC, Chessa S, Gotta A, Hu YF: Wireless sensor networks: a survey on the state of the art and the 802.15.4 and ZigBee standards. Comput. Commun. 2006, 30(7):1655-1695. http://dx.doi.org/10.1016/j.comcom.2006.12.020View ArticleGoogle Scholar
- ZigBee Standard Organization: ZigBee Specification Document 053474r17. ZigBee Alliance, San Ramon; 2007.Google Scholar
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/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited.