Repetition ‐ Based Cooperative Broadcasting for Vehicular Ad Hoc Networks Under the Rayleigh Fading Channel

Featured Application: The proposed RBCB scheme is designed for safety ‐ related applications such as collision detection, lane change warning, and cooperative merging in vehicular ad hoc networks. Abstract: In vehicular ad hoc networks (VANETs), safety applications require a reliable and delay ‐ guaranteed broadcasting service to disseminate safety messages. However, channel fading and the high mobility of vehicles make it very challenging for a broadcasting scheme to meet the strict service demands of safety messages. On the other hand, cooperative retransmission is effective in mitigating wireless channel impairments by utilizing the broadcast nature of wireless channels. Therefore, this paper proposes a repetition ‐ based cooperative broadcasting (RBCB) scheme for safety messages in VANETs. The proposed scheme enables the selected helper vehicles to perform the cooperative rebroadcasting along with the source vehicle during the source vehicle’s slot in order to increase the transmission reliability of safety messages and reduce rebroadcasting times. The performance of RBCB scheme is mathematically analyzed in terms of packet delivery probability and average packet delay under the Rayleigh fading channel. Moreover, extensive simulations are conducted to evaluate the performance of RBCB scheme. Both mathematical analysis and simulation results demonstrate that RBCB scheme significantly improves the packet delivery probability and decreases the average packet delay.


Introduction
The rapid growth in the number of vehicles has caused some serious problems in urban roads and highways, such as traffic congestions and road crashes. As part of an intelligent transportation system (ITS), vehicular ad hoc networks (VANETs) emerge as a promising technology to solve the abovementioned problems. VANETs enable information sharing and interactions among vehicles, infrastructures, and the Internet. In VANETs, every vehicle is equipped with a communication device called an on-board unit (OBU), and a set of stationary units, referred to as roadside units (RSUs), are deployed on transportation infrastructures such as traffic lights, street lights, and road signs. Through OBUs and RSUs, vehicles can communicate with each other as well as with the Internet [1]. Therefore, VANETs support two modes of communication: vehicle to vehicle (V2V) and vehicle to infrastructure (V2I).
VANETs are expected to support a large spectrum of applications that range from safety-related applications (e.g., collision detection, lane change warning, and cooperative merging) and transportation management applications (e.g., traffic signal control, intelligent traffic scheduling, and fleet management) to infotainment applications (e.g., email, videos, and advertisements) [2]. These applications have very different demands of quality of service (QoS). Generally, safety messages have a very strict delay demand and require a reliable and timely delivery, while non-safety messages require high throughput and fair access to the channel but can tolerate a higher transmission delay. Furthermore, the delivery of safety messages mainly depends on the broadcasting service, especially the one-hop broadcasting service, because most safety applications require their messages to be disseminated to all neighboring nodes of the source node [3]. Usually, the lifetime of safety messages is less than 100 ms, and 99% of nodes in the one-hop range must receive the messages [4,5]. Hence, the one-hop broadcasting plays a very important role in VANETs.
However, the special characteristics of VANETs such as the high mobility of vehicles, the dynamic network topology, and the frequent link breakages make it very challenging to design a reliable and timely broadcasting scheme to meet the QoS demands of safety messages. Several media access control (MAC) schemes for vehicular communications have been proposed in the literature, among which the IEEE 802.11p [6] is a standardized protocol. However, it still has some shortcomings. As a contention-based MAC, it is very difficult to guarantee the delay of safety messages. Furthermore, no request-to-send/clear-to-send (RTS/CTS) packets are exchanged before the transmission of broadcast messages, and no acknowledgement (ACK) message is used to acknowledge the reception. Thus, broadcasting using the IEEE 802.11p suffers from the hidden terminal problem. In order to provide a delay-guaranteed broadcasting service for safety messages, several distributed time division multiple access (TDMA)-based schemes such as ADHOC MAC [7] and VeMAC [8] have been proposed in the literature. However, it is still difficult for these TDMAbased MACs to provide a reliable broadcasting service for safety messages.
In recent years, repetition-based techniques have been proposed to meet such requirements as timeliness and reliability for broadcasting [9,10]. These schemes allow the source vehicle to repeatedly transmit a message during the lifetime of the safety message so that its neighbors can have more opportunities to receive the message. The great advantage of repetition-based strategies is that they can improve the broadcasting reliability without dependence on any collision avoidance or acknowledgement mechanisms. Thus, the delay of safety messages can be easily guaranteed. However, the repetition-based broadcasting still suffers from high probability of errors and long delay when the channel is experiencing the deep fading, because the simple retransmission by the source vehicle is ineffective in mitigating the wireless channel impairments caused by the deep fading. In addition, excessive repetitions may waste network resources and cause network congestions.
On the other hand, cooperative retransmission has been proved a promising way to realize the spatial diversity by forming a virtual antenna array [11]. Due to the broadcast nature of wirelss transmissions, the neighboring nodes of the source node can help forward the packet to the destination when necessary. Then, the destination node receives more than one copy of the packet through multiple independent links. By combining these copies, a diversity gain can be achieved. In VANETs, the coherence time of wireless channels is up to tens of milliseconds [12,13]. If the channel is undergoing the deep fading, it may last as long as the duration of multiple frames [14], and the packet may experience a long delay. During this duration, the cooperative retransmission can be done. Therefore, we propose a repetition-based cooperative broadcasting (RBCB) scheme for VANETs in order to improve the transmission reliability of safety messages and reduce the number of rebroadcasting.
The main contributions of this paper are three-fold. First, we propose a repetition-based cooperative broadcasting scheme for safety messages, which enables the selected helper vehicles to perform the cooperative rebroadcasting along with the source node. Second, we analyze the performance of RBCB scheme under the Rayleigh fading channel in terms of packet delivery probability and average packet delay. Third, simulations are conducted to verify the mathematical analysis and evaluate the performance improvement.
The remainder of this paper is organized as follows. Section 2 reviews the related work on repetition-based broadcasting schemes and cooperative MAC protocols. Section 3 describes the system model we consider. Section 4 presents the proposed RBCB scheme. The performance analysis of RBCB scheme in terms of packet delivery probability and average packet delay is discussed in Section 5. Section 6 presents the numerical results. This paper concludes with Section 7.

Related Work
To the best of our knowledge, Xu et al. [9] first proposed a repetition-based broadcasting scheme to improve the transmission reliability of periodic beacon messages in VANETs. In the proposed scheme, each message is transmitted times during time slots. A node can pick any slots to form its repetition pattern. If the repetition patterns of two nodes have the same slot, a collision will happen in this slot. To minimize collisions, Farnoud et al. [10] designed a protocol that uses the optical orthogonal codes (OOC) to select the retransmission patterns with the least possible correlation. However, an efficient repetition pattern distributing technique is needed to maximize the benefit brought by the OOC-based scheme. Therefore, Alshaer et al. [15] presented an adaptive broadcasting strategy for VANETs, which enables a node to decide the probability of rebroadcasting based on the number of its neighbors. Ma et al. [16] proposed a dynamic receiver-oriented packet repetition scheme to enhance the broadcast reliability of emergency messages. Furthermore, Ma et al. [17] proposed a cross-layer broadcasting scheme for one-hop emergency messages, which includes preemptive priority in safety services and dynamic receiver-oriented packet. To overcome the broadcast storm problem, Farrokhi et al. [18] established a direction oriented and stochastic controlled repletion scheme in IEEE 802.11e-based VANETs. Hassanabadi et al. [19] introduced network coding into the design of rebroadcasting pattern and proposed a rebroadcasting frame of network coded safety messages.
In recent years, cooperative retransmission has been employed to enhance the transmission reliability of both unicast and broadcast modes in VANETs. While most of the existing works focus on the unicast mode, just a few works consider the broadcast mode [11].
Generally, cooperative MAC protocols proposed for the unicast mode of communication can be classified into two categories: contention-free and contention-based. Bharati et al. [20,21] designed a cooperative ad hoc MAC (CAH-MAC) for VANETs. In CAH-MAC, idle slots of a frame are used to perform the cooperative retransmission. A relay node is enabled to help retransmit the packet in an idle slot when the direct transmission fails. However, collisions will happen when cooperative retransmission of the relay node and the channel access of a new node occur in the same idle slot. To deal with the issue of slot reservation collision, the authors proposed an enhanced version of CAH-MAC, named eCAH-MAC [22]. In eCAH-MAC, a relay node suspends the cooperative retransmission if it detects any other node attempts to access the same slot. The abovementioned protocols utilize idle slots to conduct cooperative retransmission. However, idle slots may not be available when the density of vehicles is high. Zhang et al. [23] presented a vehicular cooperative TDMA-based (VC-TDMA) MAC protocol that opportunistically exploits the slot of the relay node to improve the throughput. In VC-TDMA, a relay node with the empty buffer is selected to forward the packet. However, VC-TDMA protocol does not take channel conditions into consideration. Its performance changes with channel conditions among the source, the relay, and the destination nodes. Different from the abovementioned protocols that are based on TDMA, Zhou et al. [24] proposed an IEEE 802.11-based adaptive distributed cooperative MAC (ADC-MAC) for VANETs. In ADC-MAC, each node periodically broadcasts heartbeat packets so that the source node can get the instant channel information of each potential helper. Nevertheless, heartbeat packets introduce a large signaling overhead and increase packet collisions. Zhang et al. [25] proposed a concurrent transmission enabled cooperative MAC protocol (referred as Mizar) for VANETs. Although Mizar significantly increases the throughput, the cooperation also incurs a significant overhead.
Limited work has been done for the broadcast mode of communication. Zhang et al. [26] proposed a vehicular cooperative MAC (VC-MAC) for the downloading scenario in VANETs. In VC-MAC, an optimal set of relays is chosen to rebroadcast the data to the nodes that do not receive the data during the gateway's first broadcasting. Although the aim of VC-MAC is to maximize the system throughput, the protocol faces higher channel access delay and severe exposed node problem when the density of vehicles is high. To deal with these issues, Chen et al. [27] developed a two-cycle cooperative MAC (VC 2 -MAC) protocol that merges four phases of the information exchange period into three phases. Hoo et al. [28] designed a repetition-based cooperative broadcast (RB-CD) MAC protocol based on IEEE 802.11 for VANETs. Several relay nodes are selected to retransmit the same messages together with the source node simultaneously to form a virtual antenna array. Although RB-CD protocol provides a more reliable broadcasting service, it also incurs an unavoidable throughput reduction. Yang et al. [29] designed a cooperative clustering-based MAC (CCB-MAC) protocol for VANETs. To improve the broadcast reliability of safety messages, ACK message is used to indicate the reception result, and cooperative retransmission occurs in idles slots. However, the exchange of ACK messages incurs extra delay, and CCB-MAC does not consider the relative mobility of vehicles. Bharati et al. [30] proposed a TDMA-based cooperative relay broadcasting (CRB) protocol for VANETs. Idle slots in a frame are used to rebroadcast the labeled packet by the selected helper. Since the helper is selected distributedly, collisions will happen when two or more potential helpers that are not in each other's one-hop distance evaluate themselves as the helper.
Different from the existing work, we propose a repetition-based cooperative broadcasting scheme for safety messages in VANETs. In the proposed RBCB scheme, a hidden-Markov-modelbased algorithm is proposed to predict the reception results of the safety message. Then, helpers are selected to perform the cooperative rebroadcasting along with the source node during the source node's time slot. A novel helper selection algorithm is designed, and the performance analysis of RBCB scheme is conducted under the Rayleigh fading channel.

System Model
Consider a VANET where vehicles move along a one-way multi-lane road segment. Vehicles are distributed randomly along the road and move with the same average speed [30]. All vehicles have the same transmission range . If the distance between two nodes is less than , they can communicate with each other directly and are called each other's one-hop neighbor or neighbors. If two nodes (we use "vehicle" and "node" interchangeably throughout this paper) cannot communicate directly but have a same neighbor, they can communicate through the two-hop communication and are called each other's two-hop neighbor. Each node transmits the message with the same power . Let denote the instantaneous received power at a receiving node. If is equal to or greater than a threshold value, denoted as , the packet can be successfully decoded at the receiver; otherwise, the packet cannot be decoded at the receiver.
Each vehicle is equipped with a Global Positioning System (GPS) receiver, and time is synchronized with the aid of GPS. If the GPS signal is lost, other distributed schemes can be used to synchronize vehicles [20]. In the system, channel time is partitioned into frames consisting of equal time slots, as shown Figure 1. Each node maintains two sets of neighboring nodes: one-hop set (OHS) and two-hop set (THS) according to the frame information (FI) exchanged among its one-hop neighbors. The OHS or the THS is a group of vehicles that can communicate with each other with maximum one-hop or two-hop communication, respectively. To avoid hidden/exposed node problems, nodes in the same THS are not allowed to reserve the same slot. Hence, before reserving a slot, a node must listen to the channel for at least consecutive slots (not necessarily in the same frame). As shown in Figure 2, each node transmits its one-hop neighbors' IDs, and their reserved slots in the FI are contained in the header of a packet. Thus, by listening to the channel, a node can get its THS neighbors' IDs and their reserved slots and then choose one unreserved slot to access. A node releases its time slot if it fails to detect its ID in FIs from at least one of its one-hop nodes [7]. Several helpers are selected to rebroadcast the packet to the failed nodes with the source node cooperatively. Thus, they form a multiple-input multiple-output (MIMO) system. Here, we do not consider coding gain and only focus on power gain of the cooperative MIMO. Then, the MIMO transmission can be seen as several multiple-input single-output (MISO) transmissions. Assuming a binary phase-shift keying (BPSK) modulation scheme, the average bit error rate (BER) in a Rayleigh fading channel for a maximal-ratio-combing (MRC) receiver with m-branch diversity is given by [31]: where ̅ is the average signal noise ratio (SNR) per link. Then, success probability of a μ bit length packet can be calculated by: and the packet error rate is:

Repetition-Based Cooperative Broadcasting Scheme
In this section, we discuss the detail operations of the RBCB scheme. As shown in Figure 3, the RBCB scheme consists of three phases: initial broadcasting, helper selection, and cooperative rebroadcasting. First, in the initial broadcasting phase, the source node broadcasts the safety message along with the cooperation pattern to its neighboring nodes. Then, in the helper selection phase, the best helpers are selected according to the number of target nodes they can help and the distance to the target nodes. Finally, in the cooperative rebroadcasting phase, the selected helpers and the source node rebroadcast the safety message together in the source node's following slots.

Initial Broadasting
When a vehicle on the road detects a dangerous or emergency situation, the corresponding application installed on the OBU of the vehicle generates a safety message immediately, referred to as labeled packet, and the vehicle becomes the source node of broadcasting, denoted as . Then, the source node broadcasts the labeled packet to its one-hop neighbors in its own time slot. Due to channel errors, some nodes in OHS of fail to receive the labeled packet after broadcasting, while the other nodes in OHS of receive and decode the labeled packet successfully. The nodes that receive and decode the labeled packet successfully can help rebroadcast it to the nodes that fail to receive it along with . The nodes that fail to receive the labeled packet become the target nodes of rebroadcasting. In addition, each labeled packet has a liftetime, denoted as . If the packet delay is larger than , the message in the labeled packet will not be valid anymore. Thus, rebroadcasting of the labeled packet should be done in its lifetime.
To perform the cooperative rebroadcasting, the source node broadcasts the cooperation pattern along with the safety message in the labeled packet to its one-hop neighbors. The cooperation pattern contains the IDs of the predicted target nodes, the required number K of helpers, and the required times of retransmission. Usually, the method to find out which nodes do not receive the labeled packet after broadcasting relies on ACKs or negative acknowledgements (NACKs) sent back by the nodes in OHS of [20,29]. However, the introduction of an ACK/NACK mechanism inevitably incurs extra delay, which is not suitable for safety messages with the strict delay demand. Therefore, we propose a hidden-Markov-model (HMM)-based method to predict the target nodes, i.e., the nodes that most likely fail in receiving the labeled packet. Let denote the set of the predicted target nodes.
As shown in Figure 4, a hidden Markov model consists of a hidden Markov sequence , , , … , and an observation sequence , , , … , , where is the length of observation [32][33][34]. The hidden Markov sequence is used to describe the state transition of the fading channel, while the observation sequence is used to describe the reception result of packets. The fading channel has states [35][36][37]: , , ⋯ , . is used to denote the state transition matrix of the fading channel. If the channel is in state during the current slot, it will either stay in state with probability or move to state during its own slot in the next frame with probability . Thus, is: ...  The observation sequence has two states: successful and failed. is used to denote the observation probability matrix of the reception result of packets. If the channel is in state during the current slot, the reception result of the packet is either successful with probability or failed with probability . Thus, is: In addition, is used to denote the initial state distribution of the channel state, , , ⋯ , , where , , ⋯ , represent the probabilities that the initial state of channel is , , ⋯ , respectively. Therefore, a hidden Markov model λ can be described by a three-tuple, λ , , .
For any node in the network, it measures the received power of the packet when it receives a packet from its neighbors. The received power is divided into levels, , , ⋯ , . If , the channel state during the current slot is set to , and the reception result of the packet is failed (i.e., 0, 1); if ,1 1, the channel state during the current slot is set to , and the probability that the packet is successfully received is ; if , the channel state during the current slot is set to , and the reception result of the packet is successful (i.e., 1, 0). For any neighbor, say , node can get an observation sequence during an observation period, i.e., frames, since node sends a packet during its slot in every frame. Then, node uses the Baum-Welch algorithm [32][33][34] to construct the corresponding hidden Markov model λ based on the observation sequence . Finally, node can calculate the probability that the packet from node is successfully received during slot in the 1 ℎ frame.
Suppose that the channel state is during the slot in the ℎ frame and changes to during the slot in the 1 ℎ frame. can be calculated as: where denotes the probability that the observation result is under the channel state during the slot in the 1 ℎ frame.
In slot in the 1 ℎ frame, node transmits to node along with the payload. For the source node, it knows all the probabilities that the packet will be successfully receivd by its neighbors. These probabilities are calculated by the neighbors and are sent to the source node before broadcasting. If a probability is smaller than a threshold , the source node adds the ID of the corresponding node into the set of the predicted target nodes. When its slot comes, the source node broadcasts the set along with the safety message.

Helper Selection
After initial broadcasting, some nodes in OHS of the source node receive and decode the labeled packet successfully, while other nodes do not receive the labeled packet because of channel errors and become target nodes of rebroadcasting. The nodes that have successfully received and decoded the packet can help rebroadcast the labeled packet to the target nodes. A node can be a potential helper when it meets two conditions:


It has received and decoded the packet successfully.  Collisions will not occur if it transmits in the source node's slot.
Condition (1) is easily understood, because a node can be a potential helper only when it has received and decoded the packet successfully. However, why is condition (2) still needed? As shown in Figure 5, nodes B and D are the one-hop neighbors of node A. Node F is a two-hop neighbor of node D, and its position is beyond node A's 2 range. Thus, nodes F and A can reserve the same slot. If node D is selected as the helper and transmits a packet in node A's slot, a collision will happen on node E, because nodes F and D transmit in the same slot. Thus, node D cannot be selected as the potential helper. Therefore, when a node receives the labeled packet successfully, it first checks whether any node in its THS occupies the same slot with the source node. If no, it becomes a potential helper and will contend to be a helper in the following 1 slots. Let ℋ and denote the set of potential helpers and the set of target nodes, respectively. For the source node, it is impossible to know which node will fail in reception before broadcasting. Thus, the source node broadcasts the predicted set of the target nodes to its neighbors, as described in Section 4.1. For any potential helper ℎ in set ℋ, it gets set when it receives the labeled packet. For any node in set , ℎ calculates the probability that the packet is successful received by node during the next slot, as described in Section 4.1. If , ℎ can be a helper of . Node is added into the set of the target nodes that ℎ can help. In the coming slot of ℎ, it sends a request for cooperation (RoC) in the header of the packet, which contains the request for cooperation, the set of the target nodes that it can help, and its instant position. In the following 1 slots after the initial broadcasting, all potential helpers have the opportunities to access the channel and send their RoC messages to the source node. When the source node receives the RoC messages from all potential helpers, an algorithm based on the number of the target nodes a helper can help and the distance to the target nodes runs on the source node to select the best helper. A potential helper is considered as the best helper if it can successfully deliver the packet to the largest number of target nodes and if it is nearest to the mean position of the target nodes. In Algorithm 1, |ℋ| and denote the number of potential helpers in set ℋ and the number of predicted target nodes in set . , ,⋯, |ℋ| denote the set of target nodes that each potential helper can help, and , , ⋯, ⌈ℋ⌉ denote the distance between each potential helper and the mean position of the target nodes. ℋ is the output of the algorithm, i.e., the selected best helper. The source node can use Algorithm 1 to select the K best helpers.

Cooperative Rebroadcasting
In the next slot of the source node, the source node transmits an acknowledge for cooperation (AoC) at the beginning of the slot. The AoC message indicates the ID of the selected helpers and the time to cooperate. Then, in the remaining part of the slot, the selected helpers retransmit the packet with the source node cooperatively, as shown in Figure 6. If there is no helper, the source node retransmits the packet in its slot alone. Then, the cooperative retransmission goes back to the original way of repetition-based broadcasting. The cooperative broadcast is performed

Performance Analysis
In this section, we analyze the performance of RBCB scheme over the Rayleigh fading channel in terms of packet delivery probability (PDP) and average packet delay (APD). The packet delivery probability is defined as the probability that a node within the target region successfully receives a packet from the source node [38]. The average packet delay is defined as the average number of slots between a packet's generation and the time when it is cleared from the buffer of the source node.

Packet Delivery Probability
It is assumed that the distance between two adjacent vehicles on the road follows an exponential distribution [39,40]. Let denote the density of vehicles. Then, the number of vehicles over a length of road follows a Poisson distribution, and the probability is calculated as: , Let denote the number of nodes in OHS of the source node. Then, the probability distribution function (pdf) of is given by: According to (2), a node in OHS of the source node receives a packet with the probability 1 during a slot. Let denote the number of nodes that receive the packet successfully. Given , follows a binomial distribution and its conditional pdf is given by: In (9) Let denote the probability that a node that successfully receives the packet becomes a potential helper. That means the node does not have any two-hop neighbors that reserve the same slot as the source node. Let denote the number of potential helpers. Given , follows a binomial distribution and its conditional pdf is given by: is used to denote the event of existence of helpers. From (9)-(11), the probability of the existence of helpers is given by: In (12), the value of for each node depends on its position. As shown in Figure 7, the 2 range of the helper can be divided into two parts: and . The nodes in range are also in 2 range of the source node. Thus, they do not have the same slot with the source node according to the channel access rules (Section 3). Meanwhile, the nodes in range may occupy the same slot with the source node. Let and denote the number of nodes in range and , respectively. Let denote the available slots for the nodes in range . is used to denote the event that the nodes in range do not have the same slot with the source node. Given , , the probability of is: Let denote the length of range , then the length of range is 2 . From (7), the probabilities of and can be calculated as: Pr , ! , 0,1,2, ⋯.
From (13)- (15), the probability that a node that has received the packet becomes a potential helper can be calculated as: From (2), the packet delivery probability for once direct broadcasting is given by: For once cooperative broadcasting, the packet delivery probability can be calculated as: For the original repetition-based broadcasting (RBB) scheme, a packet is broadcasted times by the source to its neighbors within the lifetime of the packet. Hence, the overall packet delivery probability of RBB scheme is given by: For the proposed repetition-based cooperative broadcasting scheme, the overall packet delivery probability is given by:

Average Packet Delay
In order to derive the average packet delay of RBCB scheme, we model the packet transmission process on each node as a Markov chain. Let represent the length of the first-input-first-output (FIFO) buffer on each node. is used to describe the state of buffer, i.e., packets are waiting in the buffer. The total number of broadcasting is , which means a packet exists in the buffer frames before it is cleared. We set the observation point at the end of the considered node's slot every frames. Therefore, the buffer has states ( ,0 1). The one step transition matrix of the buffer state is given by (21), where is the probability of packet arrivals between two adjacent observation points. This Markov chain has the unique stationary distribution [41]. is used to denote the steady state probability of .
We model the packet generation process as a Poisson process. The probability of generating packets during a period is given by: where is the number of packet arrivals per unit time. Let denote the number of packet arrivals during consective frames. Then, in (21) is given by: The delay of a packet is defined as the time between this packet's generation and the time when it is cleared from the buffer in terms of time slot.
is used to represent the event that a generated safety message packet enters the buffer successfully. Let denote the event that the considered packet is generated in the ℎ slot within the current frames ( successive slots). Before the generation of the considered packet, there are total packets in the buffer under state . The considered packet is the 1 th packet in the buffer, 1. is used to denote this event. According to [41], the average packet delay can be calculated by: where is the probability that a generated packet enters the buffer successfully, and , is the probability of 1, 1 packet arrivals during the first 1 slots within the current frames. ,

Numerical Results
In this section, we evaluate the performance of RBCB scheme. The simulations were conducted with MATLAB and PTV VISSIM. PTV VISSIM is a well-knonw vehicle traffic simulator [42]. We used PTV VISSIM to simulate the mobility of vehicles in the simulation scenario. Here, we consider a highway scenario, where vehicles move on the road with the same mean speed. The speed of vehicles follows a normal distribution with mean 100 km distributed along the road following a Poisson distribution. Then, the mobility traces of vehicles were input into MATLAB. MATLAB was used to simulate the wireless channel and the operations of broadcasting schemes. We adopted the Rayleigh fading channel during the simulations, and the fading was assumed to be constant within each time slot (block fading) [41]. The parameters of simulations are shown in Table 1. The performance of RBCB scheme is compared with RBB scheme in terms of packet delivery probability for once broadcasting, overall packet delivery probability, and average packet delay.  Figure 8 illustrates the PDPs of RBB and RBCB schemes for once broadcasting. In Figures 8 and  9, the number of helpers is set to one. In Figure 8a, the transmission range is set to 200 m, and the density of vehicles is changed from 0.02 vehicles/meter (v/m) to 0.04 v/m, while in Figure 8b, the density of vehicles is set to 0.02 v/m, and the transmission range is changed from 200 m to 300 m. According to Figure 8, the PDP of RBCB for once broadcasting is significantly improved compared to RBB scheme. Furthermore, the PDP of RBCB for once broadcasting is even greater when the density of vehicles is 0.04 v/m (Figure 8a) or the transmission range is 300 m (Figure 8b). This is because an increase in vehicle density or transmission range raises the number of potential helpers, which means the probability of cooperative broadcasting is also increased. In addition, the PDPs of RBCB and RBB schemes for once broadcasting are almost 0, when the signal noise ratio is 15 dB. This is because almost no nodes can receive the packet when the channel is very poor. Thus, no potential helpers exist, and the probability of cooperative rebroadcasting is very small. Figure 9 plots the overall PDPs of RBCB and RBB schemes. In order to meet the required PDP, a packet may need to be broadcasted more than one time. Here, the required PDP is set to 0.95, when the signal noise ratio is 30 dB. In order to meet the required PDP, the labeled packet is broadcasted three times for RBB scheme, while it is just broadcasted two times for RBCB scheme. Even so, the PDP of RBCB is still greater than that of RBB, because cooperative rebroadcasting significantly improves the PDP for once broadcasting.   Figure 10 shows the comparison of the average packet delay of RBB and RBCB schemes. In Figure 10, the number of helpers is set to one. It is observed that the average packet delay of RBCB is shorter than that of RBB. This is because the cooperative broadcasting decreases the times of broadcasting it needs to meet the required packet delivery probability. For RBB, it needs three times of broadcasting to meet the required packet delivery probability, while for RBCB, it just needs two times of broadcasting to meet the required packet delivery probability. Thus, the delay that a packet waits in the buffer of the source node is significantly decreased. Furthermore, the improvement is more significant when the traffic load is medium. The reason is as follows. When the traffic load is low, both RBB and RBCB schemes can transmit the packets in time, and then few packets wait in the buffer. When the traffic load is medium, the buffer congestion of RBCB is better than that of RBB, and the waiting time in the buffer of the source node becomes shorter. When traffic load is high, both RBB and RBCB schemes cannot handle the overwhelming packets. Figure 11 illustrates the success probabilities 1 for RBB and RBCB schemes. From Figure 11, we can see that the success probability under the Rayleigh channel increases with the number of branches. Figure 11 matches Equation (2) very well. Figure 12 compares the probabilities that a node that has successfully received the packet becomes a potential helper for RBB and RBCB schemes. From Figure 12, we can see that decreases with the number of helpers. Therefore, Figures  11 and 12 show that, although the increase in the number of helpers can raise the success probability for once broadcasting, it decreases the probability of the occurrence of the cooperative broadcasting at the same time. Thus, we should carefully choose the number of helpers.    Figures 13 and 14 are the same. When the SNR is small, the PDPs for K = 1 are higher than that for K = 2. When the SNR becomes greater, the PDPs for K = 2 become higher than that for K = 1. The reason is as follows. When the SNR is low, the probability of the occurrence of the cooperative broadcasting for K = 2 is much smaller than that with K = 1. Although the success probability for once broadcast for K = 2 is greater than that for K = 1, the PDPs of RBCB are still lower than those of RBB. When the SNR is high, the probability of the occurrence of the cooperative broadcasting for K = 2 is close to that for K = 1. Therefore, the PDPs for K = 2 become greater than those for K = 1.

Conclusions
In this paper, we propose a repetition-based cooperative broadcasting scheme for safety applications in VANETs. The RBCB scheme enables the selected helper vehicles to perform the cooperative rebroadcasting along with the source vehicle during the source vehicle's slot in order to increase the transmission reliability of safety messages and reduce rebroadcasting times. The performance of RBCB scheme is mathematically analyzed in terms of packet delivery probability and average packet delay. Moreover, extensive simulations are conducted to evaluate the performance of RBCB scheme. Both mathematical analysis and simulation results demonstrate that RBCB scheme significantly improves the packet delivery probability and decreases the average packet delay.

Conflicts of Interest:
The authors declare no conflict of interest.