1 / 30

Emergent Structure Among Self-Organizing Devices

Emergent Structure Among Self-Organizing Devices. M. Steenstrup Stow Research L.L.C. steenie@rcn.com. This work was funded in part by DARPA and ONR. Pervasive Networking. User expectations: - access communications services - independent of time, location, and type of service

shaw
Télécharger la présentation

Emergent Structure Among Self-Organizing Devices

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. Emergent Structure Among Self-Organizing Devices M. Steenstrup Stow Research L.L.C. steenie@rcn.com This work was funded in part by DARPA and ONR.

  2. Pervasive Networking User expectations: - access communications services - independent of time, location, and type of service - without intimate knowledge of algorithms and resources for providing services Challenges of realization: - mix of preexisting infrastructure and spontaneous structure - heterogeneous, selfish devices - operating in time-varying, unpredictable, and potentially hostile environment - communications must be consistent with handling needs of traffic, capabilities of devices, and policies for resource use

  3. Environmental Challenges Wireless communications: - distance-based attenuation - interference - shadowing - multipath fading - broadcast Attacks: - detection - interception - spoofing - replays - denial of service

  4. Heterogeneity of Devices Mobility: - frequency - speed - trajectory - autonomy Algorithms controlling use of resources: - dependent on medium - new and legacy Function: - sensors - actuators - computers - switches Capacity of resources: - transmission - power supply - computation - storage Requirement: sufficient commonality to enable end-to-end communication

  5. Device Behavior Selfish: - committing resources - defending against attacks Stingy: - reluctant to share resources - expects compensation for services - ignores those that fail to reciprocate Adaptive: - goal-driven - cognizant of current state - state-dependent action to achieve goals Opportunistic: - takes advantage of available information and resources Requirement: sufficient cooperation to enable end-to-end communication

  6. Controllable Aspects of the Network spectrum use channel between two nodes network graphs for routing temporal and spatial traffic loads and patterns services provided to applications energy dissipation and dispersion vulnerability to attacks that degrade or deny service

  7. The Problem of Network Control Objectives Constraints Actions State Control Algorithm Network Environment

  8. Fundamental Differences Among Controllers Objectives Constraints goals actions inputs open or closed loop responsiveness duration of response extent of response effects on others Actions State Control Algorithm Network Environment

  9. Degraded Signals Objectives Constraints Actions State Control Algorithm delay noise loss delay noise loss Network Environment

  10. Network Control Algorithms Behavioral objectives: - autonomous execution by devices - synergistic, not destructive, interactions with other controllers - graceful degradation with quality of state and action signals - minimal use of resources Design rules of thumb: - aim for improved performance - inject some randomness into selected actions to help prevent unwanted synchronization and to explore space of possible outcomes - primary greedy algorithm based on local state information - secondary cleanup algorithm employed when result from primary algorithm deemed unacceptable

  11. Self-Organizing Devices Two network control problems: - negotiating frequencies for common channels among nodes - selecting next hops for packet forwarding Corresponding emergent structures: - clusters of nodes sharing common channels - paths through network from sources to destinations Common features: - start with tabula rasa - structure created with distributed algorithm - no one node has global knowledge of structure - acceptable performance with respect to end-to-end service is achieved with only local knowledge of structure

  12. Selecting Frequencies for Common Channels Dependent upon: - supported frequencies - spectrum use policies of primary users - measured characteristics of channel - current environment - current location - type of traffic Algorithms: - channel assertion, consolidation, and negotiation - diffusion-based labelling according to constraints - number of channels: 1 best-case, N worst-case - number of transmissions: N best-case, N2 worst-case

  13. Channel Detection and Selection Assumptions for each node: - set of f supportable frequencies - spectrum use policies for primary users - information communicated as signatures Measure spectrum: Repeat r times initially and whenever possible thereafter Select at random ordering of f frequencies Sample each frequency for t seconds Classify sampled frequencies: - frequency unavailable if active primary user detected in band or spectrum use policy precludes use - available frequency busy if measured use exceeds threshold - frequency removed from list of active channels if used by any node for more than given time interval

  14. Channel Detection and Selection Detect existing channels: When signature detected Record frequency in list of channels If frequency available and no channel yet adopted Suspend sampling temporarily Adopt frequency and assert channel Resume sampling Establish new channel: If no signature detected on available frequency during sampling Select least-busy available frequency Record frequency in list of channels Adopt frequency and assert channel

  15. Channel Detection and Selection Assert channel: If asserting channel in response to detected signature Select at random one of s silent beaconing intervals Repeat 2ft times Broadcast signature on adopted frequency during selected interval Remain silent for next s beaconing intervals

  16. Assigning Initial Channels

  17. Clusters of Common Channels

  18. Channel Consolidation Assumptions for each node: - initial spectrum sampling concluded - adopted frequency - list of frequencies of all channels overheard - information communicated as packets - notion of common time Initiate consolidation: If g > 1 available frequencies in channel list If adopted frequency higher than others in list Generate consolidation message containing node identifier, current time, and adopted frequency Disseminate message

  19. Channel Consolidation Disseminate message: For each of g available frequencies in channel list Repeat until rebroadcast overheard and at most m times Broadcast message Listen for rebroadcast Await consolidation: Listen on adopted frequency If receive consolidation message If message contains available frequency different from adopted If message contains most recent timestamp Adopt frequency Record timestamp Disseminate message

  20. Consolidating Channels

  21. Single Common Channel

  22. Channel Negotiation Assumptions for each node: - initial spectrum sampling concluded - adopted frequency - list of frequencies of all common channels overheard - information communicated as packets - notion of common time - at least one node must adopt a different frequency Initiate negotiation: If adopted frequency no longer inappropriate Select least-busy available frequency different from adopted Record frequency in list of channels Adopt frequency Generate negotiation message containing node identifier, current time, adopted frequency, and list of unavailable frequencies Disseminate message

  23. Channel Negotiation Await negotiation: Listen on adopted frequency If receive negotiation message If frequency available and different from adopted If message timestamp most recent Adopt frequency Record timestamp Update known unavailable frequencies and add to message Disseminate message If frequency unavailable If message timestamp most recent If common available frequency exists Generate negotiation message containing node identifier, current time, selected frequency, and list of unavailable frequencies Disseminate negotiation message

  24. Negotiating New Channels

  25. Clusters of Common Channels

  26. Selecting Next Hops for Packet Forwarding Assumptions for each node: - channels established - neighbors discovered - hop-by-hop acknowledgements - information communicated as packets Algorithm: - objective: low costs routes at low overhead - quasi dynamic programming to compute cost to destination - probabilistic selection of packet’s next hop to destination - probabilities computed according to learning automata rules or strictly based on cost - positive probabilities prevent sticking - forwarding loops can occur but do not persist - transmission cost of loops less than that of state information in dynamic networks

  27. Probabilistic Packet Forwarding Select next hop to destination d via neighbor j according to probabilities {pid(t): 1 ≤ i ≤ m} for all m neighbors Forward data packet to neighbor j and obtain in acknowledgement estimated cost cjd(t) to destination d Update estimate of cost to destination d via neighbor j: cnjd(t+1) = linknjd(t) + cjd(t) Update probability of selecting each neighbor k as next hop to destination d: pkd(t) = (1/ cnkd(t)) / ∑(1/ cnid(t)) over all m neighbors Update estimate of cost to destination d: cnd(t) = ∑ pid(t) cnid(t) = m / ∑(1/ cnid(t)) over all m neighbors

  28. Variant Based on Learning Automata Update probability of selecting each neighbor k as next hop to destination d according to linear reward-penalty scheme but constrained positive: pjd(t+1) = pjd(t) + a(1 - ß(t))(1 - pjd(t)) - bß(t)pjd(t) pkd(t+1) = pkd(t) - a(1 - ß(t))pkd(t) + bß(t)(1/(m-1) - pkd(t)), k ≠ j Reward: ß(t) = 0, route via neighbor j has lowest cost Penalty: ß(t) = 1, route via neighbor j does not have lowest cost 0 < b << a << 1 Update estimate of cost to destination d: cnd(t) = ∑ pid(t) cnid(t), over all m neighbors.

  29. Forwarding Packets

  30. Forwarding Packets

More Related