Skip to main content

An admission control mechanism for dynamic QoS-enabled opportunistic routing protocols

Abstract

Opportunistic routing has gained much attention as a new and promising approach to relay packets in wireless mesh networks. The collaboration of intermediate nodes to deliver packets without a predetermined route, using the broadcast nature of wireless channel, increases the transmission reliability and network throughput. Nevertheless, such characteristics make the process of admission control even more challenging than in a traditional unipath routing protocol. In this paper, we propose an admission control mechanism for quality of service (QoS)-enabled opportunistic routing protocols. This mechanism performs admission control and resource reservation in multiple neighbors according to their importance for the relaying process. We also consider the influence of using thresholds for QoS parameters in order to improve the service provided to adaptive applications. Simulation results allow us to reach two conclusions: (i) the proposed mechanism achieves higher success rate than both a unipath-based and a multipath-based admission control mechanisms and (ii) thresholds allow high resource reservation even in network topologies with scarce resources.

1 Introduction

Over the last few years, wireless mesh networks (WMN) have been consolidated as an important approach to connect devices. This kind of network is especially suited to universities, commercial buildings, and even metropolitan zones because of features inherited from ad hoc networks such as self-configuration, self-organization, self-discovery, and self-healing allied to a stationary infrastructure composed of routers and Internet gateways [1, 2]. Despite this success, the huge number of challenges in this field is remarkable. Problems such as the high channel variability, interference, and transmission fading raise a set of issues related to the development of new practical solutions when compared to wired environments. Among these challenges, quality of service (QoS) stands out as an essential component that must be satisfied to allow the execution of several applications properly.

We can define quality of service as a set of service requirements to be satisfied by the network during flow transmissions [3]. In practical terms, we usually consider as service requirements some network performance metrics. These performance metrics can be classified as additive (e.g., delay and jitter), multiplicative (e.g., packet loss), and concave (e.g., available bandwidth) [4]. Despite an implicit relationship between them, the optimization of multiple performance metrics in a single solution is considered an NP-complete problem [5, 6]. As a consequence of this complexity, several authors have presented solutions to enable QoS on WMN and ad hoc networks [7] where different layers of the TCP/IP stack can be used to provide QoS [8]. The great importance played by mechanisms based on QoS routing is remarkable because it is able to achieve an end-to-end QoS by means of the definition of routes for transmitting flows satisfying QoS requirements.

Most solutions for QoS routing [915] are based on traditional routing protocols for ad hoc networks such as Ad hoc On-Demand Distance Vector (AODV) [16], DSR [17], DSDV [18] and OLSR [19] or are based on the multipath paradigm [2023]. These protocols share a common property, which is how they treat the channel between nodes. For them, the link between two neighbors is handled as a dedicated channel similar to wired environments, neglecting the fact that all transmissions are, into the WMN domain, naturally broadcasts. By ignoring this characteristic, named multi-user diversity [24], several benefits cannot be obtained. For instance, neighbors that could eventually hear packets originated from a transmitter discard them whether they are not the next relay, even in the case that the intended relay could not hear the transmission. Based on this characteristic of the wireless environment, several new protocols have been proposed in order to exploit receptions of the same packet at multiple nodes to improve network performance. One of the most promising strategies is opportunistic routing [25, 26] at which, the transmitter does not define the next relay for a packet transmission, but instead, it defines only a set of possible relays, named forward set. The election of the real relay is performed only after the reception of a packet by neighbors.

Although opportunistic routing improves transmission throughput compared to traditional protocols, it raises a new issue with regard to the admission control and resource reservation process in protocols with QoS support. Call admission control (CAC) is considered one of the most important components of a QoS solution because it must estimate the network conditions and decide if a new flow can be admitted without breaking previous QoS contracts [27]. In this context, CAC mechanisms usually perform resource reservation considering that data will flow through a predefined set of paths. Unfortunately, such an assumption cannot be made in the context of opportunistic routing.

Another major issue in regard to QoS solutions refers to the support of adaptive applications. Several approaches do not consider the possibility of applications adapting the content during transmission. For such approaches, applications would only work properly if a predefined bitrate can be provided neglecting the fact that various kinds of applications, where multimedia applications are the main example, are able to adapt the transmitted content reducing the network resource usage [2832].

In this paper, we propose a novel admission control mechanism for QoS-enabled opportunistic routing protocols. This mechanism performs admission control and resource reservation in multiple neighbors according to their importance for the relaying process. For this aspect of the solution, the proposed approach is inspired in the work presented by Liao et al. [23] which proposes a ticket-based mechanism for resource allocation. Their idea is extended by considering the characteristics of the opportunistic routing paradigm. It differs from the previous work because each node uses all possible connections to its descendent nodes instead of limiting it to just a subset of descendent neighbors, allowing growth in resource reservation.

We also consider the influence of using thresholds for QoS parameters in order to improve the service provided to adaptive applications. In order to evaluate our solution, we compare our mechanism to the original ticket-based mechanism [23] and to a unipath solution. Simulation results show that the proposed mechanism achieves satisfactory success rate on the admission control process. We also show that thresholds allow a high resource reservation even in network topologies with scarce resources.

This paper is organized as follows: Section 2 discusses an overview on the current status of literature. The following section presents the definition of two problems tackled in this work and a high-level vision of the proposed solution. Section 4 presents a detailed description of the solution detailing how each component works including a mathematical model of the proposed mechanism. In Sections 5 and 6, we discuss the main aspects of experiments performed in order to evaluate our solution and the results obtained. Finally, in Section 7, we present the conclusions and future works.

2 Related work

In the last few years, significant work has been performed on quality of service applied to ad hoc wireless networks. Many approaches were proposed regarding different aspects of the routing process, and such works have been described in several surveys and reviews in the literature [6, 8, 3337]. For instance, Chen et al. [38, 39] and Guimaraes et al. [40] propose mechanisms to estimate the available bandwidth in networks with QoS support. Another research line relates to routing protocols that are aware of interference [41, 42]. Gupta et al. [41] propose a routing protocol that are aware of interference called IQRouting. In this protocol, several possible paths for transmission are analyzed by sending probe packets and determining which paths best meet the QoS requirements. Another similar protocol is presented in Jia et al. [42], who attack the problem known as ad hoc shortest widest path, which consists of determining the maximum throughput that a given data path is capable of transmitting between a transmitter and a receiver.

Some approaches refer to QoS support from the geographic routing [4346]. Sun et al. [43] propose a routing protocol named geographical vehicular grid (GVGrid). The GVGrid has as basic elements the on-demand and geographic routing using the lifetime of the transmission paths and the delivery rate of packets as parameters of the QoS. Similarly, Shah et al. [45] present a protocol with QoS support based on the location information. In this approach the authors aimed at reducing the transmission delay. For this intent, they propose a scheme for predicting the transmission delay given geographic positions of both transmitter and receiver.

In the context of approaches that propose the construction of backbones on the network topology to support QoS, we can point out the works of Sivakumar et al. [47] and Ivascu et al. [48]. In the first one, core-extraction distributed ad hoc routing (CEDAR) is proposed. This protocol offers support to QoS for applications which require minimum levels of available bandwidth. To achieve this purpose, the execution of the protocol consists of three steps: the construction of a routing backbone, the propagation of the network topology among nodes, and the computation of the best route for transmitting data. On the other hand, Ivascu et al. [48] propose an extension of AODV protocol [16] to support QoS. In order to allow that, the protocol builds a backbone along nodes that have the greatest amount of resources available. Its main goal is to serve as a central infrastructure for transferring packets in the network.

Besides the unipath routing, several authors have proposed solutions that focus on the multipath routing [2023]. Liao et al. [23] propose an on-demand multipath routing protocol to support QoS. In this protocol, the reservation process is performed by searching the minimum set of routes that meet the QoS requirements. To this end, the transmitter sends a reservation request to the destination. Whenever the request reaches a relay that has no neighbor whose available bandwidth meets the requirement of QoS, the request is divided into sub-requests (or tickets according to the authors). The receiver collects all sub-requests, adding the reserved bandwidth until it reaches the original request. Lee et al. [21] proposes a mechanism for on-demand routing, named split multipath routing (SMR), which uses multiple routes to minimize the effect of route failures during the routing process. Unlike the previous approach, no admission control mechanism is employed in the SMR. Other approaches to provide QoS based on routing include multicast approaches [4952] and the reservation process optimization in face of multiple constraints [5, 5355].

In regard to opportunistic routing-based approaches to provide QoS on ad hoc networks, the number of works currently proposed on this topic is very limited [5661]. Most of them are orthogonal to our approach in the sense that they focus mainly on the transmission process while we concentrate on the admission control problem. The only exception is presented in Zhao et al. [58]. In that work, the authors present both a metric for determining the prioritization of relays in the forward candidate set and an admission control mechanism based on opportunistic routing. Specifically, they discuss the new metric called bandwidth-cost ratio (BCR) which allows the routing protocol to select the forward candidate set based on the bandwidth availability. After the construction of the forward candidate set, an admission control mechanism is employed to perform the resource reservation on the primary route. The main issue of this approach refers to the fact that only one route is considered for reservation. As a consequence, the maximum bandwidth allocated for any flow cannot exceed the available bandwidth of the selected route even if the sum of the bandwidth available on the forward candidate set can meet the bandwidth requirement of the QoS request.

Another approach, but without considering the admission control problem, is presented in Rusli et al. [56]. In that work, the authors provide a mechanism for coordinating the transmission of multiple packet types in the context of the opportunistic routing paradigm. It presented an enhanced version of the metric opportunistic quality score (OQS) [62] to adapt the transmission scheduler. Simulations show that the proposed scheme can improve the performance of the transmission especially, in the end-to-end delay and energy efficiency.

Other solutions for supporting QoS through opportunistic routing, also without considering the admission control problem, include the use of cross layer resource allocation strategies to increase effective capacity of communication links [57], the proposition of protocols to optimize the transmission in terms of energy consumption and end-to-end latency [59, 60] and the construction of joint prefix-based addressing schemes to ensure low end-to-end delay for data collection in wireless sensor networks [61].

3 Problem definition and overall solution

In this section, we present a discussion about the problems considered in this work and how we intend to solve them. First, we present a brief introduction about the opportunistic routing paradigm and how admission control mechanisms can be applied in the context of this routing paradigm. In the following, we introduce a formal definition of the network model as well as the problem definition. After that, we present a high-level view of the proposed solution.

3.1 Opportunistic routing

Opportunistic routing has gained much attention as a new and promising approach to relay packets in wireless mesh networks. The collaboration of intermediate nodes to deliver packets without a predetermined route, using the broadcast nature of wireless channel, increases the transmission reliability and network throughput.

In order to demonstrate the benefits of using opportunistic routing, consider the network topology illustrated in Fig. 1. Such topology consists of seven nodes (two end nodes and five routers) placed in an environment where packet transmission between nodes are subject to different packet delivery probability. Considering the described environment, a traditional routing protocol would make the choice of the path with the highest delivery probability (i.e., S R5 T), obtaining a packet delivery probability of about 40 % of the packets sent. If we instead consider an opportunistic routing-based protocol, the packet delivery probability transmitted by node S will be P=1−((1−0,4)(1−0,2)2(1−0,3)2)≈0,81. In other words, the success rate will be doubled, reaching approximately 81 % of transmitted packets.

Fig. 1
figure 1

Scenario of a topology with high packet loss rate. Labels on arcindicate the packet delivery ratio between nodes

The aforementioned example illustrates how the opportunistic routing paradigm can be used to increase the transmission channel reliability, as the next hop is not chosen a priori but only after the correct reception by descendent nodes.

Considering the characteristics of the opportunistic routing paradigm, admission control mechanisms can be applied to admit or reject new traffic flows in order to guarantee that the QoS ongoing traffic is maintained [58].

3.2 Network model

We consider a network topology composed of a set of nodes \(\mathcal {N} = \{n_{i} | i = 1, 2, \ldots, k-1, k\}\), where n i specifies a node on that set and \(k = |\mathcal {N}|\) specifies the size of the set \(\mathcal {N}\). We also consider a set \(\mathcal {C} = \{ n_{i} \rightarrow n_{j} | n_{i}, n_{j} \in \mathcal {N}\}\) representing all directed hyperlinks interconnecting nodes from \(\mathcal {N}\).

A flow can be routed from a source node n s to a target node n t if there exists at least one path p that belongs to the set \(\mathcal {P}\) defined on Eq. 1.

$$ \begin{aligned} {}\mathcal{P}_{s \rightarrow t} &= \{ n_{s} \rightarrow \ldots \rightarrow n_{t} | n_{s}, n_{t} \in \mathcal{N} \land \exists \\&\quad\;\; (n_{s} \rightarrow n_{x}, n_{x} \rightarrow n_{y}, \ldots, n_{z} \rightarrow n_{t})\} \end{aligned} $$
((1))

In regard to the flow transmission, we model an opportunistic routing flow on any node n i as a tuple \(\mathcal {F} =\{n_{s}, n_{t}, {FCS}_{i \rightarrow t} | n_{s}, n_{t} \in \mathcal {N}\}\), where n s and n t represent both source and target, respectively, and F C S it represents the forward candidate set [25, 26] of the node n i for the target n t , obtained from any chosen routing metric.

3.3 Problem definition

Based on the above network model, we considered two important problems:

  1. 1.

    How to enable admission control for protocols based on the opportunistic routing paradigm?

  2. 2.

    How to perform admission control for adaptive applications?

The first problem refers to the required approach to enable admission control in the context of the opportunistic routing paradigm. This challenge arises from the fact that in such a routing paradigm, the transmitter does not have a default next hop for a specific route. Due to that, it does not make sense performing resource reservation only in a specific descendent neighbor. Instead, it must be provided with an optimized way to perform resource reservation in all neighbors able to deliver data on the target.

To deal with the above issue, we consider the use of an approach for admission control and resource reservation similar to that employed in the multipath routing. Instead of performing the resource reservation at a minimum required route set, we meet such intent through the reservation in all descendent neighbors according to their importance to the relaying process. Specifically, each node, upon receiving a request of resource reservation, divides the original request into sub-requests addressing this new set of requests to its descendent neighbors. The amount of resource to be reserved in a sub-request is defined by the ratio between the available bandwidth from the current node to a specific neighbor, which then is compared to the sum of available bandwidth of all descendent neighbors. For instance, consider the network topology shown in Fig. 2. This network topology is composed of a transmitter, a receiver (nodes S and T, respectively), and a set of intermediate nodes. Consider the labels on the arcs as the proportion of the available bandwidth for the node compared to the available bandwidth on the nodes from the candidate set.

Fig. 2
figure 2

Requests are splitted into sub-requests at intermediate nodes

In such a scenario, whenever a request reaches a node, it is divided into N sub-request, where N is the number of descendent nodes with available bandwidth for reserving. In turn, the node T collects all the sub-requests until it can be possible to mount the original request.

The second challenge refers to the approach used to define the QoS parameters in requests. In the context of protocols with QoS support for WMN/ad hoc networks, an approach commonly used is the definition of QoS parameters as fixed values. In this way, applications perform transmission at fixed rates and are not able to make any adaptation in the transmitted flow. Thus, admission control mechanisms tend to work as a binary process, where the input of a new flow is totally accepted or is denied. Based on that, we can point out two main drawbacks:

  1. 1.

    Applications able to perform flow adaptation cannot make use of this important feature. For instance, several multimedia applications are able to change the audio/video coding on-the-fly in order to optimize the transmission bit rate according to network conditions;

  2. 2.

    The network becomes unfit to perform on-the-fly optimizations in the resource allocated for each flow. In other words, after the network accepts the entrance of a new flow through the admission control, it cannot change the conditions of the QoS contract in order to perform optimizations according to some policy (e.g., maximize the number of flows into the network).

In doing so, we propose defining the QoS parameters as ranges with hard and soft limits rather than fixed values. By way of this proposal, the network becomes able to provide QoS in a dynamic fashion [63] since it can control the amount of resource allocated for each flow, optimizing the network utility according to some policy. In this context, the hard limit specifies the minimum amount of resource required for the application while the soft limit is used by an application to determine the recommended level of resource allocated for the transmission.

4 The admission control mechanism

The proposed mechanism performs admission control and resource reservation at nodes on a network. It is intended to be used as a major component of QoS-enabled opportunistic routing protocols enabling control over which flow can be transmitted over the network without overloading it. In order to work properly, the proposed mechanism needs the support of a routing metric and a bandwidth estimator.

The routing metric is important in order that each node can learn about its neighborhood and, after all, the topology. Besides, an important requirement of a routing metric is to avoid the existence of cross-links in a given routing tree so that whenever a node wants to transmit to a specific target, it obtains the correct forward set from the routing metric in a way that a node will not send and receive from the same node; otherwise, a routing cycle would be created.

Another mechanism required is the bandwidth estimator. Such a mechanism provides the knowledge of how much bandwidth is available between two nodes. In our implementation, we considered, but without rigid dependencies, ETX the routing metric [64] and the bandwidth estimator presented in [65]. The ETX routing metric and the bandwidth routing estimator used by the proposed admission control mechanism take into account how an active link affects other neighboring links. The ETX routing considers lossy links, asymmetric links, and inter-link interference. On the other hand, the bandwidth estimator takes into account the delay to deliver a packet. So, the activity on any link will reflect on the remaining available bandwidth measured for such mechanism.

After the preliminaries discussed before, we will present the details about the admission control and resource reservation process. The execution of the proposed mechanism is split into two phases. In the first one, a temporary resource reservation is performed. It starts at the transmitter node when the application wishes to initiate a QoS-enabled flow. The application defines the requirements for the transmission in terms of required bandwidth. Specifically, the application will set its transmission requirements according to the nature of the transmitted stream. For instance, suppose that the application wants to transmit a video. In that case, the application should define its lowest bandwidth requirement as the bandwidth required to transmit the video with the worst quality possible (which will consume the least amount of bandwidth). On the other hand, the application should define the soft parameter as the bandwidth required to transmit the video with quality possible.

Based on that requirement, the admission control mechanism verifies if there exists at least one valid path, as defined in Eq. 1, and creates packets with the flow constraints and sends them to descendent nodes in order to perform the resource reservation. Such reservation is performed on the whole set of nodes in the transmission graph successively until reaching the receiver, as depicted in Fig. 3 where solid arrows indicate the temporary resource reservation.

Fig. 3
figure 3

During the confirmation process, nodes send the packets through reverse flow path in order to confirm all performed reservations. Solid arrows indicate reserves not confirmed yet while dashed arrows indicate reservations already confirmed by descendent nodes

On the other hand, the second phase aims to confirm the resources allocated. This step starts when the request arrives at the receiver and that node confirms the flow by sending response packets back through the reverse path until they reach the transmitter and grants permission to transmit as shown in Fig. 3, where dashed arrows indicate such reverse path transmission. To allow such backward transmissions, each node holds a table that maps input requests to output sub-requests (1:n). So, whenever a node receives a number of sub-requests large enough to attend the hard QoS limit of the parent request, the node retrieves, on its table, the backward path and sends the RRESP packet. Next, we describe both phases in detail.

4.1 Phase 1: temporary resource reservation

Below, we discuss how the temporary resource reservation is performed by the admission control mechanism. Firstly, we present the procedure performed by both sender and relay nodes. Afterwards, we discuss the procedure adopted by the receiver node.

4.1.1 Temporary resource reservation at sender and relays

Upon receipt of the flow request from the application, the proposed mechanism identifies the flow specification to be created (hard and soft QoS limits, destination address, etc.) and builds request packets. It then sends them through the network in order to reserve a certain amount of resources. Figure 4 presents the sequence of steps executed by sender and relays during phase 1.

Fig. 4
figure 4

Steps performed by sender and relays during phase 1

Whenever an application wants to initiate a QoS-enabled flow, it builds a request specifying the application requirements in terms of hard and soft limits for the required bandwidth. It then sends the request to the admission control mechanism at the network level. At this point, the proposed admission control mechanism retrieves both soft and hard limits from the request (step 1), computes the forward candidate set (FCS) for the target (steps 2 and 3) (by selecting nodes that are closer to the destination, based on the ETX metric, than the current node), and computes the total available bandwidth on the FCS (steps 4 and 5).

After defining which nodes will participate in the transmission (i.e., nodes belonging to FCS and with non-zero available bandwidth), the admission control defines how much bandwidth will be reserved on each neighbor. For each neighbor represented by n i participating in the session, new hard and soft limits are calculated (H i and S i , respectively) for reservation through the Eqs. 2 and 3.

$$ H_{i} = \frac{l_{i}}{L}*H $$
((2))
$$ S_{i} = \text{min} {\left\{\frac{l_{i}}{L}*S,\,l_{i}\right\}} $$
((3))

where

  • H i and S i define the hard and soft limits to be used by the sub-request for the neighbor n i ;

  • l i defines the available bandwidth to neighbor n i ;

  • L defines the total available bandwidth in FCS;

  • H and S specify both hard and soft limits of current request.

Based on the new hard and soft limits (S i and H i , respectively) defined for each neighbor n i , a temporary resource reservation is performed. Moreover, the current node creates packets RREQ 1 which carry sub-requests and sends them to its forward set (step 6.a). Besides the sub-request specification, the RREQ packet holds some additional information such as

  • Flow and request ids

  • The original flow request

  • Global transmitter and receiver addresses (both flow endpoints)

  • Local transmitter and receiver addresses (the current and its neighbor)

One could argue that the construction of a unique packet holding all sub-requests, which would be sent in broadcast, can provide a more effective way to disseminating all sub-requests. However, the high variability in terms of transmission channel among the forward set requires that RREQ must be sent individually. It would be making use of the RTS/CTS mechanism and the partial reliability provided by the link layer MAC802.11 in order to decrease the probability of losses or corruption of RREQ packets.

Alternatively, if the total available bandwidth is smaller than the hard limit, then an error message is sent to the application (step 6.b) and the resource reservation process is aborted.

In turn, relay nodes perform the same steps of the sender with only one exception. Instead of notifying the application whenever the QoS requirements of a request could not be met (step 6.b), the node ignores such request silently.

4.1.2 Temporary resource reservation at receiver

Based on the step sequence performed by both sender and relays, the receiver node will eventually receive many RREQ packets for each flow. For each packet received, the node will verify if the amount of resource reserved by all requests fulfills the QoS requirement of the flow as presented in Fig. 5. In other words, whenever a RREQ packet arrives at the receiver (step 1), the node adds the new request to the pool of requests received from that flow (step 2) and checks if the amount of resource reserved by all requests reaches the hard limit of the flow (step 3). If so, the node sends confirmation packets (RRESP packets2) through the reverse path of RREQ packets received.

Fig. 5
figure 5

Handling RREQ packets at the receiver

4.2 Phase 2: confirming the resource reservation

The second phase of the admission control is the process of confirming the resource allocation held. This step is triggered as soon as the receiver receives enough number of requests to meet the specification flow. Whenever this occurs, the receiver sends RRESP packets, through the reverse path, in order to confirm the allocated resource. The node will send a RRESP per neighbor that has just sent a RREQ packet.

Similar to the receiver node, intermediate nodes process RRESP packets consolidating all performed reservations. If the bandwidth confirmed is at least equivalent to the hard limit, the relay node changes the flow status to active repeating the process of sending RRESP packets to ascendant nodes in a similar way until they reach the sender, as presented in Fig. 6. As soon as the admission control at the sender receives enough confirmation packets, it informs the application about such an event (step 1) in order to enable the effective transmission of data for the transmitter (steps 2) and, consequently, to the target (step 3).

Fig. 6
figure 6

Handling RRESP packets at sender

4.3 Resource reservation model

In this section, we present a mathematical model for the resource reservation process, i.e., how a request is divided into sub-requests and how the hard and soft limits are evaluated for each node. A matrix of bandwidths F is defined in (4), where n 1 is the transmitter, n 2,n 3,…,n k−1 are the intermediate nodes, n k is the receiver, c(n i n j ) is the bandwidth from a node n i to a node n j for i<j, and c(n i n j )=0 for ij, i=1,2,…,k, j=1,2,…,k. The matrix of bandwidths is strictly upper triangular, i.e., all of the entries on the main diagonal and all the entries below the main diagonal are zero. This matrix is strictly upper triangular because (i) the bandwidth c(n i n i ) from a node n i to itself is considered zero, for i=1,2,…,k and (ii) we consider only the flow from the transmitter node n 1 to the receiver node n k , i.e., not the reverse flow path. The vector F S presented in (5) contains the sums of available bandwidths of all descendent neighbors.

$$ F = \left[ \begin{array}{ccccc} 0 & c(n_{1} \rightarrow n_{2}) & c(n_{1} \rightarrow n_{3}) & \ldots & c(n_{1} \rightarrow n_{k})\\ 0 & 0 & c(n_{2} \rightarrow n_{3}) & \ldots & c(n_{2} \rightarrow n_{k})\\ 0 & 0 & 0 & \ldots & c(n_{3} \rightarrow n_{k})\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 & \ldots & 0 \end{array} \right] $$
((4))
$$ F_{S} = \left[ \begin{array}{c} \sum_{j=1}^{k} c(n_{1} \rightarrow n_{j})\\ \vdots \\ \sum_{j=1}^{k} c(n_{k} \rightarrow n_{j}) \end{array} \right] = \left[ \begin{array}{ccccc} 1 & 1 & \ldots & 1 & 1 \end{array} \right] F^{T} $$
((5))

The matrix of ratios A in (6) contains the ratios between the available bandwidth from the current node to a specific neighbor and the sum of available bandwidth of all descendent neighbors. The entry A(i,j) is evaluated in (7).

$$ A = \left[ \begin{array}{ccccc} 0 & \frac{c(n_{1} \rightarrow n_{2})}{F_{S}(1)} & \frac{c(n_{1} \rightarrow n_{3})}{F_{S}(1)} & \ldots & \frac{c(n_{1} \rightarrow n_{k})}{F_{S}(1)}\\ 0 & 0 & \frac{c(n_{2} \rightarrow n_{3})}{F_{S}(2)} & \ldots & \frac{c(n_{2} \rightarrow n_{k})}{F_{S}(2)}\\ 0 & 0 & 0 & \ldots & \frac{c(n_{3} \rightarrow n_{k})}{F_{S}(3)}\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 & \ldots & 0 \end{array} \right] $$
((6))
$$ A(i,j) = \left\{ \begin{array}{ccc} \frac{c(n_{i} \rightarrow n_{j})}{F_{S}(i)} & \text{if} & F_{S}(i) \neq 0\\ 0 & \text{if} & F_{S}(i) = 0 \end{array} \right. $$
((7))

The matrices H and S are respectively named the matrices of hard and soft limits, and they have the same dimensions of the matrix of bandwidths F. The entries on the main diagonals of such matrices are respectively the hard and soft limits for each node. The elements of the matrices of hard and soft limits must be evaluated by the Algorithm 1. They are initialized as null matrices, with all of their entries being zero. Then the entries in the first line and first column of H and S are initialized with the hard and soft limits H transmitter and S transmitter requested by the transmitter node. The remaining entries are evaluated as in Eqs. 2 and 3.

The hard and soft limits for each node are respectively presented in the vectors H d and S d (index “d” stands for diagonal). Such vectors are obtained from the entries on the main diagonals of the matrices of hard and soft limits, as shown in (8) and (9).

$$ {\begin{aligned} H_{d} = \left[ \begin{array}{c} H(1,1)\\ H(2,2)\\ \vdots \\ H(k,k) \end{array} \right] \end{aligned}} $$
((8))
$$ {\begin{aligned} S_{d} = \left[ \begin{array}{c} S(1,1)\\ S(2,2)\\ \vdots \\ S(k,k) \end{array} \right] \end{aligned}} $$
((9))

Example 1.

Consider the matrix of bandwidths F in (10) and the hard and soft limits H transmitter =30 and S transmitter =100 requested by the transmitter node, representing the scenario shown in Fig. 7 a. The vector with the sums of available bandwidths of all descendent neighbors is presented in (11). The matrix of ratios A is presented in (12). The matrices of soft and hard limits were evaluated using the Algorithm 1 and are respectively presented in (13) and (14). The vectors S d and H d in (13) and (14) are obtained from the main diagonals of the matrices of soft and hard limits. Therefore, the entries in the vectors S d and H d are respectively the soft and hard limits shown in Fig. 7 b for each node. Finally, the labels on each arc of topology Fig. 7 b represent the remaining available bandwidth after the resource reservation process.

$$ {\begin{aligned} F = \left[ \begin{array}{rrrrrrr} 0&20&30&50&0&0&0\\ 0&0&0&0&10&30&0\\ 0&0&0&0&0&0&60\\ 0&0&0&0&0&0&0\\ 0&0&0&0&0&0&30\\ 0&0&0&0&0&0&30\\ 0&0&0&0&0&0&0\\ \end{array} \right] \end{aligned}} $$
((10))
Fig. 7
figure 7

Example of how a request is propagated throughout the network regarding to the resource reservation model. a Initial state of network. b State of network after the resource reservation process

$$ F_{S} = \left[ \begin{array}{r} 100\\ 40\\ 60\\ 0\\ 30\\ 30\\ 0\\ \end{array} \right] $$
((11))
$$ A = \left[ \begin{array}{rrrrrrr} 0.00&0.20&0.30&0.50&0.00&0.00&0.00\\ 0.00&0.00&0.00&0.00&0.25&0.75&0.00\\ 0.00&0.00&0.00&0.00&0.00&0.00&1.00\\ 0.00&0.00&0.00&0.00&0.00&0.00&0.00\\ 0.00&0.00&0.00&0.00&0.00&0.00&1.00\\ 0.00&0.00&0.00&0.00&0.00&0.00&1.00\\ 0.00&0.00&0.00&0.00&0.00&0.00&0.00\\ \end{array} \right] $$
((12))
$$ {\fontsize{9}{6}\begin{aligned} S = \left[ \begin{array}{rrrrrrr} 100.0&20.0&30.0&50.0&0.0&0.0&0.0\\ 0.0&20.0&0.0&0.0&5.0&15.0&0.0\\ 0.0&0.0&30.0&0.0&0.0&0.0&30.0\\ 0.0&0.0&0.0&50.0&0.0&0.0&0.0\\ 0.0&0.0&0.0&0.0&5.0&0.0&5.0\\ 0.0&0.0&0.0&0.0&0.0&15.0&15.0\\ 0.0&0.0&0.0&0.0&0.0&0.0&50.0\\ \end{array} \right], \quad S_{d} = \left[ \begin{array}{r} 100\\ 20\\ 30\\ 50\\ 5\\ 15\\ 50 \end{array} \right] \end{aligned}} $$
((13))
$$ {\fontsize{9.3}{6} \begin{aligned} H = \left[ \begin{array}{rrrrrrr} 30.0&6.0&9.0&15.0&0.0&0.0&0.0\\ 0.0&6.0&0.0&0.0&1.5&4.5&0.0\\ 0.0&0.0&9.0&0.0&0.0&0.0&9.0\\ 0.0&0.0&0.0&15.0&0.0&0.0&0.0\\ 0.0&0.0&0.0&0.0&1.5&0.0&1.5\\ 0.0&0.0&0.0&0.0&0.0&4.5&4.5\\ 0.0&0.0&0.0&0.0&0.0&0.0&15.0\\ \end{array} \right],\qquad H_{d} = \left[ \begin{array}{r} 30\\ 6\\ 9\\ 15\\ 1.5\\ 4.5\\ 15\\ \end{array} \right] \end{aligned}} $$
((14))

4.4 Defining how long a node will hold a temporary reservation

One issue that must be considered during the process of admission control is how long a node will hold temporary reservations if the confirmation packet does not arrive in a certain amount of time. To face this issue, two different timers are considered. The first timer is defined in a per flow basis. In other words, such a timer will be kept until the flow changes its state to active (i.e., the hard limit was not achieved yet). On the other hand, the second timer is defined on a per request basis. The need for two different timers is due to the fact that the confirmation of a single sub-request could eventually reach the minimum flow restriction, thereby cancelling the timer per flow. Figure 8 presents a scenario that illustrates this issue. The topology is composed of six nodes where the labels on arcs indicate random values for available bandwidth on channel and labels on nodes indicate the specification of a flow (with hard and soft limits) which the node has received from the ancestor node, or application in case of a transmitter (node S).

Fig. 8
figure 8

Sub-requests distribution schema. Each request can be splitted in several sub-requests (with the corresponding values for hard and soft limits) according to the number of descendent nodes. Also, the admission control mechanism will perform a temporary resource reservation with a value between the hard and soft limits

Considering the previous scenario, node S will create two sub-requests with reserved bandwidth proportional to the available bandwidth on its forward set. After the confirmation process (discussed in details in Section 4.2), node S will also confirm the reserve on node R1, with value 6 while it will release the bandwidth on R2 since it was not possible to perform the resource reservation on the entire path. As a result of transmission, the flow can be initiated, since the hard limit from the original request was achieved (i.e., 5), canceling the timer for the flow. Conversely, the timer of the sub-request targeting R2 will expire, since no confirmation has been received, releasing the allocated bandwidth on R2.

Finally, we must define how the admission control mechanism on each node will behave in the event of timer expiration depending on the type of timer. Since per flow timer expiration occurs when the admission control mechanism cannot confirm the minimum bandwidth required for transmission, all reservations made on behalf of this flow are removed and all per request timers are canceled. On the other hand, the per sub-request timer expiration event occurs when the flow is partially confirmed and the portion of bandwidth required, which has not been confirmed, is released.

4.5 Avoiding exponential growth on packet transmitting

As previously discussed, the proposed mechanism performs resource reservation in nodes that belong to the transmission graph by sending multiple requests. However, a major challenge that has been treated relates to how to avoid an exponential growth in the number of request packets transmitted. Considering a naive approach, we could argue that a node will generate N packets for each received packet, where N is the size of the forward set of that node. Following this approach would be infeasible due the number of packets transmitted. For instance, the topology presented in Fig. 9 is composed of 11 nodes (two endpoints and nine relays), and each node is connected with a variable number of nodes representing the forward set. Even in a topology as simple as discussed, it will generate 112 packets without considering the confirmation step. The high number of transmitted packets is due to the fact that the number of packets is defined as the product of the number of descendent nodes by the number of packets received.

Fig. 9
figure 9

This topology illustrates how a naive approach may cause an exponential growth in the number of transmitted packets because the number of transmitted packets is defined as the product of received packets by descendent connections. Labels on arcs indicate how many packets were transmitted on the channel

In order to mitigate these aforementioned effects, we introduced a backoff mechanism for controlling packet transmission during phase 1 (temporary resource reservation). This mechanism allows the agglutination of the requests from ancestor nodes, reducing the number of packets to be transmitted. Roughly, this mechanism works as presented in Algorithms 2 and 3. Basically, whenever a node receives a request (Algorithm 2), it checks whether that request marks the reception of a new flow at the node. If so, it postpones the transmission for a random timer (backoff period). If during this backoff the node receives a new request from this flow, possibly from another ascendant node, the node agglutinates both requests in a single request avoiding multiple transmissions. As the backoff timer expires (Algorithm 3) the relay sends the sub-requests for nodes belonging its forward set.

4.6 Allocation resource maintenance

It is important to consider how long the reservation will take place in the relay nodes after the new flow is established. To achieve this, we considered the use of a soft-state approach where the transmitter must update all reservations performed in the relay nodes. In this context, the proposed protocol performs an update in the flow reservation through the following possible actions:

  1. 1.

    During transmission, receiving a data packet is considered a stream update.

  2. 2.

    In silent periods, where the application is not transmitting, the protocol sends a probe packet indicating that the transmission is still active.

If a relay does not receive any update (data packet or probes) within a predefined period3, the node considers it as a signal of unrecovered communication problem and releases the perfomed reservation.

4.7 Integrating the proposed admission control mechanism on the opportunistic routing paradigm

An important point regarding the proposed admission control mechanism is how it can be integrated on an opportunistic routing protocol. After the resource reservation process has been performed, each node will hold a table with all reservations made. Based on that, the transmitter will be able to (i) shape the transmission rate of each flow and (ii) order the FCS based on the available transmission bandwidth. Specifically, the transmitter mechanism will perform the following actions:

  • Selection of the active flow to transmit based on the reservation made: the node will share its transmission time proportionally to the resource reservation made. By performing such step, the node will be able to shape the transmission rate of each flow based on the reservation made.

  • Selection of the FCS during transmission of a flow: based on the resource reservation made, each node will sort its forward candidate set. For each slot time, the forward candidate set will be initially ordered based on the amount of resource reserved. Whenever a flow is selected for transmission, the amount of bandwidth required to transmit a packet is reduced from the highest priority node on the FCS. When the available bandwidth for a node achieves zero, the node will not be considered on the FCS during the rest of the slot time.

It is important to mention that although the proposed admission control mechanism has been designed with the opportunistic routing in mind, it can be adapted to be used with a multi-path routing protocol. To achieve this, after the resource reservation process, each node will perform parallel transmissions for each path depending on the generated subflows.

5 Evaluation methodology

In order to evaluate the proposed mechanism, we performed several experiments focusing on different aspects of the solution. To allow this, we implemented a prototype of the proposed mechanism on the network simulator framework OMNeT++ [66]. In the following, we discuss the methodology employed at each experiment.

5.1 Evaluation 1: comparing the proposed mechanism to a multipath-based admission control approach

The first experiment aimed to compare the proposed mechanism (referenced in this section as OR4) with the original multipath ticket-based mechanism presented by Liao et al. [23] (referenced in this section as “TK”). Since there is not any implementation available of such mechanism, we have implemented such mechanism into the OMNeT++ network simulator following the instructions described on the original paper.

In short, this experiment aimed to answer the following research question:

  • The proposed admission control mechanism (OR) achieves a higher success rate compared to ticket-based multipath admission control approach (TK)

which results in the following null (H0) and alternative (H A ) hypotheses:

$$\left\{</p><p class="noindent">\begin{array}{ll} ~\mathrm{H}_{0}: & \textit{The OR mechanism \textbf{does not result} in a higher}\\ & \textit{success rate compared to the TK mechanism.}\\ ~\mathrm{H}_{A}: & \textit{The OR mechanism \textbf{results} in a higher success}\\ & \textit{rate compared to the TK mechanism.}\\ \end{array}\right. $$

In order to answer the research question, we designed several simulation scenarios based on the following experiment factors:

  • Number of nodes in the network (k)

  • Average bandwidth available in the links (μ)

  • Standard deviation of bandwidth available in the links (σ)

  • Dispersion area of the nodes (A)

In this context, k can assume values of 10, 20, 30, 40, 50, 60, 70, 80, 90, or 100 nodes. The corresponding value of A is 0.25 km2 for the first five values of N and 1 km2 for the others. σ can assume values of 100 or 200 kbps. Finally, μ can be 100 kbps, 200 kbps, 300 kbps, 400 kbps, 500 kbps, 600 kbps, 700 kbps, 800 kbps, 900 kbps, or 1 Mbps.

Given the above factors and the combination of their levels, we defined a total of 200 different scenarios. For each scenario, we checked the success rate of the admission control process in both mechanisms performing 500 replications where both the transmitter and receiver for a QoS-based session were chosen randomly. At each replication, a resource reservation request with values of 400 kbps and 1 Mbps for the hard and soft limits, respectively, were considered in our approach (OR) (representing variables H and S on the Eqs. 2 and 3). On the other hand, a request with 400 kbps was used to the TK mechanism.

Given the number of scenarios and replications, we performed a total of 200,000 simulations (100,000 for each studied mechanism). For sake of simplicity but without losing generality, we present only a subset of scenarios randomly chosen. Such subset is presented in Table 1.5

Table 1 Selected scenarios subset

5.2 Evaluation 2: comparing the proposed mechanism to a unipath admission approach

The second experiment aimed to compare the proposed mechanism with a unipath-based admission control mechanism. It is noteworthy that despite our best effort, we were unable to obtain an OMNeT++ implementation of an existing QoS routing protocol which performs the admission control process through the opportunistic routing paradigm or even through unipath-based routing. Due to that, we implemented a unipath admission control mechanism as a baseline protocol (referenced in this section as UP6). This mechanism presents several characteristics inherited from different well-known approaches, such as the following:

  • Unipath reservation [67]

  • Use of a unique reservation threshold [68]

  • Selection of the shortest path based in routing metrics [69]

We considered the same experiment setup previously described, and we also highlighted the same scenarios presented in Table 1 for discussion.7

Similar to the previous analysis, this experiment aimed to answer the following research question:

  • The proposed admission control mechanism (OR) achieves a higher success rate compared to an admission control mechanism based on unipath routing (UP)

which results in the following null (H0) and alternative (H A ) hypotheses:

$$\left\{</p><p class="noindent">\begin{array}{ll} ~\mathrm{H}_{0}: & \textit{The OR mechanism \textbf{does not result} in a higher}\\ & \textit{success rate compared to the UP mechanism.}\\ ~\mathrm{H}_{A}: & \textit{The OR mechanism \textbf{results} in a higher success}\\ & \textit{rate compared to the UP mechanism.}\\ \end{array}\right. $$

5.3 Evaluation 3: behavior of success rate in regard to network size and density changes

The third evaluation aimed to analyze the impact on success rate, due to the growth of the network in terms of the number of nodes and neighborhood density. Firstly, we studied the effects of network topology size on the success rate for proposed mechanism (OR), for the unipath-based mechanism (UP), and for the multipath ticket-based (TK) mechanism. To achieve this, we considered the same experiment setups discussed in Sections 5.1 and 5.2. However, we analyzed how the above variable behaves when the available bandwidth is constant (300 kbps) but the network size changes.

On the second part of this evaluation, we conducted an additional experiment where we analyzed the behavior of both mechanisms on two networks with the same number of nodes but with a different density on the node neighborhood. Specifically, we tested these approaches against networks with 60 and 70 nodes dispersed in two different areas (0.25 and 1 km2).

5.4 Evaluation 4: effects of soft threshold on the admission control process

The last evaluation aimed to demonstrate how the use of soft limits in QoS requests can be beneficial to the admission control process. In other words, we tried to verify how much available bandwidth could be reserved by using the soft limit parameter as in our approach. To perform such an evaluation, we conducted two experiments. In the first experiment, we considered networks with 10–70 nodes scattered in an area of 0.25 km2 with 400 and 100 kbps as the available bandwidth and standard deviation, respectively. On the other hand, in the second experiment, we considered networks with 60–100 nodes scattered in an area of 1 km2 with 500 and 200 kbps as the available bandwidth and standard deviation, respectively. For both experiments, we used requests with limits of 400 kbps and 1 Mbps for hard and soft limits, respectively.

6 Results and discussions

6.1 Evaluation 1: comparing the proposed mechanism to a multipath-based admission control approach

As discussed in Section 5.1, this evaluation aims to compare the performance of our approach with the original multipath-based approach proposed by Liao et al. [23]. The comparison process consists of two steps. First, we applied normality tests Shapiro Wilk and Anderson-Darling. Normality tests are needed to enable the choice of appropriate inference test to be used in the second step of the evaluation. Both normality tests consider the following hypotheses, with a confidence level of 95 % (α = 0.05):

$$\left\{ \begin{array}{ll} \mathrm{H}_{0}:& \text{the sample is normally distributed;} \\ \mathrm{H}_{A}:& \text{the sample is not normally distributed.} \\ \end{array}\right. $$

Tables 2 and 3 show the results of applying both normality tests for the scenarios described in Table 1.8 For scenarios where both admission control mechanisms have obtained p value > α, we considered that the samples were normally distributed. For other situations, where at least one mechanism obtained p value < α, we assumed that the data were not normally distributed.

Table 2 Testing the proposed admission control mechanism (OR) data for normality
Table 3 Testing the ticket-based (TK) admission control data for normality

Based on the results obtained by normality tests, we defined which test should be applied to each scenario for comparing the mechanisms (OR and TK). In scenarios where we detected normality, we applied statistical Student’s t test. On the other hand, in scenarios where we did not detect normality, we applied the non-parametric test Mann-Whitney-Wilcoxon. Both tests considered the following hypotheses:

$$\left\{ \begin{array}{ll} \mathrm{H}_{0}: & \text{the two sets of data \textbf{do not show}} \\ & \text{systematic differences;} \\ \mathrm{H}_{A}: & \text{the two sets of data \textbf{show systematic}} \\ & \text{differences.} \\ \end{array}\right. $$

Moreover, considering that we have used R [70] as statistical tool, we determined not only the difference between the datasets but also the nature of this inequality (e.g., less, greater, etc.). In this context, Table 4 presents the results obtained after performing statistical inference tests over the collected data. The third column of this table presents p value results when the alternative hypothesis corresponds to OR > TK. On the other hand, the fourth column presents p value results when the alternative hypothesis corresponds to TK > OR.

Table 4 Statistical inference tests applied over data (OR vs TK)

From the results, the following conclusions were obtained:

  1. 1.

    The admission control mechanism hereby proposed had a better performance in terms of success rate in most scenarios studied compared with TK mechanism (all scenarios but scenario 8). The main reason of such superiority remains on the combined use of thresholds, which allow a flexibility on the resource reservation process, and the use of whole set of descendent nodes as possible forwarding candidates, which spreads the request in a larger set of nodes compared to TK.

  2. 2.

    For scenarios where the null hypothesis cannot be rejected (scenario 8), we performed further analysis, checking whether the proposed solution has inferior performance. In order to do that, we reapplied the same statistical test but using the inverse inequality as the alternative hypothesis (ie, H A : TK > OR instead of H A : TK < OR). By this new assumption, the null hypothesis could not be rejected in any scenario (fourth column on Table 4). Therefore, the proposed admission control mechanism is able to achieve performance at least statistically equivalent to unipath-based admission control.

  3. 3.

    The scenarios where it was detected that statistica equivalence of the results have as a common characteristic the amount of bandwidth available for reservation at the moment that the admission control process is performed. For such scenarios, the amount of available bandwidth was greater than the necessary resource. Thus, the failure rate in the reservation process would be naturally low.

6.2 Evaluation 2: comparing the proposed mechanism to a unipath admission approach

As discussed in Section 5.2, this evaluation aimed to compare the performance of our approach against a unipath-based admission control mechanism (referred as UP). We followed the same methodology described in Section 6.1 to compare the OR mechanism with the UP mechanism. First of all, we applied normality tests Shapiro Wilk and Anderson-Darling in order to determine the correct statistical test for comparison. Table 5 shows the results of applying both normality tests for the scenarios presented in Table 1 for the UP mechanism9 (for the results related to the OR mechanism, refer to Table 2). Moreover, in order to strengthen the conclusions, we performed a graphical analysis through probability density functions (PDF) plots. Figures 10 and 11 present the comparative PDF results for both mechanisms (OR and UP mechanisms) for scenarios 3 and 4, respectively (see Table 1).

Fig. 10
figure 10

Comparative PDF regarding scenario 3 between OR and UP mechanisms

Fig. 11
figure 11

Comparative PDF regarding scenario 4 between OR and UP mechanisms

Table 5 Testing unipath-based admission control data for normality

After determining the correct statistical tests to be applied for the whole set of scenarios, we repeated the process of comparing both admission control mechanisms in order to verify the relation detected between them for each scenario. In this context, Table 6 presents the results obtained after performing statistical inference tests over the collected data. The third column of this table presents p value results when the alternative hypothesis corresponds to OR > UP. On the other hand, the fourth column presents p value results when the alternative hypothesis corresponds to UP > OR. As expected, the proposed mechanism achieves a higher success rate compared to a unipath-based approach. The main reason for this is due to fact that the unipath-based mechanism performs resource reservation in only one path while the OR mechanism considers multiple paths whenever possible.

Table 6 Statistical inference tests applied over data (OR vs UP)

Finally, Table 7 presents a summary of the success and failure rates for all studied mechanisms (i.e., OR, TK, and UP). It also shows percentages of routing failure (when it was not possible to establish a minimal path between source and destination). As we can see, the results presented by the proposed admission control mechanism (OR) are quite satisfactory in regard to the success rates and the reservation failure compared to both ticket-based (TK) and the unipath-based admission control (UP). For all scenarios but 8, a substantial difference was detected between the mechanisms. For example, in scenario 4, the proposed mechanism achieved a performance of 3300 % better than the UP mechanism and nearly 330 % than the TK approach.

Table 7 Percentages of success and failure of studied mechanisms

6.3 Evaluation 3: behavior of success rate in regard to network size and density

As pointed out in Section 5.3, this evaluation aims to show how the studied mechanism behaves when the number of nodes and the topology density change at the network. Regarding both the first and second experiments, Fig. 12 displays bar charts regarding success rates obtained by the proposed admission control mechanism (OR), the unipath-based (UP), and the ticket-based (TK) admission control. In all scenarios, we considered a request of 400 kbps as the hard limit, 300 kbps as the average bandwidth available in the links, and 100 kbps as the standard deviation. Furthermore, networks containing between 10 and 50 nodes were dispersed over an area of 0.25 km2, while the rest were dispersed over an area of 1 km2.

Fig. 12
figure 12

Behavior of success rate obtained by mechanisms in function of the number of nodes in the network

Given the results, we can infer that there is no direct relationship between the success rate and the size of the network. At the same time though, one can notice the difference between the success rate obtained in the proposed approach and other admission control approaches compared. While the former achieves values which are even higher than 70 %, no results of the latter exceed 8 % for the UP mechanism or 30 % for the TK mechanism.

The impact on the success rate when the same number of nodes is dispersed in networks with areas of different sizes was also observed. Figure 13 a, b shows line charts corresponding to success rates in networks with 60 and 70 nodes for the proposed mechanism, respectively. Each chart considered a topology dispersion of 0.25 and 1 km2.

Fig. 13
figure 13

Behaviour of the success rate for networks with differente dispersion areas. Plot a presents the success rate for a topology containing 60 nodes. On the other hand, plot b presents the results for a topology containing 70 nodes

Looking at the graphs, it is clear that the increase in network density contributes to an increase in the success rate. This result is explained by the increased number of paths to be used in the reservation process.

6.4 Evaluation 4: effects of soft threshold on the admission control process

The last evaluation aimed to demonstrate the effects of using the soft threshold as an additional parameter during the admission control process. Based on the experiment setup described in Section 5.4, Fig. 14 a, b presents line charts that show the amount of bandwidth that was effectively reserved. Figure 14 a displays the results for networks with 10 to 70 nodes scattered in an area (A) of 0.25 km2. The average bandwidth available (μ) was set to 400 kbps while the standard deviation (σ) was set to 100 kbps. Figure 14 b shows the results for networks with 60 to 100 nodes, A = 1 km2, μ= 500 kbps, and σ= 200 kbps. In both cases, soft and hard limits were 1 Mbps and 400 kbps, respectively.

Fig. 14
figure 14

Available bandwidth reserved for requests with hard limit of 400 kbps and soft limit of 1 Mbps. Plot a considers A =0.25 km2,μ=400 kbps and σ=100 kbps; On the other hand, plot b considers A =1km2, μ=500 kpbs and σ=200 kbps

By observing the results, it is clear that the use of a soft threshold allows the reservation of values well above μ. The growth seen in charts presented in Fig. 14 a and b can be explained by an increased number of available paths used during the reservation process.

7 Conclusions

Opportunistic routing is considered a novel approach to relay packets in wireless mesh networks. The use of the broadcast nature to transmit packets opportunistically increases the throughput and resilience to losses in wireless networks. However, characteristics of this new paradigm raise challenging issues to be met in order to provide QoS in transmissions.

In this paper, we propose a mechanism for admission control for routing protocols based on the opportunistic routing paradigm. This mechanism performs admission control and resource reservation in multiple neighbors according to their importance in the relaying process. Moreover, we introduce a modification in the meaning of the QoS parameter. Instead of representing the QoS parameter as only a hard limit where the admission control process works basically as a boolean step, our approach defines the QoS parameter as a range where the application defines both minimum and desired levels of QoS that the network should provide.

Evaluations show that the proposed admission control mechanism is able to obtain a higher rate of success in the process of resource reservation than both multipath [23] or unipath-based approaches. In some scenarios, as detailed in Sections 6.1 and 6.2, the difference measured was up to 3000 % for the unipath-based approach and 300 % for the multipath-based. For the case of the unipath-based approach, the substantial difference can be explained by the multiple possible routes in which a given flow can be transmitted. On the other hand, the proposed approach was able to achieve a better success rate than the considered multipath since we considered all nodes of the forwarding set and also due to the use of limits hard and soft to define the QoS request.

In the future, we aim to extend the admission control mechanism to an on-the-fly approach. Specifically, we intend to use the soft and hard parameters to optimize the resource reserved at each flow. We also want to perform a detailed study in order to define the optimal value for the backoff parameter. In the current version, we defined it as a static value. Such a value will eventually depend on the topology structure which could also be defined in an on-the-fly fashion.

Moreover, we intend to extend the proposed solution to work transparently in bidirectional traffic. Currently, to apply to a bidirectional traffic, it is necessary to perform a second resource reservation on the reverse path which may, eventually, be rejected by the network. The basic idea is to perform the resource reservation in the bidirectional traffic in a single step, from the perspective of the calling application.

8 Endnotes

1 From Reservation request.

2 From Reservation response.

3 For the sake of simplicity, in our experiments, we considered a fixed value for this parameter. A more accurate approach would consider some network-related information such as the RTO or RTT.

4 From Opportunistic routing.

5 The complete dataset is available as Additional file 1 of this work.

6 From Unipath routing.

7 The complete dataset is available as Additional file 1 of this work.

8 The complete dataset is available as Additional file 1 of this work.

9 The complete dataset is available as Additional file 1 of this work.

References

  1. A Ali, ME Ahmed, MJ Piran, DY Suh, Resource optimization scheme for multimedia-enabled wireless mesh networks. Sensors. 14(8), 14500–14525 (2014). doi:10.3390/s140814500.

    Article  Google Scholar 

  2. E Alotaibi, B Mukherjee, A survey on routing algorithms for wireless ad-hoc and mesh networks. Comput. Netw. 56(2), 940–965 (2012).

    Article  Google Scholar 

  3. K Kritikos, B Pernici, P Plebani, C Cappiello, M Comuzzi, S Benrernou, I Brandic, A Kertész, M Parkin, M Carro, A survey on service quality description. ACM Comput. Surv. (CSUR). 46(1), 1–1158 (2013).

    Article  Google Scholar 

  4. F Xia, Qos challenges and opportunities in wireless sensor/actuator networks. Sensors. 8(2), 1099–1110 (2008). doi:10.3390/s8021099.

    Article  Google Scholar 

  5. J Huang, X Huang, Y Ma, Routing with multiple quality-of-services constraints: an approximation perspective. J. Netw. Comput. Appl. 35(1), 469–479 (2012).

    Article  Google Scholar 

  6. AM Abbas, O Kure, Quality of service in mobile ad hoc networks; a survey. Int. J. Ad Hoc Ubiquitous Comput. 6(2), 75–98 (2010).

    Article  Google Scholar 

  7. WKG Seah, HX Tan, Quality of service in mobile ad hoc networks. Encyclopedia of Internet Technol. Appl, 441–448 (2008). doi:10.4018/978-1-59140-993-9.ch062. 10.4018/978-1-59140-993-9.ch062.

  8. P Mohapatra, J Li, C Gui, QoS in mobile ad hoc networks. IEEE Wireless Commun. 10(3), 44–53 (2003).

    Article  Google Scholar 

  9. HA Mogaibel, M Othman, S Subramaniam, NAWA Hamid, On-demand channel reservation Scheme for Common Traffic in Wireless Mesh Networks. J. Netw. Comput. Appl. 35(4), 1329–1351 (2012).

    Article  Google Scholar 

  10. M-A Kharraz, H Sarbazi-Azad, AY Zomaya, On-demand multicast routing protocol with efficient route discovery. J. Netw. Comput. Appl. 35(3), 942–950 (2012).

    Article  Google Scholar 

  11. J Liu, F-m Li, in Proceedings of the 2009 Fifth International Conference on Information Assurance and Security. IAS ’09, 1. An Improvement of AODV Protocol Based on Reliable Delivery in Mobile Ad Hoc Networks (IEEE Computer SocietyWashington, DC, USA, 2009), pp. 507–510.

    Chapter  Google Scholar 

  12. C-H Min, S Kim, On-demand utility-based power control routing for energy-aware optimization in mobile Ad Hoc Networks. J. Netw. Comput. Appl. 30(2), 706–727 (2007).

    Article  Google Scholar 

  13. H Badis, KA Agha, QOLSR, QoS Routing for ad hoc wireless networks using OLSR. Eur. Trans. Telecommun. 16(5), 427–442 (2005).

    Article  Google Scholar 

  14. YH Zhang, TA Gulliver, in WiMob (3). Quality of service for ad hoc on-demand distance vector routing (IEEE, 2005), pp. 192–196.

  15. H Liu, B Zhang, H Mouftah, X Shen, J Ma, Opportunistic routing for wireless ad hoc and sensor networks: present and future directions. Commun. Mag. 47(12), 103–109 (2009).

    Article  Google Scholar 

  16. C Perkins, E Belding-Royer, S Das, Ad hoc On-Demand Distance Vector (AODV) Routing. IETF. 3561, 1–37 (2003). https://www.ietf.org/rfc/rfc3561.txt.

    Google Scholar 

  17. D Johnson, Y Hu, D Maltz, The Dynamic Source Routing Protocol (DSR) for Mobile Ad Hoc Networks for IPv4. IETF. 4728, 1–107 (2007). https://www.ietf.org/rfc/rfc4728.txt.

    Google Scholar 

  18. CE Perkins, P Bhagwat, Highly dynamic destination-sequenced distance-vector routing (DSDV) for mobile computers. ACM SIGCOMM Comput. Commun. Rev. 24(4), 234–244 (1994).

    Article  Google Scholar 

  19. T Clausen, P Jacquet, Optimized Link State Routing Protocol (OLSR). IETF. 3626, 1–75 (2003). https://www.ietf.org/rfc/rfc3626.txt.

    Google Scholar 

  20. L Layuan, L Chunlin, A QoS multicast routing protocol for dynamic group topology. Inf. Sci. Int. J. 169(1-2), 113–130 (2005).

    MATH  MathSciNet  Google Scholar 

  21. SJ Lee, M Gerla, in Communications, 2001. ICC 2001. IEEE International Conference on, 10. Split multipath routing with maximally disjoint paths in ad hoc networks (IEEEHelsinki, 2001), pp. 3201–3205. doi:10.1109/ICC.2001.937262.

    Google Scholar 

  22. R Leung, J Liu, E Poon, A-LC Chan, B Li, in Local Computer Networks, 2001. Proceedings. LCN 2001. 26th Annual IEEE Conference on. MP-DSR: a QoS-aware multi-path dynamic source routing protocol for wireless ad-hoc networks (IEEETampa, FL, 2001), pp. 132–141. doi:10.1109/LCN.2001.990778.

    Chapter  Google Scholar 

  23. W-H Liao, Y-C Tseng, S-L Wang, J-P Sheu, in Proceedings of the First International Conference on Networking-Part 2. ICN ’01. A Multi-path QoS Routing Protocol in a Wireless Mobile Ad Hoc Network (SpringerLondon, UK, 2001), pp. 158–167.

    Google Scholar 

  24. SN Diggavi, N Al-Dhahir, A Stamoulis, AR Calderbank, Great expectations: the value of spatial diversity in wireless networks. Proc. IEEE. 92(2), 219–270 (2004).

    Article  Google Scholar 

  25. S Zubair, N Fisal, Reliable geographical forwarding in cognitive radio sensor networks using virtual clusters. Sensors. 14(5), 8996–9026 (2014). doi:10.3390/s140508996.

    Article  Google Scholar 

  26. R Bruno, M Nurchis, Survey on diversity-based routing in wireless mesh networks: challenges and solutions. Comput. Commun. 33(3), 269–282 (2010).

    Article  Google Scholar 

  27. L Khoukhi, H Badis, L Merghem-Boulahia, M Esseghir, Admission control in wireless ad hoc networks: a Survey. EURASIP J. Wireless Commun. Netw. 2013(1), 1–13 (2013).

    Article  Google Scholar 

  28. H Zhang, H Nguyen, E Graciá, P Solano, D Zhang, N Crespi, B Guo, Scalable multimedia delivery with QoS management in pervasive computing environment. J. Supercomput. 65(1), 317–335 (2013).

    Article  Google Scholar 

  29. V Adzic, H Kalva, B Furht, A survey of multimedia content adaptation for mobile devices. Multimedia Tools Appl. 51(1), 379–396 (2011).

    Article  Google Scholar 

  30. X Ma, J Liu, H Jiang, On the design of algorithms for mobile multimedia systems: a survey. Int. J. Commun. Syst. 24(10), 1330–1339 (2011).

    Article  Google Scholar 

  31. T Braun, M Diaz, JE Gabeiras, T Staub, End-to-End Quality of Service Over Heterogeneous Networks, 1st edn. (Springer, 2008).

  32. MVD Schaar, PA Chou, Multimedia Over IP and Wireless Networks: Compression, Networking, and Systems (Academic Press, Inc., Orlando, FL, USA, 2007).

    Google Scholar 

  33. M Radi, B Dezfouli, KA Bakar, M Lee, Multipath routing in wireless sensor networks: survey and research challenges. Sensors. 12(1), 650–685 (2012). doi:10.3390/s120100650.

    Article  Google Scholar 

  34. X Liu, A survey on clustering routing protocols in wireless sensor networks. Sensors. 12(8), 11113–11153 (2012). doi:10.3390/s120811113.

    Article  Google Scholar 

  35. L Hanzo-II, R Tafazolli, A survey of QoS routing solutions for mobile ad hoc networks. IEEE Commun. Surv. Tutorials. 9(2), 50–70 (2007).

    Article  Google Scholar 

  36. M Tarique, KE Tepe, S Adibi, S Erfani, Survey of multipath routing protocols for mobile ad hoc networks. J. Netw. Comput. Appl. 32(6), 1125–1143 (2009).

    Article  Google Scholar 

  37. RC Biradar, SS Manvi, Review of multicast routing mechanisms in mobile ad hoc networks. J. Netw. Comput. Appl. 35(1), 221–239 (2012).

    Article  Google Scholar 

  38. S Chen, K Nahrstedt, Distributed quality-of-service routing in ad hoc networks. IEEE J. Selected Areas Commun. Special Issue Ad-Hoc Netw. 17(8), 1488–1505 (1999).

    Article  Google Scholar 

  39. L Chen, WB Heinzelman, QoS-aware routing based on bandwidth estimation for mobile ad hoc networks. IEEE J. Selected Areas Commun. 23(3), 561–572 (2005).

    Article  Google Scholar 

  40. R Guimarães, L Cerdà, JM Barceló, J García, M Voorhaen, C Blondia, Quality of service through bandwidth reservation on multirate ad hoc wireless networks. Ad Hoc Netw. 7(2), 388–400 (2009).

    Article  Google Scholar 

  41. R Gupta, Z Jia, T Tung, J Walrand, in Global Telecommunications Conference, 2005. GLOBECOM ’05. IEEE, 5. Interference-aware QoS routing (IQRouting) for ad-hoc networks (IEEESt. Louis, MO, 2005), pp. 2604–2610. doi:10.1109/GLOCOM.2005.1578231.

    Google Scholar 

  42. Z Jia, R Gupta, J Walrand, P Varaiya, in Computers and Communications, 2005. ISCC 2005. Proceedings. 10th IEEE Symposium on. Bandwidth guaranteed routing for ad-hoc networks with interference consideration (IEEE, 2005), pp. 3–9. doi:10.1109/ISCC.2005.37.

  43. W Sun, H Yamaguchi, K Yukimasa, S Kusumoto, in Quality of Service, 2006. IWQoS 2006. 14th IEEE International Workshop on. GVGrid: A QoS Routing Protocol for Vehicular Ad Hoc Networks (IEEENew Haven, CT, 2006), pp. 130–139. doi:10.1109/IWQOS.2006.250460.

    Google Scholar 

  44. A Abdrabou, W Zhuang, A position-based QoS routing scheme for UWB mobile ad hoc networks. IEEE J. Selected Areas Commun. - Part 1. 24(4), 850–856 (2006).

    Article  Google Scholar 

  45. SH Shah, K Nahrstedt, in Communications, 2002. ICC 2002. IEEE International Conference on, 2. Predictive Location-based QoS Routing in Mobile Ad hoc Networks (IEEE, 2002), pp. 1022–1027. doi:10.1109/ICC.2002.997009.

  46. S De, SK Das, H Wu, C Qiao, Trigger-based distributed QoS routing in mobile ad hoc networks. ACM SIGMOBILE Mobile Comput. Commun. Rev. 6(3), 22–35 (2002).

    Article  Google Scholar 

  47. R Sivakumar, P Sinha, V Bharghavan, CEDAR: A core-extraction distributed ad hoc routing algorithm. Selected Areas Commun. IEEE J. 17(8), 1454–1465 (1999).

    Article  Google Scholar 

  48. GI Ivascu, S Pierre, A Quintero, QoS routing with traffic distribution in mobile ad hoc networks. Comput. Commun. 32(2), 305–316 (2009).

    Article  Google Scholar 

  49. H Wu, X Jia, QoS Multicast routing by using multiple paths/trees in wireless ad hoc networks. Ad Hoc Netw. 5(5), 600–612 (2007).

    Article  Google Scholar 

  50. N-C Wang, C-Y Lee, A multi-path QoS multicast routing protocol with slot assignment for mobile ad hoc networks. Inf. Sci. Int. J. 208(0), 1–13 (2012).

    Google Scholar 

  51. L Xie, X Jia, K Zhou, QoS multicast routing in cognitive radio ad hoc networks. Int. J. Commun. Syst. 25(1), 30–46 (2012).

    Article  Google Scholar 

  52. RC Biradar, SS Manvi, Neighbor supported reliable multipath multicast routing in MANETs. J. Netw. Comput. Appl. 35(3), 1074–1085 (2012).

    Article  Google Scholar 

  53. AR Bashandy, EKP Chong, A Ghafoor, Generalized quality-of-service routing with resource allocation. IEEE J. Selected Areas Commun. 23(2), 450–463 (2005).

    Article  Google Scholar 

  54. FA Kuipers, PFA Van Mieghem, Conditions that impact the complexity of QoS routing. IEEE/ACM Trans. Netw. (TON). 13(4), 717–730 (2005).

    Article  Google Scholar 

  55. G Xue, A Sen, W Zhang, J Tang, K Thulasiraman, Finding a path subject to many additive QoS constraints. IEEE/ACM Trans. Netw. (TON). 15(1), 201–211 (2007).

    Article  Google Scholar 

  56. ME Rusli, R Harris, A Punchihewa, in Proceedings of the 2012 Fourth International Conference on Computational Intelligence, Modelling and Simulation. CIMSIM ’12. Quality Aware Opportunistic Routing Protocol with Adaptive Coordination Scheme for Wireless Sensor Networks (IEEE Computer SocietyWashington, DC, USA, 2012), pp. 434–439. doi:10.1109/CIMSim.2012.49. 10.1109/CIMSim.2012.49

    Chapter  Google Scholar 

  57. L Xie, X Zhang, in Information Sciences and Systems, 2007. CISS ’07. 41st Annual Conference on. Cross-layer Resource Allocation Strategies for Quality-of-Service Driven Opportunistic Routing Over Wireless Relay Networks (IEEEBaltimore, MD, 2007), pp. 7–12. doi:10.1109/CISS.2007.4298264.

    Chapter  Google Scholar 

  58. P Zhao, X Yang, J Wang, B Liu, J Wang, in INFOCOM, 2012 Proceedings IEEE. BOR/AC: Bandwidth-aware opportunistic routing with admission control in wireless mesh networks (IEEEOrlando, FL, 2012), pp. 2701–2705. doi:10.1109/INFCOM.2012.6195682.

    Chapter  Google Scholar 

  59. W Yang, W Liang, W Dou, in Global Telecommunications Conference (GLOBECOM 2010), 2010 IEEE. Energy-Aware Real-Time Opportunistic Routing for Wireless Ad Hoc Networks (IEEEMiami, FL, 2010), pp. 1–6. doi:10.1109/GLOCOM.2010.5683491.

    Google Scholar 

  60. L Cheng, J Cao, C Chen, J Ma, SK Das, in Mobile Adhoc and Sensor Systems (MASS), 2010 IEEE 7th International Conference on. Exploiting geographic opportunistic routing for soft QoS provisioning in wireless sensor networks (IEEESan Francisco, CA, 2010), pp. 292–301. doi:10.1109/MASS.2010.5664017.

    Google Scholar 

  61. Q Lampin, D Barthel, I Auge-Blum, F Valois, in Wireless Days (WD), 2012 IFIP. QoS oriented Opportunistic Routing protocol for Wireless Sensor Networks, (2012), pp. 1–6. doi:10.1109/WD.2012.6402804.

  62. ME Rusli, R Harris, in Telecommunication Networks and Applications Conference (ATNAC), 2010 Australasian. An adaptive coordination scheme for Opportunistic Routing protocol in wireless sensor networks (IEEEAuckland, 2010), pp. 147–152. doi:10.1109/ATNAC.2010.5679593.

    Chapter  Google Scholar 

  63. M Mirhakkak, N Schult, D Thomson, in Proceedings of the 1st ACM International Symposium on Mobile Ad Hoc Networking & Computing. MobiHoc ’00. Dynamic Quality of Service for Mobile Ad Hoc Networks (IEEE PressPiscataway, NJ, USA, 2000), pp. 137–138.

    Google Scholar 

  64. DSJ De Couto, D Aguayo, J Bicket, R Morris, in Proceedings of the 9th Annual International Conference on Mobile Computing and Networking. MobiCom ’03. A High-Throughput Path Metric for Multi-hop Wireless Routing (ACMNew York, NY, USA, 2003), pp. 134–146.

    Chapter  Google Scholar 

  65. C Sarr, C Chaudet, G Chelius, IG Lassous, Bandwidth estimation for ieee 802.11-based ad hoc networks. IEEE Trans. Mobile Comput. 7(10), 1228–1241 (2008).

    Article  Google Scholar 

  66. A Varga, OMNeT++ Simulator (2003). http://www.omnetpp.org/. Last access on December 2013.

  67. S-B Lee, G-S Ahn, X Zhang, AT Campbell, INSIGNIA: An IP-based quality of service framework for mobile ad hoc networks. J. Parallel Distributed Comput. 60(4), 374–406 (2000).

    Article  Google Scholar 

  68. Y Zhang, TA Gulliver, in IEEE International Conference on Wireless And Mobile Computing, Networking And Communications (WiMob’2005), 3. Quality of Service for Ad Hoc On-demand Distance Vector Routing (IEEE, 2005), pp. 192–196. doi:10.1109/WIMOB.2005.1512903.

  69. H Kaaniche, F Louati, M Frikha, F Kamoun, A QoS routing protocol based on available bandwidth estimation for wireless ad hoc networks. Int. J. Comput. Netw. Commun. (IJCNC). 3(1), 219–239 (2011).

    Google Scholar 

  70. R Core Team, R: A Language and Environment for Statistical Computing (R Foundation for Statistical Computing, Vienna, Austria, 2013). http://www.R-project.org/..

    Google Scholar 

Download references

Acknowledgements

This work is partially supported by CAPES (Coordenação de Aperfeiçoamento do Pessoal de Ensino Superior). Ivo Augusto Andrade Rocha Calado is a PhD Candidate at COPELE (Programa de Pós-Graduação em Engenharia Elétrica), Universidade Federal de Campina Grande.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ivo Calado.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ contributions

All authors have made significant contributions to the paper. IC designed and implemented the proposed algorithm, conducted the experiments, parsed the results, and prepared the manuscript. SL contributed to the technical revision of the manuscript and gave substantial contribution to the mathematical modelling of the solution. GS contributed to the definition of scenario evaluation providing substantial insights regarding this point. HA and AP contributed to the paper organization and technical writing of early versions of the manuscript. They also contributed in several rounds of critical revisions. All authors have read and approved the final version of the manuscript.

Additional file

Additional file 1

Complete dataset of normality and inference tests of the performed experiments. The additional file presents the complete description of evaluated scenarios, the complete dataset of Student’s t test and the complete dataset of inference statistical tests.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Calado, I., Luiz, S.O., Soares, G. et al. An admission control mechanism for dynamic QoS-enabled opportunistic routing protocols. J Wireless Com Network 2015, 224 (2015). https://doi.org/10.1186/s13638-015-0454-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s13638-015-0454-7

Keywords