Fisheye State Routing in Mobile Ad Hoc Networks
Fisheye State Routing in Mobile Ad Hoc Networks
Fisheye State Routing in Mobile Ad Hoc Networks
$#.&
A recent proposal which combines on demand rout- denotes the link state information reported by
ing and conventional routing is Zone Routing Protocol node . denotes the time stamp indicating the
(ZRP) [7, 8]. For routing operation inside a local zone,
0 1 ,
time node has generated this link state information. Sim-
an arbitrary proactive routing scheme (e.g., distance vec- ilar, for every destination ,
denotes the next
(
!
tor) can be applied. For interzone routing, on demand rout- hop to forward packets destined to on the shortest path,
ing is used. The advantage of zone routing is its scalabil- while denotes the distance of the shortest path from
ity, as “global” routing table overhead is limited by zone
size. Yet, the benefits of global routing are preserved within
to .
Additionally, a weight function, weight: , is
32 64 7 5
each zone. The performance of ZRP is dependent on a key used to compute the distance of a link. Since min-hop short-
parameter: the zone radius. The choice of radius is deter- est path is the only objective in this paper, this weight func-
8
mined by network characteristics (e.g, node density, relative tion simply returns 1 if two nodes have direct connection,
node velocity etc.) [8], which dynamically change in ad hoc otherwise, it returns . This weight function may also be
networks. Moreover, the interzone route discovery packets replaced with other functions for routing with different met-
may loop back into zones already queried. This must be rics. For instance, a bandwidth function can be used to re-
avoided to prevent overhead which can be potentially worse alize a QoS routing.
than for flooding based queries [8].
With the availability of GPS [11] technology, any of the 3.2 Description of FSR protocol
previous routing protocols can be assisted by GPS location
information. For example, LAR [13] is an on demand pro- FSR is an implicit hierarchical routing protocol. It
tocol similar to DSR but it restricts control packet flooding uses the “fisheye” technique proposed by Kleinrock and
by using location information. DREAM [3] is a location Stevens [12], where the technique was used to reduce the
based proactive scheme. Each node in the network peri- size of information required to represent graphical data. The
eye of a fish captures with high detail the pixels near the fo- 2
cal point. The detail decreases as the distance from the focal
8
point increases. In routing, the fisheye approach translates 5 1
3 9
8
by using different exchange periods for different entries which there is only one fisheye scope level and the radius
in routing table. More precisely, entries corresponding is . As a result, the entire topology table is exchanged
to nodes within the smaller scope are propagated to the among neighbors. Clearly, this consumes a considerable
neighbors with the highest frequency. Referring to Fig. 2, amount of bandwidth when network size becomes large.
entries in bold are exchanged most frequently. The rest of Through updating link state information with different fre-
the entries are sent out at a lower frequency. As a result, quencies depending on the scope distance, FSR scales well
proc Node proc FindSP
NodeInit Dijkstra’s
G ' shortest-path algorithm
while TRUE do
% 5
if PktQueue
!! packet received 2 4 C 8
foreach pkt
PktQueue do
foreach 2
" "E
$ "=
do
pkt source
if
% 2 2
PktProcess
pkt then AHI weight HJ
od NEXT
% 2 '& AHI )(+*
fi else NEXT
CheckNeighbors
! fi
od
G
FindSP while
$ do
H ( G G
RoutingUpdate foreach
HI$ >K
do
od Find > HI such that
% 9 HI
. weight >
ML#NPO > weight >
proc NodeInit od 1 H
G G
foreach "#
$ % AHI % 9 HI
do
@AHI > weight >
" ' &
NEXT NEXT >
%
" )(+*
od
NEXT " 0(+* .
;
-,/. " proc PktProcess pkt
od
! 1324 2 source
pkt source
link exists " Q " source
!
% ! 5 foreach "E
1$
do C RSH 6 QU @
NEXT if "1
T,/. " T,/. "
6 7!5
8 then begin
6 RSH 6
-,/.
-,/. " RJH 6 -,/. "
. " "
proc RoutingUpdate end
6 7 6 9*
fi
6
-,/.
od
2 .
foreach
proc CheckNeighbors F
do 1:2 foreachA"E XZY
6 do
to large network size and keeps overhead low without com- received routing messages, which contain link state in-
promising route computation accuracy when the destination formation broadcasted by its neighbors. PktProcess(i,pkt)
is near. By retaining a routing entry for each destination, makes sure that only the most up to date link state in-
# & *+(
FSR avoids the extra work of “finding” the destination (as formation is used to compute the bestd route by compar-
in on-demand routing) and thus maintains low single packet ing the embedded sequence number, eTf
, with the
transmission latency. As mobility increases, routes to re- ones stored in node ’s local storage, for each destination
mote destinations become less accurate. However, when a . If any entry in the incoming message has a newer se- "1 # %'& (
packet approaches its destination, it finds increasingly ac-
# %'&
quence numberd regarding destination , ,
will be
" # & (
+
*
#.& /*+,-
curate routing instructions as it enters sectors with a higher replaced by eTf , and will be replaced
d
refresh rate. by e-f .
After the routing messages are examined, node rebuilds
3.3 Pseudo code for FSR
the routing table based on the newly computed topology ta-
ble. Node then exchanges the latest link state informa-
Fig. 3 provides FSR pseudo code. Initially, each node tion with its neighbors. Procedure RoutingUpdate(i) scans
8g
"
starts with an empty neighbor list , and an empty topol- through the topology table according to the distance
)
g hg
$ # %'&
ogy table . After node initializes its local^J_avariables
`cb ;d
between and . If 8g is within the range of fisheye
with proper values as described in procedure ]\ , scope level i , will be included in the update
it learns about its neighbors by examining the sender ID message. Note that the update interval for entries which
^Jl d _m`b d _anmoJl
of each received packets. That is, assuming that all nodes belong to fisheye scope level i is jke ihp . FSR
can be heard by are ’s neighbors, node adds all routing uses different exchange intervals for different entries in the
packet senders to its neighbor list, .
Node then invokes PktProcess(i,pkt) to process the
table. To be precise, entries corresponding to nodes that are
nearby (within a predefined scope) are propagated to the
neighbors more frequently than entries of nodes that are far
away.
!
shortest path routes. Dijkstra’s algorithm requires typically
steps to compute the shortest paths from one source
FindSP(i) creates a shortest path tree rooted at . In prin-
ciple, any existing shortest path algorithm can be used to
! [19].
!
to all destinations, although it is possible to reduce it to
memory space is required to store
!
]i\
create the tree. In this paper, however, the procedure listed the network topology represented by a connection matrix.
0
in Fig. 3 is based on the Dijkstra’s algorithm [19] with mod- As for DBF, it has complexity of for computing and
ifications so that the next hop table ( ) and the dis- memory, as it only keeps the distance information for each
tance tables( ) are computed in parallel with the tree re- destination, and computes shortest paths in a distributed
construction.
fashion.
At node , FindSP(i) initiates with , then it it- For the line b overhead, in FSR each node broadcasts in-
^
6
erates until . In each iteration, it searches for a formation for links on average for nodes in the
-
`
! # . In
node such that node minimizes the value of f scope of level with update interval . So the to-
_ d
( 8
b ^
, for all and f , where ,f
f
and
is assigned to
f . That is, as the
% # & # (' # . LS, on the other
b ^
"! "!
` b ^ ` ^ `
shortest path from to has to go through f , the successor
for to is the same successor for to f .
hand, has similar accumulated `
data size for each link up-
3.4 Complexity date, but its update interval may become extremely small
when mobility increases.
In addition, as LS transmits one short packet for each
!
In this section, we analyze the complexity of the FSR
scheme and compare it with that of other three routing link update, its control packet complexity CO can be as high
schemes: GSR, DBF and LS. Note that the GSR is a the as when the mobility is high. On the other hand, both
FSR and DBF transmit a fixed number of update tables us-
)!*
special case of FSR, where we have only one scope and the
radius is the the diameter of the network. ing longer packets to optimize the MAC throughput. Thus,
The complexity is studied under five aspects: CO .
Computation Complexity (CC): the number of com-
Lastly, the convergence time for FSR is also superior
than that for DBF. In fact, if the short update interval is used,
putation steps for a node to perform a routing compu- FSR can converge as fast as LS.
tation after an update message is received;
quired to store the routing information;
4.1 Simulation model and methodology
Line Overhead (LO): the aggregate volume of control
bytes exchanged by a node per unit time. We implement our routing scheme in a multihop, mobile
wireless network simulator using the parallel discrete-event
Control Packet(CO): the average number of routing
simulation language PARSEC [2]. In most of experiments
packets exchanged by a node per unit time.
unless specified, the network consists of 100 nodes roam-
Convergence Time (CT): the time required to detect ing randomly in a 1000x1000 meter square. The roaming
a link change. area for network sizes 50, 200, 400 and 1000 is 700x700,
1500x1500, 2000x2000 and 3000x3000 meter square re-
Table 1 shows the results of our comparison. In the table, spectively. The radio transmission range is 120 meters and
denotes the number of nodes in network ( ), denotes channel capacity is 2 Mbits/sec. A free space propagation
^
the maximum
`
hop distance, the diameter, in the network, channel model is assumed. We use IEEE 802.11 MAC pro-
+ % %
and denote the degree of node connectivity and the rout- tocol with Distributed Coordination Function (DCF) [9] as
b
ing update interval, respectively. is the average number the MAC layer in our experiments. The random waypoint
of nodes in scope , where ... ( is the number model [4, 6] was used in the simulation runs. In this model,
of scope levels used in FSR). is the damping factor of a node selects a destination randomly within the roaming
update frequency for level . area and moves towards that destination at a predefined
FSR and LS have same memory complexity and com- speed. Once the node arrives at the destination, it pauses
putation complexity as both maintain the topology for the at the current position for 5 seconds. The node then selects
whole network and use Dijkstra’s algorithm to compute another destination randomly and moves towards it, pausing
!
Protocol CC MC LO CO CT
! ! #
b ^
! ! '
! "! '
` `
LS
` `
DBF
0.9
there for 5 seconds, and so on. Note that the pause time is DBF
0.8 LS
not considered in computation of node speed. Each simula- GSR
FSR R=1
tion executed for 600 seconds of simulation time. Multiple 0.7 FSR R=2
FSR R=3
Weighted Inaccuracy
runs with different seed numbers were conducted for each 0.6
0.4
0.2
The performance measures monitored in our study are: 0.1
(a) weighted routing inaccuracy; (b) control overhead 0
(O/H); and (c) packet delivery ratio. The variables are: mo- 0 10 20 30 40 50 60 70
mobility (km/hr)
bility, number of nodes, update interval, and; fisheye scope
radius. For FSR, we use 2-level fisheye scoping in our ex- Figure 4. Inaccuracy vs Mobility
periments.
for node , , as: scopes v.s. network size. The mobility is 50 km/hr. For
"
" large network size, increasing the radius will improve the
the overall at low frequency will not significantly affect the routing ac-
for all . curacy. On the other hand, using larger radii will cause more
Fig. 4 shows the inaccuracy of different routing schemes control O/H as shown in next section.
at different average speeds. LS performs best at all speed
ranges, since it reacts the fastest to topology changes. The 4.2.2 Control Overhead
inaccuracy for FSR decreases with the increases of scope
radius. However, FSR still performs better than DBF even Fig. 7 plots link control O/H as a function of network size.
with radius due to the fact nodes are exchanging link Since GSR exchanges full size link state vectors, the con-
state information among each other and thus keep track of trol O/H grows linearly with the network size. In contrast,
the entire network topology. the control O/H is greatly reduced in FSR. Note that the
0.9
T = 1 sec GSR
T = 2 sec 0.5 FSR R=1
0.8 FSR R=2
T = 3 sec
T = 4 sec FSR R=3
0.7
0.6
0.5 0.3
0.4
0.2
0.3
0.2
0.1
0.1
0 0
0 10 20 30 40 50 60 70 0 100 200 300 400 500 600 700 800 900 1000
mobility (km/hr) Number of nodes
0.6
GSR
FSR R=1 rapidly degrades for size larger than 100 nodes, as shown in
0.55 FSR R=2
FSR R=3
Fig. 9. When network size grows large, routing O/H will
cause considerable performance degradation of the GSR.
Weighted Inaccuracy
0.5
The advantage of FSR is clearly shown as FSR maintains
0.45 high delivery ratio across different network sizes.
0.4 1
0.35
0.8
0.3
Delivery Ratio
0 100 200 300 400 500 600 700 800 900 1000 0.6
Number of nodes
0.2 LS
GSR
FSR R=3
average number of neighboring nodes is independent from
0
network size since node density is kept constant. The reason 0 10 20 30 40 50 60 70
mobility (km/hr)
why FSR reduces O/H is that only a fraction of the entries
are updated each time. In a two-level fisheye hierarchy, the Figure 8. Delivery ratio vs mobility (for 100
smaller radius, the smaller fraction of entries updated in the nodes)
“fast” interval, and the lower the control O/H. The tradeoff
between routing accuracy and control O/H must be taken
into account when choosing the scope radii of the fisheye
solution.
5 Conclusions
4.2.3 Packet Delivery Ratio
The packet delivery ratio is the ratio of data packets deliv- In this paper, we present a new routing scheme, Fisheye
ered to the destinations versus data packets originated by State Routing, which provides an efficient, scalable solution
the sources. This number presents the routing effectiveness for wireless, mobile ad hoc networks. The routing accuracy
of a protocol. Fig. 8 shows the packet delivery ratio as func- of FSR is comparable with an ideal LS scheme and the rout-
tion of node mobility. As node mobility increases, the per- ing overhead is kept low. As a results, FSR is more desir-
formance of the Link State is dramatically degraded due to able for large mobile networks where mobility is high and
flooding O/H. While the routing tables are maintained accu- the bandwidth is low. By choosing proper number of scope
rate, there is not much bandwidth left for data traffic. GSR levels and radius size, FSR proves to be a flexible solution
faces better than LS; in fact, it performs as well as FSR for to the challenge of maintaining accurate routes in ad hoc
small to moderate size networks. However, performance networks.
1
LS [8] Z.J. Haas and M. R. Pearlman “Determining the Opti-
0.9 GSR
FSR R=3 mal Configuration for the Zone Routing Protocol,” In
0.8
IEEE Journal on Selected Areas in Communications,
0.7
Aug. 1999, pp. 1395-1414.
Delivery Ratio
0.6