围绕主节点(Leader)的疑问
来源:8-4 展望未来

LINGMAR
2020-10-12
老师,您好。关于主节点我有这样的疑问。
众所周知,在单个Org组织中,只存在一个主节点负责与Orderer排序服务连接,负责拉取区块。
但问题就出在多通道的情况下。
在图中存在两个通道,分别是通道A(蓝色)和通道B(红色)。如果只允许每个Org组织中的主节点与Orderer服务连接。那么,就会导致主节点同时拥有A和B两个通道的区块,通道间的隔离性和隐私安全将如何保证?
针对这个问题,我查阅了官方文档和一些博客。但彼此的答案存在冲突。比如官方是这样解释的
虽然这里是拿锚节点举的例子,但按照解释,主节点同理。简单来讲,主节点确实会接收到多个通道的区块,但内部已经实现了隔离,不会造成隐私和安全问题。
但同时,部分博客中却指出,主节点是针对通道而言的。就像这样
也就是说,从宏观上来看,一个组织中可能会存在多个主节点。但相对于不同的业务通道,各组织中只会有一个。
我应该如何理解这个问题呢?希望您详细说说,谢谢老师的回答。
2回答
-
首先,我们明确一个概念,fabric里的通道。按类比的来,每一个通道都相当于是一个比特币网络、以太坊网络。他们彼此间是独立的,非交互的。(要交互也是通过链码)。
另外,再明确锚节点跟主节点的定义。我个人理解,他们都是依赖于通道,如果脱离通道,只谈peer,他们是毫无意义的。
锚节点用于在组织间共享某通道所有peer信息的peer,基于锚节点获取的网络拓扑是通道为前提的。
主节点是某个组织内的某个通道的与orderer进行区块获取的节点。区块经由主节点到达组织内部,再通过gossip分发给组织内加入了该通道的其他peer。
所以,我觉得这个问题就比较清楚了,谈论主节点、锚节点必须在有通道的前提下,不然没有意义。
再者你说的,如果在一个peer上既有A、又有B,会有隔离与隐私的问题。这个问题大可不必担心,因为peer的设计初衷也不是一个peer只能加入一个通道,自始至终隔离与隐私的问题都存在,而不仅仅在这个问题纠结的主节点。
10 -
自游蜗牛
2020-10-12
等我找个周末时间好好回答
012020-10-13
相似问题