The research proposed a DI-AODV model with Data Replication Approach to reduce average end to end delay time observed in the traditional AODV protocol used for VANET. In this approach, the real-world map for the city is given as an input in the form of network provided with the scenario templates along with setting for various parameters like area, speed of vehicles, number of accidents, etc. As per proposed model, the AODV nodes find their eight possible intermediate nodes from eight directions (N, E, W, S, NE, NW, SE, and SW).
Dijkstra Shortest Path method is applied to determine the shortest path for packet forwarding across all nodes. Dijkstra Shortest Path method determines the shortest path from a given source node to every other node. It may also be used to calculate the costs of shortest pathways from a single node to a single destination node by stopping the procedure once the shortest path to the target node has been identified. After finding the shortest path apply the efficient traffic pattern among the CBR, Pareto and Exponential traffic pattern.
Additionally, we have added the data replication method which will prevent the loss of the packets especially observed during an accident events. For this method the special data packet has to be generated referred as urgent data packet whose priority count determines the importance of the packet. As the data is replicated priority count increases also the number of message replicas grows.
DI-AODV with Data Replication Framework output is feed to the network simulator along with the simulation parameters in the form of configurations such as config-1, config-2, etc. to extract the results.
Algorithm 1. DI-AODV with Data Replication Method
Step-1. AODV Protocol Initialization for N number of nodes
Find 8 possible intermediate nodes (N, E, W, S, NE, NW, SE, SW) for transmission of message;
Set HopCount = no. of intermediate nodes;
Step-2. Apply CBRTraffic Pattern
Set packetInterval;
Set value for packetSize;
Step-3. Apply Dijkstra Shortest Path Algorithm
Find the closest node;
Find the potential distances which are compared to find the shortest path;
Step-4. Apply Data Replication Method
Set number of replicas to 0;
When packet is received from lower layer
If Packet Type is the Urgent Data
Then
Replicate the data;
Increase the priority counter;
If new route is created
Then
Replicate the data;
Increase the number of replicas;
Increase the priority counter;
Send replicated packet to Network Layer;
If route is deleted
Then
Delete replicated data;
When packet is received from upper layer
If Packet Type is the Urgent Data
Then
If there is replicated the data
Then
Decrease the number of replicas;
Decrease the priority counter;
Dijkstra's algorithm is a graph search algorithm that solves the single-source shortest path problem for a graph with nonnegative edge path costs, resulting in a shortest path tree. Routing and subroutines in other graph algorithms frequently employ this approach.
The algorithm finds the shortest path, or the path with the lowest cost, between a given source node and all other nodes. By halting the process once the shortest path to the target node has been found, it may also be used to determine the costs of shortest pathways from a single node to a single destination node. For example, if the graph's vertices represent nodes (vehicles) and edge path costs reflect the driving distances between pairs of nodes connected by a direct road, then Dijkstra's algorithm can be used to find the shortest path between one node and every other node.
After identifying the intermediate nodes, the shortest path is found using Dijkstra's Shortest Path algorithm, as shown in Algorithm 2.
Algorithm 2. Dijkstra Shortest Path Algorithm
While I <= number of nodes
closestNode = getClosestNode()
visited[closestNode] = True
While J <= number of nodes
If (!visited[j])
then potentialDistance = Distances[closestNode] + 1
If (potentialDistance < Distances[J])
then Distances[J] = potentialDistance
predecessors[J] = closestNode
//Here Distances[J] represents the current known distance from the source node to //the current node J being considered.
//And potentialDistance is the sum of the distance from the source node to the //current node and the distance from the current node to its neighboring node, //which is being considered as a potential candidate for the shortest path from the //source node to the neighboring node.
Procedure getClosestNode()
Set minDistance =
Set closestNode = -1
While i < numberOfNodes
If (!visited[i] && distances[i] < minDistance)
Then minDistance = distances[i]
closestNode = i
Data Replication method is used as a sustainable data management scheme. Data replication is a method of storing the same data in multiple locations to improve access and reduce the impact of intermittent node connectivity in vehicular ad hoc networks (VANETs). The topology of VANETs changes dynamically due to high vehicle mobility, which can lead to frequent disconnections.
Algorithm 3 gets invoked when there is vulnerable situation, it creates replicas to ensure data accessibility. The packets are forwarded according to their priority counter managed during data replication stage.
Algorithm 3. Data Replication Algorithm
Set numReplicas = 0
While packet is received from lower layer
If PACKET_TYPE = URGENT_DATA
Then replicate the data
numReplicas = 1
If new route is created
Then replicate the data
numReplicas++
send replicated packet to Network Layer
If route is deleted
Then delete replicated data
While packet is received from upper layer
If PACKET_TYPE = URGENT_DATA
Then If there is replicated the data
Then numReplicas--