# A Data Age Dependent Broadcast Forwarding Algorithm for Reliable Platooning Applications

Authors: Marcus Larsson; Magnus Jonsson; Fredrik Warg; Kristian Karlsson
Journal: Mobile Information Systems
 (2016)

---

## Abstract

We propose a broadcast message forwarding algorithm for V2V communication in a platooning scenario for heavy duty trucks. The algorithm utilizes link information, which is piggybacked on the original data packet, to estimate which nodes are best suited to forward the packet. The aim is to reach all nodes in the platoon with as few forward messages as possible in order to avoid channel congestion. The algorithm is evaluated by simulation using real world V2V measurement data as input. We show that the algorithm performs almost as good as two ETSI standardized forwarding algorithms with respect to keeping the data age for the entire platoon at a low level. But when it comes to keeping the message intensity low, our algorithm outperforms the better of the ETSI algorithms by 35%.


---

## Body

## 1. Introduction

The emerging field of Intelligent Transport Systems (ITS) shows potential of improving traffic safety, decreasing traffic congestion, and lowering the environmental impact from the transport sector. Several ITS applications have been suggested, for example, increased awareness [1], macro level control of traffic signals [2], and platooning [3]. By letting road users collect position and intentions, using vehicle to vehicle (V2V) communication, from surrounding road users and store this information in local dynamic maps (LDM), the overall safety can be increased due to a higher level of awareness. These LDMs can be shared within a macro perspective ITS system and a control system could potentially handle traffic flows in such a way that congestion can be avoided and overall traffic throughput can be increased. When avoiding traffic congestions, the environment will benefit by reducing fuel consumption per distance. Another ITS way of reducing environmental impact is platooning, where vehicles drive with short intervehicle distance in a highly automated fashion with the main purpose of decreasing fuel consumption [4]. This reduction is achieved by the reduced air drag by keeping short intervehicle distance.In order to make safe and efficient platooning possible, the dynamic behavior of the vehicles needs to be shared among the participating vehicles enabling reaction on intended action rather than on measured speed changes of the preceding vehicle. This information sharing can be realized by using V2V communication based on IEEE 802.11-2012 [5] at the 5.9 GHz band dedicated for wireless access in vehicular environments.Communication at 5.9 GHz is challenging due to the poor multipath properties in some environments leading to shadowing effects in platoons consisting of trucks with, for example, large metallic containers. The shadowing affects the link budget and results in increased packet error rate (PER) in the communication. Therefore, approaches to mitigating poor communication are necessary and such approaches can be, for example, the choice of antennas and their placement on the trucks and forwarding algorithms. Forwarding algorithms enable the possibility for other nodes in the ad hoc network to relay information from the original sender according to a predefined rule. This increases the likelihood of successful transmission to vehicles in shadowed regions or to vehicles that are out of range of the original sender.In this paper, we propose a broadcast forwarding algorithm that utilizes link information to estimate the next forwarder. We call this the Data Age Dependent (DAD) forwarding algorithm. An evaluation of the DAD forwarding algorithm is performed and compared to an earlier suggested algorithm [6] and two algorithms standardized by ETSI. We show that our proposed forwarding algorithm performs well in comparison, when considering the combined requirements on low data age and low message intensity.The rest of the paper is organized as follows. Section2 positions the paper among related works, followed by Section 3 where the forwarding algorithms are presented. In Section 4, measurements are presented and, in Section 5, the simulator setup is given. A performance evaluation is presented in Section 6 and the paper is closed with conclusions in Section 7.


## 2. Related Works

The performance of V2V communications based on IEEE 802.11-2012 [5] dedicated for wireless access in vehicular environments, formally known as the “802.11p” standard, has been theoretically evaluated in [7–9], which all came to the conclusion that safety related V2V communication based on this standard is feasible in medium dense networks and a communication range of up to a few hundred meters.Several real world measurements have been performed to evaluate the physical behavior of the channel. In [10], the performance of V2V communication in a non-Line Of Sight (LOS) platooning scenario has been analyzed and indicates strongly that problems occur when the LOS is obstructed. Also, in [11], the problems concerning the LOS in a street intersection where the surrounding buildings create a non-LOS condition have been measured and analyzed showing that the communication improves significantly when LOS is achieved.In [12], a simulation study of an optimal dissemination strategy for accident warning is performed. The relay node is chosen with the objective to have the farthest spanning, meaning that the node which can reach the most new nodes shall be the one to relay. The algorithm uses what the authors calloracle messages containing information on, for example, position, which are broadcasted separately, that is, not part of any other messages such as CAM. Like in our algorithm, each node collects information about which other nodes it can reach and uses this information in the forwarding decision.


## 3. Message Forwarding Algorithms

The main objective of using message forwarding algorithms is to increase the probability of having successful communication; that is, a message reaches its intended receivers. If processing power and bandwidth are unlimited, then every node could repeat every incoming message; however, both processing power and bandwidth are limited. The V2V communication based on IEEE 802.11-2012 uses a contention based MAC method, that is, CSMA/CA. This means that all nodes within the ad hoc network share the same bandwidth and only one node can transmit at the time. When traffic is increased to a certain level, by new nodes joining the network or nodes repeating too many messages, the channel will start experiencing delays caused by the MAC layer and eventually the channel will suffer from starvation which will lead to poor communication [13].The goal of a forwarding algorithm in a platooning application is to increase the overall level of up-to-dateness of the information in the platoon, that is, keeping the overall data age of the information in the platoon as low as possible. It is also necessary to achieve this with as low overhead as possible since the bandwidth is limited and all nodes in the ITS environment compete for the same bandwidth. This implies that the forwarding algorithm shall reach as many nodes as possible by using as few extra transmissions as possible.In the following subsections, four forwarding algorithms are presented. They are as follows: two ETSI specified algorithms, the reachability matrix introduced in [6], and the DAD forwarding algorithm proposed in this paper. These four algorithms will be compared to broadcast which we use as basis for comparison where no forwarding is performed.


### 3.1. Broadcast

This is the case where each node transmits its packet and no forwarding or repetition is performed. The other nodes either receive the message or do not receive the message. This is the normal case to which the forwarding algorithms are evaluated.


### 3.2. ETSI ITS-G5 Simple GeoBroadcast Forwarding Algorithm with Line Forwarding

This forwarding algorithm [14] has the goal of reaching all nodes within a predefined geographical area. In this setup, all nodes transmit their messages according to Section 3.1, but when a message is received and the receiving node is within the predefined geographical area, the message shall be repeated by the receiving node. This implies that there is a higher probability of covering the predefined geographical area, where the geographical area is defined to cover the entire platoon at all times in our implementation.


### 3.3. ETSI ITS-G5 Contention Based Forwarding Algorithm for GeoBroadcast

This algorithm [14] assumes that the node that is furthest away from the sending node has the highest probability of reaching the most additional nodes; hence, this node is chosen to be the one to relay the message. The algorithm works as follows:(i)
When a receiving node receives a message, it calculates a waiting time that is inversely proportional to the distance to the sending node. This means that the node that is furthest from the sender will have the shortest delay before relaying the message.
(ii)
If the receiving node does not hear a relay of the message during its waiting time, then it will relay the message. If it, on the other hand, hears a relay of the original message, then it will not relay the message.By following this algorithm, the message intensity will be kept lower than the other (Section 3.2) ETSI standardized algorithm.


### 3.4. Reachability Matrix Algorithm

In a previous paper [6], we suggested the reachability matrix algorithm that basically adds a bit-vector of information to all outgoing messages. This bit-vector contains information on the communication quality of the platoon, perceived by the sending vehicle. When a message is received, the bit-vector is extracted and imported into what we call thereachability matrix. Using this matrix, the receiving node calculates a reachability number that states how many additional nodes could potentially be reached if the receiving node forwards the message. Based on the reachability number, a waiting time, analogous to the second ETSI algorithm (Section 3.3), is calculated. But, in this case, it is not the distance from the sender that is base for the waiting time, it is the value of the reachability number; the higher the value, the shorter the waiting time. The assumption is that it is the node that has the highest probability, based on previous communication, of reaching the most additional nodes that shall forward the message.


### 3.5. Data Age Dependent Forwarding Algorithm

The idea behind the DAD forwarding algorithm is that a nodeα can make a better forwarding decision, if it has knowledge of which communication pairs in the platoon are likely to have successful communication. That is, if a node α has knowledge of which other nodes in the platoon it can hear, hence having successful communication, and if it also has knowledge of which nodes have likely heard the original sender β of an incoming message to node α, then node α can estimate if any other nodes in the platoon would benefit if it forwards the message. In order to enable this functionality, we need to distribute what we call thereachability information. In the DAD forwarding algorithm, the reachability information consists of timestamps describing at what time the latest successful transmission was achieved from one node β to another node α. These timestamps are collected in thereachability matrix and stored in each node in the platoon. At each sending event in each node, the reachability matrix is attached to the outgoing message; that is, no extra transmissions are performed in order to distribute the reachability information. The attached reachability matrix is, at reception of a message, compared to the reachability matrix stored locally and the local matrix is updated with new timestamps for the ones being more up to date. If the receiving node α estimates that additional nodes in the platoon can benefit if α forwards the message, then α will forward the message. More details on how this estimation is calculated are discussed below.At each reception of a message in nodeα from node β, the reachability matrix A, of size N
×
N, where N is the number of vehicles in the platoon, is updated according to Algorithm 1. All elements of the reachability matrix stored in A are compared to all elements of the matrix transmitted from node β, denoted by A
′, except for the element corresponding to the communication from β to α. For each timestamp in A
′ being more up to date than the corresponding timestamp in A, the timestamp in A is updated using the timestamp in A
′. Lastly, the element corresponding to β transmitting to α is updated with the current time, since this value is obviously up to date due to the fact that α received the message from β.Algorithm 1:Updated reachability matrix.
(
1
)
for
i = 1 to N
(
2
)
for
j = 1 to N
(
3
)
if
A
′
i
,
j
>
A
i
,
j
(
4
)
and
!(i == j)
(
5
)
and
!((j ==β)
and
(i ==α))
(
6
)
A
i
,
j
=
A
′
i
,
j
;
(
7
)
end if
(
8
)
end for
(
9
)
end for
(
10
)
A
α
,
β
= t;In order for the receiving nodeα to estimate if it shall forward the message, the procedure described in pseudocode in Algorithm 2 is performed. First, Algorithm 1 is executed immediately followed by Algorithm 2. The first step of Algorithm 2 determines if the receiving node α has had more recent, including a hysteresis, communication than β from the other nodes. If this is so, then the reachability number R is increased. If it is estimated that α have had more recent communication with other nodes in the platoon than β, hence, the reachability number is larger than zero; then a timeout that is inversely proportional to the reachability number is calculated. During the wait time, d, the α-node is listening and if forwarded message is received from any other node, the α-node will recalculate its R value, by running Algorithm 2 again, in order to estimate if additional nodes can be reached. If no forwarded message is received, node α will forward the message and by this probably extend the number of nodes that receives the message from node β. The parameters for the two algorithms are summarized in Table 1.Table 1
Parameters for the reachability matrix algorithm.
Parameter
Description
N
Number of vehicles in the platoon
t
Current time
A
Reachability matrix
α
Index of local node
β
Index of source node for incoming message
R
Forward reach number
d
Wait time
τ
Adjustable time parameter
h
HysteresisAlgorithm 2:Forwarding decision.
(
1
)
R = 0;
(
2
)
Flag = 0;
(
3
)
for
i = 1 to N
(
4
)
if
i ≠
α  and
i ≠
β  and
Ai,
α
< Ai,
β
+ h
(
5
)
R = R + 1;
(
6
)
end if
(
7
)
end for
(
8
)
if
R > 0
(
9
)
d = (N–1–R) *  τ;
(
10
)
Flag = 1;
(
11
)
end if
(
12
) timeout = t + d;
(
13
)
while
(t < timeout)
(
1
4)
if
(Forward Received)
(
15
)
Flag = 0;
(
1
6
)
end if
(
1
7
)
end while
(
1
8
)
if
Flag
(
1
9
)
Transmit Forward;
(
20
)
end ifTo achieve the above described system, a number of assumptions have to be made. It is assumed that the clocks in the vehicles are synchronized with enough accuracy so that the synchronization error is kept small compared to, for example, the time delay caused by a dropped packet. Of more general character, it is assumed that the order and organization of the platoon are managed by an upper layer platooning application which enables the DAD forwarding algorithm to get a consistent view of the order of the platooning members. This kind of functionality, for example, joining, leaving, and reordering the platoon, is out of the scope of this paper; if this information is not available to the DAD forwarding algorithm, it will not be able to operate properly.The defining difference of the DAD forwarding algorithm compared to our previous algorithm is that the precision of the transmitted information is increased by sending the full matrix, thereby spreading reachability information more efficiently among the nodes. This, of course, translates into larger overhead in each message. In the previous algorithm, a platoon withN vehicles required only N
-
1 bits of extra information in each message. With the DAD algorithm, it requires N
2
-
N
b
t
s bits, where b
t
s is the number of bits in a timestamp. While this may seem like a big increase, we argue that the overhead is still manageable in practical applications with some clever coding of the timestamps. For instance, consider a platoon with N
=
8 vehicles sending messages at 10 Hz. With a time resolution of 100 ms and a maximum measurable age of 800 ms (older values will have the value of 800 ms), b
t
s
=
3 bits will be enough to encode the timestamp as a negative offset from the time of transmission. This gives a total size of 168 bits, that is, 21 bytes, or 4% of a 500-byte message. With this size of platoons, the resolution can even be increased. An absolute time value, which the relative time stamps refer to, might be needed too, but this is just a single value per message.


## 3.1. Broadcast

This is the case where each node transmits its packet and no forwarding or repetition is performed. The other nodes either receive the message or do not receive the message. This is the normal case to which the forwarding algorithms are evaluated.


## 3.2. ETSI ITS-G5 Simple GeoBroadcast Forwarding Algorithm with Line Forwarding

This forwarding algorithm [14] has the goal of reaching all nodes within a predefined geographical area. In this setup, all nodes transmit their messages according to Section 3.1, but when a message is received and the receiving node is within the predefined geographical area, the message shall be repeated by the receiving node. This implies that there is a higher probability of covering the predefined geographical area, where the geographical area is defined to cover the entire platoon at all times in our implementation.


## 3.3. ETSI ITS-G5 Contention Based Forwarding Algorithm for GeoBroadcast

This algorithm [14] assumes that the node that is furthest away from the sending node has the highest probability of reaching the most additional nodes; hence, this node is chosen to be the one to relay the message. The algorithm works as follows:(i)
When a receiving node receives a message, it calculates a waiting time that is inversely proportional to the distance to the sending node. This means that the node that is furthest from the sender will have the shortest delay before relaying the message.
(ii)
If the receiving node does not hear a relay of the message during its waiting time, then it will relay the message. If it, on the other hand, hears a relay of the original message, then it will not relay the message.By following this algorithm, the message intensity will be kept lower than the other (Section 3.2) ETSI standardized algorithm.


## 3.4. Reachability Matrix Algorithm

In a previous paper [6], we suggested the reachability matrix algorithm that basically adds a bit-vector of information to all outgoing messages. This bit-vector contains information on the communication quality of the platoon, perceived by the sending vehicle. When a message is received, the bit-vector is extracted and imported into what we call thereachability matrix. Using this matrix, the receiving node calculates a reachability number that states how many additional nodes could potentially be reached if the receiving node forwards the message. Based on the reachability number, a waiting time, analogous to the second ETSI algorithm (Section 3.3), is calculated. But, in this case, it is not the distance from the sender that is base for the waiting time, it is the value of the reachability number; the higher the value, the shorter the waiting time. The assumption is that it is the node that has the highest probability, based on previous communication, of reaching the most additional nodes that shall forward the message.


## 3.5. Data Age Dependent Forwarding Algorithm

The idea behind the DAD forwarding algorithm is that a nodeα can make a better forwarding decision, if it has knowledge of which communication pairs in the platoon are likely to have successful communication. That is, if a node α has knowledge of which other nodes in the platoon it can hear, hence having successful communication, and if it also has knowledge of which nodes have likely heard the original sender β of an incoming message to node α, then node α can estimate if any other nodes in the platoon would benefit if it forwards the message. In order to enable this functionality, we need to distribute what we call thereachability information. In the DAD forwarding algorithm, the reachability information consists of timestamps describing at what time the latest successful transmission was achieved from one node β to another node α. These timestamps are collected in thereachability matrix and stored in each node in the platoon. At each sending event in each node, the reachability matrix is attached to the outgoing message; that is, no extra transmissions are performed in order to distribute the reachability information. The attached reachability matrix is, at reception of a message, compared to the reachability matrix stored locally and the local matrix is updated with new timestamps for the ones being more up to date. If the receiving node α estimates that additional nodes in the platoon can benefit if α forwards the message, then α will forward the message. More details on how this estimation is calculated are discussed below.At each reception of a message in nodeα from node β, the reachability matrix A, of size N
×
N, where N is the number of vehicles in the platoon, is updated according to Algorithm 1. All elements of the reachability matrix stored in A are compared to all elements of the matrix transmitted from node β, denoted by A
′, except for the element corresponding to the communication from β to α. For each timestamp in A
′ being more up to date than the corresponding timestamp in A, the timestamp in A is updated using the timestamp in A
′. Lastly, the element corresponding to β transmitting to α is updated with the current time, since this value is obviously up to date due to the fact that α received the message from β.Algorithm 1:Updated reachability matrix.
(
1
)
for
i = 1 to N
(
2
)
for
j = 1 to N
(
3
)
if
A
′
i
,
j
>
A
i
,
j
(
4
)
and
!(i == j)
(
5
)
and
!((j ==β)
and
(i ==α))
(
6
)
A
i
,
j
=
A
′
i
,
j
;
(
7
)
end if
(
8
)
end for
(
9
)
end for
(
10
)
A
α
,
β
= t;In order for the receiving nodeα to estimate if it shall forward the message, the procedure described in pseudocode in Algorithm 2 is performed. First, Algorithm 1 is executed immediately followed by Algorithm 2. The first step of Algorithm 2 determines if the receiving node α has had more recent, including a hysteresis, communication than β from the other nodes. If this is so, then the reachability number R is increased. If it is estimated that α have had more recent communication with other nodes in the platoon than β, hence, the reachability number is larger than zero; then a timeout that is inversely proportional to the reachability number is calculated. During the wait time, d, the α-node is listening and if forwarded message is received from any other node, the α-node will recalculate its R value, by running Algorithm 2 again, in order to estimate if additional nodes can be reached. If no forwarded message is received, node α will forward the message and by this probably extend the number of nodes that receives the message from node β. The parameters for the two algorithms are summarized in Table 1.Table 1
Parameters for the reachability matrix algorithm.
Parameter
Description
N
Number of vehicles in the platoon
t
Current time
A
Reachability matrix
α
Index of local node
β
Index of source node for incoming message
R
Forward reach number
d
Wait time
τ
Adjustable time parameter
h
HysteresisAlgorithm 2:Forwarding decision.
(
1
)
R = 0;
(
2
)
Flag = 0;
(
3
)
for
i = 1 to N
(
4
)
if
i ≠
α  and
i ≠
β  and
Ai,
α
< Ai,
β
+ h
(
5
)
R = R + 1;
(
6
)
end if
(
7
)
end for
(
8
)
if
R > 0
(
9
)
d = (N–1–R) *  τ;
(
10
)
Flag = 1;
(
11
)
end if
(
12
) timeout = t + d;
(
13
)
while
(t < timeout)
(
1
4)
if
(Forward Received)
(
15
)
Flag = 0;
(
1
6
)
end if
(
1
7
)
end while
(
1
8
)
if
Flag
(
1
9
)
Transmit Forward;
(
20
)
end ifTo achieve the above described system, a number of assumptions have to be made. It is assumed that the clocks in the vehicles are synchronized with enough accuracy so that the synchronization error is kept small compared to, for example, the time delay caused by a dropped packet. Of more general character, it is assumed that the order and organization of the platoon are managed by an upper layer platooning application which enables the DAD forwarding algorithm to get a consistent view of the order of the platooning members. This kind of functionality, for example, joining, leaving, and reordering the platoon, is out of the scope of this paper; if this information is not available to the DAD forwarding algorithm, it will not be able to operate properly.The defining difference of the DAD forwarding algorithm compared to our previous algorithm is that the precision of the transmitted information is increased by sending the full matrix, thereby spreading reachability information more efficiently among the nodes. This, of course, translates into larger overhead in each message. In the previous algorithm, a platoon withN vehicles required only N
-
1 bits of extra information in each message. With the DAD algorithm, it requires N
2
-
N
b
t
s bits, where b
t
s is the number of bits in a timestamp. While this may seem like a big increase, we argue that the overhead is still manageable in practical applications with some clever coding of the timestamps. For instance, consider a platoon with N
=
8 vehicles sending messages at 10 Hz. With a time resolution of 100 ms and a maximum measurable age of 800 ms (older values will have the value of 800 ms), b
t
s
=
3 bits will be enough to encode the timestamp as a negative offset from the time of transmission. This gives a total size of 168 bits, that is, 21 bytes, or 4% of a 500-byte message. With this size of platoons, the resolution can even be increased. An absolute time value, which the relative time stamps refer to, might be needed too, but this is just a single value per message.


## 4. Measurements

For the evaluation of the forwarding algorithms, real world measurement data was collected in order to produce input data for the simulations. The measurement was performed on a public highway in Sweden, using four heavy duty trucks driving in platooning-like formation. Each node sends data packets and logs incoming packets from all other nodes in the platoon; no forwarding is used. The sent and received packet logs are later used to calculate a moving average packet error rate for each possible communication link within the platoon. These PER values are used as channel model for the simulator described in Section5, allowing us to simulate the effect any forwarding algorithm would have in the same conditions without having to repeat the real world experiment. The highway was surrounded by forest, open fields, and rock walls; there was a wildlife fence approximately nine meters to the right of the lane and a metallic barrier four meters to the left of the lane. The trucks were two Scania tractors at platoon positions V2 and V4, one with a metallic covered semitrailer and one with a tarpaulin covered semitrailer both of length of 18 meters and two rigid Volvo trucks at platoon positions V1 and V3 of length of 9.5 meters; see Figure 1. The vehicles drove in a platooning-like formation with an intervehicle distance of approximately 22 meters using adaptive cruise controls.Figure 1
Order of the platoon and its three communication pairs.For sending, receiving, and collecting communication measurement data, the EVK-3300 Evaluation Kit [15] from Kapsch was used. In each vehicle, two radio nodes were installed and on each of the radio nodes a linearly polarized four-element dipole over ground plane antenna named the Aztec antenna [16] was attached. This antenna has 6 dBi gain in the front and back direction of the truck and −5 dBi orthogonal to the body of the truck. The antennas were mounted on the rear view mirrors of the truck. The nodes were configured to send, receive, and log data at a fixed update rate of 10 Hz and the packet size was set to 500 bytes; for more details, see Table 2.Table 2
Settings during test for the radio nodes.
Parameter
Value
Channel
Control channel (G5CC)
Carrier frequency
5.9 GHz
Tx power
23 dBm
Data rate
6 Mbps
Update rate
10 Hz
Payload
500 bytes
Cable loss
2.5 dB


### 4.1. Measurement Scenario

The measurement was started when the four trucks had entered the highway and were driving in a steady platoon like formation at a speed of 80 km/h. The vehicles drove eight kilometers in the south direction and then the measurement was paused just before the vehicles drove off the highway to turn around, and when the vehicles had created the formation again in the north direction, the measurement was resumed.


### 4.2. Metrics

For the purpose of evaluating the forwarding algorithm, two metrics have been chosen. They are the data age and the message intensity. The data age was first introduced for evaluating V2V communication in a platooning scenario in [17] and the definition is as follows: (1)
T
d
a
t
a
_
a
g
e
=
t
-
t
t
s
L
R
S
±
t
c
l
o
c
k
s
y
n
c
,where t is the current time, t
t
s
L
R
S is the timestamp of the last received sample, and t
c
l
o
c
k
s
y
n
c is the synchronization error because the clocks in the vehicles are not perfectly synchronized, where the unit is second.The message intensity metric is the total number of messages the entire platoon produces during one second, where the unit is messages per second.


## 4.1. Measurement Scenario

The measurement was started when the four trucks had entered the highway and were driving in a steady platoon like formation at a speed of 80 km/h. The vehicles drove eight kilometers in the south direction and then the measurement was paused just before the vehicles drove off the highway to turn around, and when the vehicles had created the formation again in the north direction, the measurement was resumed.


## 4.2. Metrics

For the purpose of evaluating the forwarding algorithm, two metrics have been chosen. They are the data age and the message intensity. The data age was first introduced for evaluating V2V communication in a platooning scenario in [17] and the definition is as follows: (1)
T
d
a
t
a
_
a
g
e
=
t
-
t
t
s
L
R
S
±
t
c
l
o
c
k
s
y
n
c
,where t is the current time, t
t
s
L
R
S is the timestamp of the last received sample, and t
c
l
o
c
k
s
y
n
c is the synchronization error because the clocks in the vehicles are not perfectly synchronized, where the unit is second.The message intensity metric is the total number of messages the entire platoon produces during one second, where the unit is messages per second.


## 5. Simulation Setup

For the evaluation of the DAD forwarding algorithm, a simulator has been developed in Matlab. The simulator consists of two major parts; the first part takes the raw measurement values and processes this to a format suitable for the simulations. It is in the second part the simulation of the communication of the four platooning heavy vehicles is performed.


### 5.1. Preprocessing of the Measured Data

In this part, the raw data from the measurement test application is imported to a Matlab type file format and sorted so that evaluation of all possible communication links can be performed, that is, for communication from truckv
i to v
j; the following four communication links are extracted: left-to-left, right-to-right, left-to-right, and right-to-left. Since the physical surroundings of the highway is changing while the trucks move along their path, the radio environment also changes. In order to catch this behavior and feed it as input to the second part of the simulator, a ten-second moving average of PER values was calculated, referred to as the channel model below. The time of ten seconds has been chosen with respect to the speed of the platoon and the surroundings of the highway giving an estimate of how the channel is changing as the platoon moves along the highway. For the simulation, the first ten seconds are used for initialization in order for the channel model to stabilize.


### 5.2. Simulation of the Communication

The second part of the implementation simulates the forwarding algorithms according to Section3 for a four-heavy-duty-vehicle platoon.The input to the simulator is as follows: number of vehicles, number of radio nodes per vehicle, message update rate, forwarding algorithm, and channel model. Output from the simulator is the message intensity, which is the total number of messages transmitted in the platoon per second, and the data age seen from the last vehicle in the platoon. The reason to choose the data age values seen from the last vehicle is that it is typically more important that the following vehicles are able to react on events caused by the preceding vehicles than the other way around.For the simulation of the forwarding algorithms, the following settings were used. The message update rate was set to 10 Hz, which originates from the maximum update rate for the ETSI standardized Cooperative Awareness Messages (CAM). The number of vehicles in the platoon was set to four (same as in the measurement) and each vehicle had two radio nodes. This configuration was chosen since it corresponds to the maximum available data from the measurements. The moving average PER calculated in the first part of the implementation was used as channel model. Each packet was sent either on the right hand side or on the left hand side of the vehicle, where the side on which the packet was sent on was alternated in a round robin fashion with equal amount of packets on the left and right hand side. For reception, the antennas on both sides of the vehicles were used; that is, a packet is actively sent either on the left or on the right hand side and the packet was either received or not received. If the packet was received, it was received on the left, right, or both sides of the vehicle. Each forwarding algorithm was simulated ten times in order to get averaged results.


## 5.1. Preprocessing of the Measured Data

In this part, the raw data from the measurement test application is imported to a Matlab type file format and sorted so that evaluation of all possible communication links can be performed, that is, for communication from truckv
i to v
j; the following four communication links are extracted: left-to-left, right-to-right, left-to-right, and right-to-left. Since the physical surroundings of the highway is changing while the trucks move along their path, the radio environment also changes. In order to catch this behavior and feed it as input to the second part of the simulator, a ten-second moving average of PER values was calculated, referred to as the channel model below. The time of ten seconds has been chosen with respect to the speed of the platoon and the surroundings of the highway giving an estimate of how the channel is changing as the platoon moves along the highway. For the simulation, the first ten seconds are used for initialization in order for the channel model to stabilize.


## 5.2. Simulation of the Communication

The second part of the implementation simulates the forwarding algorithms according to Section3 for a four-heavy-duty-vehicle platoon.The input to the simulator is as follows: number of vehicles, number of radio nodes per vehicle, message update rate, forwarding algorithm, and channel model. Output from the simulator is the message intensity, which is the total number of messages transmitted in the platoon per second, and the data age seen from the last vehicle in the platoon. The reason to choose the data age values seen from the last vehicle is that it is typically more important that the following vehicles are able to react on events caused by the preceding vehicles than the other way around.For the simulation of the forwarding algorithms, the following settings were used. The message update rate was set to 10 Hz, which originates from the maximum update rate for the ETSI standardized Cooperative Awareness Messages (CAM). The number of vehicles in the platoon was set to four (same as in the measurement) and each vehicle had two radio nodes. This configuration was chosen since it corresponds to the maximum available data from the measurements. The moving average PER calculated in the first part of the implementation was used as channel model. Each packet was sent either on the right hand side or on the left hand side of the vehicle, where the side on which the packet was sent on was alternated in a round robin fashion with equal amount of packets on the left and right hand side. For reception, the antennas on both sides of the vehicles were used; that is, a packet is actively sent either on the left or on the right hand side and the packet was either received or not received. If the packet was received, it was received on the left, right, or both sides of the vehicle. Each forwarding algorithm was simulated ten times in order to get averaged results.


## 6. Performance Evaluation

A summary of the results can be found in Table3, where the data age limit miss ratio is the fraction of communication that has a data age higher than the limit. In our simulations, a limit of 0.2 second has been chosen. The limit is chosen for illustrative purposes and the determination of an application valid limit is left for the control engineers to design, hence, out of the scope of this paper. The hysteresis in Algorithm 2 is set to h = 0.11 s.Table 3
Simulation result.
Forwarding algorithm
⁢0.2 s data age limit miss ratio
[%]
Message intensity[packet/s]
V
1 –V
4
V
2 –V
4
V
3-V
4
Section3.1
17.78
2.71
3.31
40.0
Section3.2
4.90
0.48
0.29
123.5
Section3.3
4.24
0.60
0.41
82.8
Section3.4
10.23
1.97
2.18
48.7
Section3.5
5.13
1.28
1.78
54.0In Figure2, the data age is plotted over elapsed time for the case where no forwarding is performed. The figure indicates that peaks of data age values larger than one second are present. Since the update rate is 10 Hz, this means that more than ten consecutive packets have been dropped. The CDF plot in Figure 3 shows that, for the communication from the first vehicle to the last vehicle, the data age limit is met in only approximately 80 percent of the cases. This poor result can also be seen in the first row of Table 3, where the data age miss ratio shows almost 18% for the V1 to V4 link.Figure 2
Data age plotted over elapsed time for broadcast only, that is, no forwarding, message intensity 40 msg/s, and data age limit set to 0.2 s.Figure 3
CDF plot for broadcast only, that is, no forwarding, message intensity 40 msg/s, and data age limit set to 0.2 s.The performance of the two ETSI forwarding algorithms is shown in Figures4 and 5. For the simple forwarding algorithm, it is seen that performance is good with a miss ratio of less than 5%, but with a high message intensity of roughly 120 and 80 messages per second, respectively.Figure 4
Data age and CDF plots for ETSI simple GeoBroadcast forwarding, each packet repeated once, message intensity 123.5 msg/s, and the data age limit set to 0.2 seconds.Figure 5
Data age and CDF plots for ETSI contention based forwarding, message intensity 82.8 msg/s, and the data age limit set to 0.2 seconds.In Figure6, results from the reachability matrix algorithm presented in [6] are plotted, where it can be seen that the performance, with respect to keeping the data age low, is not as good as the two ETSI algorithms. However, it is better than when only broadcast is used, where an improvement in data age limit miss ratio from 17.78% to 10.23% is observed (see Table 3) with the messages intensity increased only approximately 22%.Figure 6
Data age and CDF plots for the reachability matrix algorithm, message intensity 48.7 msg/s, and the data age limit set to 0.2 seconds.The performance of the DAD forwarding algorithm can be seen in Figure7, where the data age values are pushed down compared to the reachability matrix algorithm. In Table 3 we see that the DAD forwarding algorithm is almost twice as good as the reachability matrix algorithm at meeting the 0.2-second data age limit, where the DAD algorithm consumes only approximately 11% more message per second than the reachability matrix algorithm.Figure 7
Data age and CDF plots for the DAD forwarding algorithm, message intensity 54.0 msg/s, and the data age limit set to 0.2 seconds.


## 7. Conclusions

In this paper, we present the DAD forwarding algorithm utilizing link information in order to select forwarding nodes. The algorithm is designed for message forwarding in heavy duty platooning based on V2V communication. The algorithm has been evaluated against two ETSI standardized algorithms and our previously suggested algorithm, that is, the reachability matrix algorithm.We show that the DAD forwarding algorithm performs better than both the two ETSI standardized forwarding algorithms and the reachability matrix algorithm with respect to the combination of keeping the overall data age low and also keeping the message intensity low. The DAD forwarding algorithm improves a 0.2 second data age limit miss ratio, from 17.78% to 5.13%, while only increasing the message intensity by 35% compared to the case where no forwarding is performed.The simulation also shows that the ETSI forwarding algorithms perform well, with respect to keeping the data age at a low level, but create an unnecessary high message intensity.



---

*Source: 7489873-2016-04-27.xml*