A Study on the Tracking Problem in Vehicular Ad Hoc Networks

Vehicles have the characteristic of high mobility which makes vehicular ad hoc networks (VANETs) different from other mobile ad hoc networks (MANETs), it is more difficult to establish an end-to-end route in VANETs, and the source and destination nodes keep moving fast from their original locations. To guarantee a data packet will finally be received by the destination node in VANETs, and the location of the destination node must be tracked constantly. Advanced Greedy Forwarding (AGF (Naumov et al. (2006))) is a good way to estimate the location of the destination node by taking advantage of the velocity vectors; however, a vehicle changes its velocity constantly, it would be very inaccurate to estimate the location of a vehicle via its initial velocity. In this paper, we study the tracking problem in VANETs and propose two solutions: area-based tracking (ABT) and parked vehicle-assisted tracking (PVAT). ABT works well when the delays in data transmission from source to destination are small, and PVAT works as a supplement of ABT and deals with the situation of which the delays are large. PVAT takes advantage of vehicular sensors to detect whether a vehicle is parking. Simulations show better results compared to AGF.


Introduction
Routing is a great challenge in VANETs because of the high mobility of vehicles. Unlike routing in some static networks or other MANETs that the relay nodes in the routing path are static or moving slowly, the relay nodes in VANETs change their locations constantly and rapidly, and it is hard to find a relatively stable routing path in VANETs. However, the worst thing of routing in VANETs is not the location change of relay nodes, but the location change of the destination node. It is acceptable to find another relay node as long as it can deliver the data packet to the destination node finally, but it is not possible to change the destination node. Therefore, how to track the location of moving destination node and make sure the data packet can be finally delivered to it is an important topic in routing research of VANETs.
Traditional routing algorithm in ad hoc network is based on node topology, each node will maintain a routing table on a global view [1], and any changes on the neighbor node will cause updates on all routing tables. Because the routing table is global, the tracking of the destination node is not necessary, and data packets from the source node will arrive at the destination node in a very low latency.
However, the overhead of maintaining the routing table is very big; when the network scale increases, the overhead will become unacceptable. Although some improvements have been made, like some reactive routing protocols [2,3], the overhead is still proportional to the network scale.
Geographic routing is a routing that each node knows its own and neighbor node geographic position by position determining services like GPS [4]. It does not maintain any routing table or exchange any link state information with neighbor nodes [4]. Taking Greedy Perimeter Stateless Routing (GPSR), for example, in GPSR [5], the source node knows the location of the destination node, and the source node checks its neighbor table whether the destination node is in it; if the destination node is one of the source node's neighbor, the source node will deliver the data packets to the destination node, otherwise the source node will choose a neighbor which is closest to the destination node geographically. Same process happens on the relay nodes repeatedly until the destination node received the data packets, or delivery time expired. GPSR only needs partial information from neighbor nodes, therefore it has a very low overhead. However, GPSR has the tracking problem. The source node obtains the location of the destination node in the start of data 2 International Journal of Distributed Sensor Networks transmission; when the data packets arrive at the location, the destination node has moved away already from the location in a big possibility. To address this problem, AGF is proposed in [6].
AGF adds a velocity vector to the context of the HELLO beacon packet which is used to inform the existence of a node to its neighbors. The velocity vector contains the moving direction and the speed of a node. The source node knows the velocity vector and the location of the destination node in advance. When a relay node receives a data packet, it will add the elapse time of the data packet sending from the source node to here to the processing time of itself; it will multiply the time result by the speed in the velocity vector of the destination node to get an estimation of the location of the destination node with the help of the moving direction also. It will check whether the estimated location is in the neighbor range, and the destination node is in the neighbor table; if condition satisfied, it will deliver the data packet to the destination, otherwise it will choose a neighbor which is closest to the estimation location as a next hop. AGF considers the movement of each node, therefore it obtains much higher data delivery rate compared to GPSR. However, velocity varies constantly, using a static value of velocity to estimate the location of the destination node is very inaccurate. As Figure 1 shows, AGF performs well in an origin case that no speed and direction varied. When speed begins to jitter, the performance starts to degrade. Because AGF has a searching process when the destination node is supposed to be in a neighbor table but it is not, AGF can handle some speed-variation cases when the whole packet delivery time is short, and the destination node is not far from its estimated location. However, when there is a delay in the whole packet delivery process and the destination node drives far away from its estimated location, the packet delivery will fail. Direction change is much worse than speed change to the performance of AGF, because when a vehicle makes turns, it is hard to track it according to its original direction. AGF uses broadcast to search for the destination node; however, wireless signal will be blocked by the obstacles by the road side as Figure 2 shows, like trees and buildings; if a vehicle wants to send a packet to a road segment on the orthogonal direction, unless it is in the center of the crossroad, the packet will not be able to penetrate the obstacles.
To remedy the disadvantages of AGF, we propose two tracking methods: ABT and PVAT. The basic idea of ABT is that instead of maintaining velocity vectors, ABT uses statistical results. The source node will choose an optimum route to the destination node based on traffic density according to VADD [7], see in Figure 3, the time of which the data packet travels on the selected route will be estimated. Therefore, we can calculate a distance of which how far the destination node moves away during the packet delivery by multiplying the time with the average speed of vehicles on the selected route. Instead of estimating the location of the destination node, ABT estimates an area of which the destination node may appear by considering all directions the destination node may head to. As Figure 4 shows, the area is rectangular and centers at the original location of the destination node. When a data packet arrives at the rectangular area, it will  with mean and standard deviation . In city scenario, equals to 40 kilometers per hour (km/h), and is 30 km/h; in high way scenario, equals to 80 km/h, and is 10 km/h. The density is settled to a medium one. Detailed simulation setup is in Section 3.

The real
The estimated location Blocked by obstacles location Figure 2: A vehicle is supposed to appear at the estimated location, and it turns left at the crossroad in fact. Another vehicle initiates a broadcasting to search for the vehicle, but the wireless signal is blocked by the obstacles by the roadside.
propagate inside the area until it meets the destination node, or delivery time expired. ABT does not need the information of moving speed and direction, therefore the performance will not suffer from speed and direction variation. However, ABT is at the expense of increasing packet redundancy, if the distance traveled by the destination node is long, the area will be large and the redundancy will be large, and therefore we propose another tracking method PVAT to deal with this problem. Vehicles' movement is restricted by road topology, and direction change of vehicle mostly happens at the intersection except for u turn. If every time the destination node passes by an intersection, the intersection will record the moving direction, and the destination node can easily be tracked. However, it is not easy to keep the information to a certain place in VANETs, because vehicles are highly mobile. [8] uses moving vehicles to cache the information at a certain location; once a vehicle with the information is moving out of the location area, it will pass the information to another vehicle which is in the location area. Vehicle density is changing constantly; when a vehicle leaves its location, it International Journal of Distributed Sensor Networks 3 S S D Figure 3: Traffic density-based route selecting. The shortest path from to is → → , but the density on the path is low, so → → → is chose.
S S D Figure 4: Area-base routing. The data packet will be delivered along the route selected as Figure 3 (green line); once it enters the area (blue rectangle), the data packet will spread over the whole area (red lines).
is not certain that it can find a substitution; also it is a big communication cost that the information keeps transmitting and receiving. Parked vehicles are wide spread in the city, and they can provide a good cache [9]. Parked vehicles are static and wide spread, therefore they can guarantee a more stable and costless cache than [8]. The rest of the paper is organized as follows: detailed descriptions of ABT and PVAT are in Section 2; performance evaluation is in Section 3; related works and conclusion is in Section 4.

Area-Based Tracking and Parked
Vehicle-Assisted Tracking ABT and PVAT aim to solve the tracking problem in VANETs, therefore they are more like patches to the existing routing algorithm. Before discussing about the detail of ABT and PVAT, we will describe the routing algorithm we use.

Traffic Density-Based Routing.
Traditional geographybased routing like GPSR finds a neighbor node which is closest to the destination node, as a next hop. In theory, if the traffic density is satisfied, a data packet will finally reach the destination in GPSR. However, it is not optimum; because vehicles travel along road, a neighbor node which is closest to the destination in Euclidean distance may not be the closest node in the road topology. VADD is a routing algorithm based on road topology, and it achieves better performance than traditional geographic routing, therefore we use VADD as the main reference in routing. However, VADD is a dynamic routing which decides the next hop of data delivery according to real situation, ABT needs to estimate the time for data delivery before real data sending, and therefore before real data routing using VADD, we select an optimum route based on statistical traffic density and calculate the elapse time according to (1).
Suppose Φ is the set of all connected path from the source node to the destination node; ( ) gives the sum of each subpath's weight of path ; ( ) is the number of subpath of ; ( ) is the time elapse of data delivery on path ; is the Euclidean distance of subpath ; is the traffic density of subpath ; is the velocity of vehicles on subpath ; is the communication range of wireless signal, then The equation chooses an optimum path which has the maximum sum of traffic density, because the higher the traffic density, the better for data relay. If the average distance between vehicles is smaller than , wireless transmission is used to forward the packet; otherwise, vehicles are used to carry the data; even in this case, it is still possible to occasionally have wireless transmissions; hence is used as a correction factor [7]. The whole time elapse of data delivery is the sum of the time of each sub-path.

Area-Based
Tracking. The basic idea of ABT is that when a data packet enters into the area of ABT, the data packet will be delivered to all roads in the area; as long as the destination node is in the area, it will finally receive the data packet. ABT needs to settle two challenges: how to set the area and how to propagate a data packet in the area.

Area Setting.
In Section 2.1, an estimated time elapse of data delivery is given as ( ), we can get an average vehicle speed in urban traffic , and therefore an estimated distance that the destination node may move away can be calculated as = ( ) ⋅ . The area can simply be a rectangle that it centers at the original location of the destination node and uses 2 as the length and width of the rectangle, and is an elastic coefficient which can be adjusted according to real situation. However, the original rectangle may have to adjust to fit the road topology. As Figure 5 shows, sometimes the area  border line is in the middle of a road. In this case, the border line will be widen to fit the road line. As Figure 6 shows, sometimes the area border line is not on any road. In this case, the border line will be widened or narrowed down to its nearest road line.

Data Packet Propagation.
Once a data packet enters into the area, ABT will spread the packet all over the area to guarantee that the destination node will receive the packet. Epidemic routing [10] is suitable to achieve the goal. To reduce unnecessary packet redundancy, ABT makes sure that if a node already has the packet, it will not receive the packet again; if a node is not in the area, it will not receive the packet; if a node already delivered the packet to the destination node, it will not send the packet to another node. DBT algorithm is given in Algorithms 1 and 2. If a node needs to deliver a packet, it will traverse its neighbor table; if a neighbor is not in the area scale, it will not deliver the packet; if a neighbor is in the area scale, it will send a request to the neighbor; the neighbor will check whether the packet has already been received, if true, reply ALLOW, else reply DISALLOW; if the neighbor allow to send packet, the sender will send the packet; if the neighbor is the destination node, the sending process will be end. After looptime ends, if the packet still has not been delivered to the destination node, and the sending process will be end. mentioned to use these parked vehicles as data delivery relay nodes. Parked vehicles are static nodes which can provide stable communication and data cache. If a data packet needs to be cached to a location, using moving vehicles will cause the data packet been delivered over and over again when the data-carry vehicle moves out of the location area. Parked vehicles do not leave an area as frequent as the moving vehicles do, therefore using parked vehicles will greatly reduce the overhead of caching data. Moreover, parked vehicles are wide spread in the city, especially in the night that traffic density is very low, the density of parked vehicles are very high, and they can provide good data delivery which cannot be achieved by using moving vehicles.
To detect whether a vehicle is parking or not, PVAT takes advantage of vehicular sensors. OBD scanner can read revolutions per minute (RPM) of vehicle engine which can be used to indicate the parking state of a vehicle.
PVAT records the direction information of the destination node at the intersections when the destination node passes by, it is similar to [8], and the difference is that PVAT uses parked vehicles which can provide low overhead data cache and high reliability of vehicle tracking, because moving vehicles suffer from nonuniform traffic density and traffic holes [11] which will cause data caching fail. The PVAT algorithms are given in Algorithms 3 and 4.
In PVAT, when a node receives a packet, it will firstly check whether the destination node is in its communication range and send data packet to it, otherwise it will check if it is in an intersection, because that is where the destination node leaves its marks. If marks are found, the data packet will be delivered to the nodes holding the marks and continue data delivery using VADD to the other end of the road segment until no marks are found, or the data packet is delivered to the destination node.

VADD Plus Tracking Solutions.
In this Subsection, we give a whole routing solution combined VADD, ABT, and PVAT, see Algorithm 5. Each packet has a flag bit which indicates whether PVAT should be activated. ABT has more packet redundancy than PVAT, which increases communication overhead. It seems that PVAT is better than ABT, but neither parked vehicle nor moving vehicle may fail to cache the marks of the destination node because there are no such vehicles there for caching sometimes. Although ABT uses more packet redundancies, it has much better data delivery rate than PVAT, and therefore we use ABT as main tracking method and PVAT as a supplement way.

Performance Evaluation
In this paper, we use ns-2 simulator for simulations. We test packet delivery rate and packet transmission times of AGF, VADD, VADD plus ABT, VADD plus PVAT, and VADD plus ABT and PVAT. We write the AGF and VADD codes according to [6,7].