Computer Standards & Interfaces 48 (2016) 139–159
Contents lists available at ScienceDirect
Computer Standards & Interfaces journal homepage: www.elsevier.com/locate/csi
A systematic technical survey of DTN and VDTN routing protocols João Gonçalves Filho a, * , Ahmed Patel a, b , Bruno Lopes Alcantara Batista a , Joaquim Celestino Júnior, a b
a
Computer Networks and Security Laboratory (LARCES), State University of Ceara (UECE), Fortaleza, Brazil Faculty of Science, Engineering and Computing, Kingston University, United Kingdom
A R T I C L E
I N F O
Article history: Received 3 December 2015 Received in revised form 10 June 2016 Accepted 13 June 2016 Available online 17 June 2016 Keywords: VANET DTN ToD MANET VDTN Bundle Hybrid taxonomy Unicast routing protocol
A B S T R A C T There are major challenges in establishing effective communications between nodes in Vehicular Ad Hoc Networks (VANETs). In them the systems are subject to wireless interference and disconnections, thus hindering the availability and reliability of source-destination connections. Another major problem arises when VANETs are sparse, causing excessive retransmissions and delays due to long periods without maintaing connection between pair of vehicles. In these environments traditional routing protocols proposed for VANETs suffer from the absence of end-to-end connections. From intensive studies and analysis, it was found that these problems are best overcome by using Delay Tolerant Network (DTN) routing protocols that can endure huge delays, connection disruptions and embolden applications to use a minimum number of roundtrip response confirmations. DTN routing protocols are considered to be the most suitable alternative to traditional routing protocols in VANET environments. They are designed for storing and forwarding messages through a series of forwarders to maintain network connectivity. Thus, we present a systematic technical survey and a comparative analysis of a taxonomy of DTN routing protocols, which we extended and adapted it to include a new set of VDTN (VANET/DTN) routing protocol categories with results. © 2016 Elsevier B.V. All rights reserved.
1. Introduction The TCP/IP architecture is largely resilient in dealing with disconnection issues, whereby a break in an end-to-end connection rarely occurs in fixed line networks. This characteristic is changed in a Mobile Ad Hoc Network (MANET). The mobile nodes are operating in hostile and fluctuating conditions, often causing transient disconnections. In such conditions, TCP/IP’s performance degrades considerably [1]. Such problems become even more complicated in scenarios where the networks are sparse and the nodes are incapable of maintaining connectivity. These problems also occur in VANETs, but are compounded many times over through network traffic disruptions such as the loss of connections due to out-of-sight connectivity, long distances between vehicular nodes, long delays causing excessive number of timeouts and incessant network partitioning and reconfigurations. In relation to these problematic conditions experienced by VANETs, the use of DTN architecture primarily designed for
* Corresponding author at: State University of Ceara (UECE) Computer Networks and Security Laboratory (LARCES) Av. Dr. Silas Munguba, 1700, Campus do Itaperi, Fortaleza Brazil. E-mail addresses:
[email protected] (J. Gonçalves Filho),
[email protected] (A. Patel),
[email protected] (B. Lopes Alcantara Batista),
[email protected] (J. Celestino).
http://dx.doi.org/10.1016/j.csi.2016.06.004 0920-5489/© 2016 Elsevier B.V. All rights reserved.
Inter Planetary Internet (IPN) routing protocols is considered and proposed as a suitable alternative [2]. These routing protocols are capable of withstanding huge delays and connection disruptions that minimizes the exchange of the number of response confirmations in roundtrips in hostile environments. Incidentally, from the analysis of these routing protocols it was found that the DTN framework architecture and ensuing family of routing protocols are also applicable in all other types of mobile networks, such as cellular [3] and wireless sensor networks [4]. It is under these circumstances deemed necessary to develop new routing protocols which know how to take advantage of the DTN offerings and paradigms. One such routing protocol in particular is the so called store-carry-and-forward applied to mobile nodes called ferries. These nodes carry the data packet in a random or predictable manner and stored at the forwarding node for a considerable time until delivery to the next available node is achieved. There are many DTN routing protocols, such as: Spray-AndWait [5], PROPHET [6], Epidemic [7] and MaxProp [8]. However, they do not consider the specific problems and restrictions of VANETs. Some of the existing protocols for VANETs that have been proposed based on the DTN, are: VDTN-ToD [9], FFRDV [10], VADD [11] and Geopps [12]. In our previous work, de Sousa Viera et al., [9], proposed the routing protocol VDTN-ToD. It uses a mechanism called Trend of Delivery (ToD) to assist in routing and forwarding decisions. In anotherwork
140
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
the ToD mechanism was inserted into the Spray-And-Wait and PROPHET protocols [13]. This paper presents a systematic technical review and discusses the taxonomy of DTN unicast routing protocols, based upon what was proposed in [14], but we have extended and adapted it by including two new categories of VDTN protocols. This paper is organized as follows: In Sections 2 and 3, an exposition of VANET and DTN are respectively presented. In Section 4, the concepts and fundamentals of DTN routing, taxonomy, technical explanation and discourse of various DTN routing protocols are presented. In Section 5 the results are presented. Finally the conclusion, future work and possible new research topic pertaining to safety and security are presented in Section 6. 2. Vehicular networks 2.1. Definition In a MANET, all the network nodes are connected via a wireless link, regardless of a fixed infrastructure [15]. Thus, the nodes must manage the network in an ad hoc manner. A VANET is a category of MANET, in which the network nodes are vehicles. These networks have the aim of improving the traffic environment. This is achieved through applications that not only can assist the driver in various maneuvers and traffic decisions, but also provide Internet access for the vehicles that are on the network for many other purposes such as communication and Web access. 2.2. Features Despite VANETs inherited characteristics of MANETs, they have their own inherent features. They have a new set of issues, challenges and advantages/disadvantages [16][17]: • Predictable mobility: in traditional MANETs the node mobility is usually performed by using the model Random Waypoint [18]. In VANETs the mobility is restricted by the constructs and limits of the roads, making the future pathways of the network nodes much more predictable. • No power constraints: in general, MANETs have an inherent power restriction. An example of this is the Wireless Sensor Network (WSN). On the one hand the routing protocol of a WSN needs to recognize the best use of the battery in order conserve energy. While on the order hand, VANET nodes always have available energy through their respective energy supply system. This characteristic avoids concerns regarding power saving issues for VANET protocols and their operating ecosystems. • Variable density of the network: the density of the network depends on how the state of the traffic is. There may be times when the network is either sparse or dense, or simply overcrowded. In the sparse case it is hard to establish an end-to-end connection because of the absence of vehicles. In the dense case may exist excessive packet retransmissions producing packet collisions and significant delays. Primarily overcrowding situations occur from heavy density and unsustainable network connectivity due to congestion, communication freeze and grid-lock. • Rapid changes in topology: due to the dynamism and high speeds of the nodes of VANETs, the network topology is constantly changing in addition to the extremely short contacts between any two communicating nodes. These characteristics complicate the operation of the traditional TCP/IP in this environment. This difficulty is produced because there is no ability to differentiate between congestion and link failure.
This incapacity of differentiation causes unnecessary reductions in the congestion window size parameter settings. The performance degradation of the TCP/IP in MANETs is discussed and illustrated in [1]. The performance degradation becomes worse in VANETs, especially in heavily dense or overcrowded situations. • High computational processing and information power possibility: since the nodes of VANETs are vehicles, there is the ease of installing many resources that can assist in the operations of these networks. It is possible to install or activate a GPS device into the vehicles. They would enable routing protocols such as GPSR [19] and VDTN-ToD [9] to obtain the location of the target nodes. This acquired information allows improved routing decisions to be made. Obtaining service information by accessing the Navigational System could also further assist improved routing decisions to be made. Any new protocol for a vehicular environment should always consider these characteristics in order to provide a better or optimum performance and scalability in their applications. 2.3. Applications The VANET’s applications are quite broad, and with its respective VANET technology, it is possible to disseminate useful information such as maneuvers, precautions or advertisements for vehicles on the road. The VANET’s applications are divided in into two main categories [20]: safety and comfort. As an example of safety (other than security, privacy, trust and identification management) category, there is the collision detection, road problem warnings, lane change assistance and overtaking applications. The messages generated by these applications have the highest priority of transmission under normal operation. For example, periodical management messages are sent on the control channel to keep everything synchronized. When sudden accident occurs, an alert message of this event will spread at a higher priority than those of the management, due to the importance and criticality of the incident. As for comfort applications, which have Internet access, vehicle passengers may want to send e-mails or chat. In this case, Access Points (APs) that provide this service are necessary. One alternative to support the vehicle in a remote location is to use other vehicles as intermediate routers (“hotspot”) in order to reach the AP. There is also another important problematic issue related to this case, whereby the network is sometimes sparse with no end-to-end path for routing protocols to create a route. One alternative is to use the DTN strategy in order to store-carry-and-forward packets to attempt to sustain some sort of connectivity. In this way, the intermediate vehicles store the packets until they can forward them to another vehicle to reach the target. It is also possible to have comfort applications in purely ad hoc mode. For example, imagine if the vehicle traffic on the road were congested, passengers of vehicles could occupy themselves by establishing a chat communication between themselves, or even entertain themselves by playing in a multi-player game together in the VANET ecosystem. The potential of such applications with smartphones and tablets are huge. 3. Delay tolerant networks (DTNs) 3.1. DTN definitions used in this paper Bundle: It is message of varying size data unit in DTN. It is the packet exchanged by DTN routing protocols. Overhead: It is given by the transmission cost of the number of bundles required for delivery from source to destination.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
141
Fig. 1. Bundle Layer for DTN in TCP/IP stack.
Scalability: It is a feature that indicates whether the DTN routing protocol maintains a controlled overhead with the increase in the number of bundles and nodes in the network to achieve end-to-end delivery. Contact opportunity: It is an encounter between pairwise adjacent node to exchange bundles. Routing decision: It is the decision that the DTN routing protocol needs to take in a contact opportunity. When a node carries a bundle and makes contact with another node, the decisions that it can take is: forward, copy or maintain (i.e. hold and don’t send) the bundle. 3.2. Architecture In the late 1990’s, the IPN project was initiated with the express aim of defining and developing the architecture for interoperability of terrestrial and interplanetary Internet, taking into account the huge differences of operational features and behaviors between them. From their initial studies and analysis, it was observed that the solutions adopted for IPN were also useful to terrestrial networks with respect to issues concerning fading and disconnections. As a consequence of these observations, a group from the Internet Research Task Force (IRTF) created a research group on delay tolerant networks. This group was known as Delay Tolerant Network Research Group (DTNRG). They were fully aware that in TCP/IP networks, the received packets are stored in intermediate nodes for a duration of a few milliseconds. In such networks, where there are numerous disconnections, these packets are simply discarded or lost, since there is no route in which that the packet could be forwarded. They took these facts into account when defining the purpose of trying to use and adapt these solutions for terrestrial networks [21], in particular, their main focus was addressed towards the domains of MANETs and VANETs. The DTNRG group produced the DTN architecture, which uses the strategy known as store-carry-and-forward. The objective is to deal with the disconnection problem due to long periods of delays. Firstly, the packet is fully received by an intermediate node. Subsequently, the node stores it until finding another adjacent node along with the transmission path to forward it to. This process is be repeated until the packet reaches its targeted destination. In the light of this, the
nodes require a huge amount of buffer space to grip and hold the packets until acknowledged by the receiver. Moreover, the retransmission algorithm(s) had to be designed in order to ensure optimum and seamless delivery from the source to the target destination. The time period (incubation duration) in which the packet is kept in the storage could reach hours or even days. It depends on the established expiry time for determining the lifetime of the packet to be in the network. This functionality is placed in a new layer called Bundle [22]. It is located below the Application and above the Transport layer of the TCP/IP stack, as shown in Fig. 1. The DTN applications generate messages, which vary in size, called application data units (ADUs). These messages are transformed into protocol data units (PDUs) that are called bundles (packet’s name in the Bundle Layer), which are stored and forwarded in DTN nodes along the dynamic transmission path. In Fig. 1, the layers below the Bundle Layer can switch between the different network protocol types that are hosted in the DTN nodes of the connecting networks. It is done in order to achieve interoperability between different types of networks. There is a module within the Bundle Layer called Convergence Layer which creates adapters for different types of networks, similar to the concept of drivers within an operating system. This is illustrated in Fig. 2, which shows the internal sub-layer and associated modules in the Bundle Layer. 3.3. Features and challenges One of the most important characteristics of a DTN is the difficulty of building an end-to-end path between the source and the target destination. This is no different in VANETs, except that there are cases in VANETs where the contact time between the two nodes is too short. In such cases it is necessary to maximize the use of this shortest availabale time. In [2], the concept of the DTN architecture for challenging internets is defined by violating one or more assumptions, restrictions, boundary conditions and functions that are necessary for the proper functioning of a TCP/IP network. These are: (1) existence of end-toend path, (2) a non extensive RTT value, and (3) a low probability of dropping packets. The DTN architecture challenge is designed to alter
142
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
waste of buffer storage and computing time required to maintain them. Establishing a reasonable estimation time to predict when the bundle will arrive at its destination is a difficult task. The complication is caused by those nodes which are still busy storing the bundle, rather than estimating the transmission transfer times. • Lifetime for a bundle: a lifetime is defined for every bundle. The time period that the bundle stays stored in a buffer must be lower than the lifetime. When this storage time expires, the bundle must be discarded from the buffer. This fact raises the following question: for how long will the bundle be stored? As there is a limited time span for the bundle to achieve or reach a contact along its communication path, the bundle may be discarded before it can even reach its destination.
Fig. 2. Simplified view of the internal architecture of the Bundle Layer.
or remove these functional characteristics to optimize its operability, whereby they become equally applicable to MANETs and VANETs. Some problems that reflect the challenges of DTNs to traditional TCP/IP style of networking are described as follows [23]: • Buffer problem: the strategy used by DTNs requires that the bundle be stored in the nodes. Therefore, the routing protocols must know how to deal with buffer usage in order not to have a high number of unnecessary bundle copies circulating at intermediate nodes in the network. This happens with the Epidemic routing protocol [7] where the overhead of bundles in the network is high, making it unscalable. • Unpredictability of contacts: in a DTN, there is a possibility that a node may be ignorant about the network, therefore, there is great unpredictability concerning new contactable nodes. Thus, a DTN routing protocol should look for other means of trying to estimate when new contacts will happen. • Notification of a received bundle at its target: when a bundle reaches its target there are still other copies of it in the network. They were stored in intermediate nodes, which causes a
The challenges of developing DTNs and their complexities are discussed in [24]. They have been divided into two main categories: socio-economic and technological. The first category deals with data privacy and the cost of providing it. Both these issues are outside the scope of this paper. The second category deals with the technical issues in a DTN such as synchronization, command–response delay timeout estimations, window sizings for bundles and storage, number of retransmissions attempts and their relative timings, etc. It is a horrendous task compound with difficulties of spreading general settings as parameters for the overall DTN infrastructure. Such settings are the new set of parameters for each network type meshed into the whole global network fabric. Routing protocols for DTN and their applicability to VANETs have to consider these issues to deal properly with the problems by offering good solutions in order to achieve reliable end-to-end communication, optimum performances and permit scalability with flexibility. 4. DTN routing Traditional routing assumes that protocols somehow manage to establish an end-to-end path between the source and the destination by using routing metrics to calculate, for example the number of hops to establish the best or most optimum path. In DTN, the aim is to establish a journey path so that the bundle can reach its target destination on time. The routing protocol
Fig. 3. Traditional versus DTN routing strategies.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
must take the maximum advantage of possible contacts that occur between the intervening nodes between the source and destination pair. The objective is to maximize the delivery rate, since there is no guarantee that a given bundle will reach its destination. A possible metric to include in this scenario is to perform a reachability analysis based on operational research techniques. The routing protocol will also have to manage the use of storage devices of intermediate nodes, as we shall see in some approaches, such as in the Epidemic routing, where they quickly fill the buffers of these devices and create congestion or buffer space overfills. Another important metric is the delay, whereby it is expected that the protocol can deliver a bundle to its destination as fast as possible within its time threshold period. Fig. 3 illustrates the difference between the traditional versus DTN routing strategies. In Fig. 3 (a) it shows a source node sending a bundle to an intermediate node. The middle node receives the bundle but it does not have any other node to forward the data. Because of this the bundle is lost. In Fig. 3 (b) it shows the strategy store-carryand-forward. In this strategy an intermediate node stores the bundle until it can find the destination node or another node to which it can forward the bundle. Table 1 list some key critical differences between the traditional VANET/MANET and DTN routings. In traditional routing it assumes that it will always be able to create a route through an existing endto-end source-destination pathway, which differs from the the DTN routing strategy in which this type of connection hardly ever occurs. In traditional routing, delays tend to be shorter, since they have their routes already defined at the time that the packet leaves the source node. This increases the probability that a packet will reach the destination node. The traditional routing protocol tries to be symmetrical through the exchange of command-response messages. They are used to maintain the routing table of the nodes. This is different from DTN in which the hops of the packet depends upon the availability of a contact and the duration of reaching it. It is an opportunistic model without certainties. This causes longer delays, less transmission reliability and portrays an asymmetrical routing behavior pattern. Fig. 4 shows the proposed extended and adapted taxonomy for DTN routing originating from this research work. The proposed taxonomy has two categories: routing with and without infrastructure assistance. In the first case the nodes take advantage of an infrastructure in which there are no inherent nodes in the network. In the second case the protocols do not use any auxiliary infrastructure. For non-assisted routing, there are three subtypes and approaches: • Naive replication: the routing protocols make multiple bundle copies without making any comparison between the contactable candidates for receiving the copy. • Utility forwarding: each node maintains a metric to qualify which contactable candidate will receive the bundle. There is no replication, and there is only a single copy of each bundle in the network.
Table 1 Difference between traditional VANET/MANET and DTN routing strategies. Features/functions
Traditional routing in VANET/MANET
DTN routing
End-to-end connectivity Delivery delay of bundle Round trip ACK delay Throughput Transmission reliability Routing behavior Scalability of nodes Scalability of bundles
Continuous within range Short Short High High Symmetric High Low
Intermittent Long Long Low Low Asymmetric Low High
143
• Hybrid: spreading several copies of the same bundle provides more chances of it reaching its destination. Hybrid protocols combine the mechanism of the previous two approaches. The aim is to use the advantages of both. For assisted routing, there are two subtypes and approaches:
• Mobile node relay: a mobile agent is created and used to increase the opportunities to reach a contact, and ultimately the destination. It produces better performance and delivery of bundles and ultimately bundles to reach the destination efficiently and optimally. • Stationary node deployment: attempts to increase the opportunities to reach contacts by strategically locating and placing fixed devices in the network for bundles and ultimately bundles to reach the destination optimally. The subtype VDTNs included in the proposed taxonomy have the following characteristics for vehicular network environments. 4.1. Naive replication 4.1.1. Direct Delivery The idea of Direct Delivery [25] is to always keep the bundle, until the destination is found, i.e. whenever a source node generates a bundle, that node will host the bundle until it attains direct contact with the target, thus delivering the bundle. 4.1.2. Epidemic The idea of using the Epidemic protocol [7] is to increase as much as possible the probability of a given bundle to reach the destination. In order to achieve this task a flooding strategy is used. Consider a situation when a node A contacts another node B. They exchange with each other the list of bundles that each one has. The bundles of A which are not in B are copied and vice versa. Thus all the copies are kept at both nodes. However, both nodes A and B in the example are still running the same process with other contact nodes as well. This causes a flooding of bundles in the network, which can result in congestions and buffer overflows. When one of them finds the destination the bundle is transferred. The node which delivered the bundle can delete it from the storage device. The Epidemic protocol creates an efficient delivery rate with minimum delay when network resources are unlimited, which in reality is never the case. However it can unnecessarily fill the buffer storage devices at intervening nodes. This generates a waste of memory resources and processing capacities. Thus, the protocol is deemed inefficient and unscalable because it generates an increasing number of bundles at multiple nodes. 4.1.3. Spray-And-Wait protocol The Spray-And-Wait protocol [5] is similar to the approach used by the Epidemic protocol [7]. It generates multiple copies of the bundle in the various contactable nodes in the network, while recording and tracking the number of such copies that are relayed. This scheme is implemented with the intent of controlling flooding and reducing processing overheads. This control is made by choosing a variable L whose value determines the number of copies of bundles that the node spreads. The Spray-And-Wait protocol has two phases in its operation as follows: • Spray phase: for each bundle generated at the source node the variable L is initialized with reference to it. As it finds other neighboring contactable nodes that do not have at least one copy, the source node updates the value of L, retains a copy and transfers the bundle with a given number to it. Thus both
144
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 4. Our taxonomy of DTN routing protocols extended with VDTN categories.
nodes have the responsibility to continue carrying the copies until they find another neighbor which does not have a copy. When L = 1 in a particular node, it enters into the waitphase. • Wait phase: the node with L = 1 can no longer copy the bundle. It transfers the bundle when it finds the an available intervening or destination node. In other words it will “wait” until it discovers the available receiving node that is targeting delivery towards the ultimate destination in order to forward the bundle.
As defined above they will go into the wait mode. At the time T3 the node 1 enters in the wait mode. It finds the nodes 2 and 4 but it does not copy the bundle for any of them. The node 1 will transfer the bundle only when it finally finds the destination target at time T4. Despite using a similar approach to the Epidemic scheme with its weaknesses, the Spray-And-Wait technique achieves a good scalability, even when the network has a limited number of nodes.
They are several approaches in order to know how many bundles will be retained and how many will be copied. One of them is the binary approach. Its operation is shown in Fig. 5. Referring to Fig. 5, at time T1 the source node generates a bundle and an L variable is created and initialized with the value 4. When it finds the first available contactable node, the source must retain L/2 copies and transmit the remaining L/2. In this case each node will have two copies. In T2 the node 1 finds the node 3. The same process mentioned above is performed. Now both nodes have only one copy.
4.2.1. First contact (FC) The FC protocol [26] is a simple approach, which works as follows: when a node is carrying a bundle and there are many different possibilities of contactable nodes, it randomly chooses one to forward the bundle. If there is no contactable node at that time, the source node stores the bundle until the first contactable node is reached and then forwards the bundle to it. The FC scheme has a very simple implementation but its performance is very low in networks with a high number of nodes. The
4.2. Utility forwarding
Fig. 5. Operation of binary Spray-And-Wait.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
145
Fig. 6. The MaxProp routing strategy.
reason is that the bundle is randomly forwarded and there are no copies retained in the network for alternative routing or retransmissions. Therefore, there is a high probability of the bundle never reaching the ultimate target destination. 4.2.2. Seek and focus This protocol is proposed in [27]. It is a hybrid approach with a choice of routing based upon a utility value with a random procedure. The seek and focus protocol works on three phases as follows:
• Seek phase: this phase occurs when the node that owns the current bundle custodian, has a value of the utility function that is greater than the preset threshold Uft (called focus threshold). The node uses a randomized routing scheme with probability P∈ (0, 1). Therefore when it contacts a neighbor node, it forwards the bundle to it with probability P. When a neighbor receives the custody of the bundle with a Uf (utility) value greater than the threshold, the protocol enters in the focus phase. • Focus phase: the node with custody of the bundle has a Uf greater than the threshold. For a certain period of time, it performs the routing based on Uf , i.e. it only forwards the bundle to a neighbor node with a higher Uf value. When the time expires the protocol enters in the re-seek phase. • Re-seek phase: a search time is established and the value of Uft is set to the current Uf . A random routing is performed until a neighbor with a larger value of Uf is found or when the search time expires. The Uf is set to the default value and returns to the seek phase (if Uf
Uft ). The scheme has the potential drawback of entering a never ending cyclic loop, degrading overall network performance. 4.3. Hybrid 4.3.1. PROPHET — Probabilistic Routing Protocol using History of Encounters and Transitivity As proposed in [6], the PROPHET assumes that the movements of the nodes are predictable. It expects that more than two nodes have contacts in order to increase the likelihood of them making contact in the future. Based upon this principle, it makes use of a metric called delivery predictability of a to b, i.e. P(a, b) = (0, 1). Each time a meeting between a and b occurs the Eq. (1) is used to update the value P(a, b). P(a, b) = P(a, b)old + (1 − P(a, b)old ) • PINIT
(1)
Where PINIT belongs to the interval (0, 1). It is the initial probability. When the nodes a and b lose contact, the value of P(a, b) must age, being reduced in the process, since the possibility of them meeting
again will probably decrease. This probability is updated by applying Eq. (2). P(a, b) = P(a, b)old • ck
(2)
Where c belongs to the interval (0, 1). It is the constant of aging and k is the time since the last update of P(a, b). Another feature of the delivery predictability is the transitivity. It shows whether a node a often finds node b and if node b meets a node c several times. If so, it can be inferred that c is a good node to forward messages to a. Eq. (3) shows how P(c, a) is calculated for transitivity. P(c, a) = P(c, a)old + (1 − P(c, a)old ) • P(c, b) • P(c, a) • P(b, a) • b
(3)
Where b belongs to the interval (0, 1). It is the rate of impact of transitivity. The PROPHET protocol makes the routing decisions based on this metric. 4.3.2. MaxProp This protocol is proposed in [8]. It addresses scenarios in which either transfer duration or storage is a limited resource in the network. The MaxProp uses a controlled Epidemic approach. When a contact occurs, it ranks all bundles to determine the order in which they will be copied. The bundle classification is shown in Fig. 6. It can be observed that the bundles with higher forwarding priorities are those with the number of hops lower than threshold, which is a value based upon the average number of bytes transferred. Bundles with a value greater than or equal to threshold are classified according to the estimated delivery probability. This procedure is done in a similar manner to the delivery predictability of PROPHET. It expects that a bundle has more chances of being delivered by a node which has previously found its target more often. Consider N as a set of network nodes. Each node i∈ N stores pij which is the probability that i finds j, where initial value pij is 1/(|N| − 1). Every time the node i finds node j, the value of pij is incremented by 1, and then all values are standardized to sum 1 again. For example: when the node i has four neighbors with probabilities pi1 = pi2 = pi3 = pi4 = 0.25. Suppose i finds node 1, then pi1 = 1.25, so the renormalization is performed by dividing all probabilities by 2, thus the values are: pi1 = 0.625, pi2 = pi3 = pi4 = 0.125. With these probabilities, the node can calculate the lower cost c(i, i + 1, . . . d) of all possible paths from i to d with n hops, which is calculated as follows: c(i, i + 1, . . . , d) =
d−1 x=1
1 − pxx+1
(4)
The MaxProp also considers buffer management in its scheme of operation, where the first bundles to be discarded are the ones with
146
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
lower sorted priorities. It also uses a confirmation notification mechanism of ACKS to indicate that a bundle has reached its destination. When a node receives this notification, it discards the bundle from its buffer storage. 4.3.3. RAPID — Resource Allocation Protocol for Intentional DTN The RAPID protocol proposed in [28], was designed to explicitly optimize a network administrator-specified routing metric set of parameters. It makes its routing decisions with the aim of optimizing the metric, such as the minimization of average delays of holding and transmitting a bundle. It seeks to control the use of network resources, such as bandwidth usage, bundle holding times, bundle replication and and buffer storage capacity allocation, which are constrained by their finiteness. It uses a utility function Ui that shows how much the bundle i contributes to the optimization of the metric. The function achieves this optimization by assisting in choosing which bundle from the buffer of a node will be replicated, which in this case, it chooses the one that has the largest value for the utility function. The RAPID protocol is functionally divided into three algorithmic components: • Selection algorithm: that determines which bundle to transmit during the transfer opportunity, based on the bundle’s utility value. • Inference algorithm: that estimates the utility of a bundle for a given routing metric. • Control channel algorithm process: that propagates the information required for the inference algorithm execution. Between all of them they acquire and build sufficient knowledge of the network without having to add another component or consult another source to provide network information in executing the protocol. Fig. 7 shows what happens when two nodes come into contact by executing the operation of the protocol that runs in the following four phases: • Initialization: node x meets node y, then y sends some information to x, such as which bundles and associated data in order to help x execute the inference utilities bundle during its evaluation. • Direct Delivery: since y sent the data, the node x transfers the bundles with the destination y. The order of transfer is done according to the utility value Ui of each bundle i. The order is
important because the contact time can be very short and may not have sufficient time to transfer the complete set of bundles, hence giving higher priority to those with the highest utility value. In Fig. 7, U2 >U1 . Therefore the bundle 2 is transferred before the bundle 1. • Replication: the bundles that are already in y are ignored for replication. For the others, the value dUi is estimated. It shows the increase in Ui by i replication. The bundles are replicated in the sequence order to the value dUi /Si , where Si denotes the size of bundle i. In Fig. 7, dU4 /S4 >dU3 /S3 . Therefore the bundle 4 is replicated before the bundle 3. • Termination: stage takes place when either all the bundles have been successfully transferred or if the nodes have lost contact.
4.4. Mobile node relay 4.4.1. Routing with data mule The Data Mule [29] is designed to perform traffic routing in WSN. Data Mules are mobile intermediary agent nodes. They are similar to sensors attached to animals, people or vehicles moving randomly in the network environment. On their rendezvous they carry the bundle and accumulated routing data until they find an Access Point (AP) node where they transfer the bundle and routing information. The Virtual Data Mule (VDM) [38] is an extension of the idea for routing bundles using the Data Mule principle. In this method, the Data Mule as a singular carrier is formed by a set of vehicles that configure a VDM network environment. The accumulated data is interpreted to elect a suitable vehicle to take the current role of VDM, based on such information as: speed, acceleration, position and trajectory. With this principle and ensuing information, two mechanisms are used to determine the role of the VDM: the first uses fuzzy logic in conjunction with the second analysis of the geometric positions and movements of the elected vehicle. 4.4.2. Routing using Message Ferry Two approaches of nodes that use Message Ferry (MF) are proposed [30]. MF has the task of carrying the bundles as messages to the recipient destination in a sparse network scenario. The calculated trajectory information of the MF is known by other nodes when contact is established during access link signal transmission activities. The first approach is the Node Initiated MF (NIMF) whereby the MF moves in a predefined trajectory. The regular nodes (not MF) try to contact the MF to forward the bundle as a message to the recipient.
Fig. 7. Connection and bundle delivery made between node x and y during RAPID routing protocol execution.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
147
Fig. 8. Four approaches in forwarding and delivery bundles with multiple ferries.
The second approach is called Ferry Initiated MF (FIMF) whereby the MF seeks a regular node to see if it has a bundle message to forward. 4.4.3. Routing using Multiple Ferries This type of routing is an extension of the use of a single MF. Multiple ferries may be necessary in many situations due to performance and robustness concerns. In [31], four approaches using multiple ferries are proposed. They are the Single-Routing Algorithm (SIRA), Multi-Route Algorithm (MURA), Node Relaying Algorithm (NGA) and the Ferry Relaying Algorithm (FRA), which are described below: • SIRA: the n MFs follow the same route at different times, these routes are calculated using heuristics based upon the logic of the traveling salesman problem (TSP) [32]. • MURA: the MFs can take multiples routes, but in this case, the MFs do not exchange data mutually. In order to compute the routes, the same algorithm can be applied to SIRA [31]. • NRA: the MFs can exchange data using stationary nodes by forwarding the bundles. In NRA, the environment is divided into a
set of cells that form a grid, whereby the MFs have the role of carrying the data in the cells, and the stationary nodes, the role of transmit data between cells. • FRA: unlike the NRA, MFs can directly exchange data. FRA needs to synchronize the MFs, so that they can meet to achieve transfer bundles. It is unlike NRA, which uses stationary nodes to communicate between the MFs without needing synchronization to transfer bundles. These four approaches are illustrated in Fig. 8. 4.5. Stationary node deployment 4.5.1. Routing using throwboxes Throwboxes are small and cheap devices equipped with wireless interfaces with storage capacity [33]. The routing is carried out as represented in Fig. 9. When the source node S wants to send a bundle to the receiver R. In this case since node S is close to the throwbox, it just forwards
Fig. 9. DTN routing using throwboxes.
148
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 10. Bundle forwarding options in a intersection.
the bundle to it (as shown in T1). The throwbox stores the bundle to forward to node R as shown in T2 of Fig. 9. 4.5.2. Routing with relay node in a VDTN The design problem [34] of routing with relay node in a VDTN aims at finding the relay node location that minimizes the network transmission cost, while providing full connectivity between the users located in remote regions. This approach uses relay nodes to store bundles. The mobile nodes (buses, cars, trucks) can exchange these bundles by using these relay nodes. These mobile nodes store bundles to communicate with remote terminals. The problem is modeled using a graph of the network and the traffic rate using two heuristics (i) Minimizing Relay Node and Hop Count (MRH) and (ii) Minimizing Relay Node and Delivery Time (MRD). 4.6. VDTN - utility forwarding 4.6.1. VADD — Vehicle-Assisted Data Delivery in Vehicular Ad Hoc Networks VADD deals with the problem of efficient data delivery as bundles in VANETs [11]. It is a routing protocol designed for a vehicular environment that uses the idea of store-carry-and-forward. As shown in Fig. 10, the VADD uses an expected delay metric to decide which set of intersections (e.g. Ia → Ib or Ia → Ic → Id → Ib ) the bundle will follow to reach the restaurant (target fixed node) as quickly as possible. To decide this the vehicle v takes into account the ways the North, South, East or West its position. The VADD works upon three basic principles: • Forward the bundle through the wireless channel as much as possible, since it will reach the destination faster than using the vehicles to carry it. • If a bundle must be carried in a transmission path along the road by a vehicle, the track with the highest speed of the flow of vehicles must be chosen.
• Due to the unpredictability of a vehicular environment, there is no guarantee that a given bundle can reach its target. Therefore, the choice of the optimal transmission path is dynamically made on a forwarding process basis. The operation of VADD can be envisaged in three states: (i) intersection mode, (ii) straightway mode and (iii) destination mode. The situation of the intersection where a node needs to determine by choice which route the bundle is sent is shown in Fig. 10. The VADD uses the expected delay metric principle for bundle delivery which is calculated according to Eq. (5): dij = (1 − e−R
•
qij
)•
lij • c lij • + eR qij • R vij
(5)
where dij denotes the expected delivery delay between crosses i and j (rij ), R is the transmission range, qij is the vehicular density at rij , c is a constant in vij , average speed in rij and lij the Euclidian distance of rij . Having chosen from the result of dij in which track the bundle rij is to be forwarded, the next task is to choose which of the available contactable nodes will be chosen to perform the routing of the bundles. The authors proposed three versions of VADD. • The first version of the Location First Probe (L-VADD) makes the choice based on the greedy geographic algorithm. However this version suffers from the cyclical infinite loop routing problem. • The second version is the Direction First Probe (D-VADD) which is free of the problems with loops. It makes its choices based upon the direction of the neighboring node, however, it considerably increases the forwarding transmission path length, increasing delivery delay times. • The third proposed version is the Hybrid-VADD (H-VADD). It works the same way as the L-VADD in which a loop is generally not detected. If a loop occurs, it enters the D-VADD mode.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
The results from the experiments of the proposed scenario showed that the H-VADD has the best vehicular behavior and performance. When the VADD is in a straightway mode, its behavior is that of the GPSR protocol [19]. It always uses the greedy algorithm which chooses the neighbor closest to the destination. If there is no available contactable node in the vicinity at this time, the vehicle carries the bundle until it can forward the data at the earliest opportunity at the next encounter with a contactable node. In the destination mode, the vehicle is within the range of the target, therefore, it delivers the bundle directly to it. 4.6.2. FFRDV — Fastest-Ferry Routing in DTN-enabled Vehicular Ad Hoc Networks The FFRDV protocol [10] is a unicast routing scheme for a VANET, where partitions usually occur due to the dynamic topology. It was developed specifically for vehicular networks in multi-track highway road environments. It assumes that the position information of the nodes is achieved by means of connectivity to the GPS. The FFRDV divides the highway into blocks, as shown in Fig. 11. When a node is carrying a bundle, it is called the Message Ferry (MF). When it forwards the bundle to another node, it automatically becomes a common node again (a node that does not carry a bundle). Referring to Fig. 11, the scheme of the protocol works as as follows: Imagine that initially there was an accident, a collision between two vehicles, this information must be propagated in the vicinity of a particular region to alert vehicle drivers to take precautions. It then chooses the Initial Ferry (IF), which is the node that has the responsibility of bringing the bundle to another block, in this case, when the IF reaches block 1. It then sends a hello broadcast message to the nodes in this block 1. In response, it receives the current position of the nodes, time and the current speed. It then chooses the fastest vehicle (node) K from the nodes in the block 1 and the velocity of IF is > than the velocity K. The IF forwards its bundle to the node K then it is called Dynamic Ferry (DF). DF now assumes the responsibility of carrying the bundle, whereby the process is repeated until the bundle reaches its target destination. Whenever an IF or DF gets to a block and does not find a faster node, the bundle is kept with it until they find a block with a higher speed node to forward the bundle. 4.6.3. GeOpps — Geographical Opportunistic Routing for Vehicular Networks The GeOpps protocol was proposed in [12]. It takes the routing decisions through the aid of a navigational system that suggests routes to neighbors of a vehicle as nodes. Thereby, it can estimate which neighbor shall have lower delay to determine what the next hop of the bundle should be. When the navigational system suggests routes to a vehicle, there will be a point which is nearest to the destination called the Nearest Point (NP). This point is calculated from all the suggested routes of a vehicle, whereby the NP is used in the calculation of the utility function to determine the optimum route.
149
Suppose that a vehicle has the NPs of its neighbors as well as their current positions. From these positions, it can then calculate the Estimated Time of Arrival (ETA) which is the time the neighbor takes to get to a certain point, in this case the NP. This value is then added to the ETA of the NP leading to the point of the target destination, whereby the metric value of the estimated time of arrival of the bundles to the recipient is obtained Minimum Estimated Time of Delivery for the bundle (METD), and is calculated by using Eq. (6): METD = ETA(Npos, NP) + ETA(NP, Dpos)
(6)
To know the position of the neighbors, each vehicle broadcast its position to the others periodically in order that when a vehicle needs to send a bundle to the destination, the protocol computes the value of METD of each neighbor, including the vehicle which wants to forward the bundle. If the node with the current custody of the bundle is the one with the higher METD, it keeps the bundle. Otherwise it forwards the bundle to the neighbor with the highest METD. This process continues until the bundle reaches its target destination. 4.7. VDTN — Hybrid 4.7.1. GeoSpray The GeoSpray was proposed in [35], aims to optimize the resources used in the network, including, storage, bandwidth and energy, while maximizing the delivery probability and minimizing delay and transmission overheads. It combines the Spray-And-Wait and GeoOpps protocols into single union. Its routing decision is made as follows: Suppose that the nodes X and Y are in contact. X sends L/2 copies of the bundle and it will keep a set of L/2 if the METD of Y is greater than the METD of X and the number L of copies of K is greater than 1. If L is equal to 1, then the node X will no longer replicate K, and it will only forward it if its neighbor has a higher METD value. From the results of the the experiments [35], it was shown that GeoSpray achieved superior delivery rates than GeOpps, but it had a greater overhead once GeoSpray had made replicas of the bundles. 4.7.2. VDTN-ToD — routing protocol VANET/DTN based on Trend Of Delivery The VDTN-ToD, proposed in [9], uses the metric of Trend Of Delivery (ToD) to assist in the routing decisions. Using this metric, a certain network node will know when it is best to keep, forward or copy a bundle in order to improve the delivery rate and reduce the delay of the bundle. The VDTN-ToD also uses a scheme of disclosure and maintenance of location messages based upon the technique called Adaptive Detection Coverage (ADC)[36] using fuzzy logic and computational intelligence. In ADC, when a vehicle traverses a portion of its transmission radius, it broadcast a message position (mp ) to disseminate its position relative to other vehicles. Before deciding whether it should broadcast a new mp , it compares the position estimated against the real position value. After each interval, each ti compares the real vehicle position Pr with the predicted position Pp . If the absolute difference between them is greater than the constant e, a new
Fig. 11. Operation of FFRDV routing protocol showing vehicle crash event.
150
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Table 2 Fuzzy rules for setting the trend of delivery. Distance
Very close
Near
Direction
High
Medium
Low
High
Medium
Low
High
Medium
Low
High
Medium
Low
Very good Good Bad Awful
EX EX EX EX
EX EX EX EX
EX EX EX EX
VG GO PO VP
VG GO PO PO
GO FA FA PO
GO FA VP AW
GO FA VP VP
FA PO PO VP
FA FA VP AW
PO PO VP AW
PO PO VP AW
Speed
Far
Speed
Speed
mp is broadcast to all neighbors. Whenever a node i receives a mp from another node j, it stores that in its routing table and estimates how long they will be in contact. If in the meantime node i does not receive any other mp from j, then i removes the entry from its routing table. The value of the ToD is achieved through the use of fuzzy logic [37] and computational intelligence that seeks to discover its “best nodal neighbor” through node mobility and how good the node is at forwarding or copying a bundle. The ToD is based upon three variables: direction (yi,d ), distance (Xi,d ) and speed (ti,d ), where i is the node with the bundle and d is the final destination of the bundle. The direction indicates how much closer is i to d. In this way, an which indiangle h is calculated from between the direction vector u cates the direction of i and the vector facing the recipient node v , so the angle between them indicates how good or bad is the value (yi,d ). The associated values are: awful, bad, good and very good. For the distance variable, four values are considered: very close, near, far, and very far, each of them is achieved by the value of the transmission radius defined as:
• • • •
Very far
Very close: x < R; Near: R < x ≤ 2 • R; Far: 2 • R < x ≤ 3 • R; Very far: x > 3 • R.
Where R is the transmission radius and x is the distance from a node to the destination. In the case of the speed variable, the values low, medium and high are defined. Each of them indicating how fast a node is traveling. Given the variables (yi,d ), (Xi,d ) and (ti,d ), the value of the ToD is set to seven values: excellent (EX), very good (VG), good (GO), fair (FA), poor (PO), very poor (VP) and awful (AW) as depicted in Table 2, which can easily be translated as messages to inform the nodes in the VANET of what is going on. 4.7.3. TrendOfSpray This idea has been used to implement ToD in the Spray-And-Wait protocol, in order to limit the number L of copies [13]. Thus, the ToD is applied to choose the L copies, whereas in Spray-And-Wait, these copies are spread to the first neighbors found in their immediate vicinity. The pseudo-code in Fig. 12 shows how the routing decision is made. It can be observed that before making decisions based on ToD, it checks whether the node i is the source node. In this case, it always copies directly to j (where the bundle is still L> 1). This decision is taken due to the possibility of having fixed source nodes in some VANET application scenarios. It spreads the bundle to its best neighbor whenever it has the opportunity. It can be seen in the pseudo-code that routing decisions are different when compared to VDTN-ToD, since the a (the value in experiment is 0.05) constant indicates the minimum difference that j must have with respect to node i. This decision is made in order
Speed
to have the best selection of neighbors, since they may show values even greater than that of the basic ToD’s value. For instance, when the ToD node j is greater than the node i with a difference greater than or equal to alpha, another check is performed. It examines whether or not j has a ToD that is a subset {excellent, very good, good}. When this occurs, the bundle is transferred to j, since it has a high chance of finding the destination, thus avoiding spreading unnecessary copies of bundles in the network. Moreover, the bundles are transferred even when L = 1, allowing the spread to take place successfully. If the ToD of j is not a subset {excellent, very good, good}, the bundle is copied, dividing the number of copies between the two nodes. In all other case, the bundle is maintained at node i. When a node contacts another node, each one has a list of bundles and must choose the order in which bundles should be transmitted. This decision is taken on the value of L, so the first bundles are those with the highest values of L, aiming to prioritize those bundles that were least spread out. 4.7.4. PROPHETorToD and PROPHET+ToD PROPHET has its own routing strategy which is based on nodal contactable encounter history. By combining the ToD and the PROPHET strategies, two approaches were created, called PROPHETorToD and PROPHET+ToD [13]. The first approach is performed as an “or” between the two strategies when a bundle is chosen from the top of the queue and it is ready for forwarding at the time it meets the sending conditions of the PROPHET protocol. If the protocol does not authorize the sending because it does not meet the conditions then it executes the VDTN-ToD strategy. This approach is shown in the flowchart in Fig. 13.
Fig. 12. Routing decision making pseudo-code of TrendOfSpray.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
151
Fig. 13. Flowchart of the routing decision of the PROPHETorToD.
In the second approach, the first bundle is always chosen; thus seeking the neighbor k that adds the greatest delivery probability value, which is added to ToD according to the decision making shown in the flowchart in Fig. 14. 4.8. Comparative tables of VDTN routing protocols In summary Tables 3 and 4 show a comparison of the protocols presented in this paper. In the Table 3, scalability has three values: • Low: Protocols that make copies of bundles without control. • Medium: Protocols that make some control of bundles of number of copies. • High: Protocols that limit number of copies of bundle. In the Table 4, buffer capacity has two values: • Limited: The buffer space has a limited value. • Not specified: Unspecified by the designer/author. 5. Results of new VDTN Hybrid routing protocols We present the results and evaluation of the new set of VDTN routing protocols which have been shown in the Fig. 4 taxonomy, basically the Spray-And-Wait protocol with TrendOfSpray protocol and the PROPHET protocol as PROPHETorToD and PROPHET+ToD protocols under our scenario.
5.1. Scenario description We used the Simulation Tool of Urban Mobility (SUMO) [38] to create the scenario. In our scenario, we evaluate the behavior of ToD mechanism in Spray-And-Wait and PROPHET routing protocols and performing the following set of comparisons: • Spray-And-Wait protocol with TrendOfSpray protocol. • The PROPHET protocol with the PROPHET+ToD PROPHETorToD protocols.
and
The Fig. 15 shows a visual representation of the scenario used for the experiments. This scenario consists of four regions, represented by squares numbered 0 to 3, which are fixed DTN regions. The gateways of each DTN region exchange bundles with each other using the vehicles of the roads as carriers to transport them. The vehicles are randomly generated in this scenario which consist of four tracks, two in one direction and the other two in the opposite direction of the road. We also assume that all vehicles of the network knows the location of gateways of regions (e.g. latitude and longitude) through the use of the GPS or its variants. This is necessary to calculate the value of the ToD for each network node (vehicle or gateway) since they use the value of ToD to determine if a bundle is forwarded, copied or maintained. Table 5 shows other critical information related to the scenario which is used in the simulated experiments.
152
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 14. Flowchart of the routing decision of the PROPHET+ToD.
Using the Nakagami propagation model [39], it is not possible to obtain the exact value of the radius during simulation although such information is essential to carry out the calculations of the ToD. Therefore the value of the transmission radius used in the simulation (as shown in Table 5) may be smaller. The Nakagami propagation model was used in our experiments because it has a behavior pattern close to that observed in VANET environments [40]. Another critical feature of the scenario used in the simulation is that it is sparse, since the density of the number vehicles is low, given the length of the traffic lane. For example, with 40 vehicles, the density is (40/9.738km), which is approximately 4.1077 vehicle/km, giving the average distance between vehicles in the same lane to be (1km x 1 vehicles) / 4.107 vehicles, which is approximately 243m, and each vehicle can travel at speeds ranging between 36km/h to 90km/h that can eventually result in contact between vehicles to be lost.
5.2. Protocol parameters The value of the L for the Spray-And-Wait is calculated using Eq. (7):
L = N ∗ 0.1
(7)
Where N is the number of network nodes. In Eq. (7) the value of L is greater than or equal to 10% of the value of N. According to [37], satisfactory values of L are around 10% of the total number of nodes in the network. In the simulation we assume that gateways of regions know the N value. The values of the parameters in the PROPHET routing protocols are PINIT = 0.5, c = 0.98 and b = 0.25.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
153
Table 3 Comparative table of protocols without infrastructure. Protocol
Routing strategy
Network information
Method of classification of neighbors
Method of classification of bundles
Scalability
Overhead
Direct Delivery Epidemic Spray-And-Wait FC Seek and focus PROPHET MaxProp RAPID VADD
Forwarding Replication Replication Forwarding Forwarding Replication Replication Replication Forwarding
No No Estimate L No No History of encounters History of encounters Estimate dUi / Si GPS and digital map
Not specified Not specified Not specified Not specified Not specified Not specified Shortest path dUi / Si Not specified
High Low High High High Medium Low Medium High
Low High low Low Low Medium High Medium Low
FFRDV GeOpps GeoSpray
Forwarding Forwarding Forwarding and replication Forwarding and replication Forwarding and replication Forwarding and replication Forwarding and replication
GPS Navigation system Navigation system
No No No No Uf P(a, b) Shortest path No Expected delay of delivery Vehicle speed METD METD
Not specified Not specified Not specified
High High High
Low Low Low
Destination position
ToD
ToD
Medium
Medium
Value of L
High
Low
FIFO or ToD
Medium
Medium
FIFO
Medium
Medium
VDTN-ToD TrendOfSpray PROPHETorToD PROPHET+ToD
Estimate L and ToD destination position History of encounters P(a, b) or ToD and destination position History of encounters P(a, b) + ToD and destination position
Table 4 Comparative table of protocols with infrastructure. Protocol
Movement
Type of infrastructure
Buffer capacity
Data Mule VDM MF SIRA MURA NRA FRA Throwboxes Relay node VDTN
Random movement Deterministic movement Deterministic movement Deterministic movement Deterministic movement Deterministic movement Deterministic movement Stationary Stationary
Data mules Vehicles Ferries Ferries Ferries Ferries Ferries Throwboxes Relay nodes
Limited Not specified Limited Limited Limited Limited Limited Not specified Limited
In the experiments the vehicles have no extra information about the likelihood of future contacts among them. Thus, the value of 0.5 was placed for PINIT, as suggested in [41].
The delivery rate is calculated according to Eq. (8): Delivery rate = Br /Bg
(8)
5.3. Evaluation metrics The three key metrics that are used in this work are [14],[42]: delivery rate, overhead and average delay. The delivery rate is an important metric because it indicates the percentage of bundles delivered to the destination node. The overhead shows the cost caused by transfers and bundles of copies. Finally, the average delay calculates how longs it takes for a particular bundle to exit the source node and reaching the destination node. A DTN routing protocol is deemed efficient if it maximizes the delivery rate and at the same time minimizes the overheads. It is a characteristic of DTN routing protocols and the applications to inherently tolerate long delays. However, it is advantageous and beneficial for applications that the routing protocol can deliver the bundle with the least possible delay to achieve overall system and network wide efficiency. For the calculation of the three metrics during the simulated experiments, Bg is defined as the number of bundles generated, Btc is defined as the number of transfers of bundles during routing, Bc is defined as the number of bundles of copies made during transfers from source to destination, Br is defined as the number of bundles delivered to the destination and Bai is defined as the time taken for the bundle i leaving the source node and arriving at the destination node.
The overhead is calculated according to Eq. (9): Overhead = [(Bc + Btc ) − Br ]/Bg
(9)
Note that in Eq. (9) the best case is when Btc +Bc = Br . This occurs when the number of hops of each bundle delivered to the destination is 1, then the overhead is equal to 0. For example, the Direct Delivery routing protocol (as explained in Section 4.1.1) has overhead equal to 0. The average delay is calculated according to Eq. (10): Average delay =
Br i=1
Bai /Br
(10)
Eq. (10) calculates the average time a bundle leaves the source node and reaches the destination node. 5.4. Analysis and evaluation of ToD applied to Spray-And-Wait From Fig. 16, it can be that TrendOfSpray has a lower delivery rate than the Spray-And-Wait.
154
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 15. Simulation scenario used in the experiments.
We can observe that when the number of nodes is equal to 19, 24, and 29, the value of L is equal to 2 or 3 according to Eq. (7) per calculations: N = 19, L = 19 * 0.1 = 2 N = 24, L = 24 * 0.1 = 3 N = 29, L = 29 * 0.1 = 3 In such cases the TrendOfSpray has a delivery rate below the Spray-And-Wait because estimates by ToD indicated incorrectly for
node to perform transmission. An example of such situation is shown in Fig. 17. In T1 the vehicle node b sends a hello message to the gateway of the region 0 with the ToD value of 0.25. Then the gateway of the region 0 records the vehicle node b as its neighbor and also stores the ToD value of vehicle node b in ToD’s routing table. In T2 the vehicle node a approaches the gateway of the region 0 and sends a message to the gateway with the ToD value of 0.33. Also the gateway registers the vehicle node as its neighbor and stores the ToD value of the vehicle node a in ToD’s routing table.
Table 5 Scenario configurations. Parameter
Configuration
Simulated environment area Total of road in simulated environment Number of nodes Gateway regions
1970m x 1750m 9.738km 14, 19, 24, 29, 34, 39, 44 4 nodes are the gateways of regions 5MB 300m (10, 15, 20, 25)m/s
Buffer size Transmission radius Maximum speed of nodes (varies depending on the vehicle) Propagation model Model mobility Size of bundles Number of generated bundles Simulation time Bundle lifetime Amount of simulations for each scenario Confidence interval
Using Nakagami model Using the Krauss Car-Following model (512, 1024, 2048, 5096) bytes 471 500 sec 200 sec 33 95%
Fig. 16. Delivery rate comparison of Spray-And-Wait and TrendOfSpray.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
155
Fig. 17. An example of the situation where the ToD fails.
In T3 the region 0 generates the bundle m which is for region 2 and, based on the number of network nodes, calculated the value of L = 2. At time T4 the gateway of the region 0 decides to copy the bundle m to one of the neighboring vehicles. Based on ToD’s routing table, the gateway of region 0 makes a copy of bundle m for the vehicle node that has the largest ToD value in the routing table, in this case the vehicle node a. In T5 the vehicle node a moves away from vehicle node b, (i.e. the vehicle node a is moving at a higher speed than vehicle node b) and changes its direction, due to its route, so that the vehicle node a begins to distance itself from the gateway of region 2, which is the destination of the bundle m and approaching the gateway of region 1. In T6 the vehicle node b enters in contact with the gateway of the region 2, which is the destination of the bundle m, but as b does not carry the bundle m, m is lost. Note that the node could have found another node c where it could transferred bundle m. As the L bundle m equals 1, the node would only transfer it to the ToD(a, 2) ≤ ToD(c, 2) and only if the value of ToD(c, 2) was within the set of the category of parameters excellent, very good and good, but this situation could not occur because the network is sparse. Fig. 18 shows that in the same case Spray-And-Wait delivers the bundle m to the destination in the region 2 gateway. In this case the
vehicle node b receives the bundle m because it was the first node to be registered as a neighbor of the gateway of region 0. As the L bundle m was equal to 1, b only delivers this bundle to the final destination node. In T6 this happens when the vehicle node b makes contact with the gateway region 2. Fig. 19 shows the overhead values for Spray-And-Wait and TrendOfSpray. The overhead TrendOfSpray is better when compared to SprayAnd-Wait, because it limits the number of copies of the bundles L value, and retain bundles by controlling the value of the ToD. On the other hand, Spray-and-wait uses only the L value to limit the copies of the bundles. Fig. 20 shows the results for the average delay. The average delay tends to decrease as the number of vehicles increases, since the probability to find a vehicle which goes to the destination node through the shortest path increases [12]. But depending how vehicles can go to the destination by different routes, the likelihood of the average delay may increase. In TrendOfSpray protocol for cases where the number of nodes is less than or equal to 29, it has a smaller average delay because it performs fewer deliveries compared to Spray-AndWait. Note that a low delivery rate may reduce the average delay since most undelivered bundles may experience long delay [11]. In cases where the number of nodes is greater than 29, the Spray-AndWait has a less average delay because it creates a greater number of
156
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 18. Delivery done successfully with Spray-And-Wait.
copies of bundles. Thus, more copies of bundles are spread on the network, providing an increased likelihood of the bundle being carried by a vehicle that goes to destination using the shortest route but with higher overheads.
Fig. 19. Overhead comparison of Spray-And-Wait and TrendOfSpray.
5.5. Analysis and evaluation of ToD applied to PROPHET Fig. 21 shows the results of the delivery rate of bundles compared with the three protocols: PROPHET, PROPHET+ToD and
Fig. 20. Average delay comparison of Spray-And-Wait and TrendOfSpray.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
Fig. 21. Delivery rate comparison of PROPHET, PROPHETorToD and PROPHET+ToD.
PROPHETorToD. It can be observed that the PROPHET protocol has the worst result. This is due to the fact that a bundle that is stored in a source node will only be copied to a vehicle node if, and only if, the vehicle node already performed communication with the destination node or with another vehicle that knows the destination node.
157
Fig. 22 shows an example of this situation. In T1 the gateway of region 2 sends a hello message to the vehicle node e which calculates the value of P(e, 2). Also in T1 a bundle m destined for region 2 is generated in region 0. In T2 the vehicle node e moves away from the region 2 towards region 3. Note that the vehicles nodes a and b did not receive a copy of the bundle m from the gateway of region 0 because it did not perform communication with the gateway of region 2, hence it does not have values P(a, 2) and P(b, 2), respectively. In T3 the vehicle node e establishes communication with the gateway of region 0 and receives a copy of the bundle m and at the same time the vehicles nodes a and b establish communication with the gateway of region 2, thereby defining their values P(a, 2) and P(b, 2), respectively. In T4 vehicle node e establishes communication with vehicle node a and node e realizes that the P(a, 2) > P(e, 2) due to the aging. Then node e copies the bundle m to node a. In T5 the vehicles nodes continue adjusting their trajectories, causing in T6 due to the lifetime limit of bundle m to expire, so this bundle is deleted from all nodes that carried it. Although m is lost, even with this problem some bundles are delivered with varying levels of high delays. The results show that the PROPHET protocol has the worst performance among the family of the three simulated prophet protocols. It can be observed that in the case of PROPHET copying bundles only occurs if the contact node knows the destination. For this it uses the metric delivery predictability as explained in Section 4.3.1. However,
Fig. 22. An example of the problem of PROPHET in the scenario.
158
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
perform a greater number of bundles of copies. Since the scenario is sparse, a rigid control to make copies of the bundles may cause the protocol to achieve lower delivery rates. Using less rigid approaches, the delivery rates are higher, while the cost overhead tends to be higher. Thus, in practice it should be evaluated if there are resources available to support this amount of overhead, for example buffer capacity size. Otherwise it may try to use a less rigid approach to perform bundle copies. Therefore, even if the protocol has lower delivery rates, it can manage controlling resources and overheads more efficiently. 6. Conclusion
Fig. 23. Overhead comparison of PROPHET, PROPHETorToD and PROPHET+ToD.
the protocol PROPHET+ToD, which showed better performance uses the approach of adding the metric delivery predictability with the value of ToD mechanism, thus allowing a larger number of copies and transfers of bundles to take place when compared with the other protocols in its family. Therefore, the PROPHET+ToD achieved the highest delivery rate. On the other hand, PROPHETorToD had an intermediate delivery rate, which can be explained by the fact it chooses to use the delivery predictability metric or the value of the ToD mechanism. Fig. 23 shows the results obtained using the overhead metric. Note that the three protocols had similar performance, although PROPHET has a small advantage in this metric than the other two. This can be explained by the fact that copies of bundles are more restricted, since it requires that the contact node potentially knows its destination. It may seem an advantage over the others, but in fact this decreases the delivery rate. Fig. 24 shows the value of the average delays of the protocols. PROPHET had the highest average delay due to the requirement that the nodes which receive copies need to know the destination, which takes a longer delivery delay by this protocol. Note that the PROPHET+ToD and PROPHETorToD protocols, although they use the metric delivery predictability, they can still use the metric ToD in an opportunistic manner to achieve better results. Through the various experiments it can be seen that in this scenario the protocols that achieved better results are those which
In this research work, we covered a systematic technical state of the art study of various VDTN unicast routing protocols. We extended and adapted the taxonomy to include a new set of VDTN routing protocol categories. The two main major categories were the Routing Without Infrastructure Assistance and Routing With Infrastructure Assistance protocol suites. It was shown that the performance of a given protocol depends upon the resources and the environment in which the protocol executes. For instance, protocols such as VDTN-ToD and GeOpps achieve better performance and scalability than Epidemic, but they require auxiliary devices such as GPS to obtain a vehicle’s position and the services of the available Navigation System to determine the route of the vehicular neighbors in the VANET environment. Several routing approaches were indicated. And according to the desired goals of the approach and requirements of a specific scenario, one of them should be chosen that is most suitable for a given VDTN application. From obtaining and observing the results, it was shown that the application of ToD was efficient in the PROPHET routing protocol category for the VDTN scenario. ToD in the PROPHETorToD and PROPHET+ToD protocols do not restrict excessive copies of bundles and they achieve better performance because of nodal sparseness. The TrendOfSpray routing protocol restrict excessive replication of copies of bundles floating around, thereby showing inferior results when compared to Spray-And-Wait. As future research work, it would be worthwhile to relax copying of bundles to improve the performance of the TrendOfSpray routing protocol in a very sparse VANET scenario. Also as future research work, we consider experimenting, implementing and comparing various VDTN routing protocols to perform a comprehensive performance and scalability evaluation with the most critical set of parameters between them to determine which would be the most optimum for different vehicular applications under fluctuating degrees of operation in sparse and crowded VANET ecosystems. Lastly but not least, as a future research topic of significant importance, one major problem that would need to be fully explored for VANETs based on DTN protocols is the safety and security issues and countermeasures, especially illegal and camouflage intrusions that could cause impending accidents by design or otherwise. It is ascertained that it would require a sophisticated collaborative intrusion detection and prevention system to overcome it, based on the fundamentals and techniques indicated in [43], and it is a challenge worth pursuing. Acknowledgments
Fig. 24. Average delay comparison of PROPHET, PROPHETorToD and PROPHET+ToD.
Ahmed Patel, co-author wishes to thank Capes (Coordenação de Aperfeiçoamento de Pessoal de Nível Superior) for funding his one year stay as Senior Visiting Professor through the “Projeto FORTE - Forense digital tempestiva e eficiente - Processo 23038.007604/2014-69” project.
J. Gonçalves Filho, et al. / Computer Standards & Interfaces 48 (2016) 139–159
References [1] Z. Fu, X. Meng, S. Lu, How bad TCP can perform in mobile ad hoc networks, Computers and Communications, 2002. Proceedings. ISCC 2002. Seventh International Symposium on, IEEE. 2002, pp. 298–303. [2] K. Fall, A delay-tolerant network architecture for challenged internets, Proceedings of the 2003 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, ACM. 2003, pp. 27–34. [3] C. Caini, P. Cornice, R. Firrincieli, M. Livini, D. Lacamera, DTN meets smartphones: future prospects and tests, Wireless Pervasive Computing (ISWPC), 2010 5th IEEE International Symposium on, IEEE. 2010, pp. 355–360. [4] M. Ho, Kevin. Fall, Poster: delay tolerant networking for sensor networks, Proc. of IEEE Conference on Sensor and Ad Hoc Communications and Networks, 2004. [5] T. Spyropoulos, K. Psounis, C. Raghavendra, Spray and wait: an efficient routing scheme for intermittently connected mobile networks, Proceedings of the 2005 ACM SIGCOMM Workshop on Delay-tolerant Networking, ACM. 2005, pp. 252–259. [6] A. Lindgren, A. Doria, O. Schelén, Probabilistic routing in intermittently connected networks, ACM SIGMOBILE Mob. Comput. Commun. Rev. 7 (3) (2003) 19–20. [7] A. Vahdat, D. Becker, Epidemic routing for partially connected ad hoc networks, Tech. Rep., Technical Report CS-200006, Duke University, 2000. [8] J. Burgess, Brian. Gallagher, David. Jensen, B.N. Levine, MaxProp: routing for vehicle-based disruption-tolerant networks., INFOCOM, 6, 2006. pp. 1–11. [9] A.S de Sousa Vieira, J. Gonçalves Filho, J. Celestino Júnior, A. Patel, VDTN– ToD: routing protocol VANET/DTN based on trend of delivery, AICT 2013, The Ninth Advanced International Conference on Telecommunications, 2013. pp. 135–141. [10] D. Yu, Y. Ko, FFRDV: fastest-ferry routing in DTN-enabled vehicular ad hoc networks, Advanced Communication Technology, 2009. ICACT 2009. 11th International Conference on, 2, IEEE. 2009, pp. 1410–1414. [11] J. Zhao, G. Cao, VADD: vehicle-assisted data delivery in vehicular, Vehicular Technology, IEEE Transactions on 57 (3) (2008) 1910–1922. [12] I. Leontiadis, C. Mascolo, Geopps: Geographical opportunistic routing for vehicular networks, World of Wireless, Mobile and Multimedia Networks, 2007. WoWMoM 2007. IEEE International Symposium on a, IEEE. 2007, pp. 1–6. [13] J. Gonçalves Filho, J. Celestino Júnior, A. Patel, A new performance efficient trend of delivery mechanism applied to DTN routing protocols in VANETs, AICT 2014, The Tenth Advanced International Conference on Telecommunications, 2014. pp. 98–104. [14] Y. Cao, Z. Sun, Routing in delay/disruption tolerant networks: a taxonomy, survey and challenges, IEEE Commun. Surv. Tutorials 15 (2) (2013) 654–677. [15] I. Chlamtac, M. Conti, J.J.-N. Liu, Mobile ad hoc networking: imperatives and challenges, Ad Hoc Netw. 1 (1) (2003) 13–64. [16] M. Taha, Y. Hasan, VANET-DSRC protocol for reliable broadcasting of life safety messages, Proc. of the IEEE International Symposium on Signal Processing and Information Technology, 2007. [17] S. Al-Sultan, M.M. Al-Doori, A. Al-Bayatti, H. Zedan, A comprehensive survey on vehicular ad hoc network, J. Netw. Comput. Appl. (2013) [18] T. Camp, J. Boleng, V. Davies, A survey of mobility models for ad hoc network research, Wirel. Commun. Mob. Comput. 2 (5) (2002) 483–502. [19] B. Karp, H.-T. Kung, GPSR: greedy perimeter stateless routing for wireless networks, Proceedings of the 6th Annual International Conference on Mobile Computing and Networking, ACM. 2000, pp. 243–254. [20] S. Yousefi, M. Mousavi, M. Fathy, Vehicular ad hoc networks (VANETs): challenges and perspectives, ITS Telecommunications Proceedings, 2006 6th International Conference on, IEEE. 2006, pp. 761–766. [21] C.T de Oliveira, M.D. Moreira, M.G. Rubinstein, L.H.M. Costa, O.C.M. Duarte, Redes tolerantes a atrasos e desconexoes, SBRC Simpósio Brasieliro de Redes de Computadores e Sistemas Distribuı dos (2007)
159
[22] K. Scott, S. Burleigh, Bundle protocol specification, 2007. [23] M.J. Khabbaz, C.M. Assi, W.F. Fawaz, Disruption-tolerant networking: a comprehensive survey on recent developments and persisting challenges, IEEE Commun. Surv. Tutorials 14 (2) (2012) 607–640. [24] S. Naidu, S. Chintada, M. Sen, S. Raghavan, Challenges in deploying a delay tolerant network, Proceedings of the third ACM workshop on challenged networks, ACM. 2008, pp. 65–72. [25] M. Grossglauser, D. Tse, Mobility increases the capacity of ad-hoc wireless networks, INFOCOM 2001. Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, 3, IEEE. 2001, pp. 1360–1369. [26] S. Jain, K. Fall, R. Patra, Routing in a Delay Tolerant Network, 34. ACM. 2004. [27] T. Spyropoulos, K. Psounis, C.S. Raghavendra, Efficient routing in intermittently connected mobile networks: the single-copy case, IEEE/ACM Transactions on Networking (TON) 16 (1) (2008) 63–76. [28] A. Balasubramanian, B. Levine, A. Venkataramani, DTN routing as a resource allocation problem, ACM SIGCOMM Computer Communication Review, 37, ACM. 2007, pp. 373–384. [29] R.C. Shah, S. Roy, S. Jain, W. Brunette, Data mules: modeling and analysis of a three-tier architecture for sparse sensor networks, Ad Hoc Networks 1 (2) (2003) 215–233. [30] W. Zhao, M. Ammar, E. Zegura, A message ferrying approach for data delivery in sparse mobile ad hoc networks, Proceedings of the 5th ACM International Symposium on Mobile Ad Hoc Networking and Computing, ACM. 2004, pp. 187–198. [31] W. Zhao, M. Ammar, E. Zegura, Controlling the mobility of multiple data transport ferries in a delay-tolerant network, INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE, 2, IEEE. 2005, pp. 1407–1418. [32] J.J. Bentley, Fast algorithms for geometric traveling salesman problems, ORSA J. Comput. 4 (4) (1992) 387–411. [33] W. Zhao, Y. Chen, M. Ammar, M. Corner, B. Levine, E. Zegura, Capacity enhancement using throwboxes in DTNs, Mobile Adhoc and Sensor Systems (MASS), 2006 IEEE International Conference on, IEEE. 2006, pp. 31–40. [34] F. Farahmand, I. Cerutti, A.N. Patel, Q. Zhang, J.P. Jue, Relay node placement in vehicular delay-tolerant networks, Global Telecommunications Conference, 2008. IEEE GLOBECOM 2008. IEEE, IEEE. 2008, pp. 1–5. [35] V.N. Soares, J.J. Rodrigues, F. Farahmand, GeoSpray: a geographic routing protocol for vehicular delay-tolerant networks, Inf. Fusion (2011) [36] J. Härri, C. Bonnet, F. Filali, Kinetic mobility management applied to vehicular ad hoc network protocols, Comput. Commun. 31 (12) (2008) 2907–2924. [37] A. Vieira, VDTN-TD: Protocolo de roteamento Vanet/Dtn baseado em tendecia de entrega, Mestrado, MACC, Universidade Estadual do Ceara, UECE, 2012. [38] D. Krajzewicz, G. Hertkorn, C. Rossel, P. Wagner, SUMO (Simulation of Urban MObility); an open-source traffic simulation, 4th Middle East Symposium on Simulation and Modelling (MESM2002), 2002. pp. 183–187. [39] T.K. Sarkar, Z. Ji, K. Kim, A. Medouri, M. Salazar-Palma, A survey of various propagation models for mobile communication, IEEE Antennas Propag. Mag. 45 (3) (2003) 51–82. [40] W. Wu, P. Wang, C. Wang, F. Liu, A beacon rate control scheme based on EMBMS in cellular-VANETs heterogeneous networks, Internet of Vehicles-safe and Intelligent Mobility Springer. 2015, pp. 324–335. [41] A. Lindgrem, A. Doria, E. Davies, S. Grasic, Probabilistic routing protocol for intermittently connected networks, Tech. Rep. IETF RFC 6693, Experimental, 2012. [42] R. D’souza, J. Jose, Routing approaches in delay tolerant networks: a survey, Int. J. Comput. Appl. 1 (17) (2010) 8–14. [43] A. Patel, M. Taghavi, K. Bakhtiyari, J.C. Junior, An intrusion detection and prevention system in cloud computing: a systematic review, J. Netw. Comput. Appl. 36 (1) (2013) 25–41.