区块链作为本科毕业论文的研究方向之分布式一致性

一位大四学生计划将区块链作为毕业论文主题,考虑从区块链安全和应用场景两个角度进行探讨,同时关注360等大厂商的实践及即将召开的区块链安全圆桌会议。
摘要由CSDN通过智能技术生成

下学期大四,我的导师叫我做区块链方向的。我想问问大家这个区块链方向的毕业论文可以写些什么?做逆向软件保护方向的导师又说不合适,希望大佬们给点建议

分布式一致性

在一个分布式系统中,如何保证集群中所有节点中的数据完全相同并且能够对某个提案(Proposal)达成一致是分布式系统正常工作的核心问题,而共识算法就是用来保证分布式系统一致性的方法。

然而由于分布式系统存在多个节点,所以系统中会出现各种故障,如:节点失效、网络延时或者宕机。最为常用的两种故障模型是 故障-停止(Fail-stop) 和 随机故障(Byzantine) ,在故障-停止模型中当进程发生故障后只是简单的停止运行。相对的,随机故障又称为拜占庭故障,意指发生故障的进程会像不忠的拜占庭将军一样,产生无法预料的响应结果。故障-停止是随机故障的一种特殊形式,因此,能够容忍随机故障的算法也能够容忍故障-停止。

CAP

在 1998 年,加州伯克利大学的教授 Eric Brewer 提出了分布式系统的 CAP 理论,该理论可总结如下:

  • 在异步的网络模型中,所有的节点由于没有__同一时钟__,仅仅能根据接收到的消息作出判断,这时完全不能同时保证一致性、可用性和分区容错性,每一个系统只能同时保证这三种特性中的两种。

这里讨论的一致性其实都是__强一致性__,也就是所有节点接收到同样的操作时会按照完全相同的顺序执行,被一个节点提交的更新操作会立刻反映在其他通过异步或部分同步网络连接的节点上,如果想要同时满足一致性和分区容错性以及可用性。在异步的网络中,我们只能__中心化存储所有数据__,通过其他节点将请求路由给中心节点达到这两个目的。

在现实世界中其实并不存在绝对异步的网络环境,如果我们允许每一个节点拥有自己的时钟,这些时钟虽然有着完全不同的时间,但是它们的__更新频率是完全相同的__,所以我们可以通过时钟得知接收到节点消息的间隔时间。时钟的出现能够让我们知道__当前消息有多久没有得到回应,通过超时时间就能在一定程度上解决信息丢失的问题__。

由于网络一定会存在延时,所以没有办法在分布式系统中做到强一致性的同时保证可用性,不过我们可以通过降低对一致性的要求,在一致性和可用性之间做出权衡,所以在目前主流的分布式系统中都选择最终一致性。

最终一致性允许多个节点的状态不一致,但是所有能够沟通的节点都能够在有限的时间同步状态,从不一致的状态恢复到一致,这里列出的两个条件比较重要,一是__节点直接可以正常通信__,二是__状态能够在有限时间内完成同步__,只有在这两个条件成立时才能达到最终一致性。

拜占庭将军问题

拜占庭将军问题是 Leslie Lamport 在 The Byzantine General

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值