Title: AD HOC NETWORKS
1(No Transcript)
2Ad Hoc Networks
- Infrastructure-less wireless networks dynamically
formed using only mobile hosts (no routers) - Network topology dynamic as all hosts are mobile!
- Mobile hosts themselves double up as routers!!
- Multi-hop paths
- Highly resource constrained
- Extreme case of network mobility
3Topologies-Ad Hoc Networking
- An ad hoc network is a peer-to-peer network (no
centralized server) set up temporarily to meet
some immediate need. - For example, a group of employees, each with a
laptop or palmtop computer may convene in a
conference room for a business or classroom
meeting. - The employees link their computers in a temporary
network just for the duration of the meeting.
4Topologies-Ad Hoc Networking
5Topologies-Ad Hoc Networking
- Differences between
- Ad-Hoc wireless LAN and a CLASSICAL wireless LAN
- The classical wireless LAN forms a stationary
infrastructure consisting of one or more cells
with a control module for each cell. - Within a cell, there may be a number of
stationary end systems. - Nomadic stations can move from one cell to
another. - In contrast, there is no infrastructure for an
ad-hoc network. - Rather, a peer collection of stations within
range of each other may dynamically configure
themselves into a temporary network.
6Illustration
A
B
C
D
7Wireless Ad Hoc Networks
- Disaster recovery
- Battlefield
- Smart office
- Gaps in cellular infrastructure
- Virtual Navigation (cities, buildings, areas,
etc..) - Telemedicine (e.g., accident sites)
- Tele-Geoprocessing Applications
- Education via Internet
8Classes of Wireless Ad Hoc Networks
- Three distinct classes
- Mobile Ad Hoc Networks (MANET)
- possibly highly mobile nodes
- power constrained
- Wireless Ad Hoc Sensor/Device Networks
- relatively immobile
- severely power constrained nodes
- large scale
- Wireless Ad Hoc Backbone Networks
- rapidly deployable wireless infrastructure
- largely immobile nodes
- Common attributes
- Ad hoc deployment, no infrastructure
- Routes between S-D nodes may contain multiple hops
9Multihop Routing
- Traverse multiple links to reach a destination
10MANET
- Mobility causes route changes
11Variations
- Fully symmetric vs. asymmetries in
- Transmission ranges
- Battery life
- Processing capability
- Speed, patterns, and predictability of movement
- Ability to act as multihop relay
- Ability to act as leaders of a cluster of nodes
- Coexistence with an infrastructure
- Variations in traffic characteristics
- Bit rate, timeliness
- Unicast/multicast/geocast
- Addressing (host, content, capability)
12Unicast Routing in MANET
- Host mobility
- link failure/repair due to mobility may have
different characteristics than those due to other
causes - Rate of link failure/repair may be high when
nodes move fast - New performance criteria may be used
- route stability despite mobility
- energy consumption
- Many protocols have been proposed
- Some have been invented specifically for MANET
- Others are adapted from older protocols for wired
networks - No single protocol works well in all environments
- some attempts made to develop adaptive protocols
13Types of Protocols
- Proactive Protocols
- Determine routes independent of traffic pattern
- Traditional (link-state, distance-vector) routing
protocols are proactive - Reactive Protocols
- Maintain routes only if needed
- Hybrid Protocols
14Traditional Routing Algorithms
- Distance Vector
- periodic exchange of messages with all physical
neighbors that contain information about who can
be reached at what distance - selection of the shortest path if several paths
available - Link State
- periodic notification of all routers about the
current state of all physical links - router gets a complete picture of the network
- Example
- ARPA packet radio network (1973), DV-Routing
- every 7.5s exchange of routing tables including
link quality - updating of tables also by reception of packets
- routing problems solved with limited flooding
15Problems of Traditional Routing Algorithms
- Dynamic of the topology
- frequent changes of connections, connection
quality, participants - Limited performance of mobile systems
- periodic updates of routing tables need energy
without contributing to the transmission of user
data, sleep modes difficult to realize - limited bandwidth of the system is reduced even
more due to the exchange of routing information - links can be asymmetric, i.e., they can have a
direction dependent transmission quality - Problem
- protocols have been designed for fixed networks
with infrequent changes and typically assume
symmetric links
16Routing Protocols for Ad Hoc Networks
- Proactive Routing Protocols
- DSDV (Destination Sequenced Distance Vector)
- LSR (Link State Routing)
- Reactive Routing Protocols
- DSR (Dynamic Source Routing)
- AODV (Ad-Hoc on-Demand Distance Vector)
- Hybrid Routing Protocols
- ZRP (Zone Routing Protocol)
- TORA
- CEDAR (Core Extraction Distributed Ad-hoc Routing)
17Proactive Routing Protocols
- Unsuitable for such a dynamic network
- For example, consider link-state routing that
sends out network-wide floods for every
link-state change - Even in the absence of any existing connections,
considerable overhead spent in maintaining
network state
18Goals
- Low overhead route computation
- Ability to recover from frequent failures at
low-cost - Scalable (with respect to mobility and number of
hosts) - Robust
19Reactive (On-Demand) Protocols
- Compute routes only when needed
- Even if network state changes, any re-computation
done only when any existing connections are
affected
20Dynamic Source Routing (DSR)
- Based on source routing
- On-demand
- Route computation performed on a per-connection
basis - Source, after route computation, appends each
packet with a source-route - Intermediate hosts forward packet based on source
route - TWO PHASES ROUTE DISCOVERY
- ROUTE MAINTENANCE
21Dynamic Source Routing (DSR)
- When node S wants to send a packet to node D, but
does not know a route to D, node S initiates a
route discovery - Source node S floods (bradcasts) Route Request
(RREQ) packet. - RREQ packet contains DESTINATION ADDRESS, SOURCE
NODE ADDRESS and A UNIQUE IDENTIFICATION NUMBER. - Each node receiving the packet checks whether it
knows of a route to destination. - If it does not, it appends/adds its own
identifier (address) to the route record and
forwards the RREQ - packet.
22Dynamic Source Routing (DSR)
- REMARK
- To limit the number of route requests, a node
only forwards the RREQ packet if the request has
not yet been seen by the node and if the nodes
address does not already appear in the route
record.
23Dynamic Source Routing I
- Split routing into discovering a path and
- maintaining a path
- Discover a path
- only if a path for sending packets to a certain
- destination is needed and no path is currently
- available
- Maintaining a path
- only while the path is in use one has to make
sure - that it can be used continuously
- No periodic updates needed!
24Dynamic Source Routing II
- Path discovery
- broadcast a packet with destination address and
unique ID - if a station receives a broadcast packet
- if the station is the receiver (i.e., has the
correct destination address) then return the
packet to the sender (path was collected in the
packet) - if the packet has already been received earlier
(identified via ID) then discard the packet - otherwise, append own address and broadcast
packet - sender receives packet with the current path
(address list) - Optimizations
- limit broadcasting if maximum diameter of the
network is known - caching of address lists (i.e. paths) with help
of passing packets - stations can use the cached information for path
discovery (own paths or paths for other hosts)
25Dynamic Source Routing III
- Maintaining paths
- after sending a packet
- wait for a layer 2 acknowledgement (if
applicable) - listen into the medium to detect if other
stations forward the packet (if possible) - request an explicit acknowledgement
- if a station encounters problems it can inform
the sender of a packet or look-up a new path
locally
26Route Discovery in DSR
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received RREQ for D
from S
27Route Discovery in DSR
Y
Broadcast transmission
Z
S
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents transmission of RREQ
X,Y Represents list of identifiers appended
to RREQ
28Route Discovery in DSR
Y
Z
S
S,E
E
F
B
M
L
C
J
A
G
S,C
H
D
K
I
N
- Node H receives packet RREQ from two neighbors
- potential for collision
29Route Discovery in DSR
Y
Z
S
E
F
S,E,F
B
C
M
L
J
A
G
H
D
K
S,C,G
I
N
- Node C receives RREQ from G and H, but does not
forward - it again, because node C has already forwarded
RREQ once
30Route Discovery in DSR
Y
Z
S
E
F
S,E,F,J
B
C
M
L
J
A
G
H
D
K
I
N
S,C,G,K
- Nodes J and K both broadcast RREQ to node D
- Since nodes J and K are hidden from each other,
their - transmissions may collide
31Route Discovery in DSR
Y
Z
S
E
S,E,F,J,M
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node D does not forward RREQ, because node D
- is the intended target of the route discovery
32Route Discovery in DSR
- Destination D on receiving the first RREQ, sends
a Route Reply (RREP) - RREP is sent on a route obtained by reversing the
route appended to received RREQ - RREP includes the route from S to D on which RREQ
was received by node D
33Route Reply in DSR
Y
Z
S
RREP S,E,F,J,D
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents RREP control message
34Route Reply in DSR
- Route Reply can be sent by reversing the route in
Route Request (RREQ) only if links are guaranteed
to be bi-directional (SYMMETRICAL) - To ensure this, RREQ should be forwarded only if
it received on a link that is known to be
bi-directional - If unidirectional (asymmetric) links are allowed,
then RREP may need a route discovery for S from
node D - Unless node D already knows a route to node S
- If a route discovery is initiated by D for a
route to S, then the Route Reply is piggybacked
on the Route Request from D. - If IEEE 802.11 MAC is used to send data, then
links have to be bi-directional (since ACK is
used)
35Dynamic Source Routing (DSR)
- Node S on receiving RREP, caches the route
included in the RREP - When node S sends a data packet to D, the entire
route is included in the packet header - hence the name source routing
- Intermediate nodes use the source route included
in a packet to determine to whom a packet should
be forwarded
36Data Delivery in DSR
Y
Z
DATA S,E,F,J,D
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Packet header size grows with route length
37DSR Optimization Route Caching
- Each node caches a new route it learns by any
means - When node S finds route S,E,F,J,D to node D,
node S also learns route S,E,F to node F - When node K receives Route Request S,C,G
destined for node, node K learns route K,G,C,S
to node S - When node F forwards Route Reply RREP
S,E,F,J,D, node F learns route F,J,D to node
D - When node E forwards Data S,E,F,J,D it learns
route E,F,J,D to node D - A node may also learn a route when it overhears
Data packets
38Use of Route Caching
- When node S learns that a route to node D is
broken, it uses another route from its local
cache, if such a route to D exists in its cache. - Otherwise, node S initiates route discovery by
sending a route request - Node X on receiving a Route Request for some node
D can send a Route Reply if node X knows a route
to node D - Use of route cache
- can speed up route discovery
- can reduce propagation of route requests
39Use of Route Caching
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
A
G
C,S
H
D
K
G,C,S
I
N
Z
P,Q,R Represents cached route at a node
(DSR maintains the cached routes in a
tree format)
40Use of Route CachingCan Speed up Route Discovery
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
G,C,S
A
G
C,S
H
D
K
K,G,C,S
I
N
RREP
RREQ
Z
When node Z sends a route request for node C,
node K sends back a route reply Z,K,G,C to node
Z using a locally cached route
41Use of Route CachingCan Reduce Propagation of
Route Requests
Y
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
G,C,S
A
G
C,S
H
D
K
K,G,C,S
I
N
RREP
RREQ
Z
Route Reply (RREP) from node K limits flooding
of RREQ. In general, the reduction may be less
dramatic.
42Route Error (RERR)
Y
Z
RERR J-D
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
J sends a route error to S along route J-F-E-S
when its attempt to forward the data packet S
(with route SEFJD) on J-D fails Nodes hearing
RERR update their route cache to remove link J-D
43Route Caching Beware!
- Stale (obsolete) caches can adversely affect
performance - With passage of time and host mobility, cached
routes may become invalid - A sender host may try several stale routes
(obtained from local cache, or replied from cache
by other nodes), before finding a good route
44Dynamic Source Routing Advantages
- Routes maintained only between nodes who need to
communicate - reduces overhead of route maintenance
- Route caching can further reduce route discovery
overhead - A single route discovery may yield many routes to
the destination, due to intermediate nodes
replying from local caches
45Dynamic Source Routing Disadvantages
- Packet header size grows with route length
- Flood of route requests may potentially reach all
nodes - Care must be taken to avoid collisions between
route requests propagated by neighboring nodes - insertion of random delays before forwarding RREQ
- Increased contention if too many route replies
come back due to nodes replying using their local
cache - Route Reply Storm problem
- Reply Storm may be eased by preventing a node
from sending RREP if it hears another RREP with a
shorter route - An intermediate node may send Route Reply using a
stale cached route, thus polluting other caches - This problem can be eased if some mechanism to
purge (potentially) invalid cached routes is
incorporated.
46Ad Hoc On-Demand Distance Vector Routing (AODV)
- DSR includes source routes in packet headers
- Resulting large headers can sometimes degrade
performance - particularly when data contents of a packet are
small - AODV attempts to improve on DSR by maintaining
routing tables at the nodes, so that data packets
do not have to contain routes - AODV retains the desirable feature of DSR that
routes are maintained only between nodes which
need to communicate
47AODV
- Route Requests (RREQ) are forwarded in a manner
similar to DSR - When a node re-broadcasts a Route Request, it
sets up a reverse path pointing towards the
source - AODV assumes symmetric (bi-directional) links
- When the intended destination receives a Route
Request, it replies by sending a Route Reply - Route Reply travels along the reverse path set-up
when Route Request is forwarded
48AODVAd Hoc On-demand Distance Vector Routing
- Hop-by-hop routing as opposed to source routing
- On-demand
- When a source node wants to send a message to
some destination node and does not already have a
valid route to that destination, it initiates a
path discovery process to locate the destination
(as in DSR case) - It broadcasts the RREQ packet to its neighbors
- They then send it to their neighbors until the
destination or a node with fresh enough cash
information to the destination is located.
49AODVAd Hoc On-demand Distance Vector Routing
- When RREQ propagates, routing tables are updated
at intermediate nodes (for route to source of
RREQ) - When RREP is sent by destination, routing tables
updated at intermediate nodes (for route to
destination), and propagated back to source
50AODVAd Hoc On-demand Distance Vector Routing
- Each node maintains its own sequence number and a
broadcast ID. - The broadcast ID is incremented for every RREQ
the node initiates and together with the nodes
IP address, uniquely identifies an RREQ. - Along with its own sequence number and broadcast
ID, the source node includes in the RREQ the most
recent sequence number it has for the
destination. - Intermediate nodes can reply to the RREQ only if
they have a route to the destination whose
corresponding destination sequence number is
greater than or equal to that contained in the
RREQ.
51AODVAd Hoc On-demand Distance Vector Routing
- During the process of forwarding the RREQ,
intermediate nodes recording their route tables
the address of the neighbor from which the first
copy of the broadcast packet is received?
establishing a reverse path. - If more same RREQs are received later, they are
discarded. - RREP packet is sent back to the neighbors and the
routing tables are accordingly updated.
52Route Requests in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received RREQ for D
from S
53Route Requests in AODV
Y
Broadcast transmission
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents transmission of RREQ
54Route Requests in AODV
Y
Z
S
E
F
B
M
L
C
J
A
G
H
D
K
I
N
Represents links on Reverse Path
55Reverse Path Setup in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node C receives RREQ from G and H, but does not
forward - it again, because node C has already forwarded
RREQ once
56Reverse Path Setup in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
57Reverse Path Setup in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node D does not forward RREQ, because node D
- is the intended target of the RREQ
58Route Reply in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents links on path taken by RREP
59Route Reply in AODV
- An intermediate node (not the destination) may
also send a Route Reply (RREP) provided that it
knows a more recent path than the one previously
known to sender S - To determine whether the path known to an
intermediate node is more recent, destination
sequence numbers are used - The likelihood that an intermediate node will
send a Route Reply when using AODV not as high as
DSR - A new Route Request by node S for a destination
is assigned a higher destination sequence number.
An intermediate node which knows a route, but
with a smaller sequence number, cannot send Route
Reply
60Forward Path Setup in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Forward links are setup when RREP travels
along the reverse path Represents a link on the
forward path
61Data Delivery in AODV
Y
DATA
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Routing table entries used to forward data
packet. NOTE Route is not included in packet
header as in DSR.
62Timeouts
- A routing table entry maintaining a reverse path
is purged after a timeout interval - timeout should be long enough to allow RREP to
come back - A routing table entry maintaining a forward path
is purged if not used for a active_route_timeout
interval - if no data is being sent using a particular
routing table entry, that entry will be deleted
from the routing table (even if the route may
actually still be valid)
63Link Failure Reporting
- A neighbor of node X is considered active for a
routing table entry if the neighbor sent a packet
within active_route_timeout interval which was
forwarded using that entry - When the next hop link in a routing table entry
breaks, all active neighbors are informed - Link failures are propagated by means of Route
Error messages, which also update destination
sequence numbers
64Route Error
- When node X is unable to forward packet P (from
node S to node D) on link (X,Y), it generates a
RERR message - Node X increments the destination sequence number
for D cached at node X - The incremented sequence number N is included in
the RERR - When node S receives the RERR, it initiates a new
route discovery for D using destination sequence
number at least as large as N - When node D receives the route request with
destination sequence number N, node D will set
its sequence number to N, unless it is already
larger than N
65Link Failure Detection
- Hello messages Neighboring nodes periodically
exchange hello message - Absence of hello message is used as an indication
of link failure - Alternatively, failure to receive several
MAC-level acknowledgement may be used as an
indication of link failure
66Why Sequence Numbers in AODV
- To avoid using old/broken routes
- To determine which route is newer
- To prevent formation of loops
- Assume that A does not know about failure of link
C-D because RERR sent by C is lost - Now C performs a route discovery for D. Node A
receives the RREQ (say, via path C-E-A) - Node A will reply since A knows a route to D via
node B - Results in a loop (for instance, C-E-A-B-C )
A
B
C
D
E
67Optimization Expanding Ring Search
- Route Requests are initially sent with small
Time-to-Live (TTL) field, to limit their
propagation - DSR also includes a similar optimization
- If no Route Reply is received, then larger TTL
tried
68Summary AODV
- Routes need not be included in packet headers
- Nodes maintain routing tables containing entries
only for routes that are in active use - At most one next-hop per destination maintained
at each node - DSR may maintain several routes for a single
destination - Unused routes expire even if topology does not
change
69Proactive Protocols
- Most of the schemes discussed so far are reactive
- Proactive schemes based on distance-vector and
link-state mechanisms have also been proposed
70Link State Routing
- Each node periodically floods status of its links
- Each node re-broadcasts link state information
received from its neighbor - Each node keeps track of link state information
received from other nodes - Each node uses above information to determine
next hop to each destination
71Destination-Sequenced Distance-Vector (DSDV)
- Each node maintains a routing table which stores
- next hop towards each destination
- a cost metric for the path to each destination
- a destination sequence number that is created by
the destination itself - Sequence numbers used to avoid formation of loops
- Each node periodically forwards the routing table
to its neighbors - Each node increments and appends its sequence
number when sending its local routing table - This sequence number will be attached to route
entries created for this node
72Destination-Sequenced Distance-Vector (DSDV)
- Assume that node X receives routing information
from Y about a route to node Z - Let S(X) and S(Y) denote the destination sequence
number for node Z as stored at node X, and as
sent by node Y with its routing table to node X,
respectively
Z
X
Y
73Destination-Sequenced Distance-Vector (DSDV)
- Node X takes the following steps
- If S(X) gt S(Y), then X ignores the routing
information received from Y - If S(X) S(Y), and cost of going through Y is
smaller than the route known to X, then X sets Y
as the next hop to Z - If S(X) lt S(Y), then X sets Y as the next hop to
Z, and S(X) is updated to equal S(Y)
Z
X
Y
74Comparison
75Hybrid Protocols Zone Routing Protocol (ZRP)
- Zone routing protocol combines
- Proactive protocol which pro-actively updates
network state and maintains route regardless of
whether any data traffic exists or not - Reactive protocol which only determines route to
a destination if there is some data to be sent to
the destination - All nodes within hop distance at most d from a
node X are said to be in the routing zone of node
X - All nodes at hop distance exactly d are said to
be peripheral nodes of node Xs routing zone
76ZRP
- Intra-zone routing Pro-actively maintain state
information for links within a short distance
from any given node - Routes to nodes within short distance are thus
maintained proactively (using, say, link state or
distance vector protocol) - Inter-zone routing Use a route discovery
protocol for determining routes too far away
nodes. Route discovery is similar to DSR with the
exception that route requests are propagated via
peripheral nodes.
77Temporally-Ordered Routing Algorithm (TORA)
- On demand routing.
- Designed for a dynamic environment.
- Each node keeps routing information about
adjacent nodes. - A DAG (Directed Acyclic Graph) describes all
discovered paths to a node. - When one link fails, its neighbors reverse
direction in the DAG, and utilize another path. - Timing of failures is important, so TORA requires
synchronized clocks (i.e. GPS)
78Temporally-Ordered Routing Algorithm (TORA)
- Water flowing downhill toward to a destination
node through a network of tubes/pipes that models
the routing state of the real network. - Tubes/pipes represent links between nodes in the
network, junctions of 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.
79Temporally-Ordered Routing Algorithm (TORA)
- If a tube between nodes A and B becomes blocked
such that water can no longer flow through it,
the height of A is set to a height greater than
that of any of is remaining neighbors, such that
water fill now flow back out of A (and toward the
other nodes that had been routing packet to the
destination via A).
80Temporally-Ordered Routing Algorithm (TORA)
- TORA performs 3 basic functions
- ROUTE CREATION
- ROUTE MAINTENANCE
- ROUTE ERASURE
81TORA ROUTE CREATION MAINTENANCE
- For each node in the network a separate directed
acyclic graph (DAG) is maintained for each
destination. - When a node needs a route to a destination, it
broadcasts a QUERY packet containing the
destination address. - This packet travels through the network until it
reaches either the destination or an intermediate
node which already has a path to that
destination. - The recipient of the QUERY packet then broadcasts
an UPDATE packet listing its height with respect
to the destination. - Each node receiving this UPDATE packet sets is
height to a value greater than the height of the
neighbor from which the UPDATE packet has been
received. - When a node detects a network partition, it
generates a CLEAR packet that resets routing
state and removes invalid routes from the
network.
82TORA ROUTE CREATION MAINTENANCE
- During the route creation and maintenance phases,
nodes use the height metric to establish a DAG
rooted at the destination. - Links are assigned a direction (upstream or
downstream) based on the relative height metric
of neighboring nodes. - (See Figure)
83TORA ROUTE CREATION MAINTENANCE
- For node mobility when the DAG route is broken,
and route maintenance is necessary to
re-establish a DAG rooted at the same
destination. - See Figure? upon failure of the last downstream
link, a node generates a new reference level. - Links are reversed to reflect the change.
84TORA
85TORA
86TORA
87TORA
88TORA
89TORA
- TORA is partially proactive and partially
reactive - Reactive ? route creation is initiated on
demand. - Proactive ? Route maintenance is done proactively
such that multiple routing options are available
in case of link failures.
90So far ...
- All nodes had identical responsibilities
- Some schemes propose giving special
responsibilities to a subset of nodes - Even if all nodes are physically identical
- Core-based schemes are examples of such schemes
91Core-Extraction Distributed Ad Hoc Routing
(CEDAR)
- A subset of nodes in the network is identified as
the core - Each node in the network must be adjacent to at
least one node in the core - Each node picks one core node as its dominator
(or leader) - Core is determined by periodic message exchanges
between each node and its neighbors - attempt made to keep the number of nodes in the
core small - Each core node determines paths to nearby core
nodes by means of a localized broadcast - Each core node guaranteed to have a core node at
lt3 hops
92CEDAR Core Nodes
A
G
D
B
C
E
H
F
J
S
K
Node E is the dominator for nodes D, F and K
A core node
93CEDAR
- Advantages
- Route discovery/maintenance duties limited to a
small number of core nodes - Link state propagation a function of link
stability/quality - Disadvantages
- Core nodes have to handle additional traffic,
associated with route discovery and maintenance
94SUMMARYCharacteristics of DSDV
95SUMMARYCharacteristics of On-Demand Routing
Protocols
96SUMMARYCharacteristics of On-Demand Routing
Protocols
97SUMMARYCharacteristics of On-Demand Routing
Protocols
98SUMMARYCharacteristics of On-Demand Routing
Protocols
99Implementation Issues
- Several implementations apparently exist (see
IETF) - only a few available publicly
- Where to implement ad hoc routing?
- Link layer, Network layer, Application layer
- Address assignment
- Restrict all nodes to be on the same subnet
- Nodes may be given random addresses
- How to assign addresses? DHCP for ad hoc network?
- Security
- How can I trust you to forward my packets without
tampering? - How do I know you are what you claim to be ?
- Performance
- Can we make any guarantees on performance?
100References
- 1 D. B. Johnson, D. A. Maltz, Y.-C. Hu, The
Dynamic Source Routing Protocol for Mobile Ad Hoc
Networks (DSR), IETF Draft, April 2003. - 2 C. E. Perkins, E. M. Belding-Royer, Ian D.
Chakeres, Ad hoc On-Demand Distance Vector
(AODV) Routing, IETF Draft, January 2004. - 3 Z. J. Haas, M. R. Pearlman, P. Samar, P.,
The Zone Routing Protocol (ZRP) for Ad Hoc
Networks IETF Internet Draft, draft-ietf-manet-zo
ne-zrp-04.txt, July 2002. - 4 V. Park, S. Corson,Temporally-Ordered
Routing Algorithm (TORA), IETF Draft,
draft-ietf-manet-tora-spec-03.txt, work in
progress, June 2001. - 5 P. Sinha, R. Sivakumar, and V. Bharghavan,
"CEDAR A CoreExtraction Distributed Ad
HocroutingAlgorithm," Proc. IEEE INFOCOM '99,
Mar. 1999.