Abstract
Periodical broadcasts of individual vehicle's safety information such as velocity and acceleration are critical in vehicular ad hoc networks (VANETs). However, current contention-based media access control (MAC) protocols cannot guarantee high performance in high density VANETs. In this paper, we propose a MAC protocol based on s-disjunct code to achieve reliable and real-time broadcasts via assigning a channel to each vehicle as the vehicle enters the network. Our protocol is adaptive as vehicles are required to adjust their communication ranges according to the network density in order to avert the interference among them. We conduct an extensive simulation study, and our results indicate that the proposed scheme can successfully achieve the requirements of the dedicated short range communication (DSRC) standard, that is, to broadcast safety information 10 times per second. Even at a high vehicle density, our scheme still guarantees that the success rates of both transmission and reception are greater than 95%, and the collision rates of access collision and merging collision are lower than 10 collisions/period.
1. Introduction
A vehicular ad hoc network (VANET) consists of a collection of vehicles communicating with each other or with road side units (RSUs) by wireless networking techniques. Each vehicle is equipped with an onboard unit (OBU) that includes a global position system (GPS) device. The major purpose of VANETs is to provide safety information such as collision avoidance and traffic jam prediction to vehicles in the network [1]. Other services such as entertainment and social networking can also be supported by VANETs. Because of the critical safety issues, the United States Federal Communication Commission has allocated 75 MHz spectrum from 5.850 GHz to 5.925 GHz to the dedicated short-range communication (DSRC) standard, which is specifically designed for short-range to medium-range automotive communication use.
The DSRC standard divides the 75 MHz spectrum space into seven 10 MHz channels. The one in the middle is the control channel while the other six are service channels. Safety information is periodically broadcasted to neighboring vehicles through the control channel 10 times/second. But not the whole 100 ms period is used for safety information broadcasts: half of this period is used by the other six service channels. The safety information and control information altogether need to be sent out within 50 ms [2, 3]. However, the MAC protocol of DSRC adopts the contention mechanism, which is called carrier sense multiple access with collision avoidance (CSMA/CA). This protocol performs well only when the node density is low. When the density increases, frequent transmission collisions occur due to the relatively limited time period and the contention-based mechanism. Based on real experiments, [4] has shown that there is a gray zone phenomenon for VANETs, which means that a good reception (package deliver rate (PDR) > 80%) is not always guaranteed.
Reliably broadcasting safety information to neighboring nodes is a big challenge, especially in the case of high node density. Although a lot of previous work has focused on this problem, most of it marginally increase some aspects of the performance. As Section 2 describes, contention-based protocols aim at achieving a larger throughput and a lower transmission delay, while schedule-based protocols focus on improving transmission reliability. Nevertheless, neither of these two categories of solutions to date has addressed scalability problems at scenarios when node density in the network is high.
Motivated by this situation, we present a MAC protocol based on s-disjunct code. In this protocol, each node is assigned a codeword locally and independently according to its current GPS location. Our proposed algorithm assigns a node a transmission channel according to its codeword. In order to adapt to high node density we propose a transmission range control algorithm based on the number of nodes in the communication range of a vehicle. The analysis and simulation results show that our protocol achieves considerable performance improvements, with the success rates of transmission and reception greater than 95%. The contributions of this paper are outlined as follows.
We first propose a distributed codeword allocation algorithm, which assigns a codeword to each vehicle based on its current location. We then present a channel assignment algorithm based on s-disjunct code. Theoretical analysis of this algorithm is provided to derive the probabilities of merging collision and access collision. We next design a transmission range control algorithm, which can dynamically adjust the coverage range of a vehicle to reduce interference. We finally conduct an extensive simulation study to verify the performance of our protocol. The results demonstrate high success rates in transmission and reception while keeping a low collision probability.
The rest of the paper is organized as follows. Section 2 summarizes the related work. Section 3 presents our system model and Section 4 details the three algorithms. Section 5 analyzes the performance of the channel allocation algorithm and Section 6 presents our simulation results. At last, Section 7 draws our conclusion.
2. Related Work
Reliable broadcast has been extensively studied. The proposed approaches are either contention-based (such as CSMA/CA) or schedule-based (such as time division multiple address (TDMA) and frequency division multiple access (FDMA)).
Several contention-based approaches proposed for VANETs [5–8] focus on optimizing the channel contention mechanisms and channel parameters. Artimy et al. [7] have built a math model to simulate the relationship between vehicle density and velocity to estimate the vehicle density and proposed an algorithm to dynamically change the transmission range based on the estimated density. Rawat et al. [8] have proposed an approach that not only adjusts the transmission range according to node density but also tunes enhanced distributed channel access (EDCA) parameters to achieve a larger throughput and a lower transmission delay. However, these studies cannot completely solve the reliable broadcast problem, because they are still based on the contention mechanism, and suffer from serious contention problems when the node density is very high.
The main idea of schedule-based mechanisms is to avoid contention collisions of the nodes in the network by designing a schedule algorithm [9–12]. Farnoud and Valaee [9] have compared the positive orthogonal code- (POC-) based broadcast algorithm with the synchronous p-persistent retransmission (SPR) and the synchronous fixed retransmission (SFR) algorithms. For POC-based broadcast, nodes in the network repeatedly broadcast information to guarantee broadcast reliability; thus the protocol wastes a lot of network resource due to repetition. Choi et al. [10] have proposed the concept of location division multiple access (LDMA), in which a time period is divided into many slots and each time slot is assigned to a node located at a certain location. This approach can mitigate the broadcast storm problem but is not appropriate for periodically broadcasting control information.
Omar et al. [12] have presented an algorithm called VeMAC which is also based on TDMA. All the slots in VeMAC are divided into three sets (left, right, and infrastructure); and each node chooses a channel from its corresponding set to access. Additionally this approach uses the RTS/CTS mechanism to tackle the hidden terminal problem. The result demonstrates a good performance in success rate and collision rate. However, our simulation study indicates that when the node density is high, the performance clearly degrades. Because VANETs must operate in high densities, dense scenarios are an important area that should be considered when designing algorithms for better performance.
s-disjunct code has been used for channel allocation in previous work [13, 14]; but those algorithms fit stationary networks better than dynamic networks as every node in the network is assumed to have a code before joining in the network and the code will never change. This does not fit VANETs, where nodes are always moving. Motivated by the heuristics in [14], we develop algorithms in this paper that are applicable to VANET environments.
To address the problems in high density scenarios, we propose a protocol that is based on s-disjunct code to assign channels and tunes transmission range according to node density. Our protocol incorporates both the schedule-based approach and the contention-based approach to achieve a better performance.
3. System Model
In this section, we introduce the underlying network model, assumptions, and the terminologies employed in this paper.
3.1. Basic Framework
We consider a vehicular ad hoc network with
Safety information is sent every 100 milliseconds in the control channel, required by the DSRC standard. The 100 milliseconds are shared by both safety information and nonsafety information. Although the problem of time allocation to safety information has been discussed in [16], there is not a fixed subinterval value. It is advised to change according to the node density and the reliability requirement. But the node density is always changing, and it is hard to coordinate the subintervals of all the nodes in the network to the same value. So it is necessary to set a fixed subinterval value to all the nodes in the network. Currently, the standard [17] fixes the default value of safety information broadcast subinterval as
For each node, the N virtual channels are partitioned into primary channels and secondary channels. A node is linked with a binary column vector called a channel codeword, which is used to mark primary channels and secondary channels: “
It is required that, for any two different codewords
In our study, the network can be modeled by a directed graph
3.2. s-Disjunct Code
Given a binary
Definition 1 (s-disjunct code).
A binary matrix
Take the
Based on the characteristic of s-disjunct code, [14] derived the following important property.
Property 1.
Given s-disjunct code
This property motivates us to build a mapping between the code
3.3. Main Idea
We focus on channel assignment to mitigate interference among channels and maximize the network capability by using s-disjunct code. Given that every node has a copy of the codeword matrix
Then each node chooses an available channel based on its channel codeword and the current channel status, as shown in Section 4.1. Each node maintains two tables: the one-hop neighbor table and the two-hop neighbor table, which contains the one-hop and two-hop neighborhood information, respectively. Note that due to the distinct transmission ranges of the nodes, the one-hop neighbor set of node u includes those nodes sending messages successfully to u. The information consists of node IDs, their codeword indexes, and their current transmission channels. The one-hop neighbor table and the codewords of the nodes are broadcasted with safety information every time. On the contrary, the two-hop neighbor table shall be updated once a node receives its neighbors’ one-hop neighbor tables. When a collision happens, the colliding nodes release their current channels and choose new channels based on their codewords.
At last, an algorithm is proposed at Section 4.3. Nodes adjust transmission ranges to control the number of nodes in their coverage ranges. In the next section, we describe the three algorithms in detail.
4. s-Disjunct Code Based MAC Protocol
This section introduces the codeword distribution algorithm and shows how to link s-disjunct code to the channel allocation algorithm. A communication range control algorithm is finally proposed to reduce the interference among neighboring nodes.
4.1. Codeword Distribution
Let
Each node chooses a codeword from
A large city area is divided into a number of small grids with the size of several hundred square meters. Although GPS location information is usually with an error of several meters, a node can still locate itself to a grid accurately. The codeword set
4.1.1. Segment Generation
We divide a large area (such as a city or a state) to a number of small grids with length L, as illustrated in Figure 1(a). Additionally, we divide M subsets to a 2-dimensional array A with m rows and m columns, where

Segment generation.
Let
Then the corresponding subset
4.1.2. Codeword Selection
Once a node has already known codeword subset to choose, it does a hash operation on its plate number and the output of the hash operation is the index of the codeword in

The number of collisions for two or three nodes.
4.2. Channel Allocation Algorithm
In this section, we present the channel allocation algorithm shown in Algorithm 1 for broadcast. Each node u in G has a codeword
(1) (2) of u that are secondary to all nodes in (3) (4) (5) (6) (7) (8) (9) (10) with the least row weight (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21)
Intuitively, u should choose those channels not being used by any of its interferers. At the beginning, u should choose a channel that is secondary to
The basic idea of Algorithm 1 is sketched below.
Given If If
Example 2.
Take s-disjunct code in
∗
as an example. Give a network with three nodes
Remark 3.
First, a node prefers its primary channels to its secondary channels. Second, after a node obtains the nonempty channel set (
4.3. Communication Range Control
Each road may have different vehicle densities due to nodes’ mobility. When the density is considerably high, the capacity of control channel is not adequate for a large amount of vehicles to access. At such a high density, a node only needs to transmit its information to the nodes close to itself. At this subsection, we propose an algorithm to control the transmission range of each node with a purpose of reusing the network space and decreasing the interference.
The idea of dynamic transmission range control was first proposed by [7], which is based on vehicle's stop time to estimate density and tune transmission range. In our algorithm, we use a more direct and lighter algorithm to achieve the objective. First, we define node density K as
In order to estimate the current number of nodes in a designated area, each node should count the nodes in its vicinity within the minimum transmission range
Therefore, the transmission range is calculated by the following equation:
K is the ratio of the number of nodes to the maximum number of nodes that can be accommodated within the minimum transmission range area.
In our algorithm the minimum transmission range
5. Performance Analysis
Based on the channel allocation algorithm proposed in Section 4, one can see that there are two cases which may cause collisions, as studied in [12]. First, when a node moves from one part of the network to another part, its currently used channel may conflict with other nodes’ channels. These nodes are going to be its neighbors, and this case is called merging collision as shown in Figure 3(a): node z is going into the two-hop area of x and they do not know each other's current channel; therefore z may use the same channel as x, which may result in a merging collision. The other one is that when two nodes are already within the communication range of each other, they may access the same time slot simultaneously. This is called access collision, illustrated in Figure 3(b): nodes x and z are in each other's two-hop range, and they may access the same channel at the same time, causing the access collision.

Collision cases.
In this section, we first derive the probability distribution of channel allocation and then analyze the probabilities of access collisions and merging collisions.
5.1. Probability Distribution of Channel Allocation
In this subsection, we derive the probability of a node u choosing a channel from
Theorem 4.
If
Proof.
According to the characteristic of s-disjunct matrix, if
Theorem 5.
If
Proof.
If the number of u's neighbors is less than the column weight of
Next we will give the probability upper bound of
For a code
If
5.2. Probability of Collisions
If a node u comes into a new part of the network with
Next we compute the probability of access collisions. A node u may select a channel used by another node. Due to the feature of s-disjunct code, the number of overlapping channels ranges from
Take a

Analysis result.
Figure 4(b) describes the probabilities of merging collisions and access collisions. We find that the probability of merging collision is increasing linearly, because when the number of node u's interferers grows, the overlapping probability increases. Therefore, it chooses an overlapping channel with a larger probability. The collision probability is small when the number of neighbors is very small. In practice, every node should try to use its current channel unless the computed channel set forces it to change. Most of time, a node's channel should not change frequently, and the number of nodes that change channels simultaneously is thus small. In conclusion, when
6. Simulations
6.1. Simulation Scenario and Parameters
We simulate our protocol in two scenarios by Matlab. One is a two-way road scenario with each direction having two lanes. The other is a city grid layout consisting of three horizontal and three vertical roads with each direction having only one lane, shown as in Figures 5(a) and 5(b).

Simulation scenario.
The parameter settings are reported in Table 1. For both scenarios, we validate our protocol on different densities. The highway road is divided into
Simulation parameters.
Following the DSRC standard, safety information is sent through the control channel and its frequency band is 10 MHz. The 10 MHz channel is divided into
The maximum size of a safety message should not exceed 200 B according to the industry suggestion. In this paper we set the packet size to be 300 B to incorporate future applications with large message requirements. Transferring a 300 B message in a subchannel costs 19.2 ms. During the
We construct a 96 × 2304 s-disjunct code, which is assigned to
Some metrics for evaluating the network performance are defined as follows.
Success rate of Tx is the average ratio of successful transmissions to the total transmissions per period. Here a successful transmission is achieved when a node is transmitting at channel c; no other node in its two-hop neighborhood using the same channel c is transmitting. Success rate of Rx is the average ratio of successfully received packets to the total packets per period. The total packets include the successfully received packets and the dropped packets due to channel collisions for all nodes in the network. Rate of merging collisions is the average number of merging collisions per period. Rate of access collisions is the average number of access collisions per period.
6.2. Simulation Result
6.2.1. Highway Scenario
Figures 6(a) and 6(b) show the access collision rate and the merging collision rate of all the three protocols. When the number of vehicles is no more than

The collision rates in the highway scenario.
In Figure 6(b), s-disjunct has the largest merging collision rate all the time. VeMac (
As shown in Figures 7(a) and 7(b), with the increase of the number of nodes in the network, the success rates for all protocols are decreasing, and 200 is an inflection point for this scenario. Under this threshold, the Tx success rate of s-disjunct is a little lower than the other two, with the Rx success rate almost the same. However, if the number of nodes is larger than 200, the Tx success rate and the Rx success rate of s-disjunct protocol are still kept higher than 95%, with the others dropped to as low as 81% and 72%. In terms of Rx and Tx success rates, we think that the Rx success rate is more significant than the Tx success rate. Therefore, s-disjunct protocol shows better scalability and performance in high node density case. In addition, the success rates of s-disjunct do not differ from those of the others too much when the vehicle density is low, which can be acceptable.

The success rates of Rx and Tx in the highway scenario.
6.2.2. City Grid Scenario
From both Figures 8(a) and 8(b), one can see that our s-disjunct protocol has lower merging collision rate and access collision rate than VeMac protocols (

The collision rates in city grid.
Figures 9(a) and 9(b) describe the Tx success rate and Rx success rate for the three protocols in the city grid scenario. The inflection point is about 350 vehicles. With the number of vehicles less than 350, the Tx success rates of the two VeMac protocols are slightly larger than that of s-disjunct and the Tx success rates for all the protocols are above 95%, while the Rx success rates are almost the same. But when the number of vehicles grows, the Tx and Rx success rates of s-disjunct are both kept above 95%. On the contrary, the ones for the VeMac protocols fall down quickly, reaching

The success rates of Rx and Tx in city grid.
7. Conclusion
In this paper, we present an algorithm based on s-disjunct code to allocate communication channels to nodes in a VANET. A distributed code assignment algorithm is proposed in order for each node to get the corresponding codeword. We also design a communication range control algorithm to dynamically change the transmission range based on the node density of the network. Theoretical analysis and simulation results show that our protocol can achieve a very high transmission and reception rate at a low collision rate. In the future, we will consider the more practical scenario to validate the performance when communication channels might be affected by other factors (e.g., noise, fading and shadowing).
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
This work is supported by Natural Science Foundation of China under Grants 61332004, 61170267, 61272509, 61373027, and 61003304, Beijing Natural Science Foundation under Grant 4132049, Natural Science Foundation of Shandong Province under Grant ZR2012FM023, Shaanxi Province Hundred Talents Program, Research Fund for the Doctoral Program of Higher Education 20113402120008, the Projects of Major International (Regional) Joint Research Program NSFC under Grant 61120106010, Shaanxi Province Hundred Talents Program, and the China Scholarship Council under Grants 201206115013 and 201206030047.
