A QoS Based Adaptive Backoff Scheme for Vehicular Ad Hoc Networks

The media access control (MAC) protocol is a key element in the design of vehicular ad hoc networks (VANETs) that directly affects the network performance. The backoff schemes of existing MAC protocols apply the single backoff process and therefore are not suitable for multi-class data transmission. Additionally, they cannot satisfy the delay requirements of emergency data in the case of varying number of vehicles, causing an adverse effect to the intelligent transportation system (ITS). This paper presents a priority-based adaptive backoff scheme that can enhance the binary exponential backoff (BEB) algorithm as well as the polynomial backoff (QB) algorithm. This system distinguishes priority data with different delay requirements first and designs different backoff schemes for each type of data later. The two-dimensional Markov Chain is used to analyze the backoff scheme and determine the expressions for throughput and delay. The simulation results show that the backoff scheme provided by this paper can reduce the average data delay and regulate each kind of data delay adaptively, according to the varying number of vehicles and different delay requirements.


Introduction
VANET is a special mobile network that applies the philosophy of traditional mobile ad hoc networks (MANETs) to road traffic [1]. VANETs have different characteristics and problems compared to MANETs, such as the actual road scene, varying number of nodes, and high mobility of nodes. Further, VANETs are less tolerant to delays than MANETs because a delay affects driving safety directly. Therefore, a MAC protocol with a guaranteed delay for VANETs is worth researching.
IEEE 802.11 is the standard of wireless networks currently [2]. It consists of a series of protocols, such as 802.11a and 802.11b. Among these, IEEE 802.11p is defined for VANETs [3]. It enables data transmission between moving vehicles and roadside units (RSUs). It uses the enhanced distributed channel access (EDCA) mechanism, similar to IEEE 802.11e. The QoS guarantee comes with a host of challenges [4]. The network nodes access the channel using the carrier sense multiple access with collision avoidance CSMA/CA mechanism, and execute the BEB, when a channel collision occurs [5].
The BEB algorithm has several drawbacks, such as slow convergence speed, unfair channel contention, and the lack of a QoS guarantee for emergency data. Researchers have attempted to overcome these shortcomings in different ways, including using a two-or three-dimensional Markov Chain [6,7], employing a queuing network model, an ON/OFF model [8], and many other mathematical theories to analyze the algorithm performance and develop adaptive backoff algorithms. on the backoff processes of different kinds of data and calculating the backoff transition probability. The two-dimensional Markov Chain is shown in Section 4 in order to derive the expressions for network throughput and delay. Section 5 provides the simulation results to verify the feasibility of the algorithm. Finally, concluding remarks are summarized in Section 6.

Estimating the Number of Contention Nodes
One of the most important characteristics of vehicular networks is the real-time variability of the number of nodes in the system, which greatly affects network transmission performance. Assume that the distribution of the vehicles in the vehicular network is Poisson Point Process (PPP), B(λ, r). For any given vehicle, the number of neighbor nodes follows P(n = k) = λ k e −λ k! , k = 0, 1, 2, · · · . The vehicles run on a two-way, four-lane highway, in order to facilitate the calculation. Ignoring the influence of the width of the roads on the transmission coverage, we can know the excepted number of neighbor nodes is λ = 4 · 2r · α. In the formula, α is the distribution density and r is the communication range.
System parameters, such as the maximum backoff stage m, the minimum contention window W 0 , the transmission speed, etc., are provided to a particular network and cannot be changed. A change in the number of nodes in the network triggers a change in the traffic load. While these parameters cannot change according to the traffic load, the network performance will go down, with the change in the number of vehicles.
The channels in the vehicular network are divided into a control channel and a service channel. Each vehicle node has a unique MAC address, called MAC ID , which can be used to identify the vehicle. Each node broadcasts a beacon message periodically on the control channel to other nodes within its transmission range, including the nodes in the beacon message. Other vehicle nodes can identify this certain node after receiving the beacon message. Every node monitors the control channel. After receiving the beacon messages from other nodes, they pick up the respective s and include them into their one-hop neighbor list. The time received is recorded into the list at the same time. Each node maintains the one-hop neighbor list by monitoring the channel. The various nodes in the network broadcast the beacon messages periodically and join the other nodes' one-hop neighbor list repeatedly. When a certain node finds that other nodes are joining repeatedly, it records the new time received. If a certain node finds that access times of nodes in its one-hop neighbor list are too long, it will delete them from its list to prevent the list from increasing infinitely, as this condition implies that these nodes have moved from its transmission range.
The service channel is used by nodes for contention access and message transmission. As the data transmission time is too little for vehicles to move a very long distance, we can assume that all the vehicles can be seen still when they transmit or receive data. For example, the speed of the vehicle is 100 km/h, the data transmission time is level, the vehicle will move far less than 1 m. When a vehicle begins transiting data, it judges the distance and chooses a nearer relay node or not according to its one-hop neighbor list. So the transmission collision happens only if the channel is used by other nodes at the same time. To an individual node, all the nodes existing in its one-hop neighbor list can be seen as contention nodes. Although the system parameters cannot be changed, the vehicle nodes can control their own backoff processes. By estimating the number of contention nodes, the vehicle nodes can reasonably choose contention windows that will reduce the collision probability. This, in turn, can improve the network performance. Considering that congestion caused by vehicle flow typically remains for only a short duration and is paroxysmal, when estimating the number of contention nodes, we consider not only the number of nodes in the one-hop neighbor list, but also the previous number of contention nodes. Assuming that at a certain time t, the number of nodes in the one-hop neighbor list is n n (t) and the estimated number of contention nodes is n(t), then n(t) = ∑ t−1 i=1 n(i)+n n (t) t .

Transmission Process
When new data arrives for transmission, the node performs various backoff processes according to the type of data, and chooses the backoff window randomly. Next, the node monitors the channel until the backoff process is complete and sends the data. If the data is transmitted successfully, the backoff stage of this kind of data is reset to zero with a certain probability. Otherwise, the backoff stage increases, the node chooses the backoff window again and waits to send the data. The transmission process is shown in Figure 1.

Backoff Algorithm
In VANET, the vehicle nodes communicate with other vehicles or roadside units and therefore, many types of data exist in the network. Different types of data have their own transmission delay requirements. For instance, emergency data, generated when vehicles crash, has a low delay tolerance, and must be sent immediately. The data from certain kinds of vehicles also have different priorities; special vehicles like police cars and fire engines have a higher priority to send data, compared to private cars. It is necessary to reduce the delay in high priority data by arranging all the data reasonably, according to their delay requirements.
Just like in the BEB algorithm, the nodes have m + 1 backoff stages (0, 1, · · · , m), W 0 , W 1 , · · · , W m expresses the contention window length of a certain backoff stage i. In BEB, W i = 2 i W 0 (where W 0 is the initialized window), and CW min = 2 0 W 0 , CW max = 2 m W 0 can express the minimum and maximum contention window sizes. In QB [11], W i = (1 + i) 2 W 0 , CW min = W 0 and CW max = (1 + m) 2 W 0 . In IEEE 802.11e, EDCA algorithm defines eight kinds of traffic categories (TC) and four kinds of access categories (AC), which is also cited in DSRC/WAVE standard and IEEE 1609.3. Eight kinds of TC are mapped to the queues of four kinds of AC, respectively. Similarly to the definition of EDCA, in the assuming vehicular adhoc network, the data are divided into K types according to their delay requirements. For example, if the data are just divided into high priority and low priority, in this case, the K equals to two. If we need four ACs like EDCA, the K equals to four etc. The larger K is, the higher the data discrimination is, and K is no more than the total types of data. It is more general and extensible defining data types as K. Let k(k = 1, 2, · · · , K) express the priorities of different kinds of data and the data k = 1 have the highest priority. Data k = K have the lowest priority. Let β ki (i = 0, 1, · · · , m) express the probability that the backoff stage i resets to 0 when the data (type k) are transmitted successfully, β 1i > β 2i > · · · > β Ki . Each type of data follows the independent backoff process, which means when a node wants to send a certain type of data, it only depends on the previous backoff process of that type of data and the current network status. EDCA defines different values of CW min and CW max for different access categories. The access category with smaller value of CW min and CW max has higher priority. While in this paper, the backoff schemes of all data have the same value of CW min and CW max . To distinguish the priorities, when the data are transmitted successfully, the backoff stage of data with higher priority will reset to 0 with higher probability and the backoff stage of data with lower priority will remain unchanged with higher probability. In this way, the data priorities can be distinguished without defining different CW min and CW max , which may cause worse system performance when CW cannot satisfy with the number of the vehicles. When the data fail to transmit, the backoff stage increases and the contention window size increases according to the BEB or QB alogrithm. When the data are transmitted successfully, the backoff stage resets to 0 with the calculated probability β ki . The process is as follows: 1. The vehicle node identifies the type of data k; 2. The backoff process of the current data starts with the backoff series of the previous backoff process of similar data. Assuming that after similar data are transmitted successfully, the backoff stage sets to i, then the initialized contention window of the new data is CW i = rand(0, W i − 1); 3. The node monitors the channel and does the backoff. When the backoff window decreases to 0, the node sends the data. 4. If a channel collision occurs at the backoff stage i < m, the backoff stage adds 1. If a channel collision occurs at the backoff stage i = m, the backoff stage remains m. The node chooses the backoff window again and does the backoff; 5. If the data are transmitted successfully, the vehicle node calculates β ki according to the previous success rate and resets the backoff stage to 0 with a probability of β ki . (Calculating the β ki is introduced in the next section).
In the algorithm, different types of data do different backoff processes. When a channel collision happens, the contention window multiplicative increases. When data are transmitted successfully, the data with higher priority will reset their backoff stage to 0 with a higher probability. When the data with lower priority ensure their own transmission requirements, they make concessions to the data with higher priority, and the access contention will decrease so the data with higher priority can access the channel with a lower delay.

State Transition Probability
Two-dimensional Markov Chain is used in this section to analyze the proposed algorithm. Let (i, j) express the backoff state of the node. In the formula, i is the backoff stage, which is the double times of the node's contention window, ) express the backoff state of the node at the moment t, define the transition probability as Then the two-dimensional stochastic process (s(t), b(t)) is a discrete two-dimensional Markov Chain with state space Ω. To simplify, let b i,j = lim t→∞ P {s(t) = i, b(t) = j} express the steady state probability of the Markov Chain.
Assuming the number of vehicles in one-hop range follows a Poison Point Process with parameter λ, so the estimated number of contention nodes follows the distribution that P {n = k} = λ k e −λ k! (k = 0, 1, 2 · · · ). Denote the probability that the nodes have data to send is τ and the collision probability is p. Obviously, the collision probability is equal to the probability that at least one of the n − 1 nodes transmit data at the same moment, The state transition probability of the Markov Chain is shown in Figure 2. The size of the contention window doubles each time when the channel collision happens until it reaches the maximum backoff stage m. When the data transmitted successfully, the backoff stage will reset to 0 with a calculated probability. To simplify the derivation, in this paper, let β k = β ki (i = 0, 1, · · · , m). It can be seen in the figure, In the formula, the first item expresses the backoff window minus 1 each time; the second item expresses the node choosing the contention window again when it transmits data successfully at backoff stage 0; the third item expresses the node choose contention window again at stage i when it transmit data successfully; the fourth item expresses the node choosing the contention window again at stage m; the fifth item expresses the node doubling the size of the contention window when the channel collision happens and the sixth item expresses the node reseting the backoff stage to 0 when it transmits data successfully.
It also can be found in the Figure 2 that, It can be obtained from the above formula that Let H p = p p+(1−p)β k , then (4) and (5) can be simplified as From Figure 2, we also can find that, According to Formulas (3) and (8), it can be obtained that As b (k) i,j is the steady state probability of the Markov Chain, the sum of the probability must be 1, so Plug (6), (7) into (10), then b (k) The probability that the node transmits the data k is Assume that in the system, the proportion of the emergency data is α 0 , and the proportion of the data k is α k , then the average transmission probability of the system is

Throughput and Delay
Denote S as the normalized network performance, which is equal to dividing the payload of the data transmitted in one frame by the average slot length [6]. S = P s P tr E(P) (1 − P tr )σ + P s P tr T s + (1 − P s )P tr T c (14) In the formula, E(P) is the expectation of the payload length of the data. T s and T c are the average channel occupied time when the data transmitted successfully or failed respectively. P tr is the probability that there is at least one node sending data at any time, P tr = . P s is the probability that there is only one node sends data, P s = The diagram of T s and T c are shown in Figure 3. As in the vehicular adhoc network, if the distance between two vehicles is more than one-hop range and less than two-hop range, when they both transmit data to the same node in their one-hop neighbor list, a hidden terminal problem happens. Using RTS/CTS protocol, these two nodes can monitor the collision when they cannot receive the CTS and will not waste time to transmit data. The average delay Del k is the expectation time that the data waits to be sent until the transmission succeeds, it can be expressed as, The E s is the average length of the time slot; it is the denominator of Formula (14). E(k) is the average slots that the data k need to be transmitted successfully, In Formula (15), q i is the probability that the data transmitted at the backoff stage i, D i is the expectation time that the data waits to send at the backoff stage i, Let A k,i express the probability that when new data arrive, they access the stage i and choose contention window, so And the probability that the data arrive backoff stage i and transmitted successfully is Plug (16)

Delay Optimization
As said in the above section, the delay expression includes n, τ, p, W 0 , W i , β k and other parameters. n is the number of vehicles, it cannot be controlled. W 0 , W i are the system parameters, usually not changed. τ, p are related to β k , so the delay optimization is to optimize the value of β k .
By optimizing β k , we want to obtain the lowest average total delay with the delay limitation of each data set. So the optimization problem is: In the formula, K ∑ k=1 α k E(k) · E s is the average total delay, D min (k) is the lowest delay of data k in the certain scene with given number of vehicles. So Del k ≤ θ k · D min (k) expresses the delay limitation of data k. θ k distinguish the priority of data, θ 1 < θ 2 < · · · < θ K .
To solve this optimization problem, D min (k) should be obtained firstly. We can get D min (k) by establishing the other optimization problem: It is easily found that D min (k) can be obtained when β k = 1 and other β = 0. Substituting to (16)-(19), the D min (k) is derived.
Formula (20) is a nonlinear multivariate optimization problem, the expression is complex and nests massive fractions and high order square data. It is difficult to derive the explicit solution. Particle swarm optimization (PSO) starts with a random solution and searches for the optimal solution by iteration. The fitness is used to evaluate the quality of the solution, and the global optimum is searched by following the optimal value of the current search. This algorithm is easy to implement with high precision and fast convergence. So this paper uses PSO to solve this nonlinear multivariate optimization problem as follows, In the PSO, each individual is considered as a particle, and each particle represents a potential solution. The algorithm uses individual sharing of information, making the search of the whole group from disorder to order, so as to get the optimal solution. In this problem, there are K parameters to be solved β 1 ∼ β K , so the particle swarm consists with K particles. Each particle has its own position and speed, which denote the searching distance and direction. Define β (x) k is the searching solution after the data k searching x times. V  k is the current best solution after the data k searching x times. Then the algorithm can be described with (β The searching solution at current time The searching speed at current time The best solution at current time Best The algorithm process is as follows in Table 1. There are some variable parameters that need to be set in the algorithm. c 1 is learning factor, appropriate adjustments can minimize the local minima value and speed up the convergence, the usual range is [0,4], in this paper c 1 = 2. V max is the variable maximum searching speed, it is used to control the convergence speed, when |V (x) k | > |V max |, the searching speed choose |V max |, in this paper |V max | = 0.01. The bigger weight value w is, the easier it will be to inherit the current search speed and the stronger global search ability. With a small weight value w, the algorithm tends to local search and converges fast, but may terminate in local optima value. Therefore, the appropriate method is to set larger weight value at the initial stage of the iteration, in order to improve the global search capability and to reduce the weight value at the later stage to speed up the convergence. In this paper, w = w max · θ x−1 , in the formula, w max = 1, θ = 0.95. Table 1. Particle swarm optimization (PSO) Algorithm.

Simulation Results and Analysis
In this section, we simulate the proposed algorithm with Matlab, and compared with QB algorithm [11] and FMC-MAC [14]. The parameters of the simulation are shown in Tables 2 and 3 [6]. In addition, the network performance and the optimal value of β k are analyzed with the given parameters.   Figure 4 shows the average total delay with the different number of vehicles. By comparing Figure 4a-c, it can be seen intuitively that the average total delay increases with the increasing number of vehicles. In addition, we can find that when the number of vehicles is smaller (n < 40), the lowest delay can be obtained at β 1 = β 2 = 1, which are the same as the BEB and QB algorithm. While when the road is crowed (n > 50 ), the original backoff models like the BEB or QB model cannot satisfy the request of mass data transmission, the performance becomes poor because the transmission collisions increase. By using the adaptive backoff scheme, we can adjust the backoff parameters of different kinds of data, like β 1 and β 2 in the Figure 4. In this way, the average total delay decreases with the less transmission collisions. The adaptive backoff scheme is helpful to both EBE and QB algorithm. In particular, without the adaptive backoff scheme, the QB algorithm is better than BEB algorithm. While after using the adaptive backoff scheme, the performance of the enhanced BEB algorithm is better than the enhanced QB algorithm. So this adaptive backoff scheme is more suitable for the BEB algorithm. Figure 5 shows the optimal value of β k both in the enhanced BEB and enhanced QB. In order to make the image simple and clear, there are two kinds of data in the simulation, so two parameters β 1 and β 2 need to be solved. Assuming that the delay requirement of data 1 is Del 1 ≤ θ 1 · D min (1), θ 1 = 1.15, and the delay requirement of data 2 is Del 2 ≤ θ 2 · D min (2), θ 2 = 1.3. As the priority of data 1 is higher than data 2, the assumed parameters θ 1 < θ 2 . Both in the enhanced BEB and QB, we can find that β 1 is always larger than β 2 , because the delay requirement of data 1 is higher than data 2. To meet this requirement, the data 1 needs higher probability to reset the backoff stage to 0 compared with the data 2, so β 1 > β 2 . In the enhanced BEB, the β k decreases when n > 44.
On the other hand, in the enhanced QB, the β k decreases when n > 48, which conforms to Figure 4. For the same optimization target and system parameters, when the number of nodes in the network increases, the network load and transmission collision probability increase. In order to reduce the data transmission conflict and transmission delay, β k will reduce accordingly, so the node will choose the contention window at the higher backoff stage to reduce the transmission probability. In particular, although the data 2 make a concession as their priority are lower, β 2 has a lower limit because their delay has constraints.   Figure 6 shows the saturated throughput performance of the proposed algorithm compared with the IEEE 802.11p, QB algorithm and FMC-MAC. The system throughput decreases along with the increasing number of nodes. This is because when the system parameters are given, the probability of the transmission collision increases with the increasing number of nodes, which reduces the system throughput. It can be seen in the figure that the saturated throughput of IEEE 802.11p algorithm does not decrease significantly. The reason is that the saturated throughput is the maximum throughput that can be reached when the number of nodes is given, without considering the limitation of maximum backoff stage and initial contention window on the data transmission probability. So if the system gives the number of nodes, maximum backoff stage m and initial contention window W 0 , the saturated throughput is not always reachable. Because of lack of flexibility, in some special networks, the actual throughput will be much less than the saturated throughput. The saturated throughput of the FMC-MAC [14] protocol is higher than the standard IEEE 802.11p. Because they allocate more resources for non-safety applications when the resources are enough for allocation, they fail to guarantee the reliability of safety applications. After using the adaptive backoff algorithm, the actual throughput is less than the theoretical achievable saturated throughput, but the losing performance is not much, and the actual throughput is larger than 90% saturated throughput.  The comparison of average total delays in two different optimization models is shown in Figure 7. The reference line of the contrast is the delay of IEEE 802.11p, QB algorithm and FMC-MAC. Without the proposed adaptive backoff scheme, the performance of IEEE 802.11p is worse than FMC-MAC and QB algorithm, and FMC-MAC will have a better performance compared with QB in the high density network. After using the adaptive backoff scheme, the delay of IEEE 802.11p and QB can decrease and become better than FMC-MAC. We can find that by using the adaptive backoff scheme in the IEEE 802.11p and QB, the average total delay can be optimized when the road is crowed, especially in the eBEB algorithm (the delay can reduce nearly 15%). Compare IEEE 802.11p with QB, the performance of QB is always better than IEEE 802.11p. While after using the adaptive backoff scheme, the eBEB algorithm is better than the eQB algorithm when n > 52. So the adaptive backoff scheme is more applicable in BEB than in QB.  In Figure 8a,b, the optimal delay is compared with the maximum and minimum delay in the same scene. In the assuming scene, the priority of data 1 is higher than data 2 and the ratio of data 1 is lower than data 2. According to the disparity of the maximum and minimum delay, we can find that the disparity of data with larger ratio is smaller than the data with smaller ratio. It means that the delay of the data with larger ratio is difficult to optimize. In both the BEB and QB algorithm, when the number of vehicles is smaller than a certain threshold, there is no need to use the adaptive backoff scheme. When the number of vehicles becomes larger (In BEB, n > 44 or in QB, n > 48), the proposed adaptive backoff scheme can modify the data delay according to their upper limit. Overall, considering all kinds of data delay, the adaptive backoff scheme can reduce the average total delay.

Conclusions
In this paper, an adaptive backoff algorithm is proposed to distinguish traffic priority, especially for the autonomous vehicular network. The algorithm classifies the data according to their different delay requirements and designs different backoff processes for them. The backoff parameters are adjusted to optimize the delay according to the network performance. This algorithm has the characteristics of real time, controllability and insists on multi class service. The simulation results show that the average total delay is reduced when the road is crowded, and each kind of data delay is optimized without losing much system throughput. The proposed algorithm is an adaptive backoff algorithm for vehicular networks.