62、分布式系统中的共识与协议算法解析

分布式系统中的共识与协议算法解析

在分布式系统中,共识和协议算法起着至关重要的作用。这些算法能够确保在存在故障或恶意进程的情况下,系统中的各个进程仍能就某些值达成一致。本文将深入探讨多种共识和协议算法,包括它们的原理、复杂度以及在不同系统环境下的应用。

1. 同步系统中的算法

在消息传递的同步系统中,存在多种共识算法,以下将介绍两种典型的算法。

1.1 Oral_Msg算法

在图14.6(a)中,调用Oral_Msg(x)的指挥官是忠诚的,因此所有忠诚的进程都有相同的估计值。尽管3x个进程的子系统中有x个恶意进程,但所有忠诚的进程从一开始就有相同的视图。即使在Oral_Msg的每次嵌套调用中这种情况都会重复,即使经过x轮,在这些进程中,忠诚的进程占简单多数,因此多数函数可以使它们对忠诚指挥官的值保持相同的共同视图。

而在图14.6(b)中,调用Oral_Msg(x)的指挥官可能是恶意的,并且可以向忠诚的进程发送冲突的值。3x个进程的子系统中有x - 1个恶意进程,但所有忠诚的进程从一开始就没有相同的视图。

该算法的复杂度方面,需要f + 1轮,需要指数级的本地内存,并且消息数量为:
[
\begin{align }
&(n - 1)+(n - 1)(n - 2)+\cdots+((n - 1)(n - 2)\cdots(n - f - 1))
\end{align
}
]

1.2 阶段国王算法(Phase - king Algorithm)

Lamport–Shostak–Pease算法需要f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值