Overlapped hierarchical clusters routing protocol for improving quality of service

The rapid development in communications and sensors technologies make wireless sensor networks (WSNs) as essential key in several advanced applications such as internet of things (IoT). The increasing demands on using WSNs required high quality of services (QoS) because most WSNs applications have critical requirements. This work aims to offer a routing protocol to improve the QoS in WSNs, taking in consideration its ability to prolong the lifetime of the network, optimize the utilization of the limited bandwidth available, and decrease the latency that accompanies the packets transmitted to the gateway. The proposed protocol is called overlapped hierarchical cluster routing protocol (OHCRP). OHCRP is compared with the traditional routing protocols such as SPEED, and Two-hop velocity-based routing protocol (THVR). The results show that OHCRP reduces latency effectively and achieve high energy conservation, which lead to increase the network lifetime and insure network availability.


INTRODUCTION
The development of technology in both electronics and wireless networks fields lead to develop tiny sensor nodes usually called motes, sensor nodes (SNs), or just nodes. These nodes can operate collaboratively to accomplish different missions in variety of fields efficiently [1]. A group of sensor nodes cooperate together forming what is known as WSNs. In general WSNs consist of group of SNs that are able to observe, process, communicate with each other, and collaboratively send their data to the sink [2]. SNs are composed of four main units; sensing unit, processing unit, communication unit, and power unit [3]. wireless sensor networks (WSNs) have features that make them preferred for many applications, such as ease of installation, low cost of SN, self-configuration, ability to operate in harsh or inaccessible environment, and detection of smallest details. Because of these features, WSNs utilization extended to cover most of the vital fields such as agriculture, health care, environment monitoring, and military to name just few [2,4].
The motivation behind offering a routing protocol is to overcome the issue of the increasing demands on employing WSNs especially in internet of things (IoT) applications that boost the necessity for high quality of services. Although their preferred features, WSNs unique characteristics impose new challenges for supporting quality of services (QoS) as presented below [5][6][7]: − Severe resource constraints: nodes in WSNs operate with limited resources, such as energy, memory, buffer size, transmission power, and processing capability. The most important issue of resource limitation is the node energy. So energy conservation must be taken into account when applying any mechanism or protocol in WSNs. − Unbalanced traffic: unbalanced traffic caused by the flow of information travel from a large number of nodes toward a small set of nodes. − Data redundancy: in WSNs there is a high probability that neighbor nodes detect the same information, and that leads to a lot of data redundancy. Data aggregation or data fusion is a good solution to prevent redundancy but it added latency and complexity. − Network dynamics: wireless link failure, node failure, node mobility, and power management make WSNs have a high dynamic network, and this can add a complexity for supporting quality of services (QoS). − Energy balance: to make sure that the network operates for a long time, data traffic must be evenly distributed through the network to avoid energy drained in some nodes faster. − Scalability: many applications require a large number of SNs to be deployed in the interested area. WSNs consist of hundreds or even thousands of SNs, the QoS support must be applicable for these large networks, and it should be never degraded when the network scale up. − Packet criticality: QoS support must be able to differentiate between packets according their contents and provide priority structure. So any QoS mechanism must take into account these challenges to be suitable for WSNs.
In this paper, overlapped hierarchical cluster routing protocol (OHCRP) is proposed to improve the QoS in WSNs taking in consideration its ability to prolong the lifetime of the network, optimize the utilization of the limited bandwidth available, and decrease the latency that accompanies the packets transmitted to the gateway. The remainder of this paper is organized as follows. Section 2 presents an overview of related works; section 3 describes the suggested routing protocol. The obtained results contained in section 4, while the conclusion is introduced in section 5.

RELATED WORKS
Extending WSNs applications imposes extra criticality on the requirements need to be met by the networks, so protocols and algorithms must take into accounts these requirements during the operation. In this section, some of the related routing protocols that focus on end-to-end delay and energy conservation are presented. For example, in [8] a soft real time guarantees routing protocol called SPEED is proposed. In that work, each node in the network collect the geographic position and the ID of its neighbors using hello control message. When a node has a packet to send with a specific deadline, the node first extract the set of nodes that can met the forwarding deadline time and then select the one that has the highest relay speed. The protocol has proposed three types of real-time communication services for ad hoc networks; unicast, area-multicast and area-anycast. The data packet in SPEED contains a major field that determine which type of communication services to be used. Multi-path and multi-SPEED routing protocol (MMSPEED) is proposed in [9]. The same criterion proposed in [8] is used to select the next-hop node. The protocol also provides multi-path and multi-speed mechanism. Using MMSPEED, Reliability is guaranteed by selecting the link with highest packet delivery ratio while timeliness is met by selecting the link that has rely speed greater than the required speed for packet delivery.
Two-hop velocity based routing protocol (THVR) with energy balncing mechanism is developed in [10]. In their major study, the information of two hops neighbors is collected to determine the next-hop neighbor with the optimum link in the direction of the destination that provide the required velocity and hence; increasing the opportunity of meeting the deadline time of the transmitted packets. The protocol is based on three phases; packet forwarding, packet delay between sender nodes and its forwarder, and velocity care drop control action. THVR also provides packets drop strategy that depends on the position of the forwarding nodes to maintain packet deadline with low miss ratio.
In addition, Heikalabad et al. in [11] designed QoS and energy aware multi-path routing algorithm (QEMPAR) which is a multipath routing protocol for real-time applications. In this protocol, when a nodes has a packet to send, it first divide it into small packets with a sequence number, then sending packet with a sequence number 1 using the path with minimum hops-count, the second packet using the path has the second minimum hop-count and so on. The authors in [12] proposed real-time link-reliability routing (RTLRR) protocol. The protocol also depends on the information collected of two hops neighbors to select the next-hop forwarding node. Beacon message periodically exchanged between neighbor nodes, then according to the information collected by these messages the link reliability and delay of each link is estimated, which in turn TELKOMNIKA Telecommun Comput El Control  Overlapped hierarchical clusters routing protocol for improving quality of service (Hayder Fakher Jassim) 707 can be used as criteria for selecting the next-hop forwarding node. Alghamdi [13] suggested a route optimization technique in multi-hop WSNs to improve QoS by giving a rank to all possible routes based on some network parameters as well as the bandwidth. Samara and Aljaidi [14] proposed energy-aware, least cost, quality of service routing protocol (ECQSR). The protocol is based in it work on determining shortest path using nearest neighbor algorithm in order to increase the WSN lifetime.
Other researchers develop a routing protocol based on clustering methods. For instance, Zahmati et al. in [15] introduced energy efficient protocol with static clustering (EEPSC) and its enhanced version E3PSC proposed by Chaurasiya et al. [16], these two protocols are clustering based routing protocol that divides the network into groups of static clusters to cover the entire network where cluster heads periodically change depending on the remaining energy of the member nodes. Zhang et al. [17] developed a cluster sleep-wake scheduling algorithm to control underwater sensor networks based on selecting the node with highest energy as the working node, while the remaining nodes stay in the sleep mode. Azizi and Baghdad in [18] introduced an approach combines data aggrigation with TDMA technique using spiral-based clustering to improve connectivity, increase bandwidth, and prevent collisions due to inter-cluster. Singh in [19] suggested a multiobjective clustering strategy based hybrid clustered routing protocol to inhance energy reservation, throughput, lifetime, and decreasing packets delay. A real-time link-reliability routing protocol is proposed in [2]. The protocol is based on using the information of two hops neighbors to compute the reliability and the transmission delay of links where a node is connected with its single-hop neighbors. In addition, joint routing and MAC protocol (joint routing and MAC (JRM)) are suggested by the authors in [20]. JRM, network state information is approved by using the control packets that lead to reduce energy consumption and control overhead.
The authors in [21] developed a clustering routing algorithm to decrease energy consumption and prolong the network lifetime. The proposed algorithm is based on low-energy adaptive clustering hierarchy. In that work, the authors give a modification of electing the cluster heads (CHs) which is considered a far from the BS because these nodes need more transmission power for forwarding packets to the base station (BS). Also, in [22] an energy-efficient QoS-aware and heterogeneously clustered routing protocol for both real-time and non-real-time application is proposed. In this protocol, the heterogeneous nodes divided into four different energy levels according to the nodes residual energy. Kim et al. [23] propose heterogeneous reinforced barrier (HeteRBar), where building independent paths for multiple BSs (located at each corner of region of interest (ROI)) is done by creating base-graph depending on the sensing and communication range of randomly distributed nodes. In this paper, we attempt to implement an overlapped hierarchical clusters routing protocol where the clusters are hierarchically built to improve the QoS in WSN.

OVERLAPPED HIERARCHICAL CLUSTERS ROUTING PROTOCOL
In this section, the proposed OHCRP is explained in detail. In OHCRP, overlapped horizontal and vertical clusters are hierarchically built starting from the base-station (BS) to the edge nodes. Level 1 of these overlapped clusters comprises the BS and all its closest neighbors. When BS neighbors engaged with BS in level 1, each node will try to find a partner begin with the nearest one. After each node select its partner (if possible), the partner nodes offer a link to their shared neighbors (children nodes) that cannot access the BS directly leading to build level 2 of the overlapped hierarchical clusters (vertical overlapped clusters). Children nodes accept all possible links to the BS forming horizontal overlapped clusters. These vertical and horizontal overlapped clusters complete level 2 of the hierarchical clusters. The procedure of building level 2 is also followed by the children nodes to build level 3, then the process of building overlapped hierarchical clusters continues until reach the edge nodes.
OHCRP structure is shown in Figure 1 while Figure 2 shows sample of relationship between its nodes. For each individual clusters, two of the nodes (partner nodes) take the responsibility of maintaining the availability of the link periodically. Two nodes (partner nodes) are responsible for maintaining a single link, so, the duty cycle of maintaining the link is divided between these partner nodes, and hence; only one of them is needed to be active at a specific time, which can effectively reduce energy consumption of the nodes during the operation of the network. Building the overlapped clusters toward the BS and selecting the partner nodes begin with the nearest neighbor at first can guarantee the providing access to the BS with minimum possible hops to most of the nodes in the network which can reduce the transmission delay of the transmitted packets effectively.
OHCRP exploits the partnership between nodes to reduce the number of required transmission packets through the network where each sleeping partner cache its data in its active partner to avoid periodically wake-up during sleep mode. At first, the active node sends two packets (one for each partner), after that, if there is no change in the information, this active partner will only send one conformation packet to conform the previous. The active nodes will continue reducing the number of transmission packets by using conformation packets as long as no change in the previous data (partners' data). So energy consumption can be minimized in two ways, firstly by letting approximately only half of the nodes active at specific time, and secondly, by reducing the number of transmission packets using conformation packets. Figure 1. OHCRP structure Figure 2. Sample of relationships among nodes using OHCRP algorithm

Design assumptions
The following assumption is considered in OHCRP: − Network nodes know their positions using some location estimation techniques. − Each node knows the position of the BS. − All nodes in the network are static. − Nodes are homogeneous. − Each node in the network has its identification ID − The nodes randomly deployed through the interested field.

Operation of OHCRP protocol
OHCRP operates in two distinct phases; configuration phase, and data forwarding phase. The responsibility of the first phase focuses on the definition of the network and the related links in addition to the changes that occur to it. As for the second phase of data forwarding, the next node will be determined through which the data will be sent according to certain conditions and calculations. The details of these two phases are explained in the following two subsections:

Configuration phase
In this phase, neighbors discovery, partner association, link offering, hop counts, link delay and speed calculation, adding new nodes, and network recovery (in case of nodes failure) are achieved. The algorithm begin by neighbors discovery, let assume that nodes i and j are neighbor nodes. Node i send HELLO control packet which contain node ID, node position, energy level, and packet type. When node j receive Hello packet, it will respond with ACK packet which also contain node ID, node position, energy level, and packet type. In this way, node i will know that node j is one of its neighbors and the same is true for node j. Hop counts and partner association are interleaved with each other. The BS send HOPS_TO_BS control packet to its neighbors. Each node receive HOPS_TO_BS control packet, and after waiting a short time, it will seek for a partner, then after getting a partner it will offer link to shared nodes (nodes that are neighbors for both partner nodes) by sending HOPS_TO_BS packet contains two partner nodes ID. However, even when a node fails to find a partner, it also offer link to the children nodes, to increase the number of links available for network nodes. Number of hops to get the BS equals 1 in the case of BS neighbors and the number increases as new overlapped clusters level built. When the building of overlapped clusters is finished, each node calculates link delay and relay speed for each link. Link delay is calculated by:

Link_delayj i = DelayTX + Delayprop
After calculating the link delay for each node in the network, the nodes calculate the relay speed for each link offered by upper-level nodes (parent nodes) by [8]: where; di: Distance from node i to the base-station. dj: Distance from node j to the base-station. The routing table is completed when the relay speed is calculated which contains: parent nodes IDs, positions of the parents, link delay, relay speed, and energy level as shown in Table 1. According to the characteristics of SN, node failure is expectable; either because of hardware failure or energy depletion. WSNs must be able to deal with such issue to insure ceaseless service. In OHCRP, when a node fails, then the partner node take the responsibility of making link up. The worst case when both partner fail, in this case, the children nodes must have updated information about the state of the link, so active node must periodically send a beacon message as indication of link state. When new nodes deployed through the field, they first check their neighbors, then find the minimum hops they need to get the BS, after that, the nodes try to find partners, then offer links to down level nodes (children nodes). -

Data forwarding phase
The procedure used to select the appropriate node as a next forwarding node depends on two conditions: If the application has packets with deadline, then the relaying speed between the node and its next forwarding node must be equal or greater than the required speed that meets the deadline of packet delivery. On the other hand, if no deadline exists, the choosing of the appropriate link depends on relaying speed and the remaining energy of the nodes. From list of the candidate nodes, the node with maximum remaining energy level is selected. So, if node i has Ni next-hop neighbors, the next-hop node will be the node with highest SE (forwarding speed and remaining energy) where SE can be calculated by: where: Cw: weighting factor Ej  : Remaining energy for node j statej: activity status of node j (wake-up = 1, sleep = 0) Sj i : speed of link between node i and node j Setting the weighting factor Cw is up to the applications, where as it increases, more reduction in delay is achieved, while more load balance is achieved as the weighting factor decreases. Partner nodes periodically take the responsibility of making the link up. The factor that determine the period for each node is the remaining energy as illustrated in the following formula. where: τ1 and τ2 are the activity period of partner 1 and partner 2 respectively and are the remaining energy levels of partner 1 and partner 2 respectively T: a specific whole period ϵ: little extra time to ensure unbroken link

Activity role exchange
When node i go from sleep mode to active mode it must broadcast ACTIVITY_ON control packet to inform the children nodes that it is now turn to the active mode, while its partner go to sleep mode. When children nodes receive the ACTIVITY_ON control packet they toggle the node activity state for their parents from on to off and vice versa. Sharing the responsibility of the link between partner nodes represents main factor in energy conservation and load balance among all the nodes especially for the nodes near the BS that connect the far nodes with the gateway because of the heavy load they deal with, and as a consequence, an effective prolonging of the network lifetime is achieved.

Energy consumption
SNs compose of sensing unit, processing unit, communication unit, and power unit. Communication activity represents the most source of energy depletion in SNs, so during the simulation only the energy consumption of communication unit during transmission and receiving is calculated. Where the energy consumption for packet transmission and receiving are calculated as in [24]. Assuming pl is the packet length, TR is transmission range of the node, Eelec is the energy consumption of transceiver circuitry, and EA is the amplifier energy consumption:

SIMULATION RESULTS
This section introduces the results obtained by implementing OHCRP using omnetpp-5.0 [25,26] simulation framework. More than ten tests and measurements have been considered to evaluate the QoS using OHCRP. The results cover the ability of the proposed protocol in reducing the latency by providing links with the minimum possible number of hops for most of the nodes in the network, alleviating load on the network, and selecting links with the highest speed for forwarding packets. In addition, energy conservation is achieved by dividing the responsibility of the links between partner nodes, which in turn helping nodes to avoid receiving of most of the unintended packets. Moreover, the transmitted packets through the network is reduced by exploiting data stability of partner nodes. In this study, OHCRP is tested using four different WSNs scenarios in which, the density of distributed nodes, the position of the gateway, the area of the field, and the random nodes positions are the differentiable features used. In each scenario, building of the overlapped clusters, node energy, average delay, and throughput are obtained.
Noting that, for the case when the nodes are randomly distributed through the interested field the measured values for each network scenario are repeated many times to get the most general behavior of that network. Table 2 shows the characteristics of the different networks used to test OHCRP protocol. These scenarios are selected to examine the performance of OHCRP protocol in different network characteristics. In Network-1, 100 nodes distributed through 100×100 m 2 field and the gateway is assumed to be on the left side of the sensing field. Network-2 is proposed to test the effect of increasing the nodes density on the performance of the proposed protocol while keeping the area of the sensing field without change. In Network-3 both of the nodes density and the area of the sensing field are increased (compared to Network-1), to test the effect of increasing both of the number of nodes and the field. In last scenario, Network-4 is proposed to investigate the effects of changing the position of the gateway to the center of the field besides further increasing in the field area to reach to 150×150 m 2 . In order to evaluate the performance of the proposed work, OHCRP protocol results are compared with those of SPEED and THVR routing protocols. For example, in Figure 3, OHCRP is tested using Network-3, in which, 200 nodes randomly distributed through (120x120) field area and the gateway position is at the side of the field. The simulation parameters are summarized in Table 3.
One of the most important objectives in spreading the nodes in WSNs is to insure full coverage of the sensing field. In this work, the nodes were deployed randomly in the interesting field with different densities according to the scenarios mentioned in Table 2. An example of such deployments is shown in Figure 4 where four levels of overlapped clusters are built to cover the proposed network, in which, the maximum hop count to reach the gateway is four. For each level, the sold curve surrounds the parents and the dotted curve surrounds the children nodes of the whole clusters pertain to specific level. The process of building the overlapped clusters is designed such that it starts from the gateway or BS until it reaches to the edge nodes. The whole overlapped clusters for the networks presented previously are shown in Figure 5. In this figure, each node has multiple shapes and the number of these shapes equal to the number of clusters this node belongs to.  OHCRP protocol takes into account the importance of energy conservation through building the hierarchical structure of the overlapped clusters as well as the adoption of a partnership relation between pairs of nodes which enable them to take the responsibility of forwarding data packets mutually. Energy consumption for each individual node along simulation time is measured for the scenarios mentioned in Table 1.
The energy consumption using OHCRP is compared with the energy consumption of SPEED and THVR routing protocols. Energy consumption using OHCRP protocol is affected by the number of transmitted packets through the network and the data similarity ratio (DSr) between partner nodes, for this reason, the average energy consumption using OHCRP is measured for two values of DSr; 50%, and 100%. For instance, the energy consumption for the simulation time of 50 seconds and 4 seconds transmission period is shown in Figure 6 and  The data stability ratio (DSr) of partner nodes is assumed to be 50%. The ratios of energy consumption between OHCRP and the other two protocols (SPEED, and THVR) are approximately 39%. The energy conservation is achieved using OHCRP by the investment of partnership between nodes that divide the duty of packets forwarding between partner nodes and hence; alleviating the burden of receiving unnecessary packets that directed to other nodes. The other source of energy conservation is achieved by exploiting data stability of partner nodes which effectively reduce the number of transmitted packets required to deliver the specific information to the gateway. Along 50 seconds of simulation time with the case of each node transmits its packet at every 4 seconds; the four network scenarios mentioned in Table 2 are examined. OHCRP protocol exploits the stability of partners' data to decrease the number of transmissions required and help in alleviating the demands on the channel which can effectively decrease the average delay of packets delivered to the gateway. The results show that the average delay using OHCRP with 50% data stability is 0.168 sec. and the ratio respecting to the other two routing protocols are 85% and 91%. The average delay measured for each of OHCRP, SPEED, and THVR routing protocols is shown in Figure 8, along 50 seconds of simulation. Table 4 shows the Energy consumption ratios between OHCRP and the other. Also, the average delay ratios between OHCRP and the other protocols is illustrated in Table 5. The simulation results show that our OHCRP outperforms SPEED, and THVR routing protocols.

CONCLUSION
Improving QoS in WSNs is an active research area because the success or failure of WSNs applications mainly depends on whether the networks can fulfill their demand or not. The aim of this research was to investigate an efficient way to improve the QoS in WSNs through continuity of service, delivery of packets with low latency, and optimizing the utilization of WSNs limited bandwidth. In this work, a hierarchical routing protocol technique OHCRP is proposed and investigated to improve the QoS of a WSNs which provides energy conservation, delay minimizing, bandwidth optimization, and load balance. The results showed that the latency is reduced, the access to the shared channel is alleviated and efficient bandwidth utilization is achieved by using OHCRP. OHCRP invests in the stability of data carried by partner nodes to make active node transmits only one packet instead of two. Load balance is also achieved in two ways, firstly, by a mutual activity of partner nodes, and secondly, by selecting the next hop node according to the residual energy. So, compared to traditional routing protocols such as SPEED, and THVR that concern with time critical packets, OHCRP reduces latency effectively and achieve high energy conservation, which lead to increase the network lifetime and insure network availability.