A novel algorithm to form stable clusters in vehicular ad hoc networks on highways
© Rawashdeh and Mahmud; licensee Springer. 2012
Received: 25 November 2010
Accepted: 16 January 2012
Published: 16 January 2012
Clustering in vehicular ad hoc networks (VANET) is one of the control schemes used to make VANET global topology less dynamic. Many of the VANET clustering algorithms are derived from mobile ad hoc networks (MANET). However, VANET nodes are characterized by their high mobility, and the existence of VANET nodes in the same geographic proximity does not mean that they exhibit the same mobility patterns. Therefore, VANET clustering schemes should take into consideration the degree of the speed difference among neighboring nodes to produce relatively stable clustering structure. In this paper, we introduce a new clustering technique suitable for the VANET environment on highways with the aim of enhancing the stability of the network topology. This technique takes the speed difference as a parameter to create relatively stable cluster structure. We also developed a new multi-metric algorithm for cluster-head elections. A simulation was conducted to evaluate our method and compare it with the most commonly used clustering methods. The simulation results show that our technique provides more stable cluster structure on the locale scale which results in a more stable network structure on the global scale. The proposed technique reduces the average number of clusters changed per vehicle by 34-46%, and increases the average cluster lifetime by 20-48% compared to the existing techniques.
Recent advances in wireless networks have led to the introduction of a new type of networks called vehicular ad hoc networks (VANETs). This type of networks has recently drawn significant research attention since it provides the infrastructure for developing new systems to enhance drivers' safety [1–3]. Equipping vehicles with various kinds of sensing devices and wireless communication capabilities help drivers to acquire real-time information about road conditions allowing them to react on time. For example, warning messages sent by vehicles involved in an accident enhances traffic safety by helping the approaching drivers to take proper decisions before entering the crash dangerous zone [4, 5]. Moreover, information about the current transportation conditions facilitate driving by taking new routes in case of congestion, thus saving time and adjusting fuel consumption [6, 7]. In addition to safety concerns, VANET can also support other non-safety applications that require a quality of service (QoS) guarantee. This includes Multimedia (e.g.,audio/video) and data (e.g., toll collection, internet access, weather/maps/information) applications.
Vehicular ad hoc networks (VANETs) are characterized by high vehicle mobility. Due to high mobility, VANET topology changes rapidly, thus, introducing high communication overhead for exchanging new topology information [8, 9]. Several control schemes for media access and topology managements have been proposed [8, 10, 11]. One of these schemes is establishing a hierarchical clustering structure within the network. The clustering allows the formation of dynamic virtual backbone used to organize media access, to support QoS and to simplify routing [8, 12]. Mainly, nodes are partitioned into clusters, each with a cluster head (CH) node that is responsible for all management and coordination tasks of its cluster.
Ensuring stability is the major challenge for clustering algorithms especially in a highly dynamic environment. Thus, efficient clustering algorithms should not only focus on forming a minimal number of clusters as many existing algorithms do, but also maintain the current cluster structure and keep the overhead at the minimum level. Most of the existing VANET clustering algorithms are derived from the MANET clustering schemes [8, 13–17]. However, these algorithms lack a technique to capture the mobility characteristics of VANET nodes and fall in a major drawback of forming clusters considering only position and direction of vehicles located in geographic proximity regardless of their high relative speed. We believe that the existence of group members in the same geographic area does not mean that they exhibit the same mobility patterns, e.g., vehicles on the left lanes move faster than the vehicles on the right lanes, and thus their relative speed might be very high.
Since the main goal of clustering is to make global topology less dynamic, we believe that, changes in the network topology on the global scale are directly related to the stability of local clustering structure. Therefore, in order to enhance their stability, clustering models need to be redefined so that they are characterized based on the full status elements: speed difference, location, and direction rather than considering only position and direction. Some clustering techniques took mobility into consideration for cluster head (CH) elections, but not for cluster formation. For example, when the CH leaves its cluster due to merging with other clusters or mobility, the cluster members use a CH election algorithm that considers mobility to elect a new CH out of the cluster members .
In this work, we introduce a new clustering approach with the aim of increasing the stability of the network topology and making it less dynamic. This approach takes the speed difference, in addition to the location and direction, into consideration during the clustering process. But, with the inclusion of the speed difference as a new parameter, a new challenge arises as follows: how to partition the network into minimum number of clusters, such that when the clusters are finally formed, the distribution of the vehicles among them based on their mobility patterns is achieved with high probability. In short, we need an algorithm to accurately identify nodes showing similar mobility patterns and group them in one cluster. In this paper, our main contributions are as follows: first, developing a new clustering algorithm that runs on all nodes in a fully distributed fashion. This algorithm is used to divide the network nodes into clusters such that when the network is finally partitioned (clustered), the probability of partitioning along cluster boundaries is achieved with high probability. This means that vehicles with high mobility are grouped in one cluster and vehicles with low mobility are grouped in another cluster. Second, developing a new multi-metric election method that can be used by network nodes to determine their suitability to become cluster heads.
The rest of the paper is organized as follows: Section 2 presents VANET clustering algorithms. Section 3 introduces the system overview and assumptions. Section 4 describes the clustering process and the protocol structure. Section 5 shows the simulation results and the performance evaluation. Section 6 concludes the paper.
2. VANET-clustering algorithms
Several clustering techniques for VANET have been proposed in the literature. While most of these techniques focus on the media access organization for cluster members and use the MANET clustering techniques to form the clusters, none of them took speed difference into consideration for cluster formation in VANET. As a result, these techniques do not produce a stable clustering structure. Some of these proposed techniques are summarized below.
In , the authors proposed the cluster-based location routing (CBLR). Nodes use HELLO messages to distribute their states. When a node enters the system, it enters the undecided state and then announces itself as a CH if it does not receive a HELLO message within a period of time from other nodes; otherwise it registers at a CH as a member node. To cope with the VANET topology changes, nodes maintain a table containing a list of the neighboring nodes with which they can exchange information. The protocol mainly focuses on improving routing efficiency in VANET. The nodes are supposed to know their position and the position of their destination and therefore, the packets are forwarded directly toward the destination.
In , the authors adopted the same algorithm used in the CBLR for the cluster formation. Nodes can be members in more than one cluster. In this case they are called Gateways and used to route packets to their destination. Nodes track changes in the topology and adapt their states to the situation using two tables; one for the neighboring nodes and the other one for the adjacent clusters. When two cluster heads come into a direct communication range, one should give up its cluster-head role and merge with the other. The decision about which one keeps its state and which one loses its CH role is based on a weighted factor W v , which takes into consideration the mobility, the connectivity, and the distance to the neighbors. These parameters are multiplied by their given weights and then summed to produce the total weight W v . The smaller the W v , the more qualified the node is to become a cluster head. The work also focuses on the media access control in the cluster-based VANET environment to improve the QoS support. The time division multiple access (TDMA) technique is used to divide the medium into time slots, which are then grouped into frames. The time slots are assigned to cluster members according to their needs.
Another clustering algorithm was proposed in . The proposed algorithm is basically the lowest ID used in MANET with a new modification. The authors included the leadership duration as well as the direction in the lowest ID algorithm to determine the node to be a cluster head. The leadership duration (LD) is defined as the period the node has been a leader since the last role change. The higher the leadership duration, the more qualified the node is to be a cluster head. Therefore, the cluster-head rule is: choose the node with the longest leadership duration and then choose the one with the lowest ID. The formation of clusters is based on beacon signals broadcasted by the VANET nodes. Each node announces itself as a cluster head and broadcasts this to all neighbors. If it receives a reply from a neighboring node with a lower ID and a higher leadership duration, then the node changes its state to a cluster member. When a node leaves its cluster, it looks for another cluster in the neighborhood to join. If none of the neighboring nodes or the neighboring cluster head satisfy the cluster head election rules, then the node claims itself as a cluster head.
The work in  was modified and presented in . In addition to the LD and the moving direction (MD), the authors introduced the projected distance (PD) variation, which means distance variation of all neighbors over a period of time. Each node is associated with a utility weight (uW) of three parameters (LD, PD, and ID), where the ID is the identifier of the node. The LD parameter is given the highest weight. To define the total utility weight, a lexicographical ordering of the three parameters (LD, PD, and ID) is used. For example, the utility weight (LD1, PD1, ID1) is greater than (LD2, PD2, and ID2) if either LD1 > LD2 or (LD1 = LD2 and PD1 < PD2) or (LD1 = LD2 and PD1 = PD2 and ID1 < ID2). Based on this, the LD value has maximum importance and its value is the primary factor to determine the total uW. However, in both works [15, 16], the node that has higher connectivity degree might not be elected to lead the cluster if there is another node that has longer leadership duration. This will produce less stable cluster structure, because having longer leadership duration does not mean that the node has high connectivity degree that gives it the ability to lead the cluster.
In , the authors proposed a distributed cluster-based multi-channel communications scheme for QoS provisioning over V2V-based VANET. The goal is supporting the QoS for timely delivery of the real-time data (e.g., safety messages, road condition, etc.) and increasing the throughput for the non-real-time traffic over the V2V networks. The formation of the clusters is implemented using the traditional algorithms mentioned earlier, e.g., when a vehicle enters the road, it checks for nearby clusters to join. If there are no clusters, then the vehicle announces itself as a cluster head and forms a new cluster. The cluster merging can happen only when two cluster heads come within the transmission range of each other. The cluster with less members is dismissed and its cluster head joins the neighboring cluster, while the other members start cluster formation process if they cannot join any nearby clusters. The proposed scheme assumes that each vehicle is equipped with two sets of transceivers, which can operate simultaneously on different channels. The cluster members use one transceiver to exchange safety messages and stay connected with the cluster head over the service channel; and use the other one to communicate with other members to exchange non-safety data. The cluster head communicates with its members via the service channel using one transceiver; and uses the other one to communicate with the neighboring clusters via the control channel.
In , the authors proposed a heuristic clustering approach for cluster-head elections that is equivalent to the computation of the minimum dominating sets (MDS) used in graph theory. This approach is called position-based prioritized clustering (PPC) and uses geographic position of nodes and the priorities associated with the vehicles traffic information to build the cluster structure. For clustering purposes, each node is assumed to broadcast a small amount of information of itself and its neighbors, which is referred by five tuples (node ID, cluster-head ID, node location, ID of the next node along the path to the cluster-head, and node priority). A node becomes a cluster-head if it has the highest priority in its one-hop neighborhood and has the highest priority in the one-hop neighborhood of one of its one-hop neighbors. The priority of the node is calculated based on the node ID, current time and the eligibility function. A Node having longer travel time has higher eligibility value, and this value decreases when the velocity of the node deviates largely from the average speed.
A new clustering algorithm was proposed in . This technique basically classifies vehicles into groups based on the speed range of vehicles. Vehicles that fall in the same speed group belong to the same cluster. The authors defined seven groups based on the minimum and maximum value of the speeds that the vehicles can use. The range of the speed difference is 15 kmph for all groups except groups 0 and 6, which is 30 and 10 kmph respectively. The authors adopted the "First Declaration Wins rule", which is basically a node that first claims to be a cluster-head remains as a cluster-head and rules the rest of nodes in its clustered area. According to the authors' definition, if a cluster member speed changes such that the node travels at a speed that is different from the group speed for a period of time, then, the node must update its clustering group and should seek for a new cluster even though the node is still under the transmission range of its current cluster-head. The authors proposed that the cluster-head adjust its transmission range when the density of the vehicles is very high. The cluster-head can reduce its transmission range to include less number of vehicles to reduce the management overhead. One of the drawbacks of this technique is that the first vehicle that claims to be the cluster-head may have its speed and location on the boundaries of both parameters. This cluster-head might lose the communications with its members soon. Moreover, having the cluster-head adjust its transmission range according to the speed of the group, makes the cluster members on the cluster boundary out of the transmission range of the cluster-head. Thus, these nodes will leave the cluster, which results in an increase of the cluster change rate.
The authors of  proposed a cluster formation technique where nodes use the affinity propagation (AP) method to pass messages to one another. Basically, the proposed algorithm takes an input function of similarities, s(i, j), which reflects how well suited data point j is to be the exemplar of data point i. Nodes exchange two types of messages: responsibility, r(i, j), indicating how well suited j is to be i's exemplar, and availability, a(i,j), indicating the desire of j to be an exemplar to i. The nodes use the self responsibility, r(i, i), and self availability a(i, i), to reflect the accumulated evidence that node i is an exemplar. When a node's self responsibility and self availability become positive, that node becomes a cluster-head. The authors proposed that a clustering decision is made periodically every clustering interval (CI) period, and a clustering maintenance is performed in between CI. However, having cluster members make clustering decision every CI will increase the probability of re-clustering. Also the authors did not take into consideration the speed difference among neighboring nodes.
In , the authors proposed a clustering technique for MANET applications. They introduced an aggregate local mobility (ALM), which is a relative mobility metric that used the received signal strength (RSS) at the receiving node as an indication of the distance between the sender and the receiver. However, the use of RSS is highly unreliable, especially in VANET environment, as indicated by other researchers . The paper  also did not take the speed difference as a parameter to form clusters.
In , the authors basically uses the ALM proposed in , with some modifications, as a criterion for triggering cluster re-organization. Originally, the ALM is a relative mobility metric that uses the RSS at the receiving node as an indication of the distance between the sender and the receiver . The ratio of the RSS of two successive periodic hello messages indicates the relative mobility between the two nodes. In , the authors used the location information embedded in the periodic hello messages to determine the relative mobility of the nodes instead of using the signal strength. In this technique, if two cluster heads come into direct communication range, they exchange more than one packets in a predefined period of time in order to consider the merging between the two clusters. In case merging takes place, the cluster-head with the lower ALM value maintains its role while the other gives up its role and becomes a member node in the new cluster. However, the nodes that lost their cluster-head due to merging or mobility and cannot find nearby clusters to join, they will all become cluster heads almost at the same time. There will be a period where they will organize their minds as to who will be the new cluster-head. However, the authors did not take the speed difference of neighboring nodes into consideration.
3. System overview and assumptions
Service channel transmission range
Control channel transmission range
Candidate cluster member
The threshold used to classify neighboring nodes as stable or non stable neighbors
The mean value of the speed
The standard deviation of the speed
The suitability value to become a cluster-head
The position of the vehicle
The normalized position
The normalized speed
Cluster originating vehicle
The waiting time before announcing the eligibility to become a CH
A set containing the IDs of the 2r-stable neighbors whose velocities are greater than the velocity of the current vehicle
A set containing the IDs of the 2r-stable neighbors whose velocities are less than the velocity of the current vehicle
The total number of vehicles in Γ(t) at time t
The residual time of the vehicle in the transmission range of the CH
The number of cluster changes per vehicle
The average transition rate between clusters
The lifetime of vehicle i during the simulation
The total number of vehicles in the system
The average number of the total number of the created clusters
Clusters are formed by vehicles traveling in the same direction (one way). Therefore, all r-neighboring nodes used in our analysis are limited to those vehicles traveling in the same direction. However, the speed levels among the r-neighbors vary and this variation might be very high; thus, not all r-neighbors are suitable ones to be included in one cluster, and therefore, they are not good Candidate Cluster Member. In order to build relatively stable clustering structure, vehicles should consider only r-neighbors that are good candidate cluster member (CCM). Therefore, in this work, vehicles are required to classify their r-neighbors into stable neighbors (SN) and non-stable neighbors. Two vehicles are considered stable r-neighbors if their relative speed is less than ± Δ vth. Hence, only stable neighbors of the vehicle initiating the cluster formation request participate in the cluster formation process.
Note that, in (3), for a given Δvth, the pΔvvalue decreases as σΔvincreases. Thus, the expected number of stable neighbors (SN) will vary. So, in order to avoid having high variation of this number, the threshold can be set as a function of the standard deviation, e.g., Δvth = βσ. Thus, the threshold is a dynamic parameter which depends on the speed characteristics of the vehicles within the vicinity (Table 1).
The stable neighbors of a given vehicle might not be stable with respect to each others; thus they can't belong to the same cluster. Therefore, in order to partition the network into minimum number of clusters such that all cluster members are stable with respect to each other (fast moving vehicles in one cluster and slower moving vehicles in another cluster), not all vehicles are allowed to initiate the cluster formation process even though each vehicle can determine its stable neighbors. In the following section, we discuss which vehicle is a preferable one to initiate the clustering process.
4. Clustering process and protocol structure
The inter-vehicle communication (IVC) operates in the 5.9 GHz band to support safety and non-safety applications. The dedicated short range communications (DSRC) uses 75 MHz bandwidth (5.850-5.925 GHz) which is divided into seven channels. One of the channels is called the control channel, and the remaining six are called service channels . Vehicles are assumed to utilize the control channel to exchange periodic messages and gather information about their neighborhood, and use one service channel to define the cluster radius and perform all intra-cluster communication tasks. According to the DSRC specifications , the data link layer can provide a transmission range of up to 1,000 m for a channel. VANET applications can use a longer range, R, for the control channel so that a cluster-head can communicate with neighboring cluster-heads for safety message disseminations, and a shorter range, r, for a service channel that is used for intra-cluster managements. Using the control channel, vehicles can gather status information of other neighboring vehicles and then can build a complete picture about their neighbors which can even go beyond the cluster boundaries.
Since in our technique, slower vehicles will be in one cluster and faster vehicles will be in a different cluster, we can start the cluster formation process either from the slowest or fastest vehicle. For example, if we start with the slowest vehicle, then all the neighboring vehicles of this slowest vehicle that satisfy the speed threshold will be in the first cluster. The remaining vehicles will then go through the same cluster formation process to create other clusters. By extracting the velocity data embedded in the periodic messages, any vehicle can determine whether it has the slowest velocity among all its neighbors within R communication range. The slowest vehicle, in our method, is supposed to initiate the cluster formation process by sending a cluster formation request and only its stable neighbors participate in this process. The neighboring vehicles whose relative velocity, with respect to the slowest vehicle, is greater than the threshold, Δvth, will not be grouped in the same cluster.
4.1. Neighborhood relationship
As nodes exchange their status information via the control channel, it would be easy for node l to identify that n is within 2r distance. Although neighborhood relationship is built using the control channel, it will be represented using r-neighborhood terminology. For example, node n is called a 2r-neighbor because it's within 2r distance.
4.2. Cluster-head election parameters
The mobility information (velocity, location, node degree, and direction) of the nodes is exchanged via the control channel whose coverage area, R, is larger than that of the service channel, r, used to define the cluster boundary (radius). The mobility information of the 2r-stable neighbors is needed for the vehicle to initiate the cluster formation request, while cluster-head election information for any node is limited to the nodes that are within r distance from the node itself.
The priority of a node to become a cluster-head is determined by its suitability value, u, which is computed based on the mobility information of its neighborhood. Thus, u= f (d, v, p) is a function defined according to the following criteria:
The suitability value of the vehicle is calculated by considering the mobility information of its stable neighbors only.
Nodes having higher number of stable neighbors, maintaining closer distances to their stable neighbors, and having closer speed to the average speed of their stable neighbors should have higher suitability value, thus they are more qualified to be elected as cluster-heads.
4.3. The cluster formation algorithm
In order to execute the algorithm, each vehicle is assumed to maintain and update the two sets Γ(t) and the Λ(t) that contain the IDs of the 2r-stable neighbors. At any time, there should be a vehicle whose speed is the slowest among its 2r-stable neighbors, and as a result, the Λ(t) list maintained by this vehicle is empty. The pseudo code of the algorithm is shown in Algorithms 1-3. The algorithm basically requires that the slowest vehicle or the vehicle whose Λ(t) members belong to other clusters originates the cluster formation process. This vehicle is called the cluster originating vehicle (COV). Line 3 in Algorithm 1, shows that COV sends the Initiate Cluster(CIDtmp) with its ID as a temporary cluster ID to all Γ(t). Then, as shown in Algorithm 2, all Γ(t) non-clustered members react upon receiving this message by setting their cluster ID temporarily to be the ID of the COV as shown in line 3. Vehicles start calculating their suitability to become a CH as shown in line 4. Then, the vehicle calculates Twait before announcing its eligibility to become a cluster-head as shown in line 5. The vehicle waits for Twait that is proportional to the suitability value of the vehicle. The higher the suitability value, the less the value of Twait. This can be seen in lines 6 through 15. If the vehicle receives a Form Cluster(CHid) message from any other vehicle that belongs to Γ(t) before its waiting time, Twait, expires, then the vehicle determines that there are other vehicles belong to Γ(t) that are more suitable to win the CH role. Therefore, the vehicle quits the competition and processes the received message.
Algorithm 1 Initiating clustering process
1: if (Λ(t) is empty)||(Λ(t) members ∈ other clusters) then
2: CIDtmp ← v i .id
3: send Initiate Cluster(CIDtmp)
4: end if
Algorithm 2 CH competition and determination
1: if v j ∈ Γ(t) then
2: On Receiving InitiateCluster(CIDtmp)
3: v j .CID ← CIDtmp
4: v j .Suitability() //w.r.t its r-neighbors that ∈ Γ(t)
5: v j .Twait ← v j .DeferTime() //calculate the waiting time
6: while v j .Twait > 0 do
7: if FormCluster(CHid)isreceived then
8: if received CHid ∈ Γ(t) then
9: QuitCompetition() //give up CH competition
10: Process FormCluster(CHid) //process received message
11: end if
13: Decrement v j .Twait
14: end if
15: end while
16: v j .STATUS ← CH
17: CHid ← v j .id //v j declares itself as a CH
18: v j .CID ← CHid //v j sets its cluster id
19: Send FormCluster(CHid) //sends its cluster id to all vehicles
20: end if
This is shown in lines 7 through 11. If Twait of the vehicle expires before any other vehicle sends the FormCluster(CHid) message, then the current vehicle wins the cluster-head competition, changes its state to a cluster-head, and sets the cluster ID to be its own ID. This is shown in lines 16 through 18. Finally, the vehicle sends the FormCluster(CHid) message with its own ID as the new cluster ID as shown in line 17. Algorithm 3, shows the final stage of the clustering process. All vehicles in the Γ(t) of the COV receive the FormCluster(CHid) as shown in line 2. But, only r-stable neighbors of the winner (since the cluster boundary is defined by r), which belong to the Γ(t) of the COV change their state to a CM and change their temporary cluster ID to be the
Algorithm 3 Finalizing cluster formation process
1: if v k ∈ Γ(t) then
2: On Receiving FormCluster(CHid)
3: if v k ∈ Γ(t) ∩ v j .SN) then
4: v k .STATUS ← CM //become a Cluster Member
5: v k .CID ← CHid
7: v j .CID ← default //the vehicle's id
8: Reconstruct Γ(t)
9: end if
10: end if
If the maximum number of iterations is used and nodes still collide, then each node picks a uniformly distributed random number between 0-9 and the one with the smaller value wins the competition. If the random numbers are the same, then the nodes will generate another pair and so on. Let s be the probability that a node will be able to announce its eligibility first time it generates a random number. The probability that a node will be able to announce its eligibility during the second time given the fact that it failed to announce during the first time is (1 - s)s. Similarly, the probability that a node will be successful during the third time given the fact that it failed during the first and second times is (1 - s)(1 - s)s and so on. The node has to generate random numbers times before it can announce its eligibility. Therefore, if the node went through i iterations using Equation 7 before it started generating random numbers, the average number of trials for eligibility announcement is .
4.4. Cluster maintenance
Due to the high dynamic nature of the VANET, vehicles keep joining and leaving clusters frequently, thus, causing extra maintenance overhead. The events that trigger the maintenance procedure can be summarized as follows:
Joining a cluster: when a standalone (non-clustered) vehicle comes within r distance from a nearby cluster-head, the cluster-head and the vehicle check whether their relative speed is within the threshold ± Δvth. If the speed difference is within ± Δvth, then the cluster-head will accept the vehicle and will add it to the cluster members list. If there are more than one cluster-heads in the vicinity that can be joined, the vehicle calculates the time, RT, it will remain in the transmission range r of these cluster-heads. The vehicle joins the cluster-head where it will stay for the longest period of time. The RT could be computed from the information about the relative speed, current location, and the transmission range r as follows:
If the standalone vehicle is following the cluster-head and its velocity at time t is less than that of the cluster-head, then
Where Δv is the speed difference, and dis(n,CH) is the distance between the standalone vehicle, n, and the cluster-head, CH. The above formula can also be used when the standalone vehicle is followed by the cluster-head but its velocity is greater.
If the standalone vehicle is following the cluster-head and its velocity at time t is greater than that of the cluster-head, then
This formula can also be used when the standalone vehicle is followed by the cluster-head but its velocity is less.
Leaving a cluster: when a cluster member moves out of the cluster radius, it looses the contact with the cluster-head over the service channel, r. As a result, this vehicle is removed from the cluster members list maintained by the cluster-head. The vehicle changes its state to a standalone if there is no nearby cluster to join or there is no other nearby standalone vehicle to form a new cluster according to our cluster formation algorithm.
Cluster merging: when two cluster heads come within each others transmission ranges and their relative speed is within the predefined threshold Δvth, the cluster merging process takes place. The cluster-head vehicle that has less number of members gives up its cluster-head role and becomes a cluster-member in the new cluster. The other cluster members join that neighboring cluster if they are within the cluster-head's transmission range and the speed is within the threshold. If there is any other nearby clusters, then vehicles calculate their RT and join the cluster where they can stay for the longest period of time. Finally, vehicles that cannot merge with the cluster nor can join a nearby cluster, start clustering process to form a new cluster according to our algorithm.
5. Simulation and performance evaluation
An extensive simulation study was conducted to evaluate the performance of our protocol. The C++ was used to develop the simulation. In our simulation, we consider different road traffic and different network data parameters.
5.1. The mobility model
The mobility model used in this paper is built based on the car following model presented in . In the car following models, the behavior of the car is described based on the relation with respect to the car ahead. The speed, v i (t), and the acceleration, a, of the vehicle is a function of different factors, mainly the distance, Δx(t), to the front vehicle and the speed of both vehicles at time t. In this model, the speed of the vehicle, called vi,safe(t), is computed such that a safety distance is maintained. The desired new speed vi, des(t + Δt) = min[v i ,max, v i (t) + a Δt, vi, safe(t + Δt)], whereas vi,maxis the max allowed speed, and Δt is a time step. The speed of the following vehicle is determined according to the vi,des.
For lane change, the methods proposed a safety requirement that must be satisfied as follows: if (|v i (t)| L -b Δt ≤ |vi,safe(t)|L), then it is safe to change to L, where L∈ [right, left] lanes, and b is the deceleration. The equation means if the lane change is taking place, each vehicle should be able to brake with a finite b to avoid colliding with the vehicle ahead.
The average and the standard deviation of the speed
5.2. Network parameters
We used different network parameters in the simulation. The data rate is set to 6 Mbps and the periodic messages are sent every 100 ms, the size of the message including the mobility information is 100 bytes. DSRC standard supports data rate in the range 6-27 Mbps . However, various members of the vehicle infrastructure integration (VII) Consortium use 6 Mbps data rate [30, 31] for road testing. Thus, we also decided to use 6 Mbps data rate. To study the performance of the clustering techniques for different cluster sizes, we used different transmission ranges for r and R. The transmission range for r was varied between 150 and 300 m, while it is between 800 and 1,000 m for R. For media access, we used the IEEE802.11 standard . We set the CWmin = 15, CWmax = 1023, a Slot Time = 16μ s, SIFS = 32μ s, and DIFS = 64μs.
5.3. Evaluation criteria
To show the performance of our proposed threshold-based (TB) technique, we compare it with the weight-based (WB) and the position-based (PB) methods proposed in  and  respectively. Originally, the WB method for MANET was proposed by Chatterjee et al.  by introducing the combined weight metric. The algorithm assigns node weights based on the suitability of a node being a cluster-head. This algorithm basically takes into consideration the nodal degree, the transmission power, mobility, and battery power of the mobile nodes. Each one of these parameters is assigned a weight; the sum of these weights is 1. Then, the value of each parameter is multiplied by its weight and all the values are finally summed to produce the combined weight. The node with the lower combined weight is more suitable to become a cluster-head. The same algorithm was adopted by VANET clustering techniques , but without considering the battery power factor since it is not a crucial problem in VANET. In the simulation, we assigned all WB method parameters equal weights. For the PB method, the priority of the node is calculated based on the eligibility function. A Node having longer travel time has higher eligibility value, and this value decreases as the velocity of the node deviates largely from the average speed. We compare the three methods under the same environment variables. Each simulation run was repeated 10 times with different random seeds and the collected data was averaged over those runs.
A clustering structure should be stable with respect to the nodes' motion, i.e., the cluster configuration should not change too much while the topology changes. In a high dynamic VANET, vehicles keep joining and leaving clusters along their travel route, and the number of cluster changes (NCC) of the vehicle will vary depending on the clustering algorithms being used. Good clustering algorithms should be designed to minimize the number of cluster changes of the vehicle by minimizing vehicle transitions between clusters. The NCC of the vehicle during its lifetime can be used to evaluate the cluster stability. To find the NCC of the vehicle, we first introduce the basic transition events the vehicle encounters during its lifetime:
e1: A vehicle leaves its cluster and forms a new one.
e2: A vehicle leaves its cluster and joins a nearby cluster.
e3: A cluster-head merges with a nearby cluster.
where NCC i is the number of clusters vehicle i changes during its lifetime.
Average cluster lifetime
The average cluster lifetime is an important metric that shows the performance of the clustering algorithm. The cluster lifetime is directly related to the lifetime of its cluster-head. The cluster-head lifetime is defined as the time period from the moment when a vehicle becomes a cluster-head to the time when it is merged with a nearby cluster.
Number of clusters
Due to high dynamics of the VANET, clusters are created (new clusters added to the system) and vanished over time, and the total number of clusters created over a period of time defines the cluster formation rate. Good clustering algorithms should be designed to reduce the rate at which clusters are created and added to the system due to the mobility of the nodes. And this can be achieved by producing relatively stable clusters and by the ability of clustering method to maintain the current cluster structure stable as much as possible. In this paper, we compare the average number of clusters added to the system, we start counting each new cluster added to the system after the algorithm is executed by all nodes and the clusters are formed (e.g., when nodes leave their current clusters due to mobility and form a new cluster, or when two neighboring clusters merge to produce a new cluster). To evaluate this metric, the total number of clusters created and added is calculated for each run, then, , of all methods is taken over all runs for different transmission ranges.
Overhead for clustering
All clustering algorithms incur some additional signaling overhead to form and maintain their cluster structures. The clustering overhead consists of: HELLO packets overhead, cluster setup overhead and cluster maintenance overhead.
Overhead due to HELLO packets
HELLO packets are broadcast by vehicles every THELLO period. These packets carry local mobility information used to compute local variability, which will be used in cluster formation and cluster-head election. Each node sends one HELLO packet every THELLO period to maintain up-to-date neighborhood information. Thus, this overhead is the same for TB, WB and PB clustering techniques.
Overhead due to cluster setup
According to the TB cluster formation algorithm, the COV node sends one message to initiate cluster formation process (InitiateCluster). After receiving this message, the node that wins the cluster-head competition broadcasts a cluster formation message (FormCluster) to its neighbors with its ID embedded in the message. So for the cluster formation process, two messages are sent: one by the COV and the other one by the cluster-head winner node. Each non-clustered neighbor that satisfies the speed threshold joins this cluster by sending a message. So in the TB algorithm, if the average number of nodes in a cluster is kTB, then the total number of messages to setup a cluster is 2+kTB. For the PB algorithm, when a new node is powered up and none of its neighbors belong to other clusters, it announces itself as a cluster-head and sends a message to inform its neighbors about its new role. Neighbors that are in the registration phase (non-clustered) join this cluster by sending a join message. So in the PB algorithm, the total number of messages to setup a cluster is 1 + kPB, where kPB is the average number of members per PB cluster. In the WB algorithm, a node that claims to be a cluster-head sends a CH-HELLO message. All non-clustered neighbors join this cluster by sending a message. So in the WB algorithm, the total number of messages to setup a cluster is 1+kWB, where kWB is the average number of members per WB cluster. In the TB technique the average number of nodes per cluster is less than that of the other two techniques. So if a TB cluster has at least two less members than the other two types of clusters, then the cluster setup overhead per cluster is less in TB technique than in other techniques.
Overhead due to cluster maintenance
Cluster maintenance is done periodically by all clustering methods. The three types of events that trigger topology change in VANET can be defined as follows: a node joins the network, a node leaves the cluster, and two cluster heads come into direct communication range. If the new node, that joins the network, has non-clustered neighbors, then those nodes will form a new cluster according to the rules used by each clustering method. The overhead of cluster formation was explained earlier. However, if the new node has a neighbor that is a cluster-head, then it will try to join the cluster by sending a join message to the cluster-head, and this cluster joining overhead is same for all three methods (TB, PB and WB). When two neighboring clusters merge, the cluster-head with less number of members will lose its role and join the other cluster and become a cluster member. The losing node sends one message in one period to inform its members about its decision. If the losing node has cluster members, then the members are subject to cluster reorganization. The cluster members either join any nearby clusters or form a new cluster if they could not find a cluster to join. Overhead for joining any nearby clusters is the same for all three methods, and the overhead for cluster formation (cluster setup) is already presented before. The upper bound on the number of messages for cluster merging is equal to the average number of members per cluster, which is kTB, kWB and kPB for TB, WB and PB techniques respectively.
VANETs are characterized by high node dynamics. Therefore, clustering methods should be designed to adapt to the VANET environment. These methods should take into account all vehicle dynamics. In this paper, we proposed a new VANET cluster formation algorithm that tends to group vehicles showing similar mobility patterns in one cluster. This algorithm takes into account the speed difference among vehicles as well as the position and the direction during the cluster formation process. After conducting a simulation experiment, we observe that our technique groups fast moving vehicles on the fast speed lanes in one cluster, while slow moving vehicles in another cluster. The simulation results show that our proposed algorithm increases the cluster lifetime and reduces vehicle transitions between clusters. The results show that our technique significantly increases the stability of the global network topology by reducing the rate at which clusters are created.
- IEEE 802.11 TGP, Wireless Access for Vehicular Environment (WAVE)Google Scholar
- NOW (Network On Wheels) ProjectAvailable online at http://www.network-on-wheels.de/
- Fleetnet ProjectAvailable online at http://www.et2.tu-harburg.de/fleetnet/
- ElBatt T, Goel SK, Holland G, Krishnan H, Parikh J: Cooperative collision warning using dedicated short range wireless communications. In Proceedings of ACM VANET. New York; 2006:1-9.Google Scholar
- Xu Q, Mark T, Ko J, Sengupta R: Medium access control protocol design for vehicle-vehicle safety messages. IEEE Trans Veh Technol 2007, 56(2):499-518.View ArticleGoogle Scholar
- Dashtinezhad S, Nadeem T, Dorohonceanu B, Borcea C, Kang P, Iftode L: TrafficView: a driver assistant device for traffic monitoring based on car-to-car communication. In Proceedings of the IEEE Semiannual Vehicular Technology Conference. Milan, Italy; 2004.Google Scholar
- Nadeem T, Dashtinezhad S, Liao C, Iftode L: TrafficView: Traffic data dissemination using car-to-car communication. ACM Mobile Comput Commun Rev (MC2R) 2004, 8(3):6-19. 10.1145/1031483.1031487View ArticleGoogle Scholar
- Santos RA, Edwards RM, Seed NL: Supporting inter-vehicular and vehicle-roadside communications over a cluster-based wireless ad-hoc routing algorithm. In Proceedings of the Winter International Symposium on Information and Communication Technologies(WISICT'04). Trinity College, Dublin; 2004:1-6.Google Scholar
- Aoki M, Fuji H: Inter-vehicle communication: Technical issues on vehicle control application. IEEE Commun Mag 1996, 34(10):90-93. 10.1109/35.544327View ArticleGoogle Scholar
- Alshaer H, Horlait E: An optimized adaptive broadcast scheme for inter-vehicle communication. In Proceedings of the 61 st IEEE Vehicular Technology Conference (VTC 2005, Spring). Stockholm, Sweden; 2005.Google Scholar
- Korkmaz G, Ekici E, Ozguner F: An efficient fully ad-hoc multihop broadcast protocol for inter-vehicular communication systems. In Proceedings of the IEEE ICC'06. Istanbul, Turkey; 2006.Google Scholar
- Chen W, Cai S: Ad hoc peer-to-peer network architecture for vehicle safety communications. IEEE Commun Mag 2005, (4):100-107.Google Scholar
- Santos RA, Edwards RM, Seed NL: Inter vehicular data exchange between fast moving road traffic using ad-hoc cluster based location algorithm and 802.11b direct sequence spread spectrum radio. Post-Graduate Networking Conference; 2003.Google Scholar
- Yvonne G, Bernhard W, Hans Peter G: Medium access concept for VANETs based on clustering. In Proceedings of the 66th IEEE Vehicular Technology Conference (VTC). Volume 30. Baltimore; 2007:2189-2193.Google Scholar
- Fan P: Improving broadcasting performance by clustering with stability for inter-vehicle communication. In Proceedings of the 65th IEEE Vehicular Technology Conference (VTC '07, Spring). Dublin, Ireland; 2007.Google Scholar
- Fan P, Sistla P, Nelson P: Theoretical analysis of a directional stability-based clustering algorithm for VANETs. In Proceedings of the Fifth ACM International Workshop on Vehicular Ad Hoc Networks (VANET). San Francisco, CA; 2008.Google Scholar
- Su H, Zhang X: Clustering-based multichannel MAC protocols for QoS provisionings over vehicular ad hoc networks. IEEE Trans Veh Technol 2007, 56(6):3309-3323.View ArticleGoogle Scholar
- Zhiagang W, Lichuan L, MengChu Z, Nirwan A: A position-based clustering technique for ad hoc intervehicle communication. IEEE Trans Man Cybern 2008, 38(2):201-208.View ArticleGoogle Scholar
- Kayis O, Acarman T: Clustering formation for inter-vehicle communication. In Proceedings of the 10th IEEE Intelligent Transportation Systems Conference (ITSC'07). Seattle, WA; 2007.Google Scholar
- Shea C, Hassanabadi B, Valaee S: Mobility-based clustering in VANETs using affinity propagation. In Proceedings of the IEEE Globecom. Honolulu, HI; 2009.Google Scholar
- Basu P, Khan N, Little T: A Mobility Based Metric for Clustering in Mobile Ad Hoc Networks. In Proceedings of the 21st International Conference on Distributed Computing Systems (ICDCSW 01). IEEE Computer Society, Washington, DC; 2001:413.Google Scholar
- de Souza E, Nikolaidis I, Gburzynski P: A new aggregate local mobility (ALM) clustering algorithm for VANETs. In Proceedings of the IEEE ICC'10. Cape Town, South Africa; 2019:10.Google Scholar
- Schnabel W, Lohse D: Grundlagen der Straenverkehrstechnik und der Verkehrsplanung. Bd. 1, 2. Aufl., Verlag fr Bauwesen, Berlin; 1997.Google Scholar
- Yousefi S, Altman E, El-Azouzi R, Fathy M: Analytical model for connectivity ad hoc networks. IEEE Trans Veh Technol 2008, 57(6):3341-3356.View ArticleGoogle Scholar
- Rudack M, Meincke M, Lott M: On the dynamics of ad hoc networks for inter-vehicles communications (IVC). Proceedings of the ICWN 2002, 40-48.Google Scholar
- ASTM 2213-03, Standard specification for telecommunications and information exchange between roadside and vehicle systems--5 GH band dedicated short range communications (DSRC) medium access control (MAC) and physical layer (PHY) specifications 2003.Google Scholar
- IEEE Standard 802.11-1999, Wireless LAN medium access control (MAC) and physical layer (PHY) specifications 1999.Google Scholar
- Krauß S: Microscopic modeling of traffic flow: investigation of collision free vehicle dynamics, PhD thesis, Mathematisches Institute, Universitat zu Koln. 1998.Google Scholar
- Rawashdeh ZY, Mahmud SM: Toward strongly connected clustering structure in vehicular ad hoc networks. In Proceedings of the 2009 IEEE 70th Vehicular Technology Conference (VTC2009-Fall). Anchorage, AK; 2009.Google Scholar
- Miucic R, Popovic Z, Mahmud SM: Experimental characterization of DSRC signal strength drops. In Proceedings of the 12th International IEEE Conference on Intelligent Transportation Systems. St. Louis, MO; 2009.Google Scholar
- Vehicle infrastructure integration (VII) California demonstration evaluation: Final Evaluation Report, Kimley-Horn and Associates, Inc. 2006.http://www.viicalifornia.org/publications/viidemonstration%20evaluation.pdf/ Available online atGoogle Scholar
- Chatterjee M, Sas SK, Turgut D: An on-demand weighted clustering algorithm (WCA) for ad hoc networks. In Proceedings of the 43rd IEEE Global Telecommunications Conference. San Francisco, CA; 2000:1697-1701.Google Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.