1 / 55

Architecture for Building Self-Configurable Systems

Explore the architecture, algorithms, and applications of self-configurable systems in sensor networks. Learn about data discovery, data dissemination, power efficiency, and fault tolerance.

nslowik
Download Presentation

Architecture for Building Self-Configurable Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architecture for Building Self-Configurable Systems Presented By: Raquel S. Whittlesey-Harris

  2. Contents • Background • Sensor Network Applications • Architecture • A Self-Organizing Algorithm • References

  3. Background • Sensor Networks with various applications • E.g., Ad-hoc distributed processing networks providing information about the physical world • Autonomous with a central node of control • Require low power consumption and communicate at a rate measured in kilobits per second

  4. Background • Policy decisions and Assumptions for architecture • Heterogeneous nodes • Architecture should provide a common framework • Data Discovery vs. Data Dissemination • Two orthogonal components • Nodes that do data discovery • Nodes that do data dissemination

  5. Background • 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

  6. Background • Mobility/Immobility of notes • Data discovery nodes are mobile • Data dissemination nodes are stationary • Other Architectures • Multi-functional nodes • Cost more to implement • routing in highly specialized nodes wasting energy • Storage of mass information • Data-Centric • Critical nodes need to keep large amounts of state information • Cut nodes can cause the data to be lost

  7. Background • Self-Configurable systems require one or more of, • Naming/Addressing System • Routing • Broadcasting • Multicasting

  8. Background • Berkley argues it is necessary to build a routing and/or broadcasting infrastructure for sensor applications that are self-configurable • Routing • Required to pass information to sensors with specific functionality • Unique addresses required • Broadcast • Required to pass information to every sensor in a network

  9. Background • 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

  10. Background • 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

  11. Background • 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

  12. Background • Terms • 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 a data discovery operation • Router Sensor • Router sensor – collects and transmits to neighbors

  13. Background • 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

  14. 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

  15. 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

  16. Sensor Network Applications

  17. 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

  18. Sensor Network Applications

  19. Sensor Network Applications • Self-configurable systems • Sensor nodes need to self-organize into a network • Many are non-deterministic (smaller) • Deterministic e.g. Security and Parking Lot networks • Fault tolerance achieved through re-configuring the system in the presence of node and link failures

  20. Sensor Network Applications

  21. Sensor Network Applications • Classification of sensor network applications • Aggregating • Data aggregating and passed on • E.g. weather applications • Self-configuring Sensor networks should include the functionality of performing aggregation • Non-Aggregating • Independent data • E.g. parking-lot systems

  22. Architecture • Components • 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

  23. Architecture • Routing • Form the backbone of the sensor network • Immobile • Performs data-dissemination • 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

  24. Architecture • Ratio of routers to specialized nodes (R/S) is assumed to be 1 • Other components • Sink Nodes • Can connect to WAN • Can activate specific actuators (through messaging) and broadcast important messages into the sensor net. • Aggregator Nodes • Can be introduced in router nodes or specialized nodes • Assume in all router nodes

  25. Architecture • Infrastructure Components • 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

  26. Architecture • Scenarios • 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

  27. Architecture • Parking-Lot Networks • Unique Addressing to isolate a particular node controlling a particular spot • Routing Infrastructure for routing messages • Broadcast Infrastructure not generally required buy may be utilized

  28. Architecture • Addressing Infrastructure • Non-addressable nodes • In Self-configurable systems this is an aggregating system • Local Unique Addressing • IP not appropriate – global unique addressing • MAC Layer • An alternative solution • Benefit not yet established

  29. Architecture • 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 • Router acts as the proxy for the specialized node(s)

  30. Architecture • 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

  31. Algorithm • Participants • Router sensors self-configure • Specialized sensors keep track of the nearest router sensors • Phases • Discovery Phase • Organization Phase • Maintenance Phase • Self-Reorganization Phase

  32. Algorithm • Discovery Phase • Each node discovers its set of neighbors and fixes its maximum radius of data transmission • Considerations • Nodes should not have too many neighbors • Specialized nodes n(x) =1 • Router nodes, n(x) > 1 • Where n(x) is the number of neighbors for node x • Maximum bound on transmission radius

  33. Algorithm • Discovery Phase Steps • Each node x picks a small radius r and broadcasts a Hello message around r indicating router or special node • Every node within r replies back with a I am Here message and their coordinates (GPS) • If # of replies < minimum threshold n(x), x broadcasts Hello over radius kr, for k > 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 that can be admitted by x • Note that special nodes are only connected to routers

  34. Algorithm – Discovery Hello 1 2 3 4 5

  35. Algorithm – Disc. Hello Relay 2 1,2 1 3 5 3,4 4 5

  36. Algorithm • Organization Phase • Network is organized • 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

  37. Algorithm • Organization Phase Steps • Form hierarchy with help of group formation • Routers form small basic groups with neighbors found • Group size is restricted to 8 • 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 joins a one member group with address 000 • A boundary node is a node that connects to a node in another group •  is set to the height of the basic group (3)

  38. Algorithm • Steps to form hierarchy • Each Group G receives an advertisement from adjacent groups through it’s boundary nodes • Broadcast throughout the group • Contains size of group (# of address bits) • Each node conclude on an adjacent group G’ • If G’ decides to join G, the groups merge • Otherwise G selects the next best group H • 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) when n is the number of nodes in the graph

  39. Algorithm • 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 • Each node in group is allocated a 3-bit address

  40. Algorithm • Generate routing table at every node • (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 x’1, (x1, x’2),…,(x1,…,xm-1,x’m) • E.G., Let m = 4, x address = 0011 • Groups 1, 01, 000, and 0010 are maintained in the routing table for x • O(m) routing table at each node

  41. Algorithm • Generate broadcast trees and graphs within group • Merge whenever groups are aggregated • G1 and G2 have addresses of size m and n respectively • Assume m  n,  > 0 • If m-n  , G1 G2 G, all nodes in G1 add 0 in front of their addresses, and all nodes in G2 add 1 in front of their addresses • If m-n > , • Select a border node x with address (x1,…xm) • Subgroup Hi is formed from the set of all nodes in G1,with the first i bits = (x1, x2, …, xi) for i m-n –1 • If Hm-n-1 has enough free address space for accommodating G2 within its subgroup (Hm-n-1 has a sub-branch in its hierarchy which G2 can be added without affecting the height of Hm-n-1  G2)

  42. Algorithm • If Hm-n-1  G2 is not possible, • Try the same merge with Hi where I is m-n-2 to 1 • If not possible, then merge G1 and G2 and mark as height imbalanced • Broadcast Trees and Graphs • Broadcast graphs are intended to provide multiple paths from the source • Adding fault tolerance to the system • Converted to DAG from the source to remove any loops • Links are indicated as primary and secondary • Broadcasts are sent directly across broadcast links • Secondary links follow a 3-way handshake mechanism

  43. Algorithm • Broadcast Tree and Graph formation is accomplished by, • After basic group formation, a broadcast tree and graph are constructed • Primary nodes 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) < cost(e2) • Let P = (G  H) • B(P) = B(G)  B(H) U (e1, e2) • T(P) = T(G)  t(H) U (e1)

  44. Algorithm • 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 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

  45. Algorithm • 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 • Berkley’s algorithm requires an extra 10mJ • SPIN requires an extra 240mJ

  46. Algorithm • Maintenance 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 • Sets the link as dead and reorganizes • Passive monitoring • A node sends an activate message to its neighbors only on demand • Used to save energy • Are you Alive? • Alive nodes respond with a ACK

  47. Algorithm • Each node updates its routing table with information on the next hop in the least power consuming path and shortest delay path to the groups as dictated by the algorithm • Routing Metrics • Delay is not considered important in sensor networks • Perhaps not true in cases of security and maybe even weather patterns

  48. Algorithm • Goal: Keep network alive for a maximum amount of time • 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.

  49. Algorithm • 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 not 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

  50. Algorithm • 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

More Related