Title: Multicast in Mobile Ad-Hoc Networks
1Multicast in Mobile Ad-Hoc Networks
2Outline of the Talk
- Characteristics of Ad-Hoc Networks
- Issues in Multicast Routing
- AODV
- Tree-based Multicast Routing
- MCEDAR
- Reliability Issues
- Our Work in Progress
3Characteristics of Ad-Hoc Networks
- All mobile platforms(nodes) are capable of motion
- All the nodes have routing functionality. There
is no need for centralized infrastructure for
communication. - Each node is equipped with wireless transmitters
/ receivers - The node may be directly connected to a fixed
network on a foreign subnet, or be connected via
a wireless link, dial-up line, etc.
4Salient features of MANETS
- Dynamic Topologies Nodes move arbitrarily, and
links can be uni as well as bidirectional. - Bandwidth Constrained links Significant lower
capacity of wireless links. Congestion is the
norm rather than the exception. - Energy Constrained Operation All the nodes rely
on some exhaustible source for their energy. - Limited Physical Security More prone to
spoofing, DoS attacks, eavesdropping, etc.
5A Future Internetwork
Base Station
Fixed Network
Ad Hoc Network Switch
Mobile Host
Wired Link
Wireless Link
Ad Hoc Network
6An Ad Hoc Network Our View
- A Graph with n nodes
- A node can move in any direction with any speed
- Connectivity is defined on the basis of power
considerations and land features, implies
frequently changing connectivity, neighborhood of
the nodes in the graph.
7Issues in Multicast Routing
- Information stored We want to store as less
state as possible in the hosts. - Messages Exchanged Because the networks are
bandwidth constrained, we would like as less
exchange of state as possible between the nodes. - Active Adaptability We would like the nodes to
adapt themselves to mobility, power
considerations, environment, etc. - Local Effect of Link Breakages
8Multicast Routing Algorithms
- Some of them
- AODV (Ad Hoc On Demand Distance Vector) Routing
- Tree based Algorithms
- MCEDAR (Multicast Core-Extraction Distributed Ad
Hoc Routing)
9AODV
- Initially developed as a reactive, unicast
routing protocol. - Elegantly adapts to a Multicast routing protocol.
- Based on building a Multicast Routing Tree on
demand. - The current version assumes bidirectional links.
10AODV Unicast Route Discovery
Source
- Source broadcasts route request. (RREQ)
- Node can reply to RREQ
- If it is destination
- It has a fresh route to destination
- Nodes create reverse route entry
- Record Source IP address/Broadcast ID to prevent
multiple processing
Destination
Route Propagation
11AODV Forward Path Setup
Source
- Destination or Intermediate Node with route to
destination unicasts RREP back to source. - Nodes along path create forward route to
destination - Source begins sending data when it receives the
first RREP.
Destination
12AODV Local Connectivity Management
- Nodes must periodically hear from their active
neighbors to know that they are still within
range - Every time it hears the broadcast, it updates the
lifetime - If it does not broadcast within hello_interval,
it broadcasts a hello packet. - Failure to hear from neighbor within
- (1 allowed_hello_loss)hello_lifetime
- indicates loss of link.
13AODV Multicast Overview
- Utilizes same RREQ/RREP message cycle
- Shared tree composed of group members and
connecting nodes is formed - Dynamic Group Membership
- Group Leader
- Maintains and distributes group sequence number
- Is not a central point of failure.
- Multicast Group Members are also routers of the
Multicast Tree.
14AODV Multicast Routing Tables
- Multicast Group IP Address
- Multicast Group Leader IP Address
- Multicast Group Sequence Number
- Hop Count to Multicast Leader
- Next Hops
- Lifetime
15AODV Multicast Route Discovery
- Source node sends RREQ
- Sets J flag if joining
- If no reply recd try rebroadcast RREQ
rreq_retries additional times - If still no reply, then become the group leader
- Nodes receiving RREQ set up reverse route entries.
Source
Multicast Group Members
Multicast Tree Members
Non-Members
Multicast Group Leader
16AODV Route Reply Generation
- Only members of multicast tree can respond to
join request - Any node with route to multicast tree can reply
to non-join request - RREP generated and unicast back to the source
- RREP has address of group member and distance
from closest tree member - Nodes forwarding RREP update RT and MRT entries.
17AODV Route Activation
- Source waits rte_disc_tmo
- Notes route with largest seq and smallest hopcnt
to nearest tree member - After rte_disc_tmo, unicast MACT (Multicast
Activation) to selected next hop. - Node receiving MACT enables MRT entry for source
- Unicasts own MACT if not member of tree.
Multicast Tree
18AODV Leaving the Group
- Node may revoke its member status at any time
- Unicast MACT with P(prune) flag set to next hop
- If node is a leaf and not a group member, prunes
self
19AODV Link Breakages
- Node downstream of the break initiates repair
- Broadcast RREQ with Multicast Group hop count
field and small TTL - Accept RREPs as before
20AODV Reconnecting Partitioned Trees
- New partition detected by differing Group Leader
Information - Any member whose Group Leader has lower IP
address initiates repair - Unicasts RREQ with R(Repair) flag set to the
other Group Leader - The other Group Leader does not give permission
to any other node to initiate repair unless this
fails.
21Group Hello Messages
- First member of group becomes the Group Leader
- Maintains, disseminates the Group Sequence Number
- Broadcasts Group Hello every group_hello_interval
seconds - Multicast Group IP address
- Multicast Group leader IP address
- Current Group Sequence Number
- Hopcount
- Used by multicast tree members to update current
distance to Group Leader
22AODV Simulation
- Used Glomosim
- Each node chooses destination, speed
- Carrier Sensing performed before every
transmission - Simulated length of time 300 seconds
- Data Rate 1 Mbit/sec
- Data packet size 64 bytes
- Transmission Radius 10 m
23AODV Performance
- 50m x 50m Multicast slightly reduced Goodput
Ratio - 85m x 85m Multicast has high rate of group merges
and partitions.
24Multicast Routing Algorithms
- Some of them
- AODV (Ad Hoc On Demand Distance Vector) Routing
- Tree based Routing Algorithms
- MCEDAR (Multicast Core-Extraction Distributed Ad
Hoc Routing)
25Per-Source Multicast
- A Proactive Protocol
- Extension of DVMRP for fixed networks
- DVMRP
- Each sender selectively floods multicast
packets to all nodes within a specified range - They use reverse shortest path forwarding scheme
- Periodically non-member leaf nodes and nodes
without any downstream members send prune
messages - They become alive again after a timeout.
26Per Source Multicast
- Problems of DVMRP in Ad-Hoc Networks
- Leaf Node Detection
- Flooding for Grafting/Pruning
- Reverse Path Forwarding does not work due to
mobility. - Scalability ??? Very poor!!!
27Shared Tree Multicast
- Another Proactive Protocol
- Based on the concept of a rendezvous point (RP)
- Sender Messages send multicast packets to the RP.
- Join requests are also sent to the RP
- Multicast packets are forwarded to receiver
members along the multicast forwarding tree,
either in the unicast mode or multicast mode.
28Multicast Routing Algorithms
- Some of them
- AODV (Ad Hoc On Demand Distance Vector) Routing
- Tree based Routing Algorithms
- MCEDAR (Multicast Core-Extraction Distributed Ad
Hoc Routing)
29Ad-hoc routing using CEDAR
- Core subset of nodes in network involved in
route computation and management, with tunnels
between them. - Core Broadcast an efficient broadcast mechanism
among core nodes using O(V) messages - Increase/Decrease waves the state propagation
mechanism in CEDAR - Route Computation approximation to shortest
widest path.
30CEDAR components in MCEDAR
- Core
- Only core nodes become part of the multicast mesh
- Core Broadcast
- for joining the multicast mesh
- for data forwarding on the mesh
M
M
M
Multicast Mesh (subgraph of Core)
Ad-hoc network
Core Graph
31MCEDAR Characteristics
- Robustness of a mesh
- Efficiency of a tree based forwarding protocol.
- Involves only a subset of nodes (core nodes) in
multicast route management - Independent of the underlying unicast routing
protocol.
32MCEDAR - Two aspects
- Route Management
- the multicast infrastructure
- joins
- leaves
- Data forwarding
33MCEDAR The Multicast Infrastructure
- A mesh of core nodes
- A non-core node requests its dominator (a core
node in its one hop neighborhood)to become a
member on its behalf. - Senders and receivers are not distinguished
- Has a robustness factor of R
34MCEDAR Joining a Group
- Joining core nodes send Join Request using Core
broadcast - Members with a lesser JoinID reply with Join-ACK
- On the reverse (Join-ACK) path, each node accepts
upto R acks. - Upto R paths to the mesh.
- Each member has a JoinID and non members have a
joinID of -INF - Members (including intermediate core nodes), keep
track of parents and children
35MCEDAR Joins (contd.)
- Mesh is essentially a DAG where the JoinIDs
increase as we go down the DAG - On accepting a Join-ACK
- JoinID lt- MAX(JoinID, ID in ACK 1)
- MAX allows a node to distinguish between set of
ancestors and descendants
36Illustration (R2)
1
3
2
4
3
Core node Multicast member Multicast mesh link
New member
37MCEDAR Leaving a Group
- A node can leave if
- A member becomes a non-core node, OR
- It has no members attached to it AND it does not
have any children - Send a leave message to each of its parents
- Set JoinID to -INF
38MCEDAR Data Forwarding
- Forward data on all mesh links except on the link
from which it came from - Core broadcast mechanism used for data forwarding
on the multicast mesh - Use overheard RTS/CTS packets to optimize data
forwarding
39MCEDAR Link Failures/Partitions
- A member does a new join only if it loses
connection with all parents - Only members of lesser JoinID respond
- avoids joining back with the descendants
- if no response for time Tpartition then a
partition is assumed.
40Conclusions
- MCEDAR
- Provides robustness of a mesh based mechanism.
- Provides efficiency of a tree based forwarding
protocol. - Involves only few nodes in multicast route
management. - No results available yet, so cannot predict
performance.
41Multicast Routing Our Views
- The Tree based Algorithms are
- Too costly w.r.t. messages exchanged
- Shared Tree depends on the correct functioning of
a single node - Both these algorithms are not at all scalable
- Hence neither algorithm is useful.
42Multicast Routing Our Views
- AODV has
- Less overhead because it is a reactive protocol
- Not as good as it can be, because again most of
the traffic is directed towards the Multicast
Group Leader - Another improvement could be to incorporate a
mesh-like routing infrastructure - The results of AODV do not give any result on
scalability.
43Multicast Routing Our Views
- MCEDAR, we believe
- Is good in that it has distributed computation.
- But again, your performance depends on the
performance of your core nodes, is that
acceptable?? - Shouldnt power awareness be a feature of routing
protocols too?? - Is it necessary to have some central control for
good performance??
44Reliability
- Different Aspects
- QoS guarantees
- Eventual Delivery
- Consistency Properties
- All group members deliver all the messages with a
high probability
45Reliability Previous Work
- Pagani et al. in 1997
- Reliable Multicast
- Validity and Agreement at least once delivery
- Integrity Message m is delivered only if m has
been multicast by a group member - Termination Integrity, validity and termination
are guaranteed for m within a finite time
46Reliability Pagani et al
- These guarantees hold only as long as there
is - Eventual Subsidence For each m, eventually no
more messages are generated regarding m - Liveness Each mobile is connected for at least
a given time to its clusterhead - Clusterhead Stability A node chosen as the
clusterhead remains as one for at least a given
duration.
47Reliability Pagani et al
- Drawbacks
- No performance results were given
- Is dependent on the underlying multicast protocol
- Based on ack-mechanism, so scalability is an
issue, since much more failures - The conditions are difficult to maintain in the
mobile environment - Can we really provide strong guarantees ??
48Reliability Previous work
- Viswanath et al, 1999
- Reliability
- Robustness and efficiency specifically for high
speed ad hoc networks - No preset speed constraints
- No direction constraints
- Environment has high mobility and frequent outages
49Reliability Viswanath et al
- Adaptive Flooding as their technique
- Routes stored as states become stale soon
- So resort to techniques where minimum state
stored in the routers - Simulation Environment
- 50 nodes places in a 1000m x 1000m field
- Each node sends 25 packets/sec
- Packet Loss ratio of unique packets not sent to
packets sent - Overhead Number of duplicate packets received
50Reliability Viswanath et al
51Reliability Viswanath et al
52Reliability Our views
- Flooding is valid only for very high speed AHNs
- Paganis work requires too many restrictions to
hold - Can we have probabilistic guarantees of delivery
??
53Reliability Our Work in Progress
- We are designing a gossip protocol on top of AODV
- Our protocol does not add any significant
overhead to AODV, in messages and even the
algorithm. - How will this effect performance and
reliability??? Simulations going on!!
54Future Work
- Develop Power Aware Algorithms..
- Have a theoretical model for our environment, and
prove its properties - How do these algorithms perform in reality??
- In what environment will these mobiles operate??
Are the current algorithms suited for it??
55Questions ??