Tải bản đầy đủ (.pdf) (18 trang)

Tài liệu DAV Nguyên tắc và các ứng dụng P9 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (135.22 KB, 18 trang )

9
Routing protocols in mobile
and wireless networks
Mobile and wireless networks allow the users to access information and services elec-
tronically, regardless of their geographic location. There are infrastructured networks and
infrastructureless (ad hoc) networks. Infrastructured network consists of a network with
fixed and wired gateways. A mobile host communicates with a Base Station (BS) within
its communication radius. The mobile unit can move geographically while it is commu-
nicating. When it goes out of range of one BS, it connects with a new BS and starts
communicating through it by using a handoff. In this approach, the BSs are fixed.
In contrast to infrastructure-based networks, in ad hoc networks all nodes are mobile
and can be connected dynamically in an arbitrary manner. All nodes of these networks
behave as routers and take part in discovery and maintenance of routes to other nodes in
the network. Ad hoc networks are very useful in emergency search-and-rescue operations,
meetings, or conventions in which persons wish to quickly share information and data
acquisition operations in inhospitable terrain.
An ad hoc network is a collection of mobile nodes forming a temporary network
without the aid of any centralized administration or standard support services regularly
available in conventional networks. We assume that the mobile hosts use wireless radio
frequency transceivers as their network interface, although many of the same principles
will apply to infrared and wire-based networks. Some form of routing protocol is necessary
in these ad hoc networks since two hosts wishing to exchange packets may not be able
to communicate directly.
Wireless network interfaces usually operate at significantly slower bit rates than their
wire-based counterparts. Frequent flooding of packets throughout the network, a mecha-
nism many protocols require, can consume significant portions of the available network
bandwidth. Ad hoc routing protocols must minimize bandwidth overhead at the same time
as they enable routing.
Ad hoc networks must deal with frequent changes in topology. Mobile nodes change
their network location and link status on a regular basis. New nodes may unexpectedly join
Mobile Telecommunications Protocols For Data Networks. Anna Ha


´
c
Copyright

2003 John Wiley & Sons, Ltd.
ISBN: 0-470-85056-6
164
ROUTING PROTOCOLS IN MOBILE AND WIRELESS NETWORKS
the network or existing nodes may leave or be turned off. Ad hoc routing protocols must
minimize the time required to converge after the topology changes. A low convergence
time is more critical in ad hoc networks because temporary routing loops can result in
packets being transmitted in circles, further consuming valuable bandwidth.
The routing protocols meant for wired networks cannot be used for mobile ad hoc
networks because of the mobility of networks. The ad hoc routing protocols can be
divided into two classes: table-driven and on-demand routing, on the basis of when and
how the routes are discovered. In table-driven routing protocols, consistent and up-to-
date routing information to all nodes is maintained at each node, whereas in on-demand
routing the routes are created only when desired by the source host. We discuss current
table-driven protocols as well as on-demand protocols.
9.1 TABLE-DRIVEN ROUTING PROTOCOLS
In table-driven routing protocols, each node maintains one or more tables containing
routing information to every other node in the network. All nodes update these tables so
as to maintain a consistent and up-to-date view of the network. When the network topology
changes, the nodes propagate update messages throughout the network in order to maintain
a consistent and up-to-date routing information about the whole network. These routing
protocols differ in the method by which the information regarding topology changes is
distributed across the network and in the number of necessary routing-related tables.
9.1.1 Destination-sequenced distance-vector routing
Destination-Sequenced Distance-Vector Routing (DSDV) is an adoption of a conven-
tional routing protocol to ad hoc networks. DSDV is based on the Routing Information

Protocol (RIP) used in parts of the Internet. Consequently, DSDV only makes use of
bidirectional links.
In DSDV, packets are routed between nodes of an ad hoc network using a Routing
Table (RT) stored at each node. Each RT at each node contains a list of the addresses of
every other node in the network. Along with each node’s address, the table contains the
address of the next hop for a packet to take in order to reach the node.
DSDV generates and maintains the RTs. Every time the network topology changes,
the RT in every node needs to be updated. In addition to the destination address and
next hop address, RTs maintain the route metric (the number of hops) and the route
sequence number.
Periodically, or immediately when network topology changes are detected, each node
will broadcast an RT update packet. The update packet starts out with a metric of one.
This signifies to each receiving neighbor that it is one hop away from the node. The
neighbors will increment this metric and then retransmit the update packet. This process
repeats itself until every node in the network has received a copy of the update packet
with a corresponding metric. If a node receives duplicate update packets, the node will
only consider the update packet with the smallest metric and ignore the remaining ones.
TABLE-DRIVEN ROUTING PROTOCOLS
165
To distinguish stale update packets from valid ones, each update packet is tagged by the
original node with a sequence number. The sequence number is a monotonically increasing
number that uniquely identifies each update packet from a given node. Consequently, if
a node receives an update packet from another node, the sequence number must be equal
to or greater than the sequence number already in the RT; otherwise the update packet is
stale and ignored. If the sequence number matches the sequence number in the RT, then
the metric is compared and updated.
Each time an update packet is forwarded, the packet not only contains the address of
the destination but it also contains the address of the transmitting node. The address of
the transmitting node is entered into the RT as the next hop. The update packets with the
higher sequence numbers are always entered into the RT, regardless of whether they have

a higher metric or not.
Each node must periodically transmit its entire RT to its neighbors using update pack-
ets. The neighbors will update their tables on the basis of this information, if required.
Likewise, each node will listen to its neighbors update packets and update its own RT.
Mobile nodes cause broken links as they move from place to place. The broken link
may be detected by the communication hardware, or it may be inferred if no broadcasts
have been received for a while from a former neighbor. A broken link is described as
having a metric of infinity. Since this qualifies as a substantial route change, the detecting
node will broadcast an update message for the lost destination. This update message will
have a new sequence number and a metric of infinity. This will essentially cause the RT
entries for the lost node to be flushed from the network. Routes to the lost node will be
established again when the lost node sends out its next broadcast.
To avoid nodes and their neighbors generating conflicting sequence numbers when
the topology changes, nodes only generate even sequence numbers for themselves, and
neighbors responding to link changes only generate odd sequence numbers.
DSDV is based on a conventional routing protocol, RIP, adopted for use in ad hoc
networks. Routing is achieved by using RTs maintained by each node. The bulk of the
complexity in DSDV is in generating and maintaining these RTs.
DSDV requires nodes to periodically transmit RT update packets, regardless of network
traffic. These update packets are broadcast throughout the network so every node in the
network knows how to reach every other node. As the number of nodes in the network
grows, the size of the RTs and the bandwidth required to update them also grows. This
overhead is DSDV’s main weakness, as Broch et al. found in their simulations of 50-node
networks. Furthermore, whenever the topology changes, DSDV is unstable until update
packets propagate throughout the network. Broch found DSDV to be the most difficult in
dealing with high rates of node mobility.
Every mobile station maintains an RT that lists all available destinations, the number of
hops to reach the destination, and the sequence number assigned by the destination node.
The sequence number is used to distinguish stale routes from new ones and thus avoid
the formation of loops. The stations periodically transmit their RTs to their immediate

neighbors. A station also transmits its RT if a significant change has occurred in its
table from the last update sent. Thus, the update is both time-driven and event-driven.
The RT updates can be sent in two ways: a full dump or an incremental update. A full
dump sends the full RT to the neighbors and could span many packets, whereas in an
166
ROUTING PROTOCOLS IN MOBILE AND WIRELESS NETWORKS
incremental update, only those entries from the RT are sent that have a metric change
since the last update, and they must fit in a packet. If there is space in the incremental
update packet, then those entries may be included whose sequence number has changed.
When the network is relatively stable, incremental updates are sent to avoid extra traffic
and full dumps are relatively infrequent. In a fast-changing network, incremental packets
can grow, and full dumps will be more frequent. Each route update packet, in addition to
the RT information, also contains a unique sequence number assigned by the transmitter.
The route labeled with the highest (i.e., the most recent) sequence number is used. If
two routes have the same sequence number, then the route with the best metric (i.e., the
shortest route) is used. On the basis of the past history, the stations estimate the settling
time of routes. The stations delay the transmission of a routing update by settling time so
as to eliminate those updates that would occur if a better route was found very soon.
9.1.2 The wireless routing protocol
The Wireless Routing Protocol (WRP) is a table-based distance-vector routing protocol.
Each node in the network maintains a Distance table, an RT, a Link-cost table, and a
Message Retransmission List (MRL). The Distance table of a node x contains the distance
of each destination node yvia each neighbor z of x. It also contains the downstream
neighbor of z through which this path is realized. The RT of node x contains the distance
of each destination node y from node x, the predecessor and the successor of node x
on this path. It also contains a tag to identify if the entry is a simple path, a loop, or
invalid. Storing predecessor and successor in the table is beneficial in detecting loops
and avoiding counting-to-infinity problems. The Link-cost table contains cost of link to
each neighbor of the node and the number of timeouts since an error-free message was
received from that neighbor. The MRL contains information to let a node know which

of its neighbors has not acknowledged its update message and to retransmit the update
message to that neighbor.
Nodes exchange RTs with their neighbors using update messages periodically as well
as on link changes. The nodes present on the response list of update message (formed
using MRL) are required to acknowledge the receipt of the update message. If there is
no change in RT since the last update, the node is required to send an idle Hello message
to ensure connectivity. On receiving an update message, the node modifies its distance
table and looks for better paths using new information. Any new path so found is relayed
back to the original nodes so that they can update their tables. The node also updates its
RT if the new path is better than the existing path. On receiving an Acknowledgement
ACK, the node updates its MRL. A unique feature of this algorithm is that it checks
the consistency of all its neighbors every time it detects a change in link of any of its
neighbors. A consistency check in this manner helps eliminate looping situations in a
better way and it also has fast convergence.
9.1.3 Global state routing
Global State Routing (GSR) is similar to DSDV. It takes the idea of link state routing
but improves it by avoiding flooding of routing messages. In this algorithm, each node
TABLE-DRIVEN ROUTING PROTOCOLS
167
maintains a Neighbor list, a Topology table, a Next Hop table, and a Distance table.
Neighbor list of a node contains the list of its neighbors (here all nodes that can be heard
by a node are assumed to be its neighbors). For each destination node, the Topology table
contains the link state information as reported by the destination and the timestamp of the
information. For each destination, the Next Hop table contains the next hop to which the
packets for this destination must be forwarded. The Distance table contains the shortest
distance to each destination node.
The routing messages are generated on a link change as in link state protocols. On
receiving a routing message, the node updates it’s Topology table if the sequence number
of the message is newer than the sequence number stored in the table. After this, the node
reconstructs its RT and broadcasts the information to its neighbors.

9.1.4 Fisheye state routing
Fisheye State Routing (FSR) is an improvement of GSR. The large size of update messages
in GSR wastes a considerable amount of network bandwidth. In FSR, each update message
does not contain information about all nodes. Instead, it exchanges information about
closer nodes more frequently than it does about farther nodes, thus reducing the update
message size. Each node receives accurate information about neighbors, and the detail
and accuracy of information decreases as the distance from the node increases. The scope
is defined in terms of the nodes that can be reached in a certain number of hops. The
center node has the most accurate information about the other nodes. Even though a node
does not have accurate information about distant nodes, the packets are routed correctly
because the route information becomes more and more accurate as the packet moves
closer to the destination. FSR scales well to large networks as the overhead is controlled
in this scheme.
9.1.5 Hierarchical state routing
The characteristic feature of Hierarchical State Routing (HSR) is multilevel clustering
and logical partitioning of mobile nodes. The network is partitioned into clusters and
a cluster head elected as in a cluster-based algorithm. In HSR, the cluster heads again
organize themselves into clusters and so on. The nodes of a physical cluster broadcast
their link information to each other. The cluster head summarizes its cluster’s information
and sends it to the neighboring cluster heads via the gateway. These cluster heads are
members of the cluster on a level higher and they exchange their link information as well
as the summarized lower-level information among themselves and so on. A node at each
level floods to its lower level the information that it obtains after the algorithm has run
at that level. The lower level has a hierarchical topology information. Each node has a
hierarchical address. One way to assign hierarchical address is to use the cluster numbers
on the way from the root to the node. A gateway can be reached from the root via more
than one path; thus, a gateway can have more than one hierarchical address. A hierarchical
address is enough to ensure delivery from anywhere in the network to the host.
In addition, nodes are also partitioned into logical subnetworks and each node is
assigned a logical address <subnet, host>. Each subnetwork has a Location Manage-

ment Server (LMS). All the nodes of that subnet register their logical address with the
168
ROUTING PROTOCOLS IN MOBILE AND WIRELESS NETWORKS
LMS. The LMS advertise their hierarchical address to the top levels and the information
is sent down to all LMS too. The transport layer sends a packet to the network layer with
the logical address of the destination. The network layer finds the destination’s LMS from
its LMS and then sends the packet to it. The destination’s LMS forwards the packet to
the destination. Once the source and destination know each other’s hierarchical addresses,
they can bypass the LMS and communicate directly. Since logical address/hierarchical
address is used for routing, it is adaptable to network changes.
9.1.6 Zone-based hierarchical link state routing protocol
In Zone-based Hierarchical Link State Routing Protocol (ZHLS), the network is divided
into nonoverlapping zones. Unlike other hierarchical protocols, there is no zone-head.
ZHLS defines two levels of topologies – node level and zone level. A node level topology
tells how nodes of a zone are connected to each other physically. A virtual link between
two zones exists if at least one node of a zone is physically connected to some node of
the other zone. Zone level topology tells how zones are connected together. There are
two types of Link State Packets (LSP) as well – node LSP and zone LSP. A node LSP of
a node contains its neighbor node information and is propagated with the zone, whereas
a zone LSP contains the zone information and is propagated globally. Each node has
full node connectivity knowledge about the nodes in its zone and only zone connectivity
information about other zones in the network. Given the zone id and the node id of a
destination, the packet is routed on the basis of the zone id till it reaches the correct zone.
Then in that zone, it is routed on the basis of the node id. A <zone id, node id> of the
destination is sufficient for routing, so it is adaptable to changing topologies.
9.1.7 Cluster-head gateway switch routing protocol
Cluster-head Gateway Switch Routing (CGSR) uses as basis the DSDV Routing algorithm.
The mobile nodes are aggregated into clusters and a cluster head is elected. All nodes
that are in the communication range of the cluster head belong to its cluster. A gateway
node is a node that is in the communication range of two or more cluster heads. In

a dynamic network, a cluster-head scheme can cause performance degradation due to
frequent cluster-head elections, so CGSR uses a Least Cluster Change (LCC) algorithm.
In LCC, cluster-head change occurs only if a change in network causes two cluster heads to
come into one cluster, or one of the nodes moves out of the range of all the cluster heads.
The general algorithm works in the following manner: the source of the packet transmits
the packet to its cluster head. From this cluster head, the packet is sent to the gateway
node that connects this cluster head and the next cluster head along the route to the
destination. The gateway sends it to that cluster head and so on till the destination cluster
head is reached in this way. The destination cluster head then transmits the packet to the
destination.
Each node maintains a cluster member table that has mapping from each node to
its respective cluster head. Each node broadcasts its cluster member table periodically
and updates its table after receiving other node’s broadcasts using the DSDV algorithm.
ON-DEMAND ROUTING PROTOCOLS
169
In addition, each node also maintains an RT that determines the next hop to reach the
destination cluster.
On receiving a packet, a node finds the nearest cluster head along the route to the
destination according to the cluster member table and the RT. Then it consults its RT to
find the next hop in order to reach the cluster head selected in step one and transmits the
packet to that node.
9.2 ON-DEMAND ROUTING PROTOCOLS
In contrast to table-driven routing protocols, all up-to-date routes are not maintained at
every node; instead, the routes are created as and when they are required. When source
wants to send a packet to destination, it invokes the route discovery mechanisms to find
the path to the destination. The route remains valid till the destination is reachable or
until the route is no longer needed.
9.2.1 Temporally ordered routing algorithm
Temporally Ordered Routing Algorithm (TORA) is a distributed routing protocol based
on a link reversal algorithm. It is designed to discover routes on-demand, provide multiple

routes to a destination, establish routes quickly, and minimize communication overhead
by localizing the reaction to topological changes when possible. Route optimality (the
shortest-path routing) is considered of secondary importance, and longer routes are often
used to avoid the overhead of discovering newer routes. It is also not necessary (nor
desirable) to maintain routes between every source/destination pair at all times.
The actions taken by TORA can be described in terms of water flowing downhill
toward a destination node through a network of tubes that model the routing state of the
network. The tubes represent links between nodes in the network, the junctions of the
tubes represent the nodes, and the water in the tubes represents the packets flowing toward
the destination. Each node has a height with respect to the destination that is computed
by the routing protocol. If a tube between two nodes becomes blocked such that water
can no longer flow through it, the height of the nodes is set to a height greater than that
of any neighboring nodes, such that water will now flow back out of the blocked tube
and find an alternate path to the destination.
At each node in the network, a logically separate copy of TORA is run for each
destination. When a node needs a route to a particular destination, it broadcasts a route
query packet containing the address of the destination. This packet propagates through
the network until it reaches either the destination or an intermediate node having a route
to the destination. The recipient of the query packet then broadcasts an update packet
listing its height with respect to the destination (if the recipient is the destination, this
height is 0). As this packet propagates back through the network, each node that receives
the update sets its height to a value greater than the height of the neighbor from which
the update was received. This has the effect of creating a series of directed links from the
original sender of the query to the node that initially generated the update.

×