Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
An Intelligent Routing Protocol for Delay
Tolerant Networks using Genetic
Algorithm
by
Saeid Akhavan Bitaghsir
A thesis
Presented to Sharif University of Technology, International Campus
in partial fulfillment of the
Requirements for the Degree of
Master of Science
in
IT Engineering (Communication and Computer networks)
Supervisor: Dr. Faramarz Hendessi
Kish Island, Iran, 2009
©Saeid Akhavan Bitaghsir, 2011
ii
Sharif University of Technology
International Campus, Kish Island
This is to certify that the Thesis Prepared,
By: Saeid Akhavan Bitaghsir
Entitled: An intelligent routing protocol for delay tolerant networks using genetic algorithm
and submitted in partial fulfillment of the requirements for the Degree of
Master of Science
complies with the regulation of this university and meets the accepted standards with respect to
originality and quality.
Signed by the final examining committee:
Supervisor:
Co-Supervisor:
External Examiner:
Internal Examiner:
Session Chair:
iii
AUTHOR'S DECLARATION
I hereby declare that I am the sole author of this thesis. The work described in this thesis has not been
previously submitted for a degree in this or any other university, and unless otherwise referenced it.
This is a true copy of the thesis, including any required final revisions, as accepted by my examiners.
I understand that my thesis may be made electronically available to the public.
iv
Abstract
An Intelligent Routing Protocol for DTN networks using Genetic Algorithm
Saeid Akhavan Bitaghsir, M.Sc.
Sharif University of Technology, International Campus, 2011
Supervisor: Dr. Faramarz Hendessi
Due to the dynamic topology of vehicular ad hoc networks, routing of packets in these networks faces
a lot of difficulties. The situation will become more challenging when we have to deal with
Delay Tolerant Networks (DTN) which are also sparse and partitioned and we need to use some
vehicles to store the packets and carry them from one partition to another. Despite all these
difficulties, by looking through movements of vehicles in an urban environment, we can find out that
the topology of the network does not change in a pure random way and we can bring the traffic
models of streets into account for having better routing performance. Through this research we
proposed an intelligent routing protocol for delay tolerant networks using genetic algorithm as the
learning method for choosing the best vehicle to carry the packets from one partition to another.
v
Acknowledgements
Enter acknowledgements here.
vi
Dedication
If no dedication page is included, the Table of Contents should start at page v.
vii
Table of Contents
Chapter 1 Introduction ............................................................................................................................ 3
1.1 What is VANET? ......................................................................................................................... 4
1.2 VANET Applications ................................................................................................................... 6
1.3 Design Factors of VANET ........................................................................................................... 7
1.4 Architecture of Vehicular Ad Hoc Networks ............................................................................... 7
1.5 Characteristics of Vehicular Ad Hoc Networks ........................................................................... 8
1.6 Thesis Scope ............................................................................................................................... 10
1.7 Thesis Contribution .................................................................................................................... 11
1.8 Thesis Organization .................................................................................................................... 12
Chapter 2 Related Works...................................................................................................................... 12
2.1 Introduction ................................................................................................................................ 12
2.2 Routing Protocols ....................................................................................................................... 14
2.2.1 AODV (Ad hoc On demand Distance Vector) .................................................................... 14
2.2.2 AODV+PGB ....................................................................................................................... 15
2.2.3 DSR (Dynamic Source Routing) ......................................................................................... 16
2.2.4 TORA (Temporally Ordered Routing Algorithm) .............................................................. 16
2.2.5 Evaluation of the Topology-based Routing ......................................................................... 17
2.2.6 Comparison between AODV, AODV+PGB, and GPSR .................................................... 17
2.2.7 Geographic (position-based) Routing .................................................................................. 18
2.2.8 Non-DTN Overlay ............................................................................................................... 22
2.2.9 GPSR (Greedy Perimeter Stateless Routing) .................................................................. 22
2.2.10 GPSR+AGF ....................................................................................................................... 25
2.2.11 PRB-DV ............................................................................................................................ 25
2.2.12 GRANT ............................................................................................................................. 26
2.2.13 Overlay .............................................................................................................................. 27
2.2.14 GPCR ................................................................................................................................. 27
2.2.15 GpsrJ+ ............................................................................................................................... 28
2.2.16 CAR ................................................................................................................................... 29
2.2.17 GSR ................................................................................................................................... 30
2.2.18 A-STAR ............................................................................................................................. 31
2.2.19 STBR ................................................................................................................................. 32
2.2.20 GyTAR .............................................................................................................................. 32
viii
2.2.21 LOUVRE ........................................................................................................................... 33
2.2.22 CBF ................................................................................................................................... 34
2.2.23 DTN ................................................................................................................................... 34
2.2.24 VADD ............................................................................................................................... 34
2.2.25 GeoOpps ............................................................................................................................ 35
2.2.26 GeoDTN+Nav ................................................................................................................... 36
2.2.27 Multi-Level Hierarchical Routing ..................................................................................... 38
2.2.28 RBVT-R ............................................................................................................................ 39
2.2.29 Comparison of VANET Routing Protocols ....................................................................... 42
2.2.30 Summary ........................................................................................................................... 43
Chapter 3 Proposed Method ................................................................................................................. 44
3.1 Abstract ...................................................................................................................................... 44
3.2 Main Idea .................................................................................................................................... 44
3.3 DTN node Evaluation System .................................................................................................... 45
3.4 Genetic Algorithm ...................................................................................................................... 47
3.4.1 Initialization ......................................................................................................................... 48
3.4.2 Selection .............................................................................................................................. 48
3.4.3 Reproduction ....................................................................................................................... 50
3.4.4 Termination ......................................................................................................................... 50
Chapter 4 Simulation & Result ............................................................................................................. 51
4.1 SUMO (Simulation of Urban MObility) .................................................................................... 52
4.1.1 Features of SUMO ............................................................................................................... 52
4.1.2 Included applications ........................................................................................................... 53
4.1.3 Generating network with SUMO ......................................................................................... 54
4.1.4 Pre-defined networks: .......................................................................................................... 56
4.2 MOVE (MObility model generator for VEhicular networks) .................................................... 57
4.2.1 Mobility Model .................................................................................................................... 57
4.3 NS2 (Network Simulator 2)........................................................................................................ 61
4.3.1 Structure of NS2 .................................................................................................................. 63
1
List of Figures
Insert List of Figures he.
2
List of Tables
Insert List of Tables here.
Chapter 1
Introduction
Vehicular Ad hoc Networks are a subclass of Mobile Ad hoc Networks (MANET) in which most of
the nodes are mobile and the topology of the network changes dynamically. The aim of
Vehicular Ad hoc Network routing protocols is to establish efficient routes between network nodes
adaptable to rapidly changing topology of vehicles in motion. These routes enable us to form a self-
organized network between vehicles without the need for a permanent infrastructure. Although nodes
are mobile in VANET, they have a distinct controlled mobility pattern that is subject to vehicular
traffic regulations. It is because vehicles are generally constrained to roadways and streets.
By looking through a real urban environment and by analyzing the mobility model of
vehicles in the streets, we can find out that despite the rapid changes in the topology of
VANET, we can bring the traffic model of roads into account for our routing protocol. For example in
our simulation environment we supposed to have some major roads with high density of vehicles,
some streets with mediocre traffic and some bystreets with low density of vehicles. Then by
using Genetic Algorithm as the learning method, we tried to detect the proper vehicle for storing the
packet and carrying it from one partition of our network to another. There are two categories of
routing protocols in VANET: topology-based and geographic routing.
Topology-based routing protocols use the information about links that exist in the network to perform
packet forwarding. Geographic routing protocols use neighboring location information to
perform packet forwarding. Since link information changes in a regular basis, topology-based
routing protocols suffer from routing route breaks [5]. The idea of geographic routing protocols is
that each intermediate node chooses one of its neighbors which is geographically closer to the
destination as the next hop for forwarding the packets. This procedure may fails when a node
couldn’t find any neighbor closer to the destination. This situation is called “Local Maximum”.
4
Several routing protocols have been proposed (GPSR [7], GPCR [4], VCLCR [2]) in order to recover
from local maximum. Sometimes in Vehicular Ad hoc Networks, there exists no end-to-end route
between the source node and the destination node. It occurs when the density of vehicles in streets
decreases or when law enforcement, military, and financial armored vehicles may each wish to
exchange data privately within their own vehicular network, due to the sensitivity of the
information exchanged. Even in densely-populated urban scenarios, sparse sub-networks can be
prevalent.
In these situations, Delay Tolerant Network (DTN) routing algorithms are needed [6]. To
make the communication possible in this kind of networks, intermediate nodes take custody of the
data being transferred and forward it as the opportunity arises. Both links and nodes may be
inherently unreliable and disconnections may be long-lived. Some routing protocols (e.g. GeOpps
[3], MoVe [11]) have been proposed to overcome the Delay Tolerant Networks problems.
In this research we proposed a routing protocol for Delay Tolerant Networks which is a combination
of efficient position-based routing for connected partitions of our simulated network and delay
tolerant forwarding using genetic algorithm for routing between partitions of our network.
1.1 What is VANET?
VANET or vehicular ad hoc networks is a wireless network that is formed between vehicles in the
streets. In order for a vehicle to be considered a node in the VANET, it should be occupied with
wireless transceivers and computerized control modules. As the range of vehicle’s wireless is about
two to three hundred meters, an end to end communication across a larger distance is not always
available. So we need to send packets through networks hop by hop.
For a VANET network to be created we don’t need any infrastructure, but we can use permanent
network nodes in the form of roadside units. These roadside units can be used as a drop point for the
messages in a sparse road, or serving up geographically relevant data or serving as a gateway to the
5
internet. VANET is a subcategory of mobile ad hoc networks (MANET) with its own characteristics.
One of these characteristics is that nodes in VANET are mobile but their mobility is restricted by
streets. So the point is that we can generate a mobility model for vehicles mobility.
In a city environment the gaps between roads are occupied by buildings and other obstacles. This may
cause radio communication to face some difficulties. Compare with other types of MANET networks
the speed of nodes in VANET are higher. Also speeds of vehicles moving in the same direction are
generally similar and therefore they can remain in radio contact with each other for much longer
period of time than with vehicles moving in the opposite direction.
Lots of routing protocols have been proposed for mobile ad hoc networks but because of different
characteristics of VANET, we can’t directly use them in these networks. This difference persuades
some researchers to work on some new routing protocols which are suitable for these kinds of
networks. These researches are categorized into following topics:
- Traffic pattern derivation and analysis
- Security and privacy in VANETs
- Fairness of bandwidth sharing
- Estimation and detection techniques in VANETs
- Localization techniques in VANETs
- Sensing in vehicular environments
- Channel modeling for V2V communications
- MAC, routing, QOS protocols, and analysis for VANETs
- VANET smart antenna technologies
- Dynamic spectrum access and cognitive radios for VANETs
- Congestion control and cooperative VANETs
- Signal processing considerations in real world deployments of VANETs
- Scalability issues in metropolitan-wide vehicular networks
6
- Roadside infrastructure
- Mobility management, mobility, and vehicle traffic models
- Digital maps and location technologies
- Entertainment issues in VANET
- Routing protocols in VANET
- Simulation and testing
1.2 VANET Applications
The scope of the applications of VANET is serving the interests of consumers, businesses,
governments, law enforcement agencies and emergency services. For example one idea is the
improvement of safety of vehicles. Accident avoidance warnings could quickly notify drivers. When
a vehicle brake quickly, an audio warning could alert the driver or an onboard computer to
automatically apply the brakes.
Another example is avoiding from traffic jams. If a road is jammed by an accident a traffic jam
warning can be sent to other vehicles to change their path to avoid that road. Another application of
VANET is that the rescue vehicles such as ambulances or police vehicles can instantly receive the
exact position of the accident which can help them to reach the scene of the emergency faster.
Nowadays lots of GPS navigation systems are used in the cars that provide information about roads
and streets. But the problem is that this this information is not real-time. By using the VANET we can
feed new and real-time information to the navigation systems and update them. Another application
of VANET is in-vehicle entertainments such as radio and television and video games. Multiplayer
games can be played in this network while the players are peoples who are in the vehicles. Internet
access for passengers, communication with other vehicles, multimedia entertainments and
cooperative games are just a few potential entertainment services that VANET may provide.
7
Another application is using VANET to simplify the process of controlling the traffics in the city. The
traffic controller system can be in direct contact with navigation systems on the vehicles and lead the
vehicles toward better paths. This is called Intelligent Transportation System or ITS.
1.3 Design Factors of VANET
When we want to design a VANET network some factors should be considered. For example:
- Will the network be vehicle-to-vehicle only or could roadside units be used for
communication?
- What forms of communication will be available?
- Which vehicular system will be employed in the network?
- Which standard is used for communication between vehicles?
These factors may cause the VANET to have different types of designs and architectures. Following
section categorizes these architectures.
1.4 Architecture of Vehicular Ad Hoc Networks
MANETs generally do not rely on fixed infrastructure for communication and dissemination of
information. VANETs follow the same principle and apply it to the highly dynamic environment of
surface transportation. As shown in Figure 1, the architecture of VANETs falls within three
categories: pure cellular/WLAN, pure ad hoc, and hybrid.
8
VANETs may use fixed cellular gateways and WLAN access points at traffic intersections to
connect to the Internet, gather traffic information or for routing purposes. The network architecture
under this scenario is a pure cellular or WLAN structure as shown in Figure 1(a).
VANETs can combine both cellular network and WLAN to form the networks so that a WLAN
is used where an access point is available and a 3G connection otherwise. Stationary or fixed
gateways around the sides of roads could provide connectivity to mobile nodes (vehicles) but are
eventually unfeasible considering the infrastructure costs involved. In such a scenario, all vehicles
and road-side wireless devices can form a mobile ad hoc network (Figure 1(b)) to perform vehicle-to-
vehicle communications and achieve certain goals, such as blind crossing (a crossing without light
control).
Hybrid architecture (Figure 1(c)) of combining cellular, WLAN and ad hoc networks together has
also been a possible solution for VANETs. Namboodiri et al. [5] proposed such a hybrid architecture
which uses some vehicles with both WLAN and cellular capabilities as the gateways and mobile
network routers so that vehicles with only WLAN capability can communicate with them through
multi-hop links to remain connected to the world.
1.5 Characteristics of Vehicular Ad Hoc Networks
VANETs comprise of radio-enabled vehicles which act as mobile nodes as well as routers for
other nodes. In addition to the similarities to ad hoc networks, such as short radio transmission
range, self-organization and self-management, and low bandwidth, VANETs can be distinguished
from other kinds of ad hoc networks as follows:
- Highly dynamic topology
Due to high speed of movement between vehicles the topology of VANETs is always
changing. For example, assume that the wireless transmission range of each vehicle is
250 m, so that there is a link between two cars if the distance between them is less
9
than 250 m. In the worst case, if two cars with the speed of 60 mph (25 m/sec) are driving in
opposite directions, the link will last only for at most 10 sec.
- Frequently disconnected network
Due to the same reason, the connectivity of the VANETs could also be changed frequently.
Especially when the vehicle density is low, it has higher probability that the network is
disconnected. In some applications, such as ubiquitous Internet access, the problem needs to
be solved. However, one possible solution is to pre-deploy several relay nodes or access
points along the road to keep the connectivity.
- Sufficient energy and storage
A common characteristic of nodes in VANETs is that nodes have ample energy and
computing power (including both storage and processing), since nodes are cars instead of
small handheld devices.
- Geographical type of communication
Compared to other networks that use unicast or multicast where the communication
end points are defined by ID or group ID, the VANETs often have a new type of
communication which addresses geographical areas where packets need to be forwarded
(e.g., in safety driving applications).
- Mobility modeling and predication
Due to highly mobile node movement and dynamic topology, mobility model and
predication play an important role in network protocol design for VANETs. Moreover,
vehicular nodes are usually constrained by pre-built highways, roads and streets, so given the
speed and the street map, the future position of the vehicle can be predicated.
- Various communications environments
VANETs are usually operated in two typical communications environments. In highway
traffic scenarios, the environment is relatively simple and straightforward (e.g.,
10
constrained one-dimensional movement); while in city conditions it becomes much more
complex. The streets in a city are often separated by buildings, trees and other obstacles.
Therefore, there isn’t always a direct line of communications in the direction of intended data
communication.
- Hard delay constraints
In some VANETs applications, the network does not require high data rates but has
hard delay constraints. For example, in an automatic highway system, when brake event
happens, the message should be transferred and arrived in a certain time to avoid car
crash. In this kind of applications, instead of average delay, the maximum delay will be
crucial.
- Interaction with on-board sensors
It is assumed that the nodes are equipped with on-board sensors to provide information which
can be used to form communication links and for routing purposes. For example, GPS
receivers are increasingly becoming common in cars which help to provide location
information for routing purposes. It is assumed that the nodes are equipped with on-board
sensors to provide information which can be used to form communication links and for
routing purposes. For example, GPS receivers are increasingly becoming common in cars
which help to provide location information for routing purposes.
1.6 Thesis Scope
The method that we proposed in this project is a new routing protocol based on artificial intelligence
algorithms for Delay Tolerant Networks (DTN networks). When the number of nodes in the network
decreases, some disconnections between nodes may appear. The result of these disconnections is that
we lose some end to end connections and the network becomes partitioned. We call these networks
“Sparse Networks” or “Delay Tolerant Networks” or “Disruption Tolerant Network”. For forwarding
11
the packets toward destination node in these networks, we need a mechanism to have some nodes
which carry the packet for a period of time and then forward them toward destination. This
mechanism is called “Store and Forward”. Lots of current networks in the world have these
characteristics. For example the network between planets (see figure. 1) and the network between
vehicles and etc.
In this project we simulate and test our proposed method in the inter-vehicle network in a city
environment where the number of cars is low and the network is sparse. This network is called
Vehicular Ad hoc Networks (VANET) which is a subcategory of Mobile Ad hoc Networks
(MANET). So our proposed method is applicable and usable for every network with mobile node
which is sparse and an end-to-end path isn’t always available in them.
1.7 Thesis Contribution
In this project we proposed a new routing protocol for DTN networks that will improve the ADD and
ADR parameters of these kinds of networks. ADD refers to Average Delivery Delay and is equal to
the average time for packets to move from source to destination. ADR refers to Average Delivery
12
Ratio and is equal to the percentage of packets reaches to the destination successfully. By decreasing
the average delivery delay and increasing the average delivery ratio, our proposed method will help
improving the quality of packet forwarding in DTN networks. As we discussed before one type of
DTN networks is VANET.
In VANET, our proposed method may cause to have better and faster reaction for emergency or
accident situation or we can have better quality in multimedia applications of VANET. Also we can
manage and control the traffic in the city better and navigation systems in the cars can show better
paths by using updated information about other vehicles. In general, all the applications that we
previously counted for VANET networks can be improved by using our proposed routing protocol.
1.8 Thesis Organization
This thesis is organized as follows:
Chapter 2
Related Works
2.1 Introduction
VANETs are distinguished from other kinds of ad-hoc networks by their hybrid network
architectures, node movement characteristics, and new application scenarios. Therefore,
VANETs pose many unique networking research challenges, and the design of an efficient
routing protocol for VANETs is very crucial. In this section, we discuss the research challenge of
routing in VANETs and survey recent routing protocols and related mobility models for
VANETs. Generally we can divide the vehicular ad-hoc routing protocols into two categories,
13
topology-based routing protocols and position-based routing protocols. Topology based routing
protocols: These protocols are divided into two categories: reactive and proactive protocols.
- Proactive protocols
In order to forward packets, these protocols use routing tables and forward packets without
considering any traffic. Control packets broadcast and flood among nodes in order to
maintain paths between nodes even though some of paths will never be used. The
routing table includes next hop for a node toward a certain destination. This routing protocol
has some advantages: It does not need any route discovery, since route to the
destination is maintained in the routing table and is always available upon lookup. So
the network will not flood because there is no RREQ or RREP in the network.
On the other hand it has some disadvantages: maintaining some of paths which are never
used will waste available bandwidth especially in networks with high mobility. So in
VANETs, this drawback will have negative effects. There is an effective way which is
called “Fisheye State Routing”. This method maintains topology map of each node and
propagates updates with immediate neighbors not with the whole network. The broadcasting
is also different. It is hardly depends on the distance. There are different frequencies for
different entries depending on hop distance of current node. Entries that are closer have
higher frequencies rather than ones that are far away. The frequencies get corrected as
packets get closer to the destination.
- Reactive protocols (On Demand)
These protocols use source routing instead of routing table to find next hop. It maintains only
active routes and reduces old routes. This protocol has 3 phases: RREQ, RREP and Data
Transfer. In order to find route to destination, RREQ packets flood the whole network in
order to find a path. After finding a path, RREP packet returns from destination to source
14
and contains the reverse path from source to destination. Then source attaches the path
to the header of data and sends it. This method is called Source routing.
Figure 1. Reactive protocols
Position-based Routing protocols: In these protocols the decision for choosing the next hop for
forwarding the packets depends on the position of the destination node and the position of the current
node’s neighbors. The position of the destination is stored in the header of the packet and the position
of the one-hop neighbor sends continuously with beacons. In order to avoid collision the beacons will
send with random jitter. Nodes which are in the same radio range are neighbors.
In geographic routing each node knows its location and a sending node knows the receiver’s
location. Geographic routing is more robust to the highly dynamic topologies like VANETs since this
algorithm do not exchange link state information and do not maintain every route like
proactive and reactive protocols.
2.2 Routing Protocols
2.2.1 AODV (Ad hoc On demand Distance Vector)
This protocol uses route discovery. When a route request propagates from source, each node
receives RREQ, records the address of the sender to its routing table and finds a path to the
15
source. This method called backward learning. When a RREQ packet arrives, RREP will send from
destination to source and each node records its previous hop. Links are bidirectional so flooding of
RREQ and sending of RREP establishes a full duplex path. A path is maintained as long as the source
uses it. Link failure will report to source and source immediately propagate route discovery to
find a new path. However, this method has broadcast overhead because of using route discovery.
2.2.2 AODV+PGB
PGB (Preferred Group Broadcasting) is a mechanism to reduce the overhead of route discovery in
some protocols like AODV. Because of fast movement, reducing overhead in wireless networks like
VANET is very important. When a signal propagates, receivers will get it but only the node in the
preferred group can broadcast the signal. However this protocol has some drawbacks: only one
node in is allowed to broadcast signal and also the preferred group maybe is not the closest group to
the destination. Broadcast also cannot continue if there are some empty groups in the network (sparse
networks). Sometimes two nodes in a group may broadcast in a same time so packet duplication
16
may happen in the network. The solution for packet duplication is to add packet's predecessors into
the packet; however it may cause another type of overhead which is the same as DSR.
2.2.3 DSR (Dynamic Source Routing)
This protocol uses source routing. RREQ packets propagate and each node broadcast it to its
neighbors until it receives to the destination. After arriving RREQ to the destination, RREP will
produce and come back to the destination. Maybe multiple RREP are send from destination to the
source so there are more than one route that source can choose it to send data through, so
when a route is broken, an alternative route can choose.
2.2.3.1 Comparison between DSR and AODV
There are two differences between DSR and AODV; the first one is that data packets in DSR contain
routing information, whereas, data packets in AODV contains only the address of the destination so
the routing overhead of DSR is more than the routing overhead of AODV. In addition, as the network
diameter increases, the amount of overhead in the data packet will continue to increase. Another
difference is that in AODV, RREP packets contain the address of the destination, whereas, in DSR
RREP packets carry the address of each node.
2.2.4 TORA (Temporally Ordered Routing Algorithm)
This algorithm is a family of link reversal algorithm when a directed acyclic graph (DAG) is built on
the height of the tree from the source. DAG directs the flow of packets and tries that every node gets
it. When a node has a packet to send, it broadcasts its packet. Its neighbors only can broadcast the
packet if based on the DAG, they are sending nodes. A DAG will build by broadcasting RREQ
packets. When a node receives RREQ, if it has a downward link to the destination, it will broadcast a
RREP packet. Otherwise the packet will drop. When a packet receives a RREP packet, it will update
its height only if this RREP packet gives the minimum height of all height which has been received so
far. Then it rebroadcast the RREP packet.
17
TORA has some pros and cons: this algorithm finds routes to all the nodes in the network, so routing
will be easier, however, since it finds routes to all the nodes in the network, there are many
routes, so maintaining these routes is heavy and expensive especially in networks with high
movement like VANET.
2.2.5 Evaluation of the Topology-based Routing
Jaap et al. (2005) has evaluated AODV, DSR, FSR, and TORA in city traffic scenarios on the
network simulator ns-2. The city is Manhattan and the speed of vehicles is determined based on the
Intelligent-Driver Model (IDM). The result is that: AODV has the best performance and lowest
control overhead. It is followed by FSR, DSR, and then TORA. DSR is using source routing. Since
source routes will change because of the high movement in some networks like VANET, DSR will
have heavy overhead and heavy delay because it maintains the route information within the packet’s
header. The route overhead of DSR can be compared to FSR; however it is higher than AODV yet.
The only common feature between the four algorithms is that because of the scalability problem, the
performance will decrease as network densities increase.
Lochert et al. (2003) conducted an evaluation study of Geographic Source Routing (GSR), AODV,
and DSR in a small part of a map of Berlin. The movements of 955 vehicles are simulated by the
traffic flow simulator Videlio. The evaluation also uses “obstacle modeling”. It means that each space
between streets is considered to be buildings so radio waves can not pass through them. The
simulation result shows that the performance of AODV is better than DSR since this algorithm
maintains route information for each node and the associated bandwidth is large. So the routing
overhead is heavy. However, the performance of AODV and DSR is not as good as GSR.
2.2.6 Comparison between AODV, AODV+PGB, and GPSR
The simulation results show that AODV+PGB has constant broadcast overhead so the performance of
this algorithm is better than AODV and GPSR. In both city and highway, as the density of vehicles
18
are increased the packet delivery ratio of AODV decreases and becomes lower than GPSR and the
overhead of AODV increases and become higher than GPSR.
2.2.7 Geographic (position-based) Routing
In this algorithm the next decision for forwarding a packet depends on the position of a packet’s
destination and the position of the node’s one-hop neighbors. The position of the destination is stored
in the header of the packet and the position of the one-hop neighbor sends continuously with beacons.
In order to avoid collision the beacons will send with random jitter. Nodes which are in the same
radio range are neighbors. In geographic routing each node knows its location and a sending
node knows the receiver’s location. Geographic routing is more robust to the highly dynamic
topologies like VANETs since this algorithm do not exchange link state information and do not
maintain every route like proactive and reactive protocols. In other words, packets will be
forwarded based on the geographic position of the nodes. There is no need of link state
exchange nor route setup.
Geographic routing is divided in to three categories: non-Delay Tolerant Networks (non-DTN), Delay
Tolerant Networks and hybrid. The non-DTN types of geographic routing are only practical in
densely populated VANETs whereas DTN types of geographic routing is considered to be useful in
disconnect networks. We assume that in wireless, networks are disconnected by default. Hybrid
types are the combination of DTN and non-DTN routing protocols. We will describe these three
categories.
2.2.7.1 Challenges of Position-Based Routing in a City Environments
As it is disgusted before position-based routing protocols are based on the positions of the nodes in
the networks. So the first issue is these routing protocols require position-awareness of the nodes
though a GPS receiver on each node. Also it is assumed that each node is aware of the situation of its
direct neighbors. So it is required that each node periodically send a beacon message that indicate the
19
current position of the node. In order to send a packet to a destination node, a sender node also
requires information on the current geographical position of the destination in order to include it in
the packet header and to make the routing decision. Following problems should also be considered in
position-based routing in city environments:
- Network disconnection
City scenarios – with almost all area between streets covered with buildings – significantly
limit the applicability of purely greedy position-based routing and of corresponding recovery
strategies. Due to these obstacles, nodes that would have `seen' each other in a free space
model might not be aware of each other anymore. Since the planarization methods outlined
above assume that the connectivity between nodes only depends on the node distances,
planarization of the neighborhood in the presence of obstacles can lead to network
disconnection. Both criteria, GG and RNG, would lead to elimination of the edge between u
and v under the misconception that nodes w1 and w2 can reach node v.
- Beacon & Data Losses
Another problem that we should consider in vehicular ad hoc networks is that due to high
mobility of vehicles in the street and because of the high movement speed of cars, lots of
packets (beacons or data packets) will be lost. Following figure shows this problem in detail.
20
- Outdated Information Problem
During the routing of packets toward destination sometimes cars passes from each other and
this may cause some loop problems in the routing. Following figure shows and example of
this problem.
21
- Too many hops
A planarized connectivity graph for vehicles along a single street essentially leads to a graph
where a vehicle no longer sends packets to the neighbor with the largest forward progress.
Thus, compared to greedy routing, many more nodes have to be traversed when routed in
perimeter mode. This leads to increased delays and, frequently, to elapsed hop counts.
22
- Routing Loops
Mobility can induce routing-loops for packets being routed in perimeter mode. Figure 4
sketches a corresponding scenario. Node S wants to send a packet to node D. In node u,
greedy forwarding fails because there is reachable node closer to the destination node. So the
forwarding mode is switched to perimeter mode. The initial face will be set to uv. In a static
network, the packet would reach D according to the `Right Hand Rule' as expected, but with
movement of node x reaching node v's radio range while v already has sent the packet, a
routing loop is created between vwx by the `Right Hand Rule'. The traversal of the initial face
would be used to determine a face-loop but since it is never traversed again, the packet is
circled until the max hop count is reached.
- Wrong Direction
As one can see in Fig. 4(a) the perimeter mode following the `Right Hand Rule' is biased
towards a specific direction when selecting a next hop. When there exist more than one
routing alternative this can lead to routes longer than necessary. These long routes lead again
to the problem of `Too many hops' and also is prone to error because of mobility.
2.2.8 Non-DTN Overlay
The principle of greedy approach is that the packet will forward to the node which is closest to the
destination. If the node itself is the closest node to the destination, the strategy can fail. In this case
the packets reached the local maximum. In this category of the geographic routing, the routing
protocols have their own recovery strategy.
2.2.9 GPSR (Greedy Perimeter Stateless Routing)
This protocol is a greedy protocol which forwards the packet to the node which is closest to the
destination. If the protocol encounters the local maximum, the recovery strategy may come to help to
forward packet to the closer node. The packet resumes forwarding in greedy mode when it reaches a
23
node whose distance to the destination is closer than the node at the local maximum to the
destination.
Figure 2. GPSR Routing
GPSR uses perimeter mode in order to recover from local maximum based on right hand rule. The
principle is that when a node “x” first enters into the recovery mode, its next forwarding hop "y" is
the node that is sequentially counterclockwise to the virtual edge formed by and destination “D”.
Then, the next hop “z” is sequentially counterclockwise to the edge formed by “y” and its previous
node “x” shown in Figure 4. However, if the edge “yz” formed by the current node and the next hop
crosses the virtual edge “xD” and results in a point that is closer than the previous intersecting point
“x”, perimeter mode will perform a face change in that the next hop w is chosen sequentially
counterclockwise to the edge ”yz” where the closer intersecting point was found. This kind of routing
is called face routing because a packet should pass many nodes until it reaches a node which is closer
to the destination.
24
Figure 3. On the left, packet will loop around face 3; on the right packet will eventually route to D through u, s, x, v, t and
w.
The point is that if the graph is not planar, it means that there are cross edges in the graph, loops may
occur. Consider in the above Figure, x tries to reach D in perimeter mode. The packet will eventually
loop around face 3 with no intersecting point closer than p. Had the cross edge “ut” been removed,
the packet would travel the exterior face u, s, x, v, t, and w to reach D. in order to avoid loops, GPSR
provides two distributed algorithms: Relative Neighborhood Graph (RNG) and Gabriel Graph (GG)
which are known to be planar. In these algorithms we assume a threshold; if the distance between two
nodes is greater than or equal to the distance d, they must be connected by an edge. If the distance
between two vehicles is greater than d, they must not be connected by an edge. However, because of
channel fading in VANET, this method is not useful.
2.2.9.1 Comparison between GPSR and DSR
Fußler in 2002 compared the results between DSR and GPSR in a highway scenario. He showed that
as communication distance become larger; the successfully delivered packets for DSR diminish. The
reason is that DSR uses source routing and should maintain the route to the source from the sender.
When the length of the route increases, maintaining the route becomes harder. In larger
communication distance, GPSR packet delivery is close to 100%, so in highway since local maximum
rarely happens on a highway, the topology is GPSR.
25
2.2.10 GPSR+AGF
This routing protocol considers two problems with GPSR in VANET. First of all, in the table of
node’s neighbor there exist the information of neighbors’ position. The solution of this problem is
that the frequency of beacon increases but this solution cause to increase the congestion and
also potential collision. Secondly, when the destination changes its position, packet will never
be updated. So the location of destination is another problem. The suggestion for this problem is
“Advanced Greedy Forwarding (AGF)”.
This proposed solution is based on the corporation of the speed and direction of a node in beacon
packet and total travel time, which includes the time for processing the packet, up to the current
forwarding node within the data packet. Every node can be filtered out dated nodes in its
neighbor table with the velocity vector and speed plus direction. Every forwarding node can be
better estimated by the deviation of the original location of destination and also its current location
can be estimated. In result we have at least three times of improvement in packet delivery ratio at
GPSR.
2.2.11 PRB-DV
Position-Based Routing with Distance Vector Recovery (PBR-DV) uses AODV-Style recovery as
packets fall into a local maximum. The node at the local maximum would broadcast a request packet
for the node’s position and destination’s location. After receiving the request packet, it will check the
node and determine which one is closer to the destination or closer to local maximum? If it is not
closer to destination it records the node from which it receives the request packet and then broadcasts
the request.
In other respect, it sends a reply to the node from which it receives the request. Similarly when the
reply packet travels back to the local max node, each intermediate node will record the previous
node which receives the reply packet. So the local max node can maintain a route to a closer node
than itself. The disadvantage of this method is its extra flooding which is necessary to discover the
26
non-greedy part of the route. There is no reappraisal for comparing PRB-DV to neither GPSR
nor AODV; therefore the execution in packet delivery and from above is unconvincing.
2.2.12 GRANT
Greedy Routing with Abstract Neighbor Table (GRANT) uses the idea of extended greedy
routing which each node known its “x” hop local area. Each node is far view envision of the best
route to avoid local maximum. For selecting the next forwarding neighbor “E” which is based on the
multiplication of distance between the nodes, hop “x” in another side forms “E” and the destination,
the shortest path from “N” to “E”, and the Charge per hop for multihop neighbors. The
smallest metric is chosen to the next hop by neighbor “E”.
GRANT sets apart the plane into areas and involved a typical neighbor for every area, because
transmitting x-hop neighbors in the beacon is more than enough from above. Upon receiving a
beacon, a node computes the area that the broadcasting node and its neighbors belong to, thus
categorizing them into different hops from the current node. On receiving a beacon, a node
calculate the area which includes the broadcasting node and its neighbors, therefore
classification of them is in the different hopes from and the current node.
The estimate is based on snapshots of appointment of cars from a uniform distribution. The
spreading model is based on a significant property of a city script that many radio obstructions are
there, for example buildings and trees. A simple supposition that model makes nodes on different
streets unable to hear each other because of radio obstructions. Consequence gives us that most of the
routes in GRANT have shorter path length than traditional greedy routing. And also, the number of
times the packet is recovered per route is also less in GRANT than in traditional greedy
routing.
GRANT with Face routing similarly the recovery strategy is compared to GRANT with Distance
Vector which is based on the recovery (like PRG-DV).The total of hops for each recovery is way less
in GRANT with Distance Vector-which is based on recovery than GRANT with Face routing. In
27
spite of the problematic condition of short-range overwhelm, Distance Vector recovery is strong to
radio obstruction that epidemic Face routing. Because the estimate is done base on the static traces
and the x-hop neighbors are supposed to be available, the beacon above and possible
erroneousness are not measured and well comprehended. Also, additional ways are which have
smaller path length than traditional greedy routing on a normalized percentage basis; there is no
performance metric such as packet delivery ratio that can confirm its correct performance.
2.2.13 Overlay
An overlay routing has the characteristic in which the routing protocol operates on a set of typical
nodes overlaid on top of the living network. Definitions are made at junctions where packets
make turns into a different road segment in the urban environment. Hence, the overlaid routing
protocols display below has something to do with nodes at junction.
2.2.14 GPCR
Because nodes are highly mobile in VANETs, node planarization can become a cumbersome,
incorrect, and continuous process. In their work of Greedy Perimeter Coordinator Routing (GPCR)
monitored that the street map of cities forms a planar graph such that node planarization can
be removed. The planar graph using the underlying roads, which nodes forwarded as far as they can
in a direction of roads in both greedy and perimeter mode and also halt at junctions where determined
about which next road fragment to turn into can be affected. An example of GPCR forwarding where
node A forwarded packets to node B at a junction even despite node A’s radio range covers node C.
28
Figure 4. GPCR Routing
GPCR can remove the incorrectness of node planarization, and GPCR can improve routing act as
packets travel shorter hops in the perimeter mode. In addition, the improved routing determined to
live packets from being routed to the incorrect direction that arrives to higher delay. GPCR does not
rely on a map to determine whether a node is located at a junction, in contrast to provide two
heuristics to determine whether a node is a junction. For the first time heuristic utilize beacon
messages and it decides a node x which is located at a junction if it has two neighbors which they are
y and z that are within the range of each other but do not list each other as neighbors. The second
heuristic derived from a similarity coefficient that connects a node to its neighbors. If the correlation
coefficient is almost 0 it means that there is no linear relationship between the statuses on the
neighbors. This implies that the node is located at a junction. Their estimate, which is based on
the set apart for vehicular traffic simulator, has display that packet delivery rate does increase
over GPSR.
2.2.15 GpsrJ+
This method eliminates the excessive halt at a junction while keeping the effective planarity
of topological maps. It utilizes two-hop neighbor beaconing to prophesy which road fragment its
neighboring junction node will take. If the prediction signifies that it’s neighboring junction forward
the packet onto a road with a different direction, it forwards to the junction node. Else, it
29
avoids the junction and forwards the packet to its most distance neighboring node. Figure shown
below clarifies the advantage of prophesy. The figure illustrates that GpsrJ+ can bypass the junction
area and forward the packet to node E directly, yet GPCR forwards it to the junction node B,
therefore reasoning more broadcast and transmission.
GpsrJ+ uses the right-hand rule to decide the best direction (as opposed to final destination direction)
and by means of that best forwarding node in the perimeter mode. If the greatest distance node is in
the same direction as the best direction, the best forwarding node is the furthest node. In another
respect, a junction node is the best forwarding node. GpsrJ+ manages to expanded packet delivery
ratio of GPCR and decrease the number of hops in the recovery mode by 200% compared to GPSR.
Figure 5. GpsrJ+ Routing
2.2.16 CAR
Subsequent their influenced Preferred Group Broadcast (PGB) to reduce broadcast from AODV
route discovery and Advanced Greedy Forwarding (AGF) to explain node’s mobility, new
method is proposed: the connection-Aware Routing (CAR). CAR utilizes AODV which is based on
path discovery to encounter routes with restricted broadcast from PGB. In any event, nodes which is
30
formed the route don‘t record their previous node from backward aware and their premature node
that forwards the path reply packet from the destination. Somewhat, anchor points, which are
nodes in the vicinity a crossing or road curve, are recorded in the path discovery packet.
A node decides itself similarly an anchor point if its vector is not parallel to the velocity vector of the
preceding node in the packet. The destination allows accepting many times path discovery packets. It
selects the route which is provides better connection and lower delays. AGF is utilized to the front
the route reply back to the source via the recorded anchor points. When the source receives the
route respond, it records the route to the destination and beginning to transmit.
Data packets which forwarded in a greedy manner for the destination inward the set of anchor points
utilize the AGF. Additionally to manage movability by AGF, CAR insert “guards” to aid to tack the
prevalent condition of a destination. A keeping node can be filtered or directed again packets or
summed information to a packet that delivers finally this information to the destination of
packet. In result illustrates CAR possesses important packet delivery ratio (PDR) than GPSR and
GPSR+AGF.
The reason that CAR’s PDR is higher than GPSR+AGF is that CAR guarantees to recognize the
shortest connected route when GPSR+AGF permit from sub optimality of greedy mode in terms of
determining like a route. CAR’s route discovery above which is checked by PGB. The above of
supply protection is not in the data packets except in the beacons. Nodes on average only
broadcasts 2-3 protect while the simulation. Therefore, the beacon overhead is not defeating.
2.2.17 GSR
Geographic Source Routing (GSR) depends on the attainable of a map and calculates a
Dijkstra shortest path on the excessive graph where the vertices are junction nodes and the edges are
streets that join those vertices. The progression of intersection sets up the route to the destination.
Then Packets are forwarded desirously between intersections. GSR does not regard the connectivity
between two intersections; hence, the route might not be connected inward. Recovery when like
31
a argument occurs is greedy forwarding. The distinction between GSR and CAR is that CAR is
usable to utilize a map and it utilizes proactive discovery of anchor points that signify a turn at an
intersection.
2.2.18 A-STAR
Anchor-Based Street and Traffic Aware Routing (A-STAR) is similar to GSR in which
packets are routed inward anchor points of the overlay. Anyway, A-STAR is traffic attentive;
the traffic on the road decides if the anchor points of the road regards in the shortest path or not. A-
STAR routes which is based on two types of excessively maps: a statically and dynamically both of
them rated map. A statistically rated map is a graph that displays bus routes that typically imply stable
amount of traffic. Dijkstra paths are calculated by statistically rated map which they are in general
connected since the external knowledge. A dynamically rated map definite as a map that is generated
which is based on the real-time traffic situation on the roads. The city traffic condition is monitored
by road side deployment units and handed out information to every vehicle. Therefore, road traffic is
the distinction between a statically rated map and a dynamically rated map. A statically rated map is
based on bus routes which have high traffic; a dynamically rated map is based on the traffic
monitored dynamically by road-side units.
When the packet gets stuck due to disconnectivity of the prevalent path to the destination A-
STAR suggests a distinction recovery algorithm. The node will calculated a new anchor path and the
road fragment at the time of the packet is currently located be marked as “out of service”
impermanent to prevent other packets from entering into the same problem. The “out of service” is in
the recovered packets. Nodes that take in the recovered packets update their map and
calculated anchor. The mobility model and propagation model are based on the M-Grid mobility
model, a variant of the Manhattan model that considers not only the vehicular movement in
a typical metropolis where streets are set out on a grid pattern but also the radio obstacles.
32
A-STAR is compared to GSR and GPSR. A-STAR packet delivery ratio is lower than GSR and
GPSR with or without recovery as A-STAR choices paths with higher connectivity.
2.2.19 STBR
Another routing protocol for VANET is STBR or Street Topology-Based Routing. In this approach
the road connectivity at junction nodes will be computed. So we need to choose one of the nodes at a
junction as the master node and that node is responsible for checking if links to the next junctions are
connected or not. This information will then broadcast to other masters and therefore all the master
nodes can generate a two-level junction neighbor table. The first level is through neighboring links to
its direct junction nodes and the second level is its direct junction nodes through their neighboring
links to their own junction nodes. In this routing protocol the routes are computed through Dikestra
shortest path and the packets are routed based on their geographic distance to the street where
the destination is on.
2.2.20 GyTAR
Greedy Traffic Aware Routing protocol is a similar approach mentioned above in that packets are
forwarded greedily toward the next junction. This routing protocol contains two parts:
- Junction Selection: First the best next junction will be selected for forwarding the packets
to the destination. We will do this by considering the traffic density and also the distance of that
junction to the destination. This information will be provided by roadside units and sensors.
- Forwarding packets between junctions: After selecting the next junction for forwarding
the packets we need to determine to which cars in the road we should send the packets. GyTAR tries
to mimic the shortest path routing by taking into account the road connectivity.
33
Figure 6. GyTAR Routing
2.2.21 LOUVRE
The next routing protocol is LOUVRE or Landmark Overlays for Urban Vehicular Routing
environments. Lee et al. (2008) has summarized geographic greedy overlay routing into two
categories. The first is geo-reactive overlay routing where the next overlaid node is
determined based on their neighboring nodes (STBR and GyTAR). The second category is geo-
proactive overlay routing where the sequence of overlaid nodes is determined a-priori (GSR and A-
STAR).
Figure 8. LOUVRE Routing
The above figure shows the procedure in which LOUVRE obtains routes to nodes from source.
LOUVRE first filters out roads that do not have density over the threshold and then the overlaid
routes are built on top of roads whose density is above threshold. After that by using Dikestra the
shortest path from source to destination will be computed.
34
2.2.22 CBF
Another geographic routing protocol in VANET is CBF or Contention-Based Forwarding. This
method does not require proactive transmission of beacon messages and Data packets are broadcast to
all direct neighbors and the neighbors decide if they should forward the packet. The actual forwarder
is selected by a distributed timer-based contention process which allows the most suitable node
to forward the packet and to suppress other potential forwarders. Receivers of the broadcast data
would compare their distance to the destination to the last hop’s distance to the destination. The
bigger the differences, the larger the progress and shorter the timer.
2.2.23 DTN
As it is mentioned before one of the difficulties in VANET routing is the high mobility of the nodes
in the network. This leads the network to have frequent disconnections. In order to solve this
problem we can allow the nodes to store the packets when there is no contact with other
nodes, to carry the packet for some distance until meeting with other nodes.
2.2.24 VADD
One of the routing protocols in delay tolerant networks is VADD or Vehicle-Assisted Data Delivery.
This approach aims at improving routing by the idea of carry-and-forward based on the use of
predictable vehicle mobility. At each junction the vehicle will makes a decision and select the next
forwarding path with the smallest packet delivery delay. This delay is depends on road density,
average vehicle velocity and the road distance.
There exist different types of VADD. Location first probe (L-VADD) would select a node closest to
the next forwarding path. Direction first probe (D-VADD) would select a node which is going toward
the forwarding path even though such a node might be further from the forwarding path than other
nodes on the path. Multipath Direction first probe (MD-VADD) would select multiple nodes
going toward the forwarding path so as not to miss forwarding to a node that offers a
35
shorter time to the destination. Hybrid probe (H-VADD) combines L-VADD and D-VADD so
the long packet delay from D-VADD is offset by L-VADD and routing loops from L-VADD are
masked by D-VADD. Comparing GPSR and different types of VADD, H-VADD had the best
performance.
2.2.25 GeoOpps
Another DTN routing protocol is Geographical Opportunistic Routing which uses the information
from navigation systems to select vehicles that are likely to move closer to the final destination of a
packet. It calculates the shortest distance from destination to the nearest point (NP) of vehicles path
and estimates the arrival of time of a packets to destination. The following figure shows node A in
computing the NP of its neighbor N1 and N2. Since N1 offers closer NP to the destination, node A
picks N1 to forward its packet.
Figure 9. GeoOpps Routing
During the travel of vehicles, if there is another vehicle that has a shorter estimated arrival time, the
packets will be forwarded to that vehicle.
This routing protocol has a problem which shows in the bellow figure. Vehicle B holds a data
message and, therefore, its neighbors A and C calculate their minimum expected time of delivery. In
the case of A, the closest point to the destination D is its current position. Then, the estimation MET
DA is the time to go from the current position to D.
36
On the other hand, the nearest point from C’s trajectory to the destination is the destination itself. So,
the expected delivery time MET DC corresponds to the time that C takes to arrive at D. Since the
distance traversed is longer than in the case of A’s estimation, then MET DC > MET DA and,
accordingly, B selects A as the next hop. Given the scenario above, note that if more vehicles appear
following A’s trajectory, the message get stuck around that position until its expiration. On the
other hand, if no more vehicles appear, A would hold the message and carry it farther away from the
destination. This is the opposite of the objective of the protocol. Continuing with the same example, C
would have been a more suitable next hop because it had delivered the message to D. The key is that
the message had approached the destination at each step.
2.2.26 GeoDTN+Nav
In this section we briefly describe GeoDTN+Nav [1], a hybrid geographic and DTN routing with
navigation assistance in urban vehicular networks, which has some relations with our proposed
method. This routing protocol contains three different modes (Greedy mode, Perimeter mode and
DTN mode) for forwarding the packets. A network partition detection method has been used to
37
switch between these modes with the aim of increasing the packet delivery ratio even in
sparse or partitioned networks.
The main idea of this routing protocol is using a VNI (Virtual Navigation Interface) framework as a
parameter to determine proper delay tolerant forwarder. The goal of VNI is to standardize the content
and transmission format of navigation information provided by GPS devices. For example, road
identification can differ from one navigation system to another. Also the map encoding of a
road on one navigation system may define a road as one separated by junctions; whereas, the map
encoding of a road on another navigation system may define a road naturally from the name of the
road.
Based on vehicles movement pattern, vehicles are categorized into four different categories as shown
in table below:
Categories Examples
Deterministic (Fixed)
Route
Metro Bus, Metro Train,
Campus Shuttle
Deterministic (Fixed)
Destination Taxi, Van Pool
Probabilistic (Expected)
Route/Destination
Navigation system guided
vehicles
Unknown Non-Random movement
By considering these categories, VNI provides two kinds of primitive information:
1- Route_info: It may consist of detailed path, destination, or the direction of the vehicle.
2- Confidence: Confidence indicates the probability that the vehicles movement would abide by
the given route information.
38
For example VNI on taxis would broadcast (Dest/100%) because taxis move deterministically toward
its destination. In addition to VNI, GeoDTN+Nav uses other parameters (e.g. disconnection
probability, direction of the node) to indicate whether a node is proper enough to be a DTN node.
2.2.27 Multi-Level Hierarchical Routing
All the previously disgusted routing protocols are categorized in the flat routing category. In flat
routing protocols, the next hop for forwarding packets toward destination is the physical next hop of
current node. In large scale ad hoc networks with hundreds of vehicle nodes, flat routing will cause
performance degradation. The main reasons are:
- The route’s hop count will become bigger in a large scale network, and thus link
breakage will happen frequently and end-to-end delay will increase. If some nodes are highly
mobile as shown in Fig. 8, link failure will become even more severe.
Figure 8. Real Capture of Congested Traffic.
- Heavy overhead introduced by routing protocol can consume more network capacity.
39
- The routing information about remote nodes can become inaccurate due to the long
transmission time.
The hierarchical routing protocols are developed to address the network scalability problem. In
hierarchical routing protocols the vehicles are categorized in some clusters. Each cluster has a leader
node that all other nodes in a cluster are connected only to this node. Some nodes are in the range of
more than one leader node. Those nodes are called gateways. Gateways are used for connecting
clusters together. While we can have more than one gateway between two clusters, the robustness of
routes will be increased.
2.2.28 RBVT-R
This routing protocol is a reactive source routing protocol for vehicular ad hoc networks. It will use
the connected route segments to choose the best path for forwarding packets from source to
destination. A connected route segment is segment between two adjacent intersections with enough
vehicle traffic to ensure network connectivity. By using this definition a sequence of junctions will be
discovered and stored in the header of the packet and used by intermediate nodes to geographically
forward packets between intersections. Two major aspects are considered for this routing protocol:
1- Route Discovery (RD): when a node decided to send information to a destination node it
should first locate the destination node. So it starts the route discovery process. For doing so
the source node creates a RD packet and broadcast to all its neighbors. This packet will be
flooded in the region around the source node to discover a route toward the destination.
Flooding the network with RD packets may cause some problems. To reduce the effects of
the broadcast storm problem, RBVT-R uses an improved flooding mechanism. If a node
receives a RD packet with the same source address and sequence number with the previously
received packet, it discards it.
40
When a node receives a new RD packet, it does not directly rebroadcast this packet; the node
holds the packet for a period of time inversely proportional to the distance between itself and
the sending node. Once the waiting period is over, the node re-broadcast the RD packet only
if it did not notice that this packet was re-broadcast by further away nodes located in the same
routing segment.
The following algorithm shows the route discovery and route reply in RBVT-R at node ni:
Notation:
n S , n D : ID of the source and destination
Path,TempPath: The best and temporary paths from n S to n D
| Path | : Path length
RS(n i ): Road segment where node n i is located
α: Waiting time parameter
RD: Route discovery packet
RR: Route reply packet
Upon receiving RD(n S , n D , TempPath) from n j
1: if (n i == n D )&( | TempPath | ≤ | Path | ) then
2: Path = TempPath
3: Send RR(n D , n S , Path)
4: Return
5: end if
41
6: if RD not seen before then
7: if (RS(n i ) 6 = RS(n j ))&(RS(n i ) / ∈ T empPath) then
8: Add RS(n i ) to TempPath
9: end if
10: Set timer = α ∗ distance(n j , n i )
11: else
12: if RS(n i ) == RS(n j ) then
13: Cancel timer / ∗ n j is a better broadcast node ∗ /
14: end if
15: end if
Upon timeout
16: Broadcast RD(n S , n D , TempPath)
Upon receiving RR(n D , n S , Path) from n j :
17: if n i == n S then
18: Store Path
19: Forward Data(Path)
20: else
21: Forward RR(n D , n S , Path)
22: end if
2- Route Reply (RR): after receiving the RD packet by destination node, a RR packet will be
generated and the discovered route will be copied to the header of the RR packet. As shown
in figure 3(b), this route defines a connected path, composed of road intersections from the
source to destination. If the destination node receives a multiple RD packet, a new reply
packet will be generated only if the newly received packet contains a better quality route.
For evaluating the quality of routes we can use following metrics:
o Vehicle density on the route segment
o Number of lanes
o Traffic flow rates
o Number of passed intersections
42
As soon as receiving the RR packet by the source node, it will start sending the packet toward
the destination.
2.2.29 Comparison of VANET Routing Protocols
In the previous section we discussed about different types of routing protocols for vehicular ad hoc
networks. Also we briefly explained the main idea of them and the way they forward packets toward
destination node. Following tables shows a comparison between these routing protocols:
Routing protocols in vehicular ad hoc networks can be compared from different points of view.
Following figure shows a qualitative comparison of VANET unicast routing protocols.
43
2.2.30 Summary
The especial characteristic of VANET is the rapid movement of the nodes. So we suggested
some protocols to be adapted with rapid features of VANET. These protocols have some
advantages and some disadvantages. The protocols are divided in to some categories. The categories
depend on proactive, reactive, topology based routing or geographic routing. In summary, FSR,
AODV, AODV+PGB, DSR and TORA are topology based routing. GPSR, GPSR+AGF, PRB-
DV, GRANT, GPCR, Gpsrj+, CAR, GSR, A-STAR, STBR, GyTAR, LOUVRE, CBF, TO-
GO, VADD, GeOpps and GeoDTN+Nav are position based routing. The only protocol which is
proactive is FSR.
The main goal of using these protocols is to increase the performance of the network and decrease the
routing overhead. Some of them are greedy and the others are not. Some of them are using beacons.
For example GPSR, GPSR+AGF, GPCR, Gpsrj+, GSR, A-STAR, STBR, GyTAR, VADD, GeOpps
and GeoDTN+Nav are using beacons. The open issue in VANET routing is then whether there is any
44
benchmark tool for evaluating these protocols. Many assumptions and many techniques should
become better in order to use in VANET.
Chapter 3
Proposed Method
3.1 Abstract
Due to the dynamic topology of vehicular ad hoc networks, routing of packets in these networks faces
a lot of difficulties. The situation will become more challenging when we have to deal with
Delay Tolerant Networks (DTN) which are also sparse and partitioned and we need to use some
vehicles to store the packets and carry them from one partition to another. Despite all these
difficulties, by looking through movements of vehicles in an urban environment, we can find out that
the topology of the network does not change in a pure random way and we can bring the traffic
models of streets into account for having better routing performance. Through this research we
proposed an intelligent routing protocol for delay tolerant networks using genetic algorithm as the
learning method for choosing the best vehicle to carry the packets from one partition to another.
3.2 Main Idea
Similar to other types of position-based routing protocols, we used geographical position information
of the nodes for forwarding the packets. Traditionally there exist two modes for forwarding the
packets toward the destination node. First one is Greedy forwarding mode in which a node receiving a
packet will send it to an immediate neighbour that is geographically closer to the destination. This
process will continue until the packet traps in a “local maximum” node where there exists no
neighbour closer to the destination than itself.
Perimeter forwarding as the second mode is then considered to recover from local maximum by using
right hand rule. GPSR and GPCR are two routing protocols which are using these two modes for
45
forwarding the packets toward destination. The problem arises in DTN networks where the network is
sparse. GPSR and GPCR are only applicable in networks with high density of nodes where there
always exists a path from source to destination. Therefore for partitioned networks we need to add
another mode to make connection between partitions. This mode is called DTN forwarding and the
idea behind this mode is to choose a proper node for storing the packet and carrying it from one
partition to another.
In GeoDTN+NAV routing protocol the proper DTN node and the switching time from perimeter
mode to DTN mode are calculated using some parameters discussed in previous section. Although
compared with GPSR and GPCR this routing protocol improves the packet delivery ratio of the DTN
networks, it still has some limitations. The first limitation is all the vehicles have to be equipped with
a VNI system. As it is mentioned in the previous section this VNI system broadcasts information
about the path or destination of vehicles which may causes some privacy problems. For example it is
not wise that law enforcement, military, or financial armored vehicles broadcast such these
information to all their neighbours. Another problem is that some other effective parameters such as
the speed of the candidate vehicles or the traffic model of the streets are not considered for the DTN
node score formula.
Our routing strategy is somehow the expletive of GeoDTN+Nav routing protocol. The differences are
first, in our proposed method we tried to consider other effective parameters to choose better DTN
node and second, we used genetic algorithm to train our DTN node evaluation system and to
determine how important each parameter is in the simulation environment.
3.3 DTN node Evaluation System
As it is mentioned above, both greedy mode and perimeter mode will fail to forward packets to
destination in the sparse and partitioned networks. So we need to choose a node as DTN node to store
the packet and to carry it from one partition to another. Another thing that we should determine is
46
when to switch from perimeter mode to DTN mode. As it is discussed in [1], we will switch from
perimeter mode to DTN mode when the network is disconnected and a proper DTN node is detected.
Several parameters exist that affect the switching decision. The speed of the vehicle, the direction of
the vehicle, the distance between that vehicle to destination and the probability of network
disconnectivity are examples of these parameters. Similar to “GeoDTN+Nav”, we used hop count as
a factor to recognize network disconnectivity. Combined these parameters with each other, we derive
the bellow formula. The result of this formula is then compared with a threshold.
αS(Ni) + βD(Ni) + γF(Ni) + δP(h) > Thresh (1)
where:
S(Ni) : Speed of the ith neighbor
D(Ni) : Direction of ith
neighbor
F(Ni) : Distance between Ni and destination
P(h) : Probability of network disconnectivity
h : Hop counts that the packet has traversed in perimeter mode
α, β, γ, δ : System parameters
Ni : ith neighbor of current node
Function S(Ni) represents how suitable a neighbor is to be a DTN node according to its speed. The
faster the node the better for choosing it as DTN node. So this function assigns a greater number to
the vehicle with higher speed and lower number to the slower vehicle. The next parameter is the
direction of the node. It is obvious that a node which is moving toward destination is a better choice
to be DTN node than the node which moving away from destination.
Therefore according to the angle formed with movement direction line of the node and the line
between that node and destination, D(Ni) will assign a number to each node to show how proper that
node is to be DTN node according to the moving direction point of view. The next parameter is F(Ni)
47
that assign a number to a node based on the distance between that node to the destination. The last
one is P(h) that calculates the probability of network discconection based on the hop count the packet
traverse in perimeter mode. It is recommended to review [1] for better understanding of how these
functions return a value for each node.
Till now the calculation steps were very similar to GeoDTN+Nav routing protocol. We just changed
some parameters of the evaluation function to choose the better node for storing and carrying the
packet. In the next section we start discussing our main idea that improves the node evaluation system
and simultaneously improves the DTN node selection method.
3.4 Genetic Algorithm
Genetic algorithm (GA) is a subclass of evolutionary algorithms (EA) which generate solutions to
optimization problems using techniques inspired by natural evolution such as selection, crossover,
mutation and inheritance. Four steps have to be considered to solve a problem with GA. The first step
is initialization in which the evolution usually starts from a population of randomly generated
individuals. Each individual or chromosome is a set of genomes. In each generation, we need to
evaluate the chromosomes by a fitness function and determine how suitable each of them is to be
chosen for the next generation.
The population of subsequent generations is formed by selecting and modifying the proper prior
chromosomes. These modifications are based on crossover and mutation. Crossover is a method to
combine two chromosomes to produce new offspring. The idea behind crossover is that the new
chromosome may be better than both of the parents if it takes the best characteristics from each of the
parents. In mutation we alter one or more genome values in a particular chromosome. Mutation is
done in order to prevent the population from stagnating at any local optima. The procedure of
breeding offspring from previous generation will continue until a termination condition has been
48
reached. This condition may be either finding a solution that satisfies minimum criteria or reaching a
fixed number of generations.
In the following subsections we explain how we used the genetic algorithm for our purpose to
improve the simulated network parameters.
3.4.1 Initialization
In this step we need to construct the first generation of the chromosomes. In our case of study each
chromosome contains five genomes. As shown in figure 1, we put the coefficients of the proposed
parameters in the chromosome. Also we considered the threshold of the evaluation formula as the
fifth genome.
α β γ δ Thresh
Figure 1. Chromosome Structure
According to this fact that we have no idea about the proper values of these genomes at the beginning
of the Simulation, many individual solutions are randomly generated to form an initial population. As
you will see in the simulation & result section, the value of each coefficient varies from 0 to 1 that
causes the value of evaluation formula to vary in the range of 0 to 4.
3.4.2 Selection
After forming the first generation, we need to choose some chromosomes from current generation’s
population for inclusion in the next generation’s population. This step of genetic algorithm is called
selection. There exist different methods to select chromosomes from a particular population.
Roulette-wheel selection [9], Tournament selection [10] and Top percent selection [8] are examples
of these methods. In all these selection algorithms a fitness function is used to determine the
49
optimality of a chromosome, so the particular chromosome can be ranked against all the other
chromosomes. The fitness function that is considered in our algorithm is as follows:
Fitness (Ci) =
∑
(2)
In this formula we have:
Ci : ith chromosome in the population
N : Number of packets generated in each generation
P(i,j) : jth packet generated in the simulation run of chromosome Ci
In the Roulette-wheel selection method which we also used for our simulation, the chance of a
chromosome getting selected for the next generation is proportional to its fitness function value. This
is why this method is also called Fitness Proportionate Selection. By using this type of selection the
probability of individual i to be chosen for the next generation in the population is:
∑
(3)
where:
Ci : the ith chromosome in the population
Fitness(Ci) : Fitness function for Ci
M : Number of chromosomes in each generation
Combining equation 2 with equation 3 we have:
∑
∑ ∑
(3)
As it is discussed in [9], with fitness proportionate selection there is a chance some weaker solutions
may survive the selection process; this is an advantage, as though a solution may be weak, it may
include some component which could prove useful following the reproduction process.
50
3.4.3 Reproduction
After selecting the proper chromosomes as the parents we need to breed new solutions from them for
the next generation. The method that we used for breeding child solutions from a pair of parent
solutions is One-point crossover. As it is shown in figure 2, a single crossover point on both parents’
chromosome is selected. Then we interchange the two parent chromosomes at this point and produce
two new offspring. After reproduction of new chromosome we need to apply mutation on some of
them. Mutation should be applied to avoid the solutions from trapping in local optima. Mutation
occurs during evolution according to a user-definable mutation probability. This probability should
usually be set fairly low (about 0.01%) to prevent the algorithm to turn into a primitive random
algorithm.
Parent1 α1 β1 γ1 δ1 Thresh1
Parent2 α2 β2 γ2 δ2 Thresh2
Child1 α1 β1 γ2 δ2 Thresh2
Child2 α2 β2 γ1 δ1 Thresh1
Crossover point
Figure 2. An example of breeding two children from two parents
3.4.4 Termination
The genetic processes for breeding new generations of solutions discussed in the previous subsections
will continue until a termination condition has been reached. It is because these processes are time
consuming and they should be stopped after breeding particular generations. For example in our
simulation which we will discuss in the next section the algorithm will be terminated after breeding
four generation of solutions. Figure 3 illustrates the complete flowchart of discussed algorithm.
51
Chapter 4
Simulation & Result
4.1 Introduction
For evaluating our proposed method we implemented and tested it on a synthetic scenario. For our
simulation we completed three steps including simulation of mobility, simulation of network
and at last trace file analyzing. Before our complete discussion about these three steps, we need to
have technical background knowledge about the softwares that we used in our simulation. In the
following sections we first discuss about these softwares, which are SUMO and MOVE and NS2, and
52
after that we will explain our three main steps of our simulation. At last we illustrate the results of our
simulation.
4.2 SUMO (Simulation of Urban MObility)
SUMO is an open-source application for simulating the mobility model of cars and vehicles in an
urban environment. This application is implemented with java and it is used for simulating realistic
parameters of a vehicle in the street such as realistic accelerations, traffic light definitions, real street
maps, streets with multiple lanes and etc. One of the best features of this application is we can import
and use Google earth maps and Tiger maps. This will help us simulate a real urban map and
implement and test the routing protocols in a real situation.
The development of SUMO started in the year 2000 and its goal was to support the traffic research
community with a tool into which own algorithms can be implemented and evaluated with, without
the need to regard all the artifacts needed to obtain a complete traffic simulation. This application can
be installed and used in Windows and Linux and Mac operating systems.
4.2.1 Features of SUMO
The features of SUMO divided into six parts which are:
- Complete workflow (network and routes import, DUA, simulation)
- Simulation
o Collision free vehicle movement
o Different vehicle types
o Multi-lane streets with lane changing
o Junction-based right-of-way rules
o Hierarchy of junction types
o A fast openGL graphical user interface
o Manages networks with several 10.000 edges (streets)
53
o Fast execution speed (up to 100.000 vehicle updates/s on a 1GHz machine)
o Interoperability with other application on run time using TraCI
o Network-wide, edge-based, vehicle-based, and detector-based outputs
- Network
o Many network formats (VISUM, Vissim, Shapefiles, OSM, Tiger, RoboCup, XML-
Descriptions) may be imported
o Missing values are determined via heuristics
- Routing
o Microscopic routes - each vehicle has an own one
o Dynamic User Assignment
- High portability
o Only standard C++ and portable libraries are used
o Packages for Windows main Linux distributions exist
- High interoperability through usage of XML-data only
4.2.2 Included applications
SUMO is a complete package which contains several applications needed for preparing the
simulation. The package includes:
Application
Name Short Description
SUMO The microscopic simulation with no visualization; command line application
GUISIM The microscopic simulation with a graphical user interface
NETCONVERT Network importer and generator; reads road networks from different formats
and converts them into the SUMO-format
NETGEN Generates abstract networks for the SUMO-simulation
DUAROUTER Computes fastest routes through the network, importing different types of
demand description. Performs the DUA
54
JTRROUTER Computes routes using junction turning percentages
DFROUTER Computes routes from induction loop measurements
OD2TRIPS Decomposes O/D-matrices into single vehicle trips
POLYCONVERT Imports points of interest and polygons from different formats and translates
them into a description that may be visualized by GUISIM
AdditionalTools There are some tasks for which writing a large application is not necessary.
Several solutions for different problems may be covered by these tools.
4.2.3 Generating network with SUMO
In order to define and generate a complete network with all the streets and vehicles we need to
describe the nodes (junctions) and the edges (streets) and also the properties of vehicles on those
streets.
Nodes in SUMO have four attributes:
Attribute Name Mandatory Value Type Description
id Y id (string) The name of the node
x Y Float The x-position of the node on
the plane in meters
y Y Float The y-position of the node on
the plane in meters
type N
enum ( "priority",
"traffic_light",
"right_before_left" )
An optional type for the
Node
Each edge or street in SUMO has following ten attribute:
Attribute Name Mandatory Value Type Description
id Y id (string) The name of the edge
fromnode N referenced node id The name of a node within
the nodes-file the edge shall
55
start at
tonode N referenced node id
The name of a node within
the nodes-file the edge shall
end at
type N referenced type id The name of a type within
the types-file
nolanes N Int
The number of lanes of the
edge; must be an integer
value
speed N Float
The maximum speed allowed
on the edge in m/s; must be a
floating point number (see
also "Using Edges' maximum
Speed Definitions in km/h")
priority N Int The priority of the edge
length N Float The length of the edge in
meter
shape N
List of positions; each
position is encoded in
x,y (do not separate
the numbers with a
space!) in meters
The start and end node are
omitted from the shape
definition;describes an edge
that after starting at node 0,
first visits position 0,0 than
goes one hundred meters to
the right before finally
reaching the position of node
1
Spread-type N enum ( "right",
"center" )
The description of how to
spread the
lanes; "center" spreads lanes
to both
directions of the shape, any
other value
56
will be interpreted as "right"
And at last each vehicle has the following attributes:
Attribute Name Mandatory Value Type Description
id Y id (string) The name of the vehicle type
accel N Float
The acceleration ability of
vehicles of this type (in
m/s^2)
decel N Float
The deceleration ability of
vehicles of this type (in
m/s^2)
sigma N Float The driver imperfection
(between 0 and 1)
length N Float The vehicle length (in m)
max speed N Float The vehicle's maximum
velocity (in m/s)
color N Color This vehicle type's color
vclass N Class (enum) An abstract vehicle class (see
below)
emissionclass N Emission Class (enum) An abstract emission class
(see below)
guishape N Shape (enum) How this vehicle is rendered
guiwidth N Float The vehicle's width [m]
guioffset N Float Empty space after leader [m]
4.2.4 Pre-defined networks:
There exist three types of pre-defined network that we can use in our simulation. These pre-defined
networks are:
- Grid-like networks
57
- Spider-like networks
- Random networks
4.3 MOVE (MObility model generator for VEhicular networks)
As development of VANET in the practical application is too costly this software will help us to
implement and test our routing protocol in a simulated environment. MOVE is a java based software
and consists of two major parts:
- Mobility Model
- Traffic Model
Mobility Model part is for generating road map topology and vehicle movements and Traffic Model
section is for generating network traffic.
4.3.1 Mobility Model
In the mobility model section of the MOVE we can define and simulate our network environment.
Mobility Model has three sub-sections called “Map Editor”, “Vehicle Movement Editor” and
“Simulation”.
58
4.3.1.1 Map Editor
In the Map Editor sub-section we should implement the nodes (junctions) and the edges (streets) of
the map. Also we can import some prepared maps from Tiger map database. The maps of all the
states of United State of America are available in the Tiger map database.
59
4.3.1.2 Vehicle Movement Editor
In the vehicle movement editor section we should define the vehicle movements in the streets. This
can be done by three different solutions which are Flows, Trips and Turn.
4.3.1.2.1 Flows
This part will specify the groups of vehicles movements flow on the simulation. For implementing a
flow we should define the source edge and the destination edge of the flow and also we should
specify the start time in the flow.
4.3.1.2.2 Turns
This section is used when you want to specify the turning ratio for each junction. In the editor you
must group percentages together so they sum up as 1.0 (100%).
60
4.3.1.2.3 Trips
This section is very similar to flow but the main deference is we can specify the period of each group
of vehicles.
61
4.3.1.3 Simulation
Finally after creating the map of the simulation and the vehicles, we should configure our simulation.
Some simulation parameters such as start time and duration time of the simulation should be set in
this section. Also we can visualize our network and at last run the simulation.
4.4 NS2 (Network Simulator 2)
Network Simulator 2 (NS2) is a popular simulator in scientific environment. We have some other
network simulators such as Qualnet, GloMoSim, OPNET, etc. The advantage of NS2 in comparison
with other types of simulators is that it is an open source program which is suitable for low level
applications. The goal of NS2 is:
- To support networking research and education
o Protocol design, traffic studies, etc.
o Protocol comparison
62
o New architecture designs are also supported
- To provide collaborative environment
o Freely distributed, open source
o Increase confidence in result
NS2 uses two different languages, C++ and OTcl.
OTcl is a short for MIT object Tcl and is an extension to Tcl/Tk for object oriented programming.
OTcl is used to build the network structure and topology which is just the surface of the simulation.
Also it is easy to configure the network parameters.
C++ is the kernel part of the NS2. It is used to implement the kernel of the architecture of the protocol
designs. From the packet flow view, the processes run on a single node. Also C++ is used to change
or comment out the existing protocols running in NS2. NS2 uses to languages because we have two
requirements in simulation:
- Detailed simulation of the protocol: Run-Time speed
- Varying parameters or configuration: Easy to use
C++ is fast to run but slower to code and change. OTcl is easy to code but runs slowly.
NS2 can support following protocols:
- Wired Networking
o Routing: Unicast, Multicast, and Hierarchical Routing, etc.
o Transportation: TCP, UDP, others;
o Traffic sources: web, ftp, telnet, cbr, etc.
o Queuing disciplines: drop-tail, RED, etc.
o QoS: IntServ and Diffserv Wireless Networking
- Ad hoc routing and mobile IP
o Routing Protocol: AODV, DSDV, DSR, etc.
o MAC layer Protocol: TDMA, CDMA(?), IEEE Mac 802.x, etc.
63
o Physical layers: different channels(?), directional attena
- Sensor Networks
4.4.1 Structure of NS2
The structure of NS2 contains four different parts:
- NS2: The simulator itself
- NAM: Visualized trace tool of network animator
- Pre-processing: Traffic and topology generator
- Post-processing: Simple trace analysis, often in Awk, Perl or Tcl
The directory structure of NS2 is shown in the following figure:
4.5 Simulation of Vehicle’s Mobility
For the first step we needed to simulate our network environment including the streets, the junctions,
the traffic lights and flows of mobile vehicles. To do so we used SUMO (Simulator of Urban
MObility) simulator which is an open source software. As it is shown in figure 4, our environment
ns-allinone
Tcl8.0 Tk8.0 OTcl Tclcl NS-2
Tcl
Examples Test Lib mcast
NAM-1
C++
Code
OTcl
Code
64
has two separate partitions of streets connected to each other with a highway. We considered this type
of environment because we wanted to have a DTN network with disconnected partitions. Then
someflows of vehicle are generated in a way that we had some streets with high density of vehicles
and some with low. In Figure 4, the chromatic lines are the streets with high density of vehicles. After
that we specified a node in the left partition to be the source or generator of the packets and a node in
the right partition to be the destination of the packets.
Figure 4. The Topology of the simulated environment
Obstacles are placed between different road segments if they do not share the same horizontal or
vertical parameters. All the streets are bidirectional and the length of each edge is 300m, and the
transmission range is 300m too. The road between two partitions is 10km and contains some flows of
vehicles with different speeds. All the vehicle flows in this road departure uniformly with speeds vary
from 70km/h to 120km/h. The average vehicle speed in the two partitions is 40km/h.
4.6 Simulation Of Network
After simulating our streets and mobile vehicles we selected a source node in the left partition to
generate packets and send them toward the destination and also selected a destination node in the
right partition as a sink to receive the packets. Table 2 indicates the network parameters we used for
our simulation. We attached a UDP agent to the source node to generate packets with constant bit rate
and with packet size of 1460 bytes. All the related works for simulating the network were done with
NS2.
65
Table 2
Simulation Parameters
Parameter Value
Network Simulator NS2 (Network Simulator 2)
Mobility Simulator SUMO 0.12.0
Packet Size 1460 bytes
Transmission Range 300 m
Simulation Runs 200
Average Vehicle Speed in
the partitions
40 km/h
Number of Generations 4 generations
Number of Rounds in
Each Generation
50 rounds
.
4.7 Trace File Analyzing
The third step is analyzing the trace files which are provided by NS2. In our case of study we needed
to run the simulation for four generation and each generation contained fifty rounds; so the total
number of runs was 200. For each run, NS2 provided us a trace file that contained all the information
about the packets in the network. The total size of these files was about 1GB and we derived all the
required information such as packet delivery delay and packet delivery ratio from them.
As it is illustrated in figure 5, we computed the average delivery delay of each round in each
generation. Note that each round runs with particular quintuple 2wof genomes that determined with
genetic algorithm.
66
250
270
290
310
330
350
370
390
410
430
450
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry D
ela
y (s
ec)
Rounds
Generation 1
0
10
20
30
40
50
60
70
80
90
100
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry R
atio
%
Rounds
Generation 1
250
270
290
310
330
350
370
390
410
430
450
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry D
ela
y (s
ec)
Rounds
Generation 2
0
10
20
30
40
50
60
70
80
90
100
1 5 9 13 17 21 25 29 33 37 41 45 49A
vr D
eliv
ery
Rat
io %
Rounds
Generation 2
250
270
290
310
330
350
370
390
410
430
450
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry D
ela
y (s
ec)
Rounds
Generation 3
0
10
20
30
40
50
60
70
80
90
100
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry R
atio
%
Rounds
Generation 3
250
270
290
310
330
350
370
390
410
430
450
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry D
ela
y (s
ec)
Rounds
Generation 4
0
10
20
30
40
50
60
70
80
90
100
1 5 9 13 17 21 25 29 33 37 41 45 49
Avr
De
live
ry R
atio
%
Rounds
Generation 4
67
To compare these four generations with each other and see how the genetic algorithm improves the
network parameters in them we calculate the average of average delivery delays and the average of
average delivery ratios for each generation. Regarding to figure 6, by breeding each new generation
the delivery delay parameter of the network in our routing protocol decreased. Also it is concluded
that the more we continue breeding the generations the more the quintuple parameters converge to the
optimum values and the much delivery delay decreases. Meanwhile the average of average delivery
delays for “GeoDTN+Nav” routing protocol remains in the range of [366,372] seconds.
Figure 6. Average of average delivery delays in four generation
Figure 7. Average of average delivery ratios in four generation
385.21
363.42
343.10 334.39
300
310
320
330
340
350
360
370
380
390
400
1 2 3 4
Ave
rage
of
ave
rage
de
live
ry d
ela
ys
(se
c)
Generations
64.58
69.65
74.19 76.76
50
55
60
65
70
75
80
85
90
1 2 3 4
Ave
rage
of
ave
rage
de
live
ry
Rat
ios
%
Generations
68
Also as illustrated in Figure 7, by breeding new generations the delivery ration parameter of the
network in our routing protocol improved and increased. Again this parameter remains in a constant
range for the “GeoDTN+Nav” routing protocol. As it is stated before we have to terminate the genetic
algorithm and process of breeding new generations because it is time consuming. But still we can get
a good perspective about the optimum value range of each genome. For example in our simulated
network the range of the coefficient of speed parameter (α) after generation four bounded into
[0.6,0.8] which means that the speed parameter in our evaluation formula is very effective. Also we
can conclude that for having better delivery delay or delivery ratio in our network we should choose
the value of “α” parameter in the range [0.6,0.8]. We can find the optimum boundary of other
coefficients of the parameters in the same way. Also the proposed algorithm is flexible to test the
effectiveness of other parameters. For example if anyone thinks that there exist other parameter that is
effective in the evaluation formula he can add it to the formula with new coefficient and also add a
new genome to each chromosome and run the algorithm again and see how that parameter affect the
results. Then he can conclude weather that parameter is proper and necessary for the evaluation
formula or not.
Conclusion & Future Works
In this paper we proposed an intelligent routing protocol for delay tolerant networks. The
routing starts with two traditional steps of other geographic routing protocols which are greedy
forwarding and then perimeter forwarding. These two steps would fail to forward the packets
toward destination in the case that the network is sparse and disconnect. This is where we brought the
third mode of routing into account. The third mode was DTN forwarding in which we had to select a
node as the DTN node to store the packet and carry it from one partition to another.
The idea presented in this paper was using genetic algorithm to determine how effective each
parameter is in choosing the DTN node. This issue was done by setting the efficient of each
parameter as the genomes of chromosomes and then performing the genetic algorithm. For
69
our simulated network we considered five parameters which we thought are effective in DTN node
evaluation formula. By breeding each generation the values of these coefficients converged to the
optimum values.