IETF MANET Working Group Mario Gerla, UCLA
INTERNET-DRAFT Xiaoyan Hong, UCLA
Expiration: December 17, 2002 Guangyu Pei
Rockwell Scientific Company
June 17, 2002
Fisheye State Routing Protocol (FSR) for Ad Hoc Networks
<draft-ietf-manet-fsr-03.txt>
Status of This Memo
This document is an Internet-Draft and is subject to all provisions
of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note
that other groups may also distribute working documents as
Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months
and may be updated, replaced, or obsoleted by other documents at
any time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress".
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft is a submission to the IETF Mobile Ad Hoc
Networks (MANET) Working Group. Comments on this draft may be sent
to the Working Group at manet@itd.nrl.navy.mil, or may be sent
directly to the authors.
Abstract
The Fisheye State Routing (FSR) algorithm for ad hoc networks
introduces the notion of multi-level "scope" to reduce routing
update overhead in large networks. A node stores the Link State
for every destination in the network. It periodically broadcasts
the Link State update of a destination to its neighbors with a
frequency that depends on the hop distance to that destination
Gerla, Hong and Pei [Page 1]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
(i.e., the "scope" relative to that destination). State updates
corresponding to far away destinations are propagated with lower
frequency than those for close by destinations. From state updates,
nodes construct the topology map of the entire network and compute
efficient routes. The route on which the packet travels becomes
progressively more accurate as the packet approaches its
destination. FSR resembles Link State routing in that it propagates
Link State updates. However, the updates are propagated as
aggregates, periodically (with period dependent on distance) instead
of being flooded individually from each source. FSR leads to major
reduction in link O/H caused by routing table updates. It enhances
scalability of large, mobile ad hoc networks.
Contents
Status of This Memo . . . . . . . . . . . . . . . . . . . . . . . . 1
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. General Terms . . . . . . . . . . . . . . . . . . . . . 4
3.2. Specification Language . . . . . . . . . . . . . . . . . 4
4. Protocol Applicability . . . . . . . . . . . . . . . . . . . . 5
4.1. Networking Context . . . . . . . . . . . . . . . . . . . 5
4.2. Protocol Characteristics and Mechanisms . . . . . . . . 5
5. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . . 7
6. Fisheye Technique . . . . . . . . . . . . . . . . . . . . . . . 7
6.1. Fisheye Scope . . . . . . . . . . . . . . . . . . . . . . 8
6.2. Fisheye State Routing Exchange Scheme . . . . . . . . . . 8
7. Protocol Operation . . . . . . . . . . . . . . . . . . . . . . 9
7.1 Contents of Tables . . . . . . . . . . . . . . . . . . . . 9
7.1.1 Neighbor List . . . . . . . . . . . . . . . . . . 9
7.1.2 Topology Table . . . . . . . . . . . . . . . . . . 10
7.1.3 Routing Table . . . . . . . . . . . . . . . . . . 10
7.2. Link State Message . . . . . . . . . . . . . . . . . . . 10
7.2.1. Description of the fields . . . . . . . . . . . . 11
7.3. Link State Message Processing . . . . . . . . . . . . . . 12
7.3.1 Originating Link State Message . . . . . . . . . . 12
7.3.2 Receiving Link State Message . . . . . . . . . . 12
7.4. Link Breakage . . . . . . . . . . . . . . . . . . . . . . 13
7.5. Routing Table Calculation . . . . . . . . . . . . . . . . 13
Gerla, Hong and Pei [Page 2]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
8. Data Packet Forwarding . . . . . . . . . . . . . . . . . . . . 14
9. Considerations about Routing Inaccuracy . . . . . . . . . . . 14
10. Configuration Parameters . . . . . . . . . . . . . . . . . . . 15
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 15
References . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Chair's Address . . . . . . . . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16
1. Introduction
This document describes the Fisheye State Routing Protocol (FSR)
[1,2] developed by the Wireless Adaptive Mobility (WAM)
Laboratory [7] at University of California, Los Angeles. Fisheye
State Routing is a table-driven routing protocol which is adapted
to the wireless ad hoc environment. It provides an implicit
hierarchical routing structure. Through updating link state
information with different frequencies depending on the fisheye
scope distance, FSR scales well to large network size and keeps
overhead low without compromising route computation accuracy when
the destination is near. The routing accuracy of FSR is comparable
with an ideal Link State scheme. By retaining a routing entry for
each destination, FSR avoids the extra work of "finding" the
destination (as in on-demand routing) and thus maintains low single
packet transmission latency. As mobility increases, routes to
remote destinations become less accurate. However, when a packet
approaches its destination, it finds increasingly accurate routing
instructions as it enters sectors with a higher refresh rate. As a
results, FSR is more desirable for large mobile networks where
mobility is high and the bandwidth is low. By choosing proper
number of scope levels and radius size, FSR proves to be a flexible
solution to the challenge of maintaining accurate routes in ad hoc
networks.
The following properties of FSR highlight its advantages.
* Simplicity
* Usage of up-to-date shortest routes
* Robustness to host mobility
* Exchange Partial Routing Update with neighbors
Gerla, Hong and Pei [Page 3]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
* Reduced Routing Update Traffic
2. Changes
Major changes from version 02 to version 03:
- Added descriptions of operations on the lastHeardTime variable
in the topology table.
- Editorial changes.
Major changes from version 01 to version 02:
- Added operations to exclude those entries whose propagation
will not cause topology update at its neighbors.
- Editorial changes.
Major changes from version 00 to version 01:
- Update of "Status of This Memo".
3. Terminology
3.1. General Terms
This section defines terminology used in FSR.
node
A MANET router that implements this Fisheye State Routing
protocol.
neighbor
Nodes that are within the radio transmission range.
fisheye scope
A zone that is bounded by hop distances.
3.2. Specification Language
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [8].
Gerla, Hong and Pei [Page 4]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
4. Protocol Applicability
4.1. Networking Context
FSR is best suited for large scale mobile ad hoc wireless networks,
as the scope update scheme has larger advantages in reducing routing
update packet size and achieve high date packet to routing packet
ratio. Moreover, the fact that the route error is weighted by
distance obviously reduces the sensitivity to network size.
FSR is also suited for high mobility ad hoc wireless networks. This
is because in a mobility environment, a change on a link far away
from the source does not necessarily cause a change in the routing
table at the source.
4.2. Protocol Characteristics and Mechanisms
* Does the protocol provide support for unidirectional links?
(if so, how?)
Yes, since FSR is link state based routing protocol and
directional link states can be included in the FSR update
messages.
* Does the protocol require the use of tunneling? (if so, how?)
No.
* Does the protocol require using some form of source routing? (if
so, how?)
No.
* Does the protocol require the use of periodic messaging? (if so,
how?)
Yes. The FSR periodically exchanges partial link state
information with its neighbors
* Does the protocol require the use of reliable or sequenced packet
delivery? (if so, how?)
No. As the packets are sent periodically, they need not be
sent reliably.
* Does the protocol provide support for routing through a multi-
technology routing fabric? (if so, how?)
Yes. It is assumed that each node's network interface is
assigned a unique IP address.
* Does the protocol provide support for multiple hosts per router?
(if so, how?)
Gerla, Hong and Pei [Page 5]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
Yes. The router that has multiple hosts can use network ID of
these hosts as the address to participate FSR.
* Does the protocol support the IP addressing architecture? (if so,
how?)
Yes. Each node is assumed to have a unique IP address (or
set of unique IP addresses in the case of multiple interfaces).
The FSR references all nodes/interfaces by their IP address.
This version of the FSR also supports IP network addressing
(network prefixes) for routers that provide access to a
network of non-router hosts.
* Does the protocol require link or neighbor status sensing (if so,
how?)
No.
* Does the protocol have dependence on a central entity? (if so,
how?)
No.
* Does the protocol function reactively? (if so, how?)
No.
* Does the protocol function proactively? (if so, how?)
Yes. The FSR proactively maintains routing information at each
node.
* Does the protocol provide loop-free routing? (if so, how?)
Yes. As the protocol uses link state algorithm, so the
routing is loop-free in a stable state. In mobile
environment, each link state entry is destination sequenced
which can prevent loop in routing.
* Does the protocol provide for sleep period operation?(if so, how?)
Yes. However, this requires TDMA MAC layer support. The router
can be scheduled to sleep during the idle period.
* Does the protocol provide some form of security? (if so, how?)
No.
* Does the protocol provide support for utilizing multi-channel,
link-layer technologies? (if so, how?)
Gerla, Hong and Pei [Page 6]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
Yes, in fact the multi-channel can be used to separate routing
messages from user data packets.
5. Protocol Overview
Fisheye State Routing is a table-driven or proactive routing
protocol. It bases on link state protocol and has the ability of
immediately providing route information when needed. The fisheye
scope technique allows exchanging link state messages at different
intervals for nodes within different fisheye scope distance, which
reduces the link state message size. Further optimization allows
FSR only broadcast topology message to neighbors [4] in order to
reduce the flood overhead. With these optimizations, FSR
significantly reduces the topology exchange overhead and scales
well to large network size.
FSR routes each data packet according to locally computed routing
table. The routing table uses most recent topology information.
The fisheye scope message updating scheme will not lose routing
accuracy for inner scope nodes. For outer scope nodes,
information in routing entries may blur due to longer exchange
interval, but the extra work of "finding" the destination (as in
on-demand routing) is not necessary. Thus low single packet
transmission latency can be maintained. At a mobile environment,
this inaccuracy for remote nodes will increase. However, when a
packet approaches its destination, it finds increasingly accurate
routing instructions as it enters sectors with a higher refresh rate.
FSR does not trigger any control messages when a link failure is
reported. Thus it is suitable for high topology change environment.
The broken link will not be included in the next fisheye scope link
state message exchange. Sequence number and table refreshment
enables the FSR to maintain the latest link state information and
loop-free in a unreliable propagation media and highly mobile
network.
The protocol works independently with the IP format of packets and
is a distributed protocol. It can be implemented either in network
layer or in application layer. It only deals with routing table
management of the network system.
6. Fisheye Technique
FSR uses the "fisheye" technique proposed by Kleinrock and
Stevens [3], where the technique was used to reduce the size of
information required to represent graphical data. The eye of a fish
captures with high detail the pixels near the focal point.
The detail decreases as the distance from the focal point increases.
In routing, the fisheye approach translates to maintaining accurate
distance and path quality information about the immediate
Gerla, Hong and Pei [Page 7]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
neighborhood of a node, with progressively less detail as the
distance increases.
6.1. Fisheye Scope
The fisheye scope is defined as the set of nodes that can be
reached within a given number of hops. An example of a fisheye
scope (at node A) of hop 2 is shown below.
+-----------------------------------------+
| +---+ | +---+
| +---+ ---| F |-------|-------| H |
+---+ | +---+ --| C |--/ +---+ +---+ | +---+
| G |-----| D |--/ +---+ | E | |
+---+ | +---+ | +---+ +---+ |
| +---+ ---| B |-------| |
| | A |--/ +---+ |
| +---+ |
+-----------------------------------------+
Fisheye Scope at Node A of Hop 2
Note that in this example node E can be reached through B from A
with 2 hops and through F with 3 hops. Since the minimum path
length is 2, E are within the fisheye scope of node A. By setting
multiple hop radius, multiple level of scopes will cover the
entire network.
6.2. Fisheye State Routing Exchange Scheme
FSR is functionally similar to Link State Routing (LS) in that
it maintains a topology map at each node. The key difference is
the way in which routing information is disseminated. In LS, the
update message could consume considerable amount of bandwidth,
which depends on the update period. In order to reduce the
size of update messages without seriously affecting routing
accuracy, FSR uses the Fisheye technique. Entries in routing
table corresponding to nodes within the smallest scope are
propagated to the neighbors with the highest frequency. The
rest of the entries are sent out with lower frequencies. As a
result, a considerable fraction of link state entries is
suppressed in a typical update, thus reducing the message size.
Thus by using different exchange periods for different entries
in routing table, routing update overhead is reduced.
This strategy produces timely updates from near stations, but
creates large latencies from stations afar. However the imprecise
knowledge of the best path to a distant destination is
compensated by the fact that the route becomes progressively more
accurate as the packet gets closer to destination. As the
network size grows large, a "graded" frequency update plan must
be used across multiple scopes to keep the overhead low.
Gerla, Hong and Pei [Page 8]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
Link state packets are generated and flooded into the network
periodically or whenever a node detects a topology change.
In FSR, link state packets are not flooded. Instead, they are
exchanged periodically with their local neighbors only. The
periodic updates act also as neighbor discovering. Each node,
after hearing its neighbor's broadcast message, adds/updates
its neighbor list and topology table. A node maintains a
link state table based on the up-to-date information
received from neighboring nodes. Sequence numbers are used for
entry replacements. The sequenced periodic table update resembles
the vector exchange in Destination-Sequenced Distance-Vector
Routing (DSDV [5]) where the distances are updated according to
the time stamp or sequence number assigned by the node
originating the update. However, in FSR link states rather than
distance vectors are propagated. Moreover, like in LS, a full
topology map is kept at each node and shortest paths are computed
using this map.
In a wireless environment, a radio link between mobile nodes may
experience frequent disconnects and reconnects. The LS protocol
releases a link state update for each such change, which floods
the network and causes excessive overhead. FSR avoids this
problem by using periodic, instead of event driven, exchange of
the topology map, greatly reducing the control message overhead.
The entries to be included in the periodic broadcast message
are selected according to the rule that their propagation should
cause an update in topology tables of its neighbors. The
benefit of this operation is large in a dense network where
a node may find that all its neighbors have the same freshness
of the information about another node. By excluding such
entries, only the effective entries are included in the
link state update message which leads to reduction in the
size of the message.
7. Protocol Operation
This section discusses the operation of FSR routing protocol.
The sending and receiving of routing packets are in the proactive
nature. And the routing packets are processed separately from
ordinary data packets.
7.1 Contents of Tables
Each node running FSR is required to maintain following tables.
The required tables and suggested fields are listed below.
7.1.1 Neighbor List
When a node receives a link state message, it records/updates the
sender's link state information in its neighbor list. If the node
Gerla, Hong and Pei [Page 9]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
does not receive link state updates from a neighbor for a
NEIGHBOR_TIMEOUT interval, the entry for that neighbor will be
deleted from the neighbor list. The following
information is maintained in the list for each neighbor node:
- Neighbor ID
- Latest time receiving from the neighbor
7.1.2 Topology Table
Topology table records the topology information obtained from the
link state message. Each destination has an entry in the table.
The entry contains three parts: the destination information, its
link state information and variables for selecting effective
entries. Based on this table, the routing table is calculated.
The distance information is maitained in the routing table
and is used to classified the node to a fisheye scope. The
topology table has following fields for every link state entry:
- Destination Address
- Destination sequence number
- Last heard time
- A list of its neighbors
- Previous sequence number
- A flag for "NeedToSend"
7.1.3 Routing Table
The routing table of FSR provides the next hop information to
forward the packets for the other destinations in the network.
The entries are updated when topology table is changed. The
routing table has the following fields:
- Destination Address
- Next hop address
- Distance
Initially when a FSR router is powered up, it knows nothing about
the network except routing information about all interfaces and
hosts that are directly attached to the router.
7.2. Link State Message
Periodically, nodes broadcast the effective portion of the
topology tables to their neighbors. By listening to these
broadcastings, each node builds up its neighbor list.
As the source address (the address originating this message)
and destination address(broadcast address of the network) are
already included in the IP header, the link state message
given here only contains packet size and topology table
entries. At very beginning, this broadcast contains only
itself with empty topology table.
The proposed format of a Link State Message (assume the link cost
is measured in hop distance and is 1 for each neighbor, therefore
Gerla, Hong and Pei [Page 10]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
the link cost is not included) is as follows.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Packet Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Address 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Sequence Number 1 | N_neighbors 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Address 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
: . . . :
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Address N_neighbors 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Address 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Sequence Number 2 | N_neighbors 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Address 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
: . . . :
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Address N_neighbors 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
: . . . :
: :
(etc)
7.2.1. Description of the fields
Packet Length
The length (in bytes) of the packet.
Reserved
The bits are set to '0' and are ignored on reception.
Destination Address 1
The first destination address in the topology table.
Destination Sequence Number 1
The last sequence number received for the first destination
in the past by the source of the message.
N_neighbors 1
The number of neighbors of the first destination.
Gerla, Hong and Pei [Page 11]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
Neighbor Address 1, ..., Neighbor Address N_neighbors 1
The list of neighbors of the first destination. The number is
indicated in the field N_neighbors 1.
Destination Address 2
The second destination address in the topology table.
These fields are repeated for each entry in the topology table.
The length of link state message is limited to the maximum IP
packet size. In that case, multiple packets may required to
broadcast all the topology entries.
7.3. Link State Message Processing
7.3.1 Originating Link State Message
Each node broadcasts the latest link state information to its
neighbors. FSR uses different update intervals for different
entries in the table according to their distance from the node.
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. When it is
the time for broadcasting a node's topology table (for any
broadcast frequencies), the node first times out its topology
table. The lastHeardTime variable in the entries corresponding
to the frequency is checked, stale entries are timed out. The
time-out interval is set to be three times of the update interval.
For inner scope broadcasting, timing-out is performed after the
node refreshes its own entry. Then at the time for updating
fisheye scope-i's topology information, the node scans the
topology table to pick up corresponding nodes. The nodes
whose distance to the current node is within the range of
scope-i will be included in the update message if it is an
effective entry. The update interval of fisheye scope level i
is UpdateInterval_i. If the current node will be included in
the link state message, its sequence number is increased by one.
To select the effective portion of the scope-i link state
message, an entry corresponding to scope-i is chosen if its
flag of "NeedToSend" is true. After the message is sent,
all the flags of entries of scope-i are reset to false,
and the previous sequence numbers are copied with the current
sequence number.
7.3.2 Receiving Link State Message
When a node receives a link state message, it first checks its
neighbor link state list for the sender. If the sender is a new
neighbor, it will insert the sender into the list. Otherwise,
it will update the timestamp of the sender in the neighbor list.
The node then processes the link state information contained
Gerla, Hong and Pei [Page 12]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
in the update message. For each link state entry in the packet,
the following situations are considered.
(1) If it is a new destination to the current node, a new
topology table entry will be created and filled with
corresponding information. The "NeedToSend" flag sets
to true.
(2) Otherwise, only the most up to date destination is
copied to the local topology table. That is, if any entry
in the incoming message has a larger sequence number
regarding to destination j comparing with the ones stored
in the node's topology table, the local entry will be
replaced by the incoming one. The "NeedToSend" flag sets
to true.
(3) For a incoming destination not fitting into the previous
two cases, if the information is older than the one
stored in current node, i.e., its destination sequence
number is less than the previous sequence number of the
stored entry, the entry in the current node's topology
table needs to be sent in next link state update. The
"NeedToSend" flag of the entry sets to true.
In all the cases, when a topology entry is inserted or updated,
the time is stamped in the lastHeardTime variable. After all
incoming entries are examined, if there are any changes in the
topology table, routing table is recomputed.
7.4 Link Breakage
In a mobile ad hoc network, link breakage is a frequent incident.
Each node uses soft state to detect link breakage, i.e., each node
considers a link to be broken if it does not receive link state
messages from the neighbor after a NEIGHBOR_TIMEOUT interval.
The node then deletes the neighbor from neighbor list and remove
it from its link state entry in topology table.
FSR does not rely on feedback from MAC. If MAC can provide
Feedback in case of link failure, FSR will use the report to update
the neighbor table and provide more up-to-date routing information.
The operation is the same as above. This faster discovery can
result in a better performance.
7.5. Routing Table Calculation
Whenever there are changes in the topology table, the routing table
will be recomputed. The topology table is checked to remove stale
entries prior to the calculation. Based on the latest topology
table, the Dijkstra's algorithm [6] is performed to find the
shortest paths from current node to all the destinations known
to it, i.e., in the topology table. Old routing table is replaced
Gerla, Hong and Pei [Page 13]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
completely by the newly computed next hop information.
FindSP(i) is the algorithm used to create a shortest path tree
rooted at i. In this documentation, the procedure is based on the
Dijkstra's algorithm with modifications so that the next hop
(denoted as table NEXTi()) and the distance (denoted as table Di())
are computed in parallel with the tree reconstruction.
At node i, FindSP(i) initiates with P = {i}, then it iterates until
P = V, where V is the set of all nodes. In each iteration,
it searches for a node j such that node j minimizes the value of
(Di(k) + weight(k,j)), for all j and k, where j belongs to {V - P},
k belongs to nodes in topology table and weight(k,j) does not equal
to infinite. Once node j is found, P is augmented with j, D(j) is
assigned to D(k) + weight(k,j) and NEXTi(j) is assigned to NEXTi(k).
That is, as the shortest path from i to j has to go through k,
the successor for i to j is the same successor for i to k.
A weight function, weight(), is used to compute the distance of
a link. Since minimum hop shortest path is considered in this
stage, this weight function simply returns 1 if two nodes have
direct connection, otherwise, it returns 0. This weight function
may also be replaced with other functions for routing with different
metrics. For instance, a bandwidth function can be used to realize
a QoS routing.
8. Data Packet Forwarding
As the routing table is calculated in background, hop by hop data
packet forwarding is very straight forward. The source node or
any intermediate nodes retrieve the destination from the data
packet, and look at their routing tables. If the route is known,
i.e., there is an entry for the destination, the data packet is
sent to the next hop node. This procedure repeats until the
packet finally reaches the destination.
9. Considerations about Routing Inaccuracy
FSR only has inaccurate routing information about remote nodes.
This inaccuracy is affected by the route update interval.
The longer the update interval, the less accurate the routing
information. However, several features of FSR reduces the routing
inaccuracy. For large network size, as the route error is weighted
by distance, the sensitivity to network size is largely reduced.
Thus, receiving updates about far away nodes at low frequency will
not significantly affect the routing accuracy. The same mechanism
applies to mobility, i.e., the progressive accurating of the routing
path reduces the impact from mobility.
Also, increasing the scope radius will improve the accuracy. But
Gerla, Hong and Pei [Page 14]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
using larger radii will increase the routing update packets which
causes more control overhead.
10. Configuration Parameters
This section gives default values for some important parameters
associated with the FSR protocol operations. Readers should take
these values as an example for the design of their own network
scenario. Different values of these parameters may affect the
performance of the protocol. The following values define a network
with two level fisheye scopes. The inner scope is bounded by hop
distance 2. Two different update frequencies are used for the
scopes, they are called IntraScope_Interval and InterScope_Interval
for inner and outer scope respectively.
Parameter Name Value
----------------------------- ----------------
Number of Scope 2
IntraScope_Interval 5 second
IntreScope_Interval 15 seconds
NEIGHBOR_TIMEOUT 15 seconds
Acknowledgments
This work was supported in part by NSF under contract ANI-9814675,
in part by DARPA under contract DAAB07-97-C-D321.
References
[1] G. Pei, M. Gerla, and T.-W. Chen, "Fisheye State Routing:
A Routing Scheme for Ad Hoc Wireless Networks", Proceedings of
ICC 2000, New Orleans, LA, Jun. 2000.
[2] G. Pei, M. Gerla, and T.-W. Chen, "Fisheye State Routing in
Mobile Ad Hoc Networks", Proceedings of Workshop on Wireless
Networks and Mobile Computing, Taipei, Taiwan, Apr. 2000.
[3] L. Kleinrock and K. Stevens, "Fisheye: A Lenslike Computer
Display Transformation," Technical report, UCLA, Computer Science
Department, 1971.
[4] T.-W. Chen and M. Gerla, "Global State Routing: A New Routing
Scheme for Ad-hoc Wireless Networks," In Proceedings of IEEE ICC'98,
Atlanta, GA, Jun. 1998, pp. 171-175.
[5] C.E. Perkins and P. Bhagwat, "Highly Dynamic Destination-
Sequenced Distance-Vector Routing (DSDV) for Mobile Computers,"
In Proceedings of ACM SIGCOMM'94, London, UK, Sep. 1994,
pp. 234-244.
Gerla, Hong and Pei [Page 15]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
[6] R. Sedgewick,Weighted Graphs, chapter 31, Addision-Wesley, 1983.
[7] UCLA Wireless Adaptive Mobility (WAM) Laboratory.
http://www.cs.ucla.edu/NRL/wireless
[8] S. Bradner. Key words for use in RFCs to Indicate
Requirement Levels. RFC 2119, March 1997.
Chair's Address
The MANET Working Group can be contacted via its current chairs:
M. Scott Corson
Flarion Technologies, Inc.
Bedminster One
135 Route 202/206 South
Bedminster, NJ 07921
USA
Phone: +1 908 947-7033
Email: corson@flarion.com
Joseph Macker
Information Technology Division
Naval Research Laboratory
Washington, DC 20375
USA
Phone: +1 202 767-2001
Email: macker@itd.nrl.navy.mil
Authors' Addresses
Questions about this document can also be directed to the authors:
Mario Gerla
3732F Boelter Hall
Computer Science Department
University of California
Los Angeles, CA 90095-1596
USA
Phone: +1 310 825-4367
Fax: +1 310 825-7578
Email: gerla@cs.ucla.edu
Xiaoyan Hong
Gerla, Hong and Pei [Page 16]
INTERNET-DRAFT Fisheye State Routing Protocol June 17, 2002
3803F Boelter Hall
Computer Science Department
University of California
Los Angeles, CA 90095-1596
USA
Phone: +1 310 825-4623
Fax: +1 310 825-7578
Email: hxy@cs.ucla.edu
Guangyu Pei
Rockwell Scientific Company
1049 Camino Dos Rios
P.O. Box 1085
Thousand Oaks, CA 91358-0085
USA
Phone: +1 805 373-4639
Fax: +1 805 373-4383
Email: gpei@rwsc.com
Gerla, Hong and Pei [Page 17]