当前位置: 首页 > news >正文

长沙网站开发湖南微联讯点不错/做公司网站

长沙网站开发湖南微联讯点不错,做公司网站,推广代理,财务软件做账流程新手必看拜占庭容错的三个基本理论 1) CAP理论 - "如果网路发生阻断(partition)时,你只能选择资料的一致性(consistency)或可用性(availability),无法两者兼得"。论点比较真观&am…

拜占庭容错的三个基本理论

1) CAP理论 - "如果网路发生阻断(partition)时,你只能选择资料的一致性(consistency)或可用性(availability),无法两者兼得"。论点比较真观:如果网路因阻断而分隔为二,在其中一边我送出一笔交易:"将我的十元给A";在另一半我送出另一笔交易:"将我的十元给B "。则此时系统要不是,a)无可用性,即这两笔交易至少会有一笔交易不会被接受;要不就是,b)无一致性,一半看到的是A多了十元而另一半则看到B多了十元。要注意的是,CAP理论和扩展性(scalability)是无关的,在分片(sharded)或非分片的系统皆适用。

2)FLP impossibility (O网页链接)-在异步的环境中,如果节点间的网路延迟没有上限,只要有一个恶意的节点存在,就没有算法能在有限的时间内达成共识。但值得注意的是, "Las Vegas" algorithms(这个算法又叫撞大运算法,其保证结果正确,只是在运算时所用资源上进行赌博。一个简单的例子是随机快速排序,他的pivot是随机选的,但排序结果永远一致)在每一轮皆有一定机率达成共识,随着时间增加,机率会越趋近于1。而这也是许多成功的共识演算法会采用的解决办法。

3)容错的上限-由DLS论文(O网页链接)我们可以得到以下结论: (1)在部分同步(partially synchronous)的网路环境中(即网路延迟有一定的上限,但我们无法事先知道上限是多少),协议可以容忍最多1/3的拜占庭故障(Byzantine fault)。(2)在异步(asynchronous)的网路环境中,具确定性质的协议无法容忍任何错误,但这篇论文并没有提及randomized algorithms在这种情况可以容忍最多1/3的拜占庭故障。(3)在同步(synchronous)的网路环境中(即网路延迟有上限且上限是已知的),协议可以容忍100%的拜占庭故障,但当超过1/2的节点为恶意节点时,会有一些限制条件。要注意的是,我们考虑的是"具认证特性的拜占庭模型(authenticated Byzantine)",而不是"一般的拜占庭模型";具认证特性指的是将如今已经过大量研究且成本低廉的公私钥加密机制应用在我们的演算法中。


以上描述来自以太坊的官方Wiki - Proof of Stake FAQ (https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ)

 

  • CAP theorem - "in the cases that a network partition takes place, you have to choose either consistency or availability, you cannot have both". The intuitive argument is simple: if the network splits in half, and in one half I send a transaction "send my 10 coins to A" and in the other I send a transaction "send my 10 coins to B", then either the system is unavailable, as one or both transactions will not be processed, or it becomes inconsistent, as one half of the network will see the first transaction completed and the other half will see the second transaction completed. Note that the CAP theorem has nothing to do with scalability; it applies to sharded and non-sharded systems equally. See also https://github.com/ethereum/wiki/wiki/Sharding-FAQs#but-doesnt-the-cap-theorem-mean-that-fully-secure-distributed-systems-are-impossible-and-so-sharding-is-futile.
  • FLP impossibility - in an asynchronous setting (i.e. there are no guaranteed bounds on network latency even between correctly functioning nodes), it is not possible to create an algorithm which is guaranteed to reach consensus in any specific finite amount of time if even a single faulty/dishonest node is present. Note that this does NOT rule out "Las Vegas" algorithms that have some probability each round of achieving consensus and thus will achieve consensus within T seconds with probability exponentially approaching 1 as T grows; this is in fact the "escape hatch" that many successful consensus algorithms use.
  • Bounds on fault tolerance - from the DLS paper we have: (i) protocols running in a partially synchronous network model (i.e. there is a bound on network latency but we do not know ahead of time what it is) can tolerate up to 1/3 arbitrary (i.e. "Byzantine") faults, (ii) deterministic protocols in an asynchronous model (i.e. no bounds on network latency) cannot tolerate faults (although their paper fails to mention that randomized algorithms can with up to 1/3 fault tolerance), (iii) protocols in a synchronous model (i.e. network latency is guaranteed to be less than a known d) can, surprisingly, tolerate up to 100% fault tolerance, although there are restrictions on what can happen when more than or equal to 1/2 of nodes are faulty. Note that the "authenticated Byzantine" model is the one worth considering, not the "Byzantine" one; the "authenticated" part essentially means that we can use public key cryptography in our algorithms, which is in modern times very well-researched and very cheap.

 


=>更多文章请参考:《中国互联网业务研发体系架构指南》

=>更多行业权威架构案例及领域标准、技术趋势请关注微信公众号 '软件真理与光':

公众号:关注更多实时动态
更多权威内容关注公众号:软件真理与光
http://www.lbrq.cn/news/1090459.html

相关文章:

  • 自己如何做公司网站/潍坊seo外包平台
  • 网站建设哪个部门管理/百度搜索引擎下载
  • 事业单位建设网站/百度seo关键词工具
  • 网站 网络架构/seo课程排行榜
  • 百度资料怎么做网站/电子商务网站建设教程
  • 做漫画网站/互联网推广引流公司
  • 如何做网站优化推广/百度手机浏览器下载
  • 可靠的政府网站建设公司/销售crm客户管理系统
  • 怎么做提高网站排名/电商培训班一般多少钱一个月
  • 凌云网招聘信息/免费seo快速排名工具
  • 100个最好的微信小程序/西安seo优化推广
  • 做一家视频网站/免费html网站制作成品
  • 做网站的收入/如何seo推广
  • 用v9做网站优化/友情链接网
  • 赤城网站建设/附子seo教程
  • 门户型网站特点/网站推广多少钱一年
  • 集团网站建设费用/四年级小新闻50字左右
  • 网站上360 旋转的图是怎么做的/怎么做网站关键词优化
  • 站多多 福州网站建设/什么叫软文
  • 网站口碑推广/外链发布平台有哪些
  • 1个云虚拟主机怎么做多个网站/网络营销推广流程
  • 做网站公司济南/澳门seo关键词排名
  • 建设部网站1667号公告/百度口碑官网
  • 建设银行互联网网站/上海哪家seo好
  • 做公司网站,哪个程序用的多/营销推广策划方案范文
  • 新乡市做网站直销系统网站/公众号推广
  • 装饰公司看的设计网站/晋城网站seo
  • 网站建设技术方面/网络营销的四个步骤
  • 企业网站在百度搜索不到/如何把网站推广
  • 婴儿网站建设住栏目/郴州网站seo外包
  • PHP语法高级篇(六):面向对象编程
  • 去除视频字幕 4 : 下一步,打算研究 Video Inpainting (视频修复):
  • Kafka MQ 消费者应用场景
  • Android 修改系统时间源码阅读
  • Gitee Test:国产软件测试平台如何筑牢关键领域数字安全屏障
  • 详谈OSI七层模型和TCP/IP四层模型以及tcp与udp为什么是4层,http与https为什么是7层