带你读《对象存储实战指南》第二章协调和复制2.1协调(三)

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 《对象存储实战指南》第二章协调和复制2.1协调(三)

2.1.1两将军问题

 

如图 2-6 ,两支友分别 Al和 A2将带领,两约定上午 10点同时攻击中的敌军。正常情况下,Al派通信兵经过敌占领 的山谷A2千上午 10点进攻敌2-6中的第 1步),然后A2将排通信兵告知 Al确认信息已经收到

2-6中的第2步A2将军还要等待 Al  军的确认信息A2军不知道“ Al将军是否收到 A2将军的确认信息(2步的信息),所以还需要执行第 3步“ Al将军派通信兵通知A22 步确认已经收

image.png2-6两 将

 

如果没有发异常如通信兵被敌俘获),通过上述步的通信,Al   A2基本达成上午 10点进攻敌的计划 但是战线 封锁、路况不好会导致通信兵传递信息超时,或者通信兵被俘获/击 毙会导致传递的信息 石沉大海,因此需要超时 传机制保障通信正常 通过两将军问题,采用固次数的消息 确认,解决通信网 络不 可时的共识问题时,也可以解释 TCP/IP通信中的次握手设计

 

2.1.1 拜占庭将军问题

 

在两将军问题中,如果通信兵被敌军俘获并且 叛变 ,将会传 递错误的信息给Al将军和A2,从而更难达成共识 为了解决通信中传递错误信息的问题,业界提出了 拜占庭将问题

如图 2-7所示,6队分别 由 6位拜占庭将( Al~A6) 率领,他们共同围攻城池内敌军各支军队的行动策 略为进攻撤退两 种,如果部分军队进攻 、部分军队撤退可 能会造成灾难性后果 ,因此 Al~   A6将军必须通过投来达成共识 ,即所有军队起进攻或所有军队一起撤退 因为各位将军分处   城市的不同方向,他们只能通过通信兵相联系 在投过程中,位将都将投票给出进攻还是撤退     的信息,然后通过通信兵分别通知其他将从而根据自己   的投票和其   他将送来的信息,位将就可知道共同的投票结果并决定行动策略。

      拜占庭将军 的难题在于拜占庭故障 ,即通信可能被敌军 俘获并且叛变 ,从而传递错信息,还有将军也有可能成为叛徒例如,错误消息让将军判断出3人以上求进攻,但实际上并没有这么进攻的投,最终导致误判

image.png

2-7    间题

 

在分布式系统中,典型的拜占庭故障 ,就是某台服务器 的进程因 CPU繁忙、内存申请超时、网络拥塞 、磁盘响应慢等原因出现工作状态不正常,却继续带 病工作的亚健康状态 在非安全网络中,通过伪装来窃取信息,也是安全中要预防的典型的拜占庭故障。分布式系 统为了解决拜占庭故障,可以采用以下解决方案。

·   根据分 布式系统的服务器总数,限定发生拜占庭 故障的服务器数,来确保解决该问例如,服务器总数为 N, 那么发生拜占庭故障 的服务器数不能超 过 1/3*N(服务器总数的 1/3),剩下的服务器还能通过多数派达成共识。

·   根据数 字签 名识别伪装的服务器,或者根据序 列号识别亚健康服务器 的错误消息,并及时将它们隔离。通过防护手段,尽早地隔离系统中的不稳定因素,从而支撑共识的达成。

1999年, MiguelCastroBarbaraLiskov在论文 P ractica l Byzantine Fault Tolerance andProactiveRecovery中通过高性能的运算方法,提升了拜占庭故障 的容错和恢复性能

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
对象存储
|
对象存储
|
存储 对象存储
带你读《对象存储实战指南》第三章命名和同步3.4小结
《对象存储实战指南》第三章命名和同步3.4小结
150 0
带你读《对象存储实战指南》第三章命名和同步3.4小结
|
存储 对象存储 块存储
带你读《对象存储实战指南》第三章命名和同步3.3逻辑时钟(二)
《对象存储实战指南》第三章命名和同步3.3逻辑时钟(二)
156 0
|
存储 数据库 对象存储
带你读《对象存储实战指南》第三章命名和同步3.3逻辑时钟(一)
《对象存储实战指南》第三章命名和同步3.3逻辑时钟
157 0
带你读《对象存储实战指南》第三章命名和同步3.3逻辑时钟(一)
|
存储 监控 算法
带你读《对象存储实战指南》第三章命名和同步3.2物理时钟同步(一)
《对象存储实战指南》第三章命名和同步3.2物理时钟同步(一)
193 0
带你读《对象存储实战指南》第三章命名和同步3.2物理时钟同步(一)
|
域名解析 存储 缓存
带你读《对象存储实战指南》第三章命名和同步3.1命名技术(三)
《对象存储实战指南》第三章命名和同步3.1命名技术(三)
153 0
带你读《对象存储实战指南》第三章命名和同步3.1命名技术(三)
|
网络安全 对象存储 网络架构
《对象存储实战指南》第三章命名和同步3.1命名技术(二)
《对象存储实战指南》第三章命名和同步3.1命名技术
164 0
《对象存储实战指南》第三章命名和同步3.1命名技术(二)
|
监控 网络协议 Java
带你读《对象存储实战指南》第三章命名和同步3.1命名技术
《对象存储实战指南》第三章命名和同步3.1命名技术
163 0
带你读《对象存储实战指南》第三章命名和同步3.1命名技术
|
vr&ar 对象存储
带你读《对象存储实战指南》第二章协调和复制2.3小结
《对象存储实战指南》第二章协调和复制2.3小结
116 0
带你读《对象存储实战指南》第二章协调和复制2.3小结