RouteSpray : A multiple-copy routing algorithm based on transit routes

Vehicular networks represent a special type of wireless network that has gained the attention of researchers over the past few years. Routing protocols for this type of network must face several challenges, such as high mobility, high speeds and frequent network disconnections. This paper proposes a vehicular routing algorithm called RouteSpray that in addition to using vehicular routes to help make routing decisions, uses controlled spraying to forward multiple copies of messages, thus ensuring better delivery rates without overloading the network. The results of experiments performed in this study indicate that the RouteSpray algorithm delivered 13.46% more messages than other algorithms reported in the literature. In addition, the RouteSpray algorithm kept the buffer occupation 73.38% lower.


Introduction
Vehicular ad hoc networks (VANETs) represent a special type of wireless network that has gained the attention of researchers over the past few years.This type of network offers, through Intelligent Transport Systems (ITS), services such as driver assistance, entertainment and dissemination of information (Taysi and Yavuz, 2012).
In VANETs, the high mobility of vehicles causes frequent disconnections among network nodes, which partitions networks and prevents the use of routing protocols designed for ad hoc networks.However, some features of VANETs can be used to assist in routing, such as mobility patterns limited by roads, the tendency of vehicles to move in groups and the integration of sensors into vehicles (Toor et al., 2008;Li and Wang, 2007).There are several routing algorithms that have been proposed for VANETs, but recent technological achievements and their popularization, such as GPS, have opened up the possibility of proposing even more efficient protocols.
This article introduces the RouteSpray algorithm.This algorithm combines four important concepts in making routing decisions: (i) use of the store-carry-and-forward technique (Zhao and Cao, 2008) to route messages; (ii) transmission of messages based on direct contact (Spyropoulos et al., 2008); (iii) use of the routes of the vehicles to assist in routing, assuming that the vehicles are equipped with GPS; and (iv) use of the controlled spraying of messages technique (Raghavendra et al., 2008).
Several protocols that aim to perform routing in VANETs have been presented.The main difference among these protocols is the information they consider in routing (history of contacts among nodes, location information, etc.) and the strategy they use to forward messages (number of generated replicas for each message).Nevertheless, there is a consensus among the scientific community that there is no ideal routing protocol that can be applied in all scenarios.The RouteSpray protocol aims to address scenarios in which the routes of vehicles are previously known, which has become common due to the popularization of navigation devices, especially if we consider fleets with controlled mobility, such as buses, trucks and taxis.This protocol was designed to use the routes of vehicles to make routing decisions, which is the only premise it requires.
The RouteSpray protocol was validated through a simulation of an urban environment where vehicles run through routes that connect the points of interest of a city.To ensure a more realistic simulation, the OMNeT++ simulator (Varga, 1999) was used together with the VeNeM software (Silva, 2012).The results of the experiments show that the RouteSpray algorithm delivered 13.46% more messages than other proposals reported in the literature and kept the buffer occupancy 73.38% lower.
The remainder of the paper is organized as follows: in the second section, related studies are presented.In the following section, the operation of the RouteSpray algorithm is described.Then, the simulation environment and the experimental results are presented.Finally, conclusions and future studies are discussed.

Related works
Over the past few years, several algorithms such as the DSR (Dynamic Source Routing) (Johnson and Maltz, 1996) and the AODV (Adhoc On-demand Distance Vector) (Perkins and Royer, 1999) algorithms have been proposed to solve the routing problem associated with ad hoc networks.Both protocols initiate data transmission only after establishing a path between source and destination, a characteristic that is often not satisfied in VANETs because this type of network suffers frequent disconnections caused by the high speed and high mobility of vehicles.To avoid data loss, routing protocols for VANETs consider the use of the store-carry-and-forward technique (Lee and Gerla, 2010).
Another characteristic that can benefit routing algorithms for VANETs is the use of location information of network nodes, which has become possible due to the incorporation of Navigation Systems (NS) into vehicles.Routing protocols that use this technique are classified as position-based or geographic-based (Allal and Boudjit, 2012).
Opportunistic transmission and context information can both be used in VANETs to improve the routing process.One scheme that exploits opportunistic transmission to ensure the delivery of a message is called the Epidemic routing algorithm (Vahdat and Becker, 2000).The Epidemic algorithm uses the store-carryand-forward technique to improve data delivery rates.It stores received messages in a buffer and takes advantage of opportunistic contact to replicate the stored messages to the other nodes of a network.This technique causes the network to flood with messages and ensures that one of the replicas of the message follows the shortest existing path to the destination.Hence, the Epidemic algorithm achieves a high message delivery rate and low delay for messages transmitted to the destination.Nevertheless, due to the excessive number of message replicas, this type of routing causes network degradation, abusive consumption of electricity and a large occupancy of buffers.Such characteristics make the Epidemic algorithm unusable in various scenarios.
To solve the problems associated with the Epidemic algorithm, an algorithm called Spray and Wait was proposed in Raghavendra et al. (2008).The Spray and Wait algorithm uses the spray technique to decrease the number of replicas of messages sprayed over a network.Although the authors introduced the use of the algorithm in sparse networks, the spray technique was first used in cellular networks.This technique aimed to spray messages among the points that are most frequently visited by users (Tchakountio and Ramanathan, 2001).The Spray and Wait algorithm is divided into two phases.In the spray phase, the source node calculates the number of copies that must be sprayed.This calculation is based on the number of network nodes and on the desired delay time for the message to reach the destination.These copies are sprayed in an opportunistic manner among the nodes that enter the transmission area of the source node.If the message is not delivered to the destination in the spray phase, the nodes initiate the wait phase.In the wait phase, each node keeps the message in its buffer until it comes across the destination node, and only then does it deliver the message.
Although dense networks are beneficial to the operation of the Spray and Wait algorithm, in vehicular networks, density becomes a trap and puts at stake he performance of the algorithm.This negative effect occurs because the flow of vehicles becomes concentrated at intersections and traffic lights then spreads along different directions that vehicles may follow.Such behaviour causes some copies of the message to be taken away from the destination.As a solution, the Route Spray algorithm uses the routes of vehicles to determine the best route through which to send a message.The algorithm sprays messages only among the nodes that will encounter the destination node, thus preventing the messages from being sprayed among nodes that can never deliver them.

RouteSpray algorithm
To perform routing, the RouteSpray protocol assumes that vehicles are equipped with GPS and that all vehicle routes are known.Furthermore, there is no need for a fixed network infrastructure; that is, it is possible to perform the routing among vehicles in a completely ad hoc manner.
The operation of the protocol is based on the use of two types of messages: control messages and data messages.Control messages are used to maintain the state of a network, which is achieved by sending context information to neighbouring nodes.Communication is initiated by a handshake, when nodes exchange information about the packages that have already been delivered over the network, allowing for the control of messages stored in the buffer, which is achieved by deleting those that have already been delivered.This feature is desirable in mobile networks.
Another function of control messages is the exchange of information about the state of the buffer.The source node sends its neighbour a list containing an identifier and the destination of each message in its buffer.With this information, the neighbour calculates, using the pre-established routes, the time in seconds that it will take to deliver each message.After the source node receives a response from the neighbouring node, it is able to determine which is the best carrier for the message.The entire routing process described above is presented in greater detail in Algorithm 1.
The improvement in performance afforded by the RouteSpray algorithm is due to the combination of two important concepts: (i) use of routes to obtain prior knowledge of contacts among nodes and (ii) use of the Binary Spray technique.This combination ensures better delivery rates without overloading networks.Both concepts are explained in greater detail below.

Use of routes
Geolocation information in a network makes it possible to have prior knowledge about the position of the network's nodes.This feature enables package forwarding in the direction of the destination and improves data delivery rates.The use of the routes of vehicles ensures that the algorithm can predict the contacts among the network nodes.Thus, the algorithm can make the best forwarding decision.
Consider three vehicles that follow preestablished routes (Figure 1), where vehicle B has a package addressed to vehicle C.Although the route of vehicles B and C intersect, vehicle B will choose vehicle A as the best carrier of the message to the destination because vehicle A will meet vehicle C before vehicle B does.This process ensures that the message will be delivered in the shortest time possible.

Binary spray
Routing schemes based on a single copy of a message cause major delays in delivery.On the other hand, routing schemes based on flooding cause network degradation.To obtain the lowest delay in delivery without degrading a network, Raghavendra et al. (2008) authors proposed the "spray" technique, which consists in generating a number of controlled copies of messages and spraying them among the nodes of a network.When a vehicle wants to transmit a message, it generates a controlled number of copies (L).To calculate the value of L, the existing number of nodes in the network and the desired delay time for the message to reach its destination are taken into account.Spraying can occur in two different ways, which are referred to the authors as Source Spray and Binary Spray.
In spraying based on Source Spray, the source node forwards $L$ copies of the message to the first distinct L nodes it finds.In Binary Spray, the source node starts with L copies; while node A has n > 1 copies (is the source or the carrier) and meets another node B (that does not have any copies), it will deliver to node B ⌊(n/2)⌋ copies and keep ⌈(n/2)⌉ copies for itself; when the node has only one copy, it will choose direct contact to perform the delivery.
Another feature of the Source Spray technique is that a message requires only two hops to reach the destination; that is, the source forwards the message to the carrier, which becomes responsible for delivering it to the destination.This feature causes delays in the delivery of messages in networks with controlled mobility, which makes such a technique unusable in VANETs.In Binary Spray, on the other hand, the fact that the carrier node receives more than one copy of the message and forwards them in future contacts indicates that this technique performs routing based on multiple hops, reducing the delivery time of the message.Therefore, Binary Spray was chosen as the message routing method for the Route-Spray algorithm.

Performance analysis
Although the evaluation of routing protocols in real environments is desirable, the high cost of implementation and the difficulty of mobilizing enough staff to perform the experiments make such implementation unfeasible.Consequently, the scientific community evaluates routing protocols through simulations.RouteSpray performance was evaluated through simulations, comparing it with the Epidemic and Spray and Wait protocols, which are the main routing protocols used for sparse networks.
Certain properties are desirable in routing algorithms, such as scalability, which is the ability of an algorithm to adapt to networks with different densities; robustness, which is the ability to perform routing even in case of faults, which may be caused in VANETs, for example, by obstacles that prevent transmissions; simplicity, which is the ease of implementation; and optimization, which can be applied to various routing characteristics (message delivery rate, throughput, etc.).The performance of the RouteSpray protocol was evaluated according to the following metrics: (i) message delivery rate; (ii) occupancy of buffers; and (iii) number of messages sent over a network.The message delivery rate refers to the number of messages delivered to the destination and is important in determining the effectiveness of a protocol.The occupancy of buffers is defined as the sum of all messages stored in the nodes of a network.Occupancy must be considered because devices that are used in mobile networks have restrictions regarding storage.The number of messages sent over a network is the sum of all messages sent, including the The simulation scenario consisted of an urban environment in which 16 routes among the points of interest of a city were generated.The number of vehicles in the network varied between 5 and 100, generating networks with different densities.For simulations in which the number of vehicles is greater than the number of routes, more than one vehicle travels the same route.In this case, in addition to the vehicles being distributed evenly among the routes, the vehicles leave at different times.The transmission speed was also considered to be higher than the locomotion speed.
The MiXiM framework (Köpke et al., 2008), an extension to the OMNeT++ Network Simulator (Varga, 1999), was used for the simulation.Vehicular mobility simulations based on random mobility models do not correspond to reality because the movement of vehicles is limited to the restrictions of streets and avenues (Gamess et al., 2012).Furthermore, parameters such as speed and direction suffer variations.For this reason, vehicular mobility was generated using the VeNeM software (Silva, 2012).
The parameters used in the simulation are presented in Table 1.

Results
When a scenario imposes no storage constraints, the Epidemic algorithm delivers all messages that are sent, which makes it an important tool for comparing routing algorithms.Another algorithm that achieves delivery rates similar to those of the Epidemic algorithm and also causes less network degradation is the Spray and Wait algorithm.Thus, the RouteSpray was compared with both algorithms.Assuming the Epidemic algorithm delivers 100% of messages sent over the network, the RouteSpray and Spray and Wait algorithms delivered 57.66% and 44.23% of messages, respectively.The values obtained are presented in greater detail in Figure 2. The best message delivery rate is achieved by the RouteSpray algorithm due to the use of the routes of the vehicles.
As shown in Figure 3  As previously discussed, the use of control messages by the RouteSpray algorithm improves data delivery rates and controls the buffer occupancy.However, an additional cost is introduced into the network, causing a greater number of message transmissions.This effect is demonstrated in Figure 5.Although the RouteSpray algorithm results in more message transmissions than the Epidemic algorithm, it causes less overhead in the network because the control messages have no payload data.

Figure 1 .
Figure 1.Pre-established routes for three vehicles.

Figure 2 .
Figure 2. Delivered messages in the network.

Figure 3 .
Figure 3.Comparison of the buffer occupancy of the three algorithms.

Figure 4 .
Figure 4. Improvement in the buffer occupancy by the spray technique.

Table 1 .
, the Epidemic algorithm requires that the nodes have large storage capacities because each network node Parameters used in the simulation.