【问题标题】:What does ordering service do?订购服务是做什么的?
【发布时间】:2018-07-06 08:13:29
【问题描述】:

想请教一下关于ordering service(ordering service节点)的一些事情。

我了解订购服务的用途以及它们的工作方式(BFT-SMaRt)。但是,我感到困惑的是......

  1. 订购服务用于容错。我不知道他们应该容忍哪种错误。它们仅适用于区块中的有序交易吗?如果是这样,如果一个区块中的交易没有按时间顺序排列会发生什么?

  2. 区块中的伪造交易和无效交易将被同行检测到,他们永远不会用这些交易更新分类帐。为什么我们需要订购服务?如果在没有 ordering 服务的情况下无法检测到它们,ordering 服务如何帮助 peer 发现它们?

  3. 这就是我真正感到困惑的地方。订购服务节点是否验证某些内容?您能告诉我订购服务是做什么的吗?(我们可以从订购服务中得到什么?或者订购服务能确保什么?)

我认为这些都是基本问题,但我仍然很难理解这些问题。

你能告诉我我所问的答案吗?如果您回答我,我将不胜感激。谢谢!

【问题讨论】:

    标签: hyperledger-fabric


    【解决方案1】:
    1. 订购服务用于容错。我不知道他们应该容忍哪种错误。它们仅适用于区块中的有序交易吗?如果是这样,如果一个区块中的交易没有按时间顺序排列会发生什么?

    不,排序服务不是为了容错,它需要建立交易的总顺序。它从客户那里收集交易,对它们进行排序并将它们分组到一个接一个地链接的块中。事实上,交易不必按时间顺序排列,真正重要的是提交给排序服务的所有交易的确定性总顺序。

    1. 区块中的伪造交易和无效交易将被同行检测到,他们永远不会用这些交易更新分类帐。为什么我们需要订购服务?如果他们在没有 ordering 服务的情况下无法检测到它们,ordering 服务如何帮助 peer 发现它们?

    我们需要排序服务,以实现交易的总排序。对等点也不需要订购服务来检测无效交易/伪造交易。运行多值并发控制以检测基于当前状态数据库的并发修改以诚实交易顺序的对等点在这里也很重要。此外,同行检查背书政策的履行情况。

    1. 这就是我真正感到困惑的地方。订购服务节点是否验证某些内容?您能告诉我订购服务是做什么的吗?(我们可以从订购服务中得到什么?或者订购服务能确保什么?)

    只要客户端有适当的读/写通道写入,排序服务节点 (OSN) 就会验证。再次最终确定,订购服务需要识别提交给它的交易的总订单语义。排序服务是可插拔的组件,实际上可以使用任何可用的共识算法。目前有基于 Kafka 的排序服务,它提供 CFT(Crash-Fault-Tolerant)保证,正在开展工作以提供支持 BFT(拜占庭-容错)的排序服务实现。

    【讨论】:

    • 非常感谢!!!我真的很感谢你的评论。这澄清了我想知道的一切!
    【解决方案2】:

    订购服务管理多个渠道。在每个频道上,它都提供以下服务:

    (1) 原子广播,用于建立交易顺序,实现广播和传递调用。

    (2) 通道的重新配置,当其成员通过广播配置更新事务来修改通道时

    (3) 可选地,访问控制,在排序服务充当受信任实体的配置中,限制向指定客户端和对等方广播交易和接收块。

    可以参考http://vukolic.com/fabric.pdf

    【讨论】:

    • 感谢您的建议!我正在阅读您希望我阅读的论文!
    猜你喜欢
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-13
    • 1970-01-01
    • 1970-01-01
    • 2015-09-25
    • 1970-01-01
    相关资源
    最近更新 更多