Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 220 times |
Download: | 5 times |
Group Communications in Group Communications in Mobile Ad hoc NetworksMobile Ad hoc Networks
Jian LiJian Lihttp://networks.cs.ucdavis.edu/~lijian/slides/ecs257/http://networks.cs.ucdavis.edu/~lijian/slides/ecs257/
ReferencesReferences
P. Mohapatra, C. Gui, and J. Li. Group P. Mohapatra, C. Gui, and J. Li. Group Communications in Mobile Ad hoc Communications in Mobile Ad hoc Networks. IEEE Computer Magazine, Networks. IEEE Computer Magazine, Feb. 2004, pp. 52-59.Feb. 2004, pp. 52-59.
AgendaAgendaIntroductionIntroductionGroup Comm. ModelsGroup Comm. Models– MulticastingMulticasting– BroadcastingBroadcasting– Geocasting & AnycastingGeocasting & AnycastingCommon IssuesCommon Issues– ReliabilityReliability– Energy efficiencyEnergy efficiency– QoSQoS– SecuritySecurityConcluding RemarksConcluding Remarks
ManetManet
No infrastructure, ad hoc deploymentNo infrastructure, ad hoc deployment
Nodes are free to move aroundNodes are free to move around
Wireless mediaWireless media
Multihop routingMultihop routing
Various potential applicationsVarious potential applications– Group Communication is a critical Group Communication is a critical
building blockbuilding block
Group Comm. In ManetGroup Comm. In ManetDiffer from wireline networksDiffer from wireline networksWireless medium has varying Wireless medium has varying characteristicscharacteristics– Signal strength and propagation Signal strength and propagation
fluctuation w.r.t time and placefluctuation w.r.t time and place
Node mobility is unpredictableNode mobility is unpredictable– Changing topologyChanging topology
Limited resourcesLimited resources– Bandwidth, battery, CPU, memory, etcBandwidth, battery, CPU, memory, etc
Multicasting: Exploiting Multicasting: Exploiting Characteristics of ManetCharacteristics of Manet
Variable topologyVariable topology– Mesh-based protocolsMesh-based protocols
Soft-state & state aggregationSoft-state & state aggregation– Stateless multicastStateless multicast
Knowledge of locationKnowledge of location– Location aided multicastLocation aided multicast
RandomnessRandomness– Gossip-based multicastGossip-based multicast
Mesh-based ProtocolsMesh-based Protocols
Core-Assisted Mesh Protocol (CAMP)Core-Assisted Mesh Protocol (CAMP)
On-demand Multicast Routing On-demand Multicast Routing Protocol (ODMRP)Protocol (ODMRP)
CAMP: FeaturesCAMP: Features
Assume the underlying unicast routing Assume the underlying unicast routing protocol can provide correct distance to protocol can provide correct distance to known destination within a finite timeknown destination within a finite time
Ensure reverse shortest paths from Ensure reverse shortest paths from receivers to sources are part of a group’s receivers to sources are part of a group’s meshmesh
AnchorAnchor– Neighbor nodes which are required to re-Neighbor nodes which are required to re-
broadcast any non-duplicate data packets they broadcast any non-duplicate data packets they receivereceive
CAMP: OperationCAMP: OperationConsult a neighbor tableConsult a neighbor table
Confirm membership via a CAMP-UPDATEConfirm membership via a CAMP-UPDATE
Otherwise, JOIN-REQUEST packet is sentOtherwise, JOIN-REQUEST packet is sent
JOIN-ACK receivedJOIN-ACK received
Receiver nodes periodically reviews packet Receiver nodes periodically reviews packet cache to determine whether it is receiving cache to determine whether it is receiving data packets from those neighbors are on data packets from those neighbors are on the reverse shortest paththe reverse shortest path
Nodes periodically choose their “anchors”Nodes periodically choose their “anchors”
ODMRP: FeaturesODMRP: Features
A Mesh-Based & On-Demand protocolA Mesh-Based & On-Demand protocol
Forwarding group conceptForwarding group concept– A group of nodes participating in A group of nodes participating in
multicast packet forwardingmulticast packet forwarding
Robustness to host mobilityRobustness to host mobility
Scalability to large number of nodesScalability to large number of nodes
Provide path redundancyProvide path redundancy
Join table, Member tableJoin table, Member table
ODMRP – Protocol OverviewODMRP – Protocol Overview
Join tableJoin table– The table broadcasted by each multicast The table broadcasted by each multicast
receiver and forwarding node to establish / receiver and forwarding node to establish / update group memberships and routesupdate group memberships and routes
Member tableMember table– The table maintained by multicast receivers The table maintained by multicast receivers
containing information of multicast sources containing information of multicast sources for each multicast group it is associated withfor each multicast group it is associated with
Suffers from excessive control packet Suffers from excessive control packet transmission overheadtransmission overheadControl PacketsControl Packets– JOIN-REQ, JOIN-TABLEJOIN-REQ, JOIN-TABLE
s r
ij
k
m
n
s | i
State MaintenanceState MaintenanceUnconstrained stateUnconstrained state– Both member and non-memberBoth member and non-member
Constrained state Constrained state – Through abstraction via application-Through abstraction via application-
layer multicasting layer multicasting – By aggregation via hierarchical By aggregation via hierarchical
multicastingmulticasting
Zero stateZero state– No state information is maintainedNo state information is maintained
Location Aided MulticastingLocation Aided Multicasting
ODMRP ODMRP – can utilize location and mobility can utilize location and mobility
information to estimate route lifetimeinformation to estimate route lifetime
Position Based Multicasting (PBM)Position Based Multicasting (PBM)– Greedy forwardingGreedy forwarding– Perimeter forwardingPerimeter forwarding
Gossip-based MulticastingGossip-based Multicasting
Anonymous Gossip (AG)Anonymous Gossip (AG)
Route Driven Gossip (RDG)Route Driven Gossip (RDG)
Anonymous GossipAnonymous GossipEnhancement technique atop any Enhancement technique atop any tree- or mesh-based protocoltree- or mesh-based protocolA member node does not know any A member node does not know any other member nodesother member nodesTwo phasesTwo phases– Data packets are multicast to the groupData packets are multicast to the group– Anonymous gossip in the background: Anonymous gossip in the background:
attempt to recover lost data packets attempt to recover lost data packets from other group membersfrom other group members
Route Driven Gossip (RDG)Route Driven Gossip (RDG)
Rely on an underlying unicasting Rely on an underlying unicasting protocol for guidanceprotocol for guidance
CSMA/CA MAC (e.g., IEEE 802.11) CSMA/CA MAC (e.g., IEEE 802.11) provides reliable, sequenced single-provides reliable, sequenced single-hop unicast by RTS/CTShop unicast by RTS/CTS––Data/Ack Data/Ack handshake sequencehandshake sequence
Data packets, digests of missing packets, view
RDG: Data Structures and OperationsRDG: Data Structures and Operations
1
30
2
Data Structures
Operations
Identifier
Group identifier
View
• active
• passive
• remove
Data buffer
• new
• old
JOIN
RECEIVEGREQUEST
RECEIVEGREPLY
GOSSIP
RECEIVEGOSSIP
LEAVE
5
45
0
0
5
1
5
0
1
0
5
1
1
0
fanout
Fquiescence threshold
τqPullPush
BroadcastingBroadcasting
Important building block for on Important building block for on demand route discoverydemand route discovery
CategorizationsCategorizations– Simple floodingSimple flooding– Probability based broadcastingProbability based broadcasting– Area-based broadcastingArea-based broadcasting– Neighbor knowledge based broadcastingNeighbor knowledge based broadcasting
Self pruningSelf pruningInformation:Information:– Hello message (1-hop)Hello message (1-hop)– Piggyback adjacent node list in broadcast Piggyback adjacent node list in broadcast
packetspackets (2-hop)(2-hop)– Store adjacent node list in cacheStore adjacent node list in cacheForwarding node decision:Forwarding node decision:– Node Node vvjj who receives the packet from who receives the packet from vvii checks checks
whether the set whether the set NN((vvjj)-N()-N(vvii)-{)-{vvii} is empty} is empty
vi vj
GeocastingGeocasting
Group membership is defined by Group membership is defined by geographical coordinatesgeographical coordinates
Suitable for delivering messages to Suitable for delivering messages to every node in a specific areaevery node in a specific area
ExamplesExamples– Flooding based geocastingFlooding based geocasting– Route based geocastingRoute based geocasting
LBM: Flooding based GeocastingLBM: Flooding based Geocasting
Scheme IScheme I
LBM: Flooding based GeocastingLBM: Flooding based Geocasting
Scheme IIScheme II
Route Based Geocasting: GeoTORARoute Based Geocasting: GeoTORA
Based on TORABased on TORA– Temporally Ordered Routing AlgorithmTemporally Ordered Routing Algorithm– Destination-orientedDestination-oriented directed acyclic directed acyclic
graphs (DAGs)graphs (DAGs)– Uses “Link-Reversal” techniques to Uses “Link-Reversal” techniques to
maintain DAGsmaintain DAGs
GeoTORAGeoTORA– Modify TORA to do anycastingModify TORA to do anycasting– Modify further to do geocastingModify further to do geocasting
TORA – Link ReversalTORA – Link ReversalWhen a node has When a node has nono downstream links, it downstream links, it reversesreverses the direction of one or more links the direction of one or more links
A
C
E
D
F
G
B
A
C
E
D
F
G
B
A
C
E
D
F
GA
C
E
D
F
G
B B
Anycasting with Modified TORAAnycasting with Modified TORA
In GeoTORA, the TORA protocol is modified In GeoTORA, the TORA protocol is modified to be able to perform anycastto be able to perform anycast– AnycastAnycast - deliver to - deliver to any oneany one node in the node in the anycast anycast
groupgroup– ProtocolProtocol
Maintain a DAG for Maintain a DAG for eacheach anycast groupanycast groupMake each member of the anycast group a Make each member of the anycast group a sinksinkNo logical direction for links between sinksNo logical direction for links between sinksFollowing the directed links results in packets being Following the directed links results in packets being delivered to delivered to any oneany one sinksink
Anycasting ExampleAnycasting Example
Anycast group = {A, B, C, D},DAG structure for the anycast group
A
C
E
D
F
G
B
J
K L
A
C
E
D
F
G
B
J
K L
A
C
E
D
F
G
B
J
K L
Geocasting using Modified AnycastingGeocasting using Modified Anycasting
Small variation on the previous Small variation on the previous anycastinganycasting– All nodes within a specified All nodes within a specified
geocasting region are made sinksgeocasting region are made sinks– Maintain a single DAG for a given Maintain a single DAG for a given
geocast groupgeocast group– Source first performs an Source first performs an anycastanycast
to the geocast group membersto the geocast group members– When a group member receives When a group member receives
a a packet, it packet, it floodsfloods it within the it within the geocast region geocast region
Geocast Region
A
C
E
D
F
G
B
J
K L
Common IssuesCommon Issues
ReliabilityReliability
Energy efficiencyEnergy efficiency
Qualify of serviceQualify of service
SecuritySecurity
ReliabilityReliability
Clustering structure + Clustering structure + acknowledgement along reversal acknowledgement along reversal pathpath
Probabilistic reliabilityProbabilistic reliability– RDG approachRDG approach
Reliable MAC supportReliable MAC support– BMW protocolBMW protocol
Energy Efficiency: RoutingEnergy Efficiency: RoutingWireless transmissions are major Wireless transmissions are major energy consumersenergy consumersProtocols attempt to reduce Protocols attempt to reduce forwarding set of nodesforwarding set of nodesBroadcast Incremental Power (BIP) Broadcast Incremental Power (BIP) protocolprotocol– Add new node one at a timeAdd new node one at a time– Increment transmission power to add Increment transmission power to add
one new nodeone new node
Energy Efficiency: MACEnergy Efficiency: MACReception and idle-listening also Reception and idle-listening also major energy consumersmajor energy consumersPower aware MACPower aware MACExample: PAMAS MACExample: PAMAS MAC– Separate signaling channelSeparate signaling channel– Turn off nodes when appropriate Turn off nodes when appropriate – Overhear RTS/CTS to determine when to Overhear RTS/CTS to determine when to
sleep, for how long, sleep, for how long, – What to do if destination node is asleep?What to do if destination node is asleep?
Energy Efficiency: Wakeup Energy Efficiency: Wakeup Mechanisms Mechanisms
On-demand wakeupOn-demand wakeup– Use a wakeup toneUse a wakeup tone
Scheduled wakeupScheduled wakeup– Require synchronization among nodesRequire synchronization among nodes
Asynchronous wakeupAsynchronous wakeup– Guaranteed overlap active time over a Guaranteed overlap active time over a
certain durationcertain duration
Quality of ServiceQuality of ServiceA set of measurable service attributesA set of measurable service attributes– Bandwidth, delay, loss rateBandwidth, delay, loss rate– Power consumption, service coveragePower consumption, service coverage
QoS support are desirable in various QoS support are desirable in various applicationsapplications
Resource limitation and variability add to Resource limitation and variability add to the need of QoS supportthe need of QoS support
QoS aware group comm. Remains an open QoS aware group comm. Remains an open problemproblem
SecuritySecurityBroadcast medium is more prone to active Broadcast medium is more prone to active and passive attacksand passive attacks
Dynamic nature of Manet adds to the Dynamic nature of Manet adds to the challengeschallenges– Lack of trusted centralized infrastructureLack of trusted centralized infrastructure– Ad hoc linkAd hoc link– Group comm. models are differentGroup comm. models are different– Light weight requirementLight weight requirement
Also an open problemAlso an open problem
Concluding RemarksConcluding Remarks
Group Communication is essential for Group Communication is essential for ad hoc networksad hoc networks
More efforts are neededMore efforts are needed– MACMAC– TransportTransport– QoSQoS– SecuritySecurity