1 / 31

Self Stabilizing Smoothing and Counting

This paper discusses the concepts of smoothing and counting networks in self-stabilizing systems and analyzes their behavior with improper initialization. It also explores techniques for recovering from illegal states and presents results on the self-stabilization of balancing networks.

gwoods
Download Presentation

Self Stabilizing Smoothing and Counting

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. Self Stabilizing Smoothing and Counting Maurice Herlihy, Brown University Srikanta Tirthapura, Iowa State University

  2. Overview • Smoothing and Counting Networks • Analysis of behavior without proper initialization- upper and lower bounds • Self stabilization of smoothing networks

  3. Smoothing Networks 2-smoothing network In a k-smoothing Network, the numbers of Tokens on different output wires differ by at most 2

  4. Counting Networks • 1-smoothing networks with other additional properties • Aspnes, Herlihy and Shavit in 1991 • Since then, scalable Construction and Properties well studied • Bitonic and Periodic networks are two popular counting networks

  5. Balancer

  6. Balancer

  7. Balancer

  8. Counting Network Depth = 4 Width = 4 Initial State: All balancers pointing up

  9. 1-Smoothing Property

  10. Questions • How do counting networks perform when initialized incorrectly (or by an adversary)? • How to recover from illegal states reached during execution?

  11. Motivation • Initializing to a “correct” global state is hard or may be impossible • global reconfiguration expensive • network switches reboot • Step towards building fault tolerant and dynamic smoothing networks

  12. Our Results(1) Periodic and Bitonic Counting Networks: • When started from an arbitrary state, output is log w smooth (w = width of network) • Tight lower bound: We demonstrate inputs such that the output is not log k smooth for any k < w

  13. Our Results (2) Self-stabilization of Balancing Networks • Add extra state and actions • If network begins in illegal state, will eventually return to a legal state • Upper bound on the time till stabilization, and extra space required

  14. Block[w] Block[w] Block[w] Periodic[w] Counting Network

  15. 000 001 Block[4] 010 011 Block[2] 100 101 Block[4] 110 111 Block Network:Inductive Definition

  16. Definitions • Sequence is k-smooth if for all • Matching layer of balancers for sequences X and Y joins and in a one-to-one correspondence

  17. Matching Lemma If X and Y are each k-smooth then result of matching X and Y is (k+1)-smooth Holds irrespective of the orientations of balancers 3 54 2 X 1 53 53 104 52 Y 103 52 51 102

  18. Block[w] is (log w)-smooth • Proof by Induction • Assume Output of Block[n] is log n smooth • Show that output of Block[2n] is log (2n) smooth A Block[n] B Block[n] Block[2n]

  19. Lower Bound • Worst Case bound: There exist input sequences and initial states such that output of Block[w] is not k-smooth for any k < log w • Show a fixed-point sequence for Block[w]which is not k-smooth for any k < log w

  20. Block[2] Fixed Point Sequence 5 5 5 5 5 6 6 6 Block[4] 6 4 4 5 5 7 4 4 6 6 5 7 Sequence not k-smooth for anyk < log (width) 7 6 Block[4] 4 6 6 5 5 5

  21. Bitonic Counting Network Starting from an arbitrary initial state • Output is always log w smooth, where w=width • Matching worst case lower bound on smoothness

  22. Self Stabilization • Extra state and actions added to the network • Self-stabilizing Actions enabled only if network in illegal state otherwise, normal execution

  23. Self Stabilization • Definition:Legal State can be reached in an execution starting from the Correct Initial State • Natural definition, but hard to use directly, so need alternate characterization • Local state can be observed easily • Strategy: Characterize legality in terms of local states

  24. Global vs Local States

  25. Additional State Top In Top Out Bot In Bot Out These counters can be bounded – details in paper

  26. Local States • Balancer is Legal if (1)Top In + Bot In = Top Out + Bot Out(2)Toggle State is correct • Wire is Legal ifTokens entering the wire = Tokens leaving the wire + Tokens in Transit

  27. Global Legality in terms of Local Theorem: Iff (every wire and every balancer is in legal local state), then (the network is in a legal global state) Now focus on stabilizing the local states- simpler problem

  28. Space and Time Complexity • Time to Stabilization = d parallel timesteps where d = depth of network • Total additional space =w = width of network

  29. Issues • Lazy versus pro-active stabilization • Transient Behavior till stabilization might differ from “legal” behavior • Tokens might be unevenly distributed till then

  30. Summary • Even if bitonic and periodic networks are not initialized, they are log smooth • If only approximate smoothing is needed, then use (log w) depth uninitialized block network • Can be converted into 1-smooth behavior by self-stabilization - overhead is small and analytically bounded

More Related