Skip to content

DestinyWei/PBFT-Experiment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PBFT-Experiment

《共识机制原理》课程PBFT算法模拟实现

运行步骤:

1.下载/编译
 go mod init pbft
 go build -o pbft.exe
2.开启五个端口(一个客户端,四个节点)

客户端执行 pbft.exe client

其他四个节点依次执行 pbft.exe N0 pbft.exe N1 pbft.exe N2 pbft.exe N3

3.输入一段信息,看看节点之间的同步过程
4.关闭一个节点(代表作恶、故障节点),再次输入信息,看看是否还会接收到reply

结果:客户端依然会接收到reply,因为根据公式 n >= 3f+1 ,就算宕机一个节点,系统依然能顺利运行

4.关闭两个节点(代表作恶、故障节点),再次输入信息,看看是否还会接收到reply

结果:关闭两个节点后,故障节点已经超出了pbft的允许数量,消息进行到Prepare阶段由于接收不到满足数量的信息,固系统不再进行commit确认,客户端也接收不到reply

About

《共识机制原理》课程PBFT算法模拟实现

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages