1 / 28
文档名称:

practical byzantine fault tolerance - cs.berkeley.edu.ppt

格式:ppt   页数:28页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

practical byzantine fault tolerance - cs.berkeley.edu.ppt

上传人:薄荷牛奶 2016/2/26 文件大小:0 KB

下载得到文件列表

practical byzantine fault tolerance - cs.berkeley.edu.ppt

相关文档

文档介绍

文档介绍:Practical Byzantine Fault ToleranceMiguel Castro and Barbara LiskovMITPresented to cs294-4 by Owen CooperThe problem?Provide a reliable answer to putation even in the presence of Byzantine faults. ?A client would like to?Transmit a request?Wait for k replies?Conclude that the answer is a true answerThe works are unreliable?Can delay, reorder, drop,retransmit?Some fraction of nodes are unreliable?May behave in any way, and need not follow the protocol.?Nodes can verify the authenticity of messages Failures?The system requires 3f+1 nodes to withstand f failures?All f nodes may be faulty, and not respond?But there is no guarantee that the remaining n-f are good, and good nodes must outnumber bad nodes. ?This holds if n-2f > f or n > 3fNodes?Maintain a state ?Log?View number?state?Can perform a set of operations ?Need not be simple read/write?Must be deterministic?Well behaved nodes must:?start at the same state?Execute requests in the same order Views?Operations occur within views?For a given view, a particular node in is designated the primary node, and the others are backup nodes?Primary = v mod n?N is number of nodes?V is the view numberProtocolA three phase protocol?Pre-prepare: primary proposes an order ?Prepare: Backup copies agree on # ?Commit: agree mitAgreement?Quorum based?2f+1 nodes must have same value ?System has 3f+1 nodes?Any 2f+1 subset has >= 1 good node mon?Good nodes don’t lie?Same decision at each node w/ quorumMessages ?The following messages are used by the protocol, and are signed by the sender?Request <o,t,c> (called m)?Sent from the client to the primary?Contains: client #, timestamp, and operation?Reply <v,t,c,I,r>?Pre-prepare <v,d,n>, m?Multicast from primary to backups?Contains view #, sequence #, digest?Message may be sent separatelyMessages 2?Prepare <v,n,d,I >?Sent amongst backups ?Commit <v,n,d,I >?Replica I is prepared mit seq # n, view v?Messages are accepted in each phase ?If the current node is in view v?The sequence number,n, is