w. chen*, a.k.m.m. islam**, m. malkani*, a. shirkhodaie*, k. wada**, m. zein-sabatto*
DESCRIPTION
Lecture 3-2: Networking Architecture, Routing Protocols and Algorithms. Novel Broadcast/Multicast Protocols for Dynamic Sensor Networks. W. Chen*, A.K.M.M. Islam**, M. Malkani*, A. Shirkhodaie*, K. Wada**, M. Zein-Sabatto* * Tennessee State University, USA - PowerPoint PPT PresentationTRANSCRIPT
W. Chen*, A.K.M.M. Islam**, M. Malkani*, A. Shirkhodaie*, K. Wada**, M. Zein-Sabatto*
* Tennessee State University, USA** Nagoya Institute of Technology, Japan
Novel Broadcast/Multicast Protocols for Dynamic Sensor Networks
Novel Broadcast/Multicast Protocols for Dynamic Sensor Networks
Lecture 3-2: Networking Architecture, Routing Protocols and Algorithms
International Parallel and Distributed Processing Symposium, 2007
Basics in Wireless Sensor Networks (WSNs) Review of Broadcast/Multicast Protocols Proposed Broadcast/Multicast Protocols on
Dynamic WSNs Network Reconfiguration Latency/Energy Analysis and Simulation Summary and Future Work
CONTNETSCONTNETS
• A WSN consists a large number of sensor nodes which are deployed in a large area.
• Inexpensive sensor nodes have limited capabilities in power supply, communication and processing, and they experience failures frequently.
• Communication is in ad-hoc manner.
• Network is dense: overlap and collision in control and communication
• Communication patterns are specific: one-to-many (broadcast/multicast), many-to-one (data gathering)
• Network topology is dynamic: topology self-reconfiguration is necessary
• Tasks need to be self-organized without global centralized control for scalability.
Autonomous tracking in Sensor Network
Basics in A Wireless Sensor NetworkBasics in A Wireless Sensor Network
Problem Statement Problem Statement
Develop time and energy efficient protocols and algorithms for broadcast, Multicast, and Data-gathering on a dynamic sensor network.
Objectives: Maximize the network throughput in Broadcast/multicast
and data gathering Minimize the energy consumption for extending network
life time Enable network self-reconfiguration for dynamic topology
changes
Model of A Flat (unstructured) Sensor NetworkModel of A Flat (unstructured) Sensor Network
All nodes use a single radio channel
Each node has a distinct ID number and it has no any network knowledge
Each node repeats transmission or reception and performs its local computation in a fixed interval, called round. In each round, a node acts as either a transmitter or a receiver.
Nodes have no collision detection
Review of Broadcast/Multicast ProtocolsReview of Broadcast/Multicast Protocols
On Unstructured Networks Without network knowledge: With whole network knowledge:
rounds (n)
network theofdiameter theis
rounds, )log(),(log 52
L
nLOn
A sensor network
On Hierarchical Networks O(n) to for clustering
and construction of cluster-based network
rounds when there are p clusters using depth-first order on backbone
(J. Uchida and others, 2006)
Extra cost for structure maintenance
24 p
rounds )( 2nO
r
memberheadgateway
Cluster-based network
r
member
gateway
There are Trade-offs between communication and network reconfiguration
Results of This paperResults of This paper
Time and energy efficient broadcast and multicast protocols based on collision-free flooding on a cluster-based sensor network
Self-reconfiguration algorithm for a cluster-based network
Theoretical analysis and simulation
Generalization of the proposed protocols to data gathering.
Broadcast Using Flooding: Good or Bad? Broadcast Using Flooding: Good or Bad?
memberhead
gateway
Cluster-based network
member
gateway
sourceBroadcast Based on Depth-First Order
(J. Uchida and others, 2006)
• Broadcast completes in 4p-2 rounds
• Each node is awake until its children finish broadcast.
• Broadcast stops if node/link failure happens.
A sensor network
Broadcast using flooding causes broadcast storm problem !
Broadcast Based on Collision-Free Flooding
• Using TDM to avoid collision
• Each node needs to be awake in a short time
• Broadcast is more robust: even node/link failure happens, broadcast will still continue.
2 1 2
v
x y z2 1 2
v
x zx z
TDM: Every node v can receive the broadcast message from at least one node.
Broadcast Using Flooding: Good or Bad? - Contine
Broadcast Using Flooding: Good or Bad? - Contine
Broadcast Algorithm Using Collision-Free FloodingBroadcast Algorithm Using Collision-Free Flooding
CNet(G): Spanning tree of G consisting of clusters and the backbone, where
m: broadcast message
v.time-slot: time-slot assigned to node v
: largest time-slot assigned in CNet(G)
Algorithm CollisionFreeFlooding(CNet(G), ,m) Root r : transmits package (m, r.time-slot, ,0) at its time-slot r.time-slot, Other node v: Assume that v’s depth is i+1. If v is a backbone node received package (m, t, , i), v wait rounds, and then transmits (m, v.time-slot, ,i+1) at its time-slot v.time-slot.If v is a leaf, it receives m and do nothing.
t
Time and Energy Consumption: By using CNet(G) and TDM time-slots, (1) A broadcast can be completed in rounds, h is the height of CNet(G),
and(2) In the broadcast, each node needs to be awake in rounds.
)1( h
2
1
1 2
211 2
21
1 23
3
Broadcast Algorithm Using Collision-Free Flooding -- Improvement
Broadcast Algorithm Using Collision-Free Flooding -- Improvement
Observation: Backbone is relative sparse –the TDM time-slots needed for the broadcast on backbone will be much smaller. Therefore, algorithm can be changed to
Step 1: Broadcast the source message on the backbone using b-time-slot .
Step 2: Heads transmit the source message to its members using l-time-slot .
Time and Energy Consumption: By using CNet(G) and TDM time-slots, (1) A broadcast can be completed in rounds, where h is the height of
CNet(G), and(2) In the broadcast, each node needs to be awake in rounds.
)1(h
2
Time and Energy Consumption with k-channels: By using CNet(G) and TDM time-slots, if k channels are available,
(1) A broadcast can be completed in G in rounds, where h is the height of CNet(G), and
(2) In the broadcast, each node needs to be awake in rounds.
kh /))1((
k/)2(
1
1 2
211 2
21
1 23
3
3
2
From Broadcast Protocol to Multicast ProtocolFrom Broadcast Protocol to Multicast Protocol
Structure of MCNet(G):
At each backbone node, there are two lists: (group-list) and [relay-list]
(1) (1) (1) (1) (1) (1) (1) (1)
(1,2)[1,2]
(1,2) (1) (2) (1) (1) (2) (2) (2) (1)
(1,2) (1) (1,2) (2)
(2)[1,2]
(1,2)[1] (1)
[2]
(1,2)[1,2]
(2)(1,2)[1]
(1,2)[1,2]
(1)[1]
(1)[1]
vu
(1) (1) (1) (1) (1) (1) (1) (1)
(1,2)[1,2]
(1,2) (1) (2) (1) (1) (2) (2) (2) (1)
(1,2) (1) (1,2) (2)
(2)[1,2]
(1,2)[1] (1)
[2]
(1,2)[1,2]
(2)(1,2)[1]
(1,2)[1,2]
(1)[1]
(1)[1]
vuMulticast on group p
• Broadcast source massage using Collision-Free Flooding.
• A node will stop relay if the group ID is not included in its group-list.
Network Initialization and ReconfigurationNetwork Initialization and Reconfiguration
r
memberheadgateway
Cluster-based network
r
member
gateway
Each node’s knowledge (1) 1-hop information:
• Node’s status: head, member, gateway
• If the node is a member, it knows its head.
• If the node is a head, it has a member-list.
• If the node is the node on the backbone, it has a backbone-neighbor-list.
• TDM time-slots: b-time-slot and l-time-slot.
(2) Root knows the largest b-time-slot
Operations used for network initialization and reconfiguration• Node-joining
• Node-leaving
r
new
)(GCNet
memberheadhead
Change to gateway
Node-Joining Operation
Update 1-hop information in expected O(log d) rounds:• update status• update member-list• update backbone-neighbor-list
headGateway
new
w
new
w
u
Case 1: new’s parent w is an internal node of CNet(G). w will have a new leaf of new, w has to update its l-time-slot.
Case 2: new’s parent w is a leaf of CNet(G). w will have a new leaf new, w will change to an internal node, and w’s parent u will have a new internal node w. w has to update its l-time-slot, and u has to update its b-time-slot and l-time-slots.
• Update TDM time-slotsNode-Joining Operation – Continue
Calculate-b-time-slot (l-time-slot) (CNet(G), y)(1) Node y sends a request to ask the nodes of C(y) sending their b-time-slots
back in turn. (2) When node v in C(y) receives the message, it checks the b-time-slots at the
nodes of P(v). If v can find two distinct b-time-slots which are different from those of the others in P(v), v sends back nothing.
Otherwise, v packs all different b-time-slots at the nodes of P(v) and send them back to y at v’s turn.
(3) When y receives the b-time-slots from the nodes of C(y), y selects the minimum positive integer which is different from all received b-time-slots and set it to be y’s b-time-slot.
(4) y sends its b-time-slot back to the root.
y
v
P(v)
C(y): cnnected with y from next level
• Update TDM time-slotsNode-Joining Operation – Continue
• Calculate y’s b-time-slot in rounds d
Node-Joining Operation – Continue
Worst Case Analysis • In node-joining operation, TDM time-slots: d-time-slot and l-time-slot can be updated in rounds.
• , where
d is the largest degree of backbone nodes, and D is largest degree of member nodes.
is the largest b-time-slots, and is the largest l-time-slots
hd 2
)1(2 and )1(2 DDdd
Simulation shows that the worst cast seldomly happen!
Time and Energy Consumption in Broadcast: By using CNet(G) and TDM time-slots,
(1) A broadcast can be completed in rounds, where h is the height of CNet(G), and
(2) In the broadcast, each node needs to be awake in rounds.
)1(h
2
Simulation Simulation
0
5
10
15
20
25
30
35
1 2 3 4 5
number of nodes
Deg
rees
and
tim
e sl
ots
D dΔ δ
100 200 300 400 500
Simulation Model• a cluster-based WSN with the scales of 8×8 units, 10×10 units and 12×12 units, where each unit is 100 meters. • Communication range of a node is 50 meters.• Number of nodes used for testing varies from 64 to 720.
(1) Comparison of the largest degree and largest TDM time-slot
Simulation - ContinueSimulation - Continue
100 200 300 400 5000
100
200
300
400
500
600
1 2 3 4 5
number of nodes
num
ber
of r
ound
s
rounds by CFF Broadcastrounds by DFO Broadcast
100 200 300 400 500
(2) Latency of the broadcast based on depth-first-order (DFO) and collision-free-flooding (CFF)
0
100
200
300
400
500
600
1 2 3 4 5
number of nodes
roun
ds to
be
awak
e
Rounds to be awake for CFFRounds to be awake for DFO
100 200 300 400 500
(3) Energy consumption of the broadcast based on depth-first-order and collision-free-flooding
Summary and Future WorkSummary and Future Work
Summary Time and energy efficient broadcast and multicast
protocols using collision-free flooding Algorithms for reconfiguration of a cluster-based
network Theoretical analysis and simulation
Future Work Revise the broadcast/multicast protocols for Data
gathering (Assign TDM time-slot in opposite direction)
Relax synchronization Add more functionalities for network
reconfiguration:
-- Network split and network merge
2 1 22 1 2
Broadcast
1 2 3 1 3 2 4
Data gathering
Homework & Assignment
•Revise the broadcast/multicast protocols for Data gathering (Assign TDM time-slot in opposite direction). How to solve the problem that more and more data need to be relayed back?
•Relax synchronization.
•Add more functionalities for network reconfiguration:
-- Network split and network merge