在阶段1,2,...中进行计算,每一个都由n个连续的轮组成。每个阶段都有一个携带着特殊UID的令牌一直在个环中流转。更特别地,在包含轮(v-1)n+1,...,vn的阶段中,只有带着UIDv的令牌才被允许流转。
如果存在UID为v的进程i,且在(v-1)n+1轮到达之前进程i没有收到任何非空消息,那么进程i就会把自己选举为领导者,并沿着环发送一个包含其UID的令牌。当这个令牌在传递的时候,所有其他进程都接收到它,这样它们就不会选举自己为领导者或在以后的阶段中创建令牌。
在这个算法中,最小的UID 最终会环绕整个路径,它的原始进程被选举为领导者
这个算法要求环的大小n所有进程都知道
本文介绍了一种在环形网络中选举领导者的算法。该算法通过令牌传递来确定具有最小UID的进程作为领导者。每个阶段由n轮组成,特定阶段只允许携带对应UID的令牌流转。若进程在规定轮次前未收到非空消息,则宣告自身为领导者并发送带有UID的令牌。

被折叠的 条评论
为什么被折叠?



