Abstract

Creating dynamic communication infrastructures between mobile devices and satisfying the desires for time-sensitive multimedia applications have introduced new challenges in the design of protocols for mobile ad hoc networks. In this paper, to stream time-sensitive applications using mobile ad hoc network (MANET), we have selected the Optimal Link State Routing (OLSR) protocol. However, the protocol has high overhead because each node selects a set of multipoint relay (MPR) nodes. Therefore, we have proposed quality of service (QoS) supporting the MPR selection approach and a new lower maintenance clustering approach for minimizing the overhead of the network. As a result, the proposed approach showed a better result in the average end-to-end delay, packet delivery ratio, routing load, and throughput.

1. Introduction

In recent years, with the advancement of new technologies and the demand for flexibility and ease in the working environment, the use of mobile computing has enjoyed an incredible rise in popularity. Mobile ad hoc network (MANET) [1, 2] is a dynamic multihop wireless ad hoc communication network that allows people and devices to seamlessly internetwork each other with no preexisting infrastructure.

However, the biggest challenge in this kind of network is to find a path between the communication endpoints, which is aggravated through node mobility, resource constraints, and contention for channel access. Thus, a routing protocol will play a major role in an ad hoc network to connect nodes that cannot communicate with each other directly. To guarantee fast and reliable delivery of information and multimedia data, QoS metrics should be available in MANETs.

In this paper, considering its features of maintaining routing information, we have chosen Optimized Link State Routing (OLSR) [1, 3, 4] which is a type of proactive link state protocol and uses Hello and Topology Control (TC) messages to discover and then disseminate link state information throughout the mobile ad hoc network. Individual nodes use this topology information to compute next-hop destinations for all nodes in the network using shortest hop forwarding paths. However, the protocol has a high overhead to select relay nodes and maintain routing information.

Therefore, the objective of this paper is to provide efficient QoS-aware routing in MANETs using the OLSR protocol. We propose a better MPR selection and a routing computation approach by considering multiple constraints and a lower maintenance clustering algorithm for grouping MANET nodes. Hence, this work promises to provide efficient QoS routing that integrates all aspects like overhead, delay, throughput, scalability, and transmission error.

Several routing protocols have been proposed to support the quality of the communication service in MANETs. The biggest challenge can be viewed as the estimation of link QoS parameters because of node mobility, the lack of precise state information, fading, and a shared radio channel. Therefore, to provide efficient quality of service in mobile ad hoc networks, there is a need to design a new strategy that was not covered in the existing works. According to the literature, our solution is intended to improve the utilization of OLSR routing protocols for QoS requiring applications.

2.1. Attempts on the Selection of MPR Nodes

Upon the optimization of link state protocols using selecting flooding schemes that rely on MPR, variant approaches are introduced. The approaches are put forward to improve different aspects of broadcasting performance in MANETs such as the number of forwarding nodes, collision avoidance, efficient power usage, and QoS [5]. The schemes can be classified into different groups based on various criteria. Here, we classify MPR selection schemes into different groups based on their objectives and ways of MPR selection: (1) Pure MPR schemes [5], (2) MPR-based CDS schemes [5], and (3) QoS-based MPR schemes [5]:

In the QoS-based MPR scheme, the QoS constraints are considered in the network, and an attempt to find an MPR set that meets the QoS criteria was made, so that real-time applications such as voice and video can be better supported by providing paths with a better QoS metrics such as a larger bandwidth and lower delay [5]. However, finding an MPR set that can guarantee these QoS conditions is the preliminary for better supporting QoS in MANETs. Table 1 shows the description of the existing QoS-supporting MPR selection algorithms that were implemented and evaluated with our proposed work. Our proposed approach multiple QoS metrics for MPR selection.

2.2. Algorithms for Cluster Head Election in MANET

To manage the topology of a network, the MANET nodes have been divided into interconnected substructures and form a group of clusters. Each cluster has a particular node elected as a cluster head based on a specific metric or a combination of metrics such as identity, degree, mobility, weight, density, etc. [9]. The cluster head plays the role of coordinator within its substructure.

There are several algorithms in the literature for cluster head selection in mobile ad hoc networks: highest degree [10], weighted clustering algorithm (WCA) [11], and distributed weighted clustering algorithm (DWCA) [10]. Major MANET clustering algorithms as per the following survey [9].

2.2.1. Lin’s Scheme [9]

It is a neighboring-based clustering scheme. Every mobile node becomes a member of one of the cluster states based on their lowest node ID.

2.2.2. Adaptive Multihop Clustering Scheme [9]

This clustering scheme maintains a multihop cluster structure based on load balancing clustering and does not describe how the clusters are initially constructed.

2.2.3. Passive Clustering Scheme [9]

It is an on-demand protocol. It constructs and maintains the cluster architecture only when there are ongoing data packets that piggyback “cluster-related information” such as the state of a node in a cluster and an IP address of a node.

2.2.4. Distributed Dynamic Clustering Scheme [9]

It is a probabilistic way of clustering scheme. Its objective is to partition the network into (α, t) clusters and maintain (α, t) clusters asynchronously in a distributed fashion. “α” is a probability that a given cluster path will remain available for a time “t”. Choosing the best cluster head is based on calculating the best probability to reach the cluster head quickly, using (α, t) criteria.

3. Materials and Methods

Figure 1 depicts the overall MANET protocol architecture that will be implemented in our proposed system. Each ad hoc host contains different modules that will be used for routing a particular packet from the source to the destination host. Initially, each node performs clustering operation in order to be one of the cluster states, and routing information of every node is maintained according to the cluster information. To have clustering information in such kind of network helps us to improve routing at the network layer by reducing the size of the routing information, to decrease transmission overhead by updating the status of the environment after topological changes occur, to save communication bandwidth in ad hoc networks by minimizing the broadcast and multicast domain, and to aggregate topology information as the nodes of a cluster are smaller when compared to the nodes of the entire network [9, 10, 12, 13]. Here, each node stores only a fraction of the total network information [11, 14]. When the source node runs the applications that are needed to be forwarded to the destination node, first it maintains the routing information based on the information gathered by the clustering algorithm.

3.1. Clustering

In our proposed work, we are interested to design a clustering algorithm for the clustering of MANET nodes. Nodes are divided into clusters and the clustering algorithm is performed when a node joins the network. The cluster is performed based on connectivity and ID of nodes within the transmission range, and each node can be in one of the three states which are cluster head, ordinary, or gateway. On each cluster zone, we have only one cluster head that will monitor the communication between nodes mainly outside the cluster zone. Nodes that are selected as gateway nodes know more than one cluster head, and they allow passing communication to each neighbor cluster head. The main objective of creating clusters on a MANET is as follows: by limiting the network view of each node, we can reduce the routing complexity and overhead of broadcasting messages. Moreover, the local movement of nodes is handled only within the cluster zone without affecting other parts of the network and so the delay and packet loss is highly reduced. However, initially, each node initiates the joining operation by setting a timer and broadcasts a Hello message. This, as a standard MANET topology, may have network overhead.

To maintain a cluster topology, as our objective of providing an efficient route for an application that requires QoS support like multimedia data, a lower delay cluster formulation is selected. From the schemes, Lin’s scheme, which is a neighbor-based clustering, satisfies our criteria and it is selected, and we have made some modification to fully satisfy our requirement. In the existing Lin’s cluster formulation [9], every mobile node keeps its own ID and nodes periodically broadcast their ID to their direct neighbors. Then, each node compares the IDs of its neighbors with its own ID. A node decides to become a cluster head if it has the lowest ID among its neighbors’ IDs. However, in this algorithm, some drawbacks like a highly mobile node with the lowest ID among its neighbors can be selected as a cluster head causing inconvenient reclustering and undesired cluster head changes in the network. Moreover, using only a lower ID criterion may generate more clusters. So to address this problem, we are considering node connectivity constraint of a node. Based on these constraints, each MANET node decides its state and to be a member of the cluster zone. Algorithm 1 shows the pseudocode of the proposed Lin’s clustering algorithm.

Input: Node N
Process: Node n1 broadcast Hello message to all neighborhood
IF (Node n1 connectivity>neighborhood nodes and willingness !=will never)
Declare itself as cluster head
ELSEIF (node n1 node connectivity==node n)
Compare node ID
IF (Node n1 ID<node n ID)
  Declare itself as cluster head
ELSE
  Declare itself as an ordinary node
ELSEIF (Node n1 is the neighbor of two or more cluster heads)
Declares itself as a gateway node
ENDIF
Output: Cluster heads, gateway, and ordinary nodes of MANET
3.2. QoS-Aware MPR Selection
3.2.1. Node Connectivity

Every node must detect the neighbor nodes with which it has a direct and directional link. For this, each node periodically broadcasts its Hello messages, containing the list of neighbors known to the node and their link status. The Hello messages that are received by all one-hop neighbors are not forwarded. So based on this message, each node knows its number of neighbor nodes that are directly connected to it.

3.2.2. Delay

It is the time taken between two nodes for which a source node n1 sends a message to destination node n2 and successfully delivered. Each node includes in the Hello message the creation time of this message. When a neighbor node receives this message, it calculates the difference between sent time and the current time; this is done in a synchronized network [15]. This metric is important in delay-sensitive applications such as video and voice transmission. In equation (1), we have shown our formula for calculating a delay of nodes.n is the total packet received.

3.2.3. Quality

It represents the capacity of the link between two nodes n1 and n2. The quality of a link is computed based on periodical exchanges of the Hello messages between each node and its neighbors in a certain time interval. The links must be checked in both directions in order to be considered valid. In equation (2), we have shown our formula for calculating the link quality between node n and its 1-hop neighbors:HM1hopR, Hello message n received from 1 hop; THM1hopS, Total Hello message 1-hop has sent.

Bigger quality indicates that better communication exists among 1-hop neighbors. Thus, results in a higher packet delivery ratio.

3.2.4. Link State

Link state shows the status of the link at a given time T. Here T is referred to as the estimation period (namely, the time needed for estimating available bandwidth) [15]. In equation (3) we have shown our formula for calculating the status of a link. The state (s) of a given link at a time is as follows:TAB–total available bandwidth, TDS–transmitted data size.

In [4, 16], to compute the available link bandwidth of two nodes, it uses idle time. As shown in equation (3), the link state is calculated by subtracting the transmitted data size from the total available bandwidth and dividing it by the available bandwidth. The available link bandwidth between two nodes n1 and n2 is equal to the maximum of their idle time multiplied by the maximum bandwidth. Therefore, based on the above values, QoS metrics is computed as inQ = quality, BW = available link bandwidth, and D = delay.

Algorithm 2 shows the proposed algorithm in the selection of MPRs of a MANET with n nodes, 1-hop neighbor set N1 (n) and 2-hop neighbors set N2 (n). Each node n maintains the set of its MPR selectors. This set contains the nodes that have been selected by n as an MPR. Node n of MPRs is only in charge of forwarding broadcast messages received from one of its N1 (n).

Input: Node n, N1(n), N2(n)
Process:
Start with an empty multipoint relay set MPRn;
Find and calculate the number of N1(n) of the current node
IF (N1(n) status==symmetric && willingness !=will never)
Add these N1(n) nodes to the multipoint relay set MPRn
Select N1(n) as MPR which provides the only path to reach some nodes in N2(n)
Remove the nodes from N2(n) which are covered by a node in MPRn
While (N2(n) not empty) Do//all nodes in N2(n) that are not covered by the MPRn
IF (N1(n) is not in MPRn)
  Calculate the number of nodes that are reachable through it among the nodes in N2(n) and which are not yet covered by MPRn
  Calculate the QoS metrics value//as shown in equation (4)
  Select node of N1(n) as an MPR which reaches the maximum number of uncovered nodes in N2(n) and meets the QoS requirements
ENDIF
ELSE
IF (multiple choices of N1(n))//N1(n) nodes having the same number of Node connectivity
Select node of N1(n) as an MPR which have a maximum QoS metrics
ENDIFRemove the nodes from N2(n) which are covered by a node in MPRn
Output: MPR set of n

Initially, each MANET node broadcasts a Hello message to all its neighbor nodes and collects information about its neighbor status. In the mobile ad hoc network, nodes should have a symmetric status to hear each other. And also there is a willingess value from 0-7 range; if the willingness value is above average 3, the nodes can forward the incoming packet. If the willingness value is 0 and nodes cannot forward packets, this means the nodes which are selected as MPRs should have a willingness value different from 0; otherwise, it will not rely any incoming packet from the neighbor nods. Every 1-hop neighbor which can be selected as MPR is expected to satisfy the required QoS constraints. So based on the incoming status, a node selects its MPR node among 1-hop neighbors, which are reachable to all other neighbors. While there exist nodes in 2-hop neighbors which are not covered by the selected MPR nodes (line7 through 16 of Algorithm 2), the node checks the node connectivity of 1-hop neighbors and selects the node of 1-hop neighbor as MPR which reaches the maximum number of uncovered nodes in 2-hop neighbors. However, when there are more than one 1-hop neighbors covering the same number of uncovered 2-hop neighbors, it selects the one having a maximum QoS metrics to the current node.

3.3. Costs of MPR Selection Algorithms

In this paper, we have conducted the cost comparisons of the algorithms focusing on the cost for the source node to complete the MPR set calculation, so that all 2-hop neighbors of the source node can be covered. The result is evaluated in terms of time complexity, message complexity, information range, and source dependency [5]. On the steps of MPR selection algorithms, in the proposed QoS MPR selection, we assume that the O (N1) time might be needed at most to find out all 1-hop neighbors that solely cover some 2-hop nodes. Then, for each 2-hop node, add to the MPR set a node that can provide the maximum QoS metrics value. This step takes time to run. Since these two steps have to be operated for all 2-hop neighbors, the total time complexity of the algorithm can be . As we obtained from the surveys, QoS MPR-3 has the same time complexity with the proposed QoS MPR selection. Therefore, at the worst time scenario, these two schemes require less time to complete the forwarding node calculation. To calculate the message complexity, a number of messages exchanged between 1-hop and 2-hop neighbors are considered. When we consider multiple constraints in MPR selection, additional QoS information is piggybacked into Hello messages and exchanged between neighbors, and thus no extra control messages are generated. Therefore, all algorithms have the same message complexity, a total of messages required for MPR calculation. All MPR selection schemes have an information range of 2 hops, which means that nodes in these algorithms need knowledge of their 1-hop and 2-hop neighbors, and therefore, each node in the network has to include its 1-hop neighborhood information in its messages. It is also noted that all algorithms are source-dependent; hence, each node needs to check from where a packet was sent and whether the sender has selected it as an MPR.

All QoS-based MPR selections have the same cost result of message complexity and information range 2-hop zone, and they are source-dependent for forwarding of packets. But, in case of time complexity, QoS MPR-3 and the proposed QoS-based MPR selection take lower time, , for calculating MPRs. Hence, selecting QoS MPR-3 and the proposed QoS-based MPR selection schemes provides better performance for completing MPR node calculation.

3.4. Route Maintenance

To transmit multimedia data in the network, each node calculates a better optimal routing path to the destination of every other node. The calculation is focused on considering QoS constraints for the reliable delivery of data. Once the route information to the destination node n is computed, using Algorithm 3, it will be stored in the routing table of the source node.

Input: Node n, 1-hop neighbor set N1(n)
Process:
Initially, all old entries are removed from the routing table.
The new entries are recorded in the table from the N1(n) as the destination nodes and the hop count h is set to be 1.
FOR all route entries in which destination nodes is h+2 hops are recorded
IF (node destination is in the same cluster zone)
IF (node destination=next node and no
multiple next nodes)
Add a new entry with the destination node in
the routing table
ELSEIF (multiple next node destinations)
  Compare the number of hops and their link
  status like delay and quality to the destination
  Select and record the one having a better route
  destination
ENDIF
ENDIF
ELSE
IF (node destination is in different cluster zone)
It looks like cluster heads associated with a destination node
Compare routes to the destination
Add the next node with a destination node
ENDIF
END FOR
Output: Routing table of a node

4. Simulation and Experimental Results

To test the performance of our cluster-based QoS-aware routing protocol, we ran simulations using OMNET++ with the INET framework. Nodes in the simulation move according to the mass mobility model. The simulation period takes 1800 seconds and the simulated mobility network area is a 600 m × 400 m rectangle. The MAC layer protocol IEEE 802.11 is used in all simulations with a bit rate of 2 Mbps.

Each MANET host in Figure 2 contains different encapsulated modules that will be used for routing a particular packet from the source to the destination host. Figure 3 shows the individual MANET host module.

4.1. Simulation Results of MPR Selection

As shown in Table 2, the proposed multiple constraint MPR selection algorithm results in eight numbers of MPRs among twenty MANET nodes. Thus, compared with the existing algorithms, it produces less overhead.

Considering varied QoS metrics for selecting MPR nodes, we generated different performance results. The result is based on the capacity of the collected 1-hop neighbors and 2-hop neighbors for a node. In the approaches, the generated values of a number of neighborhood nodes affect the MPR number in the network. The more the 1-hop neighbors a node has, the fewer the MPRs it may select because with a high probability, a small subset of its 1-hop neighbors can reach a high number of the 2-hop neighbors (assuming high connectivity of the network). On the other hand, the more the 2-hop neighbors a node has, the more the MPRs may be needed to cover them all.

All the existing QoS MPR selection approaches [5] were implemented and evaluated on a flat MANET topology. QoS MPR-1, as it considered node connectivity of neighbor nodes, limits the nodes’ view (a small number of 1-hop neighbor can reach all 2-hop neighbors) and selects the minimum number of MPRs and overhead of a network. However, QoS MPR-1 does not always find an optimal path, as its MPR selection algorithm may omit the optimal bandwidth link of a node. However, considering overhead and a number of generated MPR results as shown in Table 3, it is selected and will be evaluated further with our proposed QoS MPR selection for multimedia QoS routing.

Looking at Table 3, QoS MPR-2 and 3 attempts to select the best bandwidth path, so in their MPR selection mechanism, they select neighbors with bandwidth as high as MPR, resulting in a larger MPR set than QoS MPR-1, thus producing higher overhead than QoS MPR-1.

4.2. Simulation Result

After all routing information is maintained in the routing table, the clustering module notifies the client nodes about the readiness of the routing information. Then, when the client node wants to get a video from server nodes, it initiates a video request to this node. As per the request of the client node, the server node provides video to the client node. Figure 4 shows how a client node requests and receives a video stream.

In order to route multimedia data with QoS support, QoS MPR-1, QoS MPR-3, and the proposed QoS MPR selection schemes are selected considering cost comparison and performance results for selecting MPRs. The approaches are evaluated farther in terms of average end-to-end delay, packet delivery ratio, normalized routing load, and throughput.

After performing exhaustive simulations with varied network sizes for the defined parameters, vector and scalar data are recorded and stored in a spreadsheet file. The data can later be analyzed and transformed into a table as shown in Table 4 and illustrated in a graph as shown in Figures 58.

The graph shown in Figure 5 displays the behavior of three QoS schemes of a routing protocol under varying network sizes and topology for an average end-to-end delay. As can be seen from the graph, cluster based on our proposed QoS MPR selection has shown lower end-to-end delay in all network sizes. This is due to the fact that based on the proposed cluster-based QoS-awar routing, the nework topology can be managed better, the number of intermediate nodes (rely nodes) becomes less, and optimal route is maintained easly and have less congested routes. However, routing on a dense network having 50 nodes has high topology updates, so the more frequently sent update messages tend to make the network busy resulting in a high congestion and packet delay. However, cluster based on our proposed QoS selection limits the change of the topology to a specified range without affecting the whole network. This shows that the proposed scheme provides a lower average end-to-end delay than the other two schemes. The other thing, in the proposed QoS MPR selection, was the delay which was considered as one of the selection criteria.

The packet delivery ratio for QoS routing schemes decreases as the size of the network increases. This is because, at higher network size, link breakage and congestion of packets may occur more frequently and the packet loss fraction increases. As shown in Figure 6, compared with QoS MPR-1 and 3, our proposed QoS MPR selection has the highest packet delivered ratio because the routes are optimal and have the minimal number of unreachable list of next-hop nodes for a particular destination node. As we consider the quality of links, the established links between the nodes have a lower probability to break. Thus, there is a list of optimal routes in the node routing tables, which results in a higher ratio for correct packet delivery.

As we observe from the simulation result shown in Figure 7, the reason for the normalized routing load difference among the three QoS routing algorithms depends on the number of control messages which are retransmitted in the network. QoS MPR-1 and 3 have a high flooding rate of multicasting and broadcasting messages. However, applying cluster schemes on the proposed QoS MPR selection minimizes the overhead of a network by limiting the network view of each node. Therefore, the proposed routing scheme results in lower routing overhead than the other two QoS routing schemes.

The more efficient network has the higher throughput, a lower packet loss rate, and the better delivery ratio. From Figure 8, it can be observed that the performance of the proposed QoS routing provided better packet delivery over the simulation time. This is due to the fact that applying a clustering scheme on the network helps to manage the network and maintain routing information better.

In all simulations, the experiment result shows that our proposed QoS routing provided better performance for QoS-required applications with high throughput and packet delivery ratio, minimizing delay, and routing load. This is due to the fact that in our proposed QoS routing approach, we considered multiple constraints for MPR selection and route calculation, and the nodes were grouped each other based on the clustering algorithm. As we see the results, all QoS evaluation metrics had good performance, which made the proposed QoS routing a candidate and primary choice of scheme for deploying especially in a time-sensitive application like video streaming, online conferencing, VoIP, etc.

5. Conclusion

In this paper, approaches to improve QoS routing in MANET protocols are proposed. In order to limit the activity of all nodes to a specific range, to decrease the number of communicating intermediate nodes, and to improve routing efficiency and scalability of nodes, we have reviewed and implemented Lin’s clustering algorithm. Applying clustering schemes in such kinds of networks facilitates the performance of a routing protocol by reducing the routing complexity and minimizing the rate of broadcast and multicast messages.

OLSR provides a strategy that discovers the best routing paths that links up two or more nodes in a network. It is a proactive protocol and can result in higher overhead due to the continuous route updating of a topology. To cover 2-hop neighbors, a new approach for selecting of MPR nodes was designed and evaluated in terms of packet overhead, stability, and number of MPRs. As we are considering multiple constraints and applying clustering schemes, the result shows that our proposed selection algorithm outperforms the minimum possibility of reselecting MPR nodes and the nodes become more stable. In the simulation period, on average, the node which is selected as MPR stays for 928.45 seconds. It selects with a minimum number of MPR, and it minimizes the number of retransmitted control packets of a network into 61.12.

Finally, we have evaluated the proposed QoS routing with the existing ones. Cluster based on the proposed QoS MPR selection outperforms in all evaluation criteria on varied network density. It provides a better performance for QoS-required applications with high throughput and packet delivery ratio, minimizing delay, and routing load.

Data Availability

The source code of my research work is publicly available at GitHub. Please visit: https://github.com/kebebewss2/QoS-routing-in-MANET-using-OMNET-/blob/master/Source%20Code.rar. I believe that everybody must share any resource to anyone who wants it.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This research work was performed by two academic staff at Jimma University and Addis Ababa University, Ethiopia. The authors would like to thank both institutes for supporting us through different resources. First and foremost, the authors praise the name of Almighty God, who gave them strength, health, and patience in every endeavor of my life. Second, the authors would like to thank Addis Ababa University and Jimma University for their support during the research work.