• 沒有找到結果。

Chapter 4 Adaptive Two-Tier Lookup Protocol

4.1 Reachability Model

Each vehicle locally maintains the reachability of road segments in a reachability database. For a vehicle, a road segment is considered reachable if the vehicle receives messages that have recently traversed the road segment through VANETs. The reachability of road segments for a vehicle is based on two sources of information: (1) The first-hand reachability information that a vehicle can directly observe. For example, a vehicle may receive or forward lookup messages from other vehicles that have traversed several road segments. (2) The second-hand reachability information, for which one vehicle may share its first-hand reachability information with its neighbors. Because vehicles are moving, the reachability information is not always correct. Consequently, reachability information is maintained in a soft-state manner and the information decays over time.

The reachability information is continuously collected and disseminated using various messages transmitted among vehicles in VANETs, such as lookup messages and node information messages. For lookup messages, a lookup query and response consist of the location of the requesting vehicle and responding vehicle. When a vehicle receives a lookup message originating from vehicle n, it updates the reachability regarding the road segment where vehicle n is located. The road segment is reachable because a message from the location can be received. In addition to the road segment where a message is generated, the lookup message may traverse several road segments. The lookup message may contain a list of the traversed road segments, which can be recognized as reachable by the vehicles receiving the message. Piggybacking information of traversed road segments in a transmitted message has been used as an efficient mechanism to collect information along the traversed path [30]. Through these mechanisms, a vehicle can gather first-hand reachability information.

50

To efficiently maintain and exchange reachability information, a Bloom filter data structure is used [10]. A Bloom filter is a space-efficient data structure that represents a set of elements in order to support membership queries in the set [31]. It consists of a bit array of m bits; all bits are initialized at 0. There are k independent uniform hash functions h1, h2, …, hk, each of which maps an element to one bit in the array. An element x is represented by k bits indexed by hi(x) where i = 1, 2, …, k in the array. To add an element to the set, the k bits that the element is mapped to are set to 1. A query for element x (i.e., whether x is in the set) checks whether all hi(x) are set for i = 1, 2, …, k. The element is likely to be in the set if the k bits are set. Otherwise, the element does not belong to the set.

The use of the Bloom filter in efficient information exchanges has been considered in various applications, such as service discovery [32], cache lookup [33], and query routing in P2P networks [34].

Each vehicle locally maintains a Bloom Filter BF to store the first-hand reachability information of road segments. When receiving a lookup message consisting of road segment s, a vehicle updates the reachability of segment s in its BF by setting the bits hi(s) to 1 for i = 1, 2, …, k. As described in Section 3.2, vehicles periodically broadcast their node information through IVC for superpeer election in the two-tier system. The reachability information locally maintained in a vehicle can be included in the periodic messages to be disseminated to other vehicles. Thus, when a vehicle broadcasts a node information message, it also advertises its reachability information with the message. After receiving the message, other vehicles extract the Bloom filter in the message and aggregate it with their own Bloom filters. Thus, a vehicle can gather second-hand reachability information from its neighbors. Any two Bloom filters can be merged into one by simply performing bitwise OR operations on them. The reachability information can be disseminated over multiple hops through the vehicles that are connected in the VANETs

51

(i.e., they are reachable to each other). Figure 4.2 shows the algorithms for maintaining reachability information using Bloom filters.

AddReachability(BF, s):

1: // execute when a vehicle receives a lookup from road segment s, add road segment s to BF with k hash functions.

2: for all i∈{1, 2,..., }k do 3: BF h s[ ( )]i ← 1 4: end for

AggregateReachability(BF, BFr):

5: // execute when a vehicle receives a Bloom filter from its neighbors, aggregate local BF with the received BFr.

6: BFBFBFr

DecayReachability(BF):

7: // execute periodically to decay m-bit BF.

8: for all i∈{1, 2,..., }m do 9: if (BF[i] == 1) then

10: with probability p, BF i[ ]←0 11: end if

12: end for

Figure 4.2: Algorithms for maintaining reachability information using m-bit Bloom filters.

52

As vehicles are moving, the reachability of road segments continuously changes because of high vehicle mobility and rapid VANET topology changes. The reachability information received at time t1 may be inaccurate at a later time t2. To accommodate the network dynamics, the reachability information is maintained as a soft state. A decay mechanism [34] is adopted to reduce confidence in the reachability information. Each vehicle decays its BF every Tdecay. For every Tdecay, each bit that is set to 1 in BF is reset to 0 with probability p.

In the Bloom filter, the number of bits set to 1 for a road segment divided by total bits k is interpreted as the reachability probability of the given road segment. Let

( ) | { |s i BF h s[ ( )] 1,i i 1, 2,..., } |k

θ = = = be the number of 1s in BF corresponding to road segment s. A larger θ( )s indicates that the reachability information may have been updated recently, and road segment s can be reached with a greater probability. Therefore, we define γ( )s =θ( ) /s k as the reachability probability of road segment s. The reachability probability measures the probability that the information continues to be accurate and a lookup message can be routed to the destination through the VANETs.

Finally, the reachability collection and dissemination described above are mainly passive schemes. The reachability of road segments can also be discovered using other active mechanisms. For example, a reachability discovery message can be generated by a randomly selected vehicle to discover the reachability in particular locations. The message acts as a one-way lookup query (i.e., no lookup response), and discovers reachability when being forwarded toward a destination. How to select vehicles and destinations to initiate the reachability discovery process is an issue that may depend on vehicle location and current reachability. Active discovery may cause overheads in VANETs.

53

相關文件