Skip to Main Content
We propose a self-stabilizing asynchronous phase synchronization protocol for uniform unidirectional rings. Consider applications with phase bound K, i.e., the phases are phase 0, phase 1, ...; phase K-1, phase 0, phase 1, etc. Under the protocol, when the ring is stabilized, it satisfies the following criterion: No node begins to execute phase (k+1) mod K until all nodes have executed phase k, and after all nodes have executed their phase k, each node eventually executes phase (k+1) mod K. Besides the variable used to denote the phase that a node is working on, each node maintains only one auxiliary variable with b states, where b can be any number greater than or equal to the ring size. Provided that K and b satisfy the limitation: K×b>n(b-1), the proposed protocol is correct under the parallel model and takes at most 2(K×b) rounds to stabilize.