Title: Self Configuring
1Self Configuring Self Organizing Protocols
2Outline
- Background.
- Taxonomy of Sensor Network Applications.
- Policy Decisions Assumptions for the
self-configuring architecture. - Terminology used.
- Architecture for the self-configurable systems.
- A Self-Organizing algorithm and its analysis.
- References.
3Background
4Background
- Why do we need self-organizing protocol?
- Wireless Sensor Networks are used in
applications where - They are deployed in large numbers (hundreds or
thousands of sensor nodes). - They are deployed in remote/hostile environment.
- Systems in which sensor nodes need to
self-organize themselves into a network belong to
the class of self configurable systems.
5Terminology
6Terminology
- Sensor Motes
- Sensor node that performs data discovery
- Sink Node
- Node with high processing capabilities and high
capacity for data storage - Specialized Sensor
- Sensor that performs specific data discovery
operation (e.g. temperature sensors) - Router Sensor
- Router sensor collects and transmits data to
neighbors
7Terminology
- High-End System
- Sink node
- 2-Connected Graph
- Topology in which there are two edge disjoint
paths from every node to every other node - Broadcast Graph
- Subset of edges in the network used for
broadcasting data - Directed Acyclic Graph (DAG)
- Graph with directed edges and no cycles
8Taxonomy of Sensor Network Applications
9Taxonomy of Sensor Network Applications
- Classifying sensor network applications
- Important Factors
- Size of the system number of sensors used
- Determine effort needed to configure the system
- Maximum distance of the sensors to the wired
infrastructure - Determines the amount of intelligence required at
a sensor for routing to specific high processing
nodes - Distribution of the sensor nodes
- Deterministic administrator controls placement
of sensor nodes and user performs remedial
operations in case of faults - Non-deterministic fault-tolerance level depends
on number of sensors deployed
10Taxonomy of Sensor Network Applications
- Three classifications of sensor network
applications - Non-propagating systems
- Sensor nodes are one hop to wired infrastructure
- Wired infrastructure is the main connecting
component - Nodes connected to the wired infrastructure route
information to the end system
11Taxonomy of Sensor Network Applications
Wired Nodes
12Taxonomy of Sensor Network Applications
- Deterministic routing systems
- Sensor nodes route through a few hops to reach a
wired infrastructure - Routes to the wired infrastructure are
deterministic - Number of nodes in this system may be restricted
13Taxonomy of Sensor Network Applications
14Taxonomy of Sensor Network Applications
- Self-configurable systems
- Sensor nodes need to self-organize into a network
- As long as the number of nodes in the system is
small the systems are deterministic. - But when the number of nodes increase the systems
become non-deterministic systems and they need to
be self-configurable.(e.g. Security and Parking
Lot networks) - Fault tolerance is achieved through
re-configuring the system in the presence of new
node and link failures
15Taxonomy of Sensor Network Applications
16Taxonomy of Sensor Network Applications
- Non-Aggregating
- Independent data
- Transmitted separately
- E.g. parking-lot systems
- Aggregating
- Data aggregating and transmitted along the
network. - E.g. weather applications
-
- Self-configuring sensor networks should include
the functionality of performing aggregation too.
17Policy Decisions Assumptions for the
Architecture of Self-configuring systems
18Policy Decisions Assumptions
- Heterogeneous nodes
- Architecture should provide a common framework
- Data Discovery Data Dissemination
- Two orthogonal components
- Nodes that perform data discovery
- Nodes that perform data dissemination
19Policy Decisions Assumptions
- Memory and Power Constraints
- All nodes have memory and power constraints
- Attempt to reduce state stored at every node
- Employ energy aware routing
- Application Specific Infrastructure Requirements
- Infrastructure components is dependent on
application - Provide a wide variety of features to allow the
application to make use of what is required
20Policy Decisions Assumptions
- Mobility/Immobility of nodes
- Data discovery nodes are mobile
- Data dissemination nodes are stationary
- Previous Works
- Multi-functional nodes
- Cost more to implement
- Routing in highly specialized nodes wasting
energy - Storage of mass information
- Data-Centric Networking
- Critical nodes need to keep large amounts of
state information - Cut nodes can cause the data to be lost
21Policy Decisions Assumptions
- Self-Configurable systems require one or more of
the following - Naming/Addressing System
- Routing
- Required to pass information to sensors with
specific functionality - Unique addresses to every node required
- Broadcasting
- Required to pass information to every sensor in a
network (e.g. a wakeup message to all nodes in a
security network) - Multicasting
22Main Contribution of the Algorithm
23Main Contribution of the Algorithm
- Scalability
- Every node has a O(log n) bit unique identifier
- Reduction of State and Localized Operations
- Maintain O(log n) O(N(v)) state information
at each node - N - of nodes
- V current node
- N(v) - of neighboring nodes of v in network
24Main Contribution of the Algorithm
- Power Efficiency and Reliable Paths
- Keeps track of the power requirements at every
node to compute reliable and power efficient
paths - Hierarchical Routing Architecture
- Nodes reorder themselves in a hierarchical
structure - Size of routing table is reduced to O(log n) at
every node
25Main Contribution of the Algorithm
- Fault-Tolerant Broadcast Trees
- Local Markov Loops (LML) technique is used to
achieve fault tolerance - Reduce Frequency of Updates
- Define discrete power levels to reduce the number
of dynamic cost updates that need to be performed
in the network
26ComponentsInfrastructure
27Components
- Sensors
- Specialized
- Identifies itself with a class
- Can communicate with other sensors either of its
own class or with some other class - Can be Mobile
- Routing
- Form the backbone of the sensor network
- Immobile
- Performs data-dissemination
28Components
- Advantages
- Separation of dissemination and discovery
- Shorter network hops reduces power consumption
- Cost decreased routing sensors are not
specialized and may cost less - Large amounts of routers can increase the fault
tolerance of the system
29Components
- Other components
- Sink Nodes
- High storage capacity high processing power
- Can connect to WAN
- Can activate specific actuators (through
messaging) and broadcast important messages into
the sensor net. - Aggregator Nodes
- Nodes with the functionality of aggregation can
be introduced in router nodes or specialized
nodes - E.g. In weather monitoring application
aggregation functionality is placed on all router
nodes
30Infrastructure Components
- Functionalities provided by this architecture
- Unique address for all nodes
- Routing information between two nodes
- Fault-Tolerant broadcasting infrastructure
- Broadcasting information within a certain radius
- Multicasting information to specialized nodes
- Self-reorganization in the face of node failures
and network partitions
31Infrastructure Components
- Scenarios in which these components are used
- Security Sensors
- Unique Addresses to pass critical information to
that sensor - Routing Architecture to send messages to sink
nodes - Multicasting infrastructure to coordinate actions
of specialized sensors of a particular class - Broadcast infrastructure to alert all nodes
within a radius to prepare to perform important
actions
32Infrastructure Components
- Parking-Lot Networks
- Unique Addressing to isolate a particular node
controlling a particular spot - Routing Infrastructure for routing messages
- Broadcast Infrastructure not generally required
but may be utilized
33Infrastructure
- Addressing Infrastructure
- If non-addressable nodes (e.g. traffic monitoring
along a highway) - Self-configurable systems is an aggregating
system - If addressing required - Local Unique Addressing
- IP not appropriate global unique addressing
- An alternative solution
- An alternative solution for addressing - MAC
Layer - Ensure that every node has a unique MAC address.
34Infrastructure
- Routing Infrastructure
- Specialized nodes must be adjacent to a router
- Transmits all messages to adjacent router with a
message header - Indicates which node(s) to transmit the message
to (whether to one node or broadcast or
multicast) - Router acts as the proxy for the specialized
node(s) i.e. every specialized node is addressed
with the help of a router node.
35Infrastructure
- Broadcast and Multicasting Infrastructure
- Sensor networks are more data centric
- Require broadcasting and multicasting of data to
all or groups of sensor nodes - Fault Tolerant Broadcast tree is created
- Changes developing Local Markov Loops (LML)
- Directed Acyclic Graphs (DAG) are used to support
fault tolerance in paths - Participants
- Router sensors self-configure
- Specialized sensors keep track of the nearest
router sensors
36Self-Organizing Algorithm
37Self-Organizing Algorithm
- Phases of the algorithm
- Discovery Phase
- Organization Phase
- Maintenance Phase
- Self-Reorganization Phase
38Discovery Phase
- Each node discovers its set of neighbors and
fixes its maximum radius of data transmission - Criteria
- Nodes should not have too many neighbors
- Specialized nodes n(x) 1
- Router nodes, n(x) gt 1
- where n(x) is the number of neighbors for node x
- Maximum bound on transmission radius
- Each node x picks a small radius r and broadcasts
a Hello message indicating whether it is a router
or a special node
39Discovery Phase
- Every node within radius r replies back with a I
am Here message and their coordinates (determined
by GPS) - If of replies lt minimum threshold n(x), x
broadcasts Hello over radius kr, for k gt 1 - Repeat until of nodes N that replies satisfies
- n(x) ? N ? N(x) where n(x) and N(x) denote the
min and max number of neighbors to node x. - Note that specialized nodes are only connected to
routers only.
40Discovery Phase
Hello
r
41Discovery Phase
I am here
r
42Discovery Phase
Hello
kr
43Discovery Phase
I am here
kr
44Organization Phase
- Network is organized as follows
- Nodes are aggregated into groups
- Groups are aggregated into larger groups to form
a hierarchy of groups which is height balanced - Each node is allocated an address based on its
position in the hierarchy - A routing table of O(log n) is computed for each
node - A broadcast tree and graph spanning all nodes is
constructed - Graph is converted into a DAG based on the source
node in the network
45Organization Phase
- Group formation
- Routers form small basic groups with neighbors
found - Group size is restricted to 8 and each node in a
group is allocated a 3-bit address. - Each node belongs to one basic group
- Each node maintains the distance and the next hop
for reaching every other node in the group - If a node is unable to join a group
- It forms a one node group with address 000
- ? is the height difference parameter.
46Organization Phase
- Merging of Groups
- Assume 2 groups G1 and G2 with m n bit
address. For the formation of hierarchy set the
value of ? to 3 equal to the height of a basic
group. - If m-n ? ? the G1 and G2 are merged to G with
- 0 appended to all node addresses in G1
- 1 appended to all node addresses in G1
- If m-n gt ? then
- Consider node x in G1 with address (x1, x2, xm)
- Consider subgroup Hi in G1 with 1st i bits equal
to (x1, x2, xi) for i ? m-n-1. - All nodes in Hi are connected.
47Organization Phase
- Find if Hm-n-1 has a sub-branch where G2 can be
added to hierarchy without affecting Height of
Hm-n-1 or G2. - If not able to merge them at any value of i, then
merge them according to the 1st method and mark
the new graph as height imbalanced. - A boundary node is a node that connects to a node
in another group -
48Organization Phase
- Formation of hierarchy
- Each Group G receives an advertisement from
adjacent groups through its boundary nodes - Broadcast throughout the group
- Contains size of adjacent group ( of address
bits) - Each node concludes on an adjacent group G
- G closest in size to G.
- G has the maximum number of boundary nodes.
- then node of G sends a join message to G.
- If G decides to join G, the groups merge
- Otherwise G selects the next best group H
49Organization Phase
- Continue until all groups merge into one
- At any point, If a group is heavily imbalanced,
then the group is reorganized with an increased
value of ?new ?old 1 - Theorem 1 Height of the hierarchy of the network
will be O(log n) where n is the number of nodes
in the graph
50Organization Phase
- Perform group reorganization if necessary
- If height is unbalanced at multiple levels,
reorganize - Group is broken into sub-groups
- Regroup without affecting the state of the rest
of the network - Some routing tales of nearby nodes will have to
change addresses of neighbors - Generate addresses for all nodes
- To give a general picture, if ? 3, then every
node in a network of 10000 nodes will have a 16
bit address.
51Organization Phase
- Routing table generation
- Let every node have a m-bit group address
- (x1,xm) is the m-bit address of a router node x
- x maintains the least cost and next hop in the
shortest path to the following destinations - x1, (x1, x2),,(x1,,xm-1,xm)
- E G., Let m 4, x address 0011
- Groups 1, 01, 000, and 0010 are maintained in the
routing table for x - routing table of O(m) at each node
52Organization Phase
- Broadcast Trees and Graphs
- Broadcast graphs are intended to provide multiple
paths from the source - adding fault tolerance to the system
- They are converted to DAG from the source
- to remove any loops
- To reduce power consumption
- Certain links are indicated as primary and rest
as secondary - Broadcast messages are sent through broadcast
links - Only secondary links follow a 3-way handshake
mechanism
53Organization Phase
- Broadcast Tree and Graph formation
- After basic group formation, a broadcast tree and
graph are constructed - Some nodes are labeled as primary nodes. They
form the broadcast tree - After group merge (G H), two low cost edges
(e1, e2) are selected that connect G and H - Let B(G), B(H), T(G), T(H) be broadcast graphs
and trees of G and H - Let cost(e1) lt cost(e2)
- Let P be the merged group
- B(P) B(G) ? B(H) ? (e1, e2)
- T(P) T(G) ? T(H) ? (e1)
54Organization Phase
- Theorem 2 The power consumed for broadcasting
messages using this approach is - (n-1)E nE/2
where - E is the mean power consumed for sending a long
message along one hop - E is the mean power consumed for sending a
request/ACK short message along one hop and - n is the number of nodes in the network
- The SPIN protocol consumes (n-1)E 2eE..where
- e is the number of edges in the graph
- (n-1)E is the lower bound for broadcasting
55Organization Phase
- E.g., Sensors separated by 10 meters
- It takes 150nJ per bit transmitted
- 170nJ per bit received
- 1 request/ACK requiring 8 bytes
- E 20480nJ, in a network of 1000 nodes with
average connectivity of 12 - Berkleys self-organizing algorithm requires an
extra 10mJ - SPIN requires an extra 240mJ
- Hence our algorithm saves by a factor of 24.
56Maintenance Phase
- Active monitoring
- Each node keeps track of its stored energy and
constantly sends I Am Alive message to neighbors
every 30 seconds - If a node does not receive a reply in 6
consecutive intervals it sets the link as dead
and reorganizes - Passive monitoring (energy saving)
- A node sends an activate message to its neighbors
only on demand and Alive nodes respond with a ACK
57Maintenance Phase
- Routing Metrics
- Delay is not considered important in sensor
networks - Perhaps not true in cases of security and maybe
even weather patterns - Goal Keep network alive for a maximum amount of
time
58Maintenance Phase
- Two Greedy metrics suggested
- Always route along the path that has the minimum
energy consumption per bit of information
transmitted - Always transmit along the path that has the
maximum capacity measured in terms of bits that
can be transmitted - Capacity of the link between nodes A and B is
given by, min(E(A)/E,E(B)/E), where E(A) and
E(B) are the energies at A and B respectively and
E and E are the energy consumed by A and B
transmitting from A to B.
59Maintenance Phase
- Maintaining Routing Tables
- Nodes inform their neighbors of their routing
tables and their energy levels to their
neighboring nodes (cost metric) - Count to infinity problem can be avoided by using
the next hop entry for updating the routing table
entry for a particular destination group - Maintaining Broadcast Infrastructure
- Must detect node failures in advance by
monitoring power requirements of a node - Only failures detected are those do to power
failure
60Maintenance Phase
- Fault tolerant broadcast trees and graphs are
maintained using LML - Node that is going to fail is a leaf node
- Therefore, does not have any nodes to broadcast
to - If node u is going to fail
- Consider all edges (u,v)
- Construct a LML by selecting a random edge (w,x)
s.t. the edge (u,v) is part of a local loop
formed by adding the edge (w,x) to the tree - Remove (u,v) from the tree
- New tree with degree of u reduced by 1
- Continue until u becomes the leaf node
61Reorganization Phase
- Detection of group partitions or node failures
- Update routing table based on new topology
- When all neighbors of a node fail
- Node repeats discovery phase
- When group partitions occur
- Sub groups reorganize and join
- Reorganization ensures hierarchy is balanced
- Group and node discoveries are considered very
rare
62Reorganization Phase
- Re-organization
- Node Failures
- Every neighbor of the node updates all the
entries in their routing table where the next hop
is the failed node - Link Failures
- The routing table is changed accordingly at both
nodes - If the edge is a primary edge, the secondary edge
becomes primary and local loop is performed to
find an alternate edge - Group Partitions
- Disconnected pieces are reorganized into new
groups and merge with other neighboring groups - Address of all the nodes in the groups change
63Analysis of Algorithm
- Node Rediscovery
- Initial radius is set to the previous maximum
radius of connectivity - Strengths
- Hierarchy formed by algorithm is strictly
balanced - Max difference between the left subtree and right
subtree at any level is strictly les than or
equal to ? - Routing state maintained at any router is O(log
n) - Broadcast graph (2-connected) is incrementally
computed
64Analysis of Algorithm
- LML performs a random walk on spanning trees of a
graph providing tolerance to node and link
failures - Broadcast graph can be oriented as a Directed
Acyclic Graph from any node in a unique manner. - The property that every specialized sensor
attaches to some router sensor allows these
sensors to be mobile
65Analysis of Algorithm
- Weaknesses
- Initial Organization phase and not on-demand
organization - Forming a hierarchy in cases where there are a
lot of cut nodes in the network increases the
probability of applying reorganization - Protocol required for transmitting data from one
node to another node is not addressed - Broadcast trees and graphs maintenance in the
presence of failures undetected prior to failure
is not addressed
66References
67References
- S Subramanian, L. and Katz, R., An
Architecture for Building Self-Configurable
Systems, Dept. of EECS, U. C. Berkeley, 2000,
pp. 63-73. - C. Chevallay, R. E. Van Dyck, T. A. Hall,
Self-Organizing Protocols for Wireless Sensor
Networks, NIST Gaithersburg, MD, 2002.