CN109561160A - 基于分布式哈希列表的网络初始节点引导方法及设备 - Google Patents
基于分布式哈希列表的网络初始节点引导方法及设备 Download PDFInfo
- Publication number
- CN109561160A CN109561160A CN201910078437.XA CN201910078437A CN109561160A CN 109561160 A CN109561160 A CN 109561160A CN 201910078437 A CN201910078437 A CN 201910078437A CN 109561160 A CN109561160 A CN 109561160A
- Authority
- CN
- China
- Prior art keywords
- node
- nodal information
- alternative
- list
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开内容公开了基于分布式哈希列表的网络初始节点引导方法及设备,该方法包括:接收节点请求;校验在最近访问节点数据集中是否存在与新节点的节点信息完全相同的节点信息;当不存在与新节点的节点信息完全相同的节点信息时,确定备选节点列表中是否存在与新节点的唯一标识不同的节点信息;当存在与新节点的唯一标识不同的节点信息时,返回从备选节点列表中选择的、与新节点的节点信息不同的至少一条节点信息;以及将新节点的节点信息保存在最近访问节点数据集中。本公开增加最近访问节点数据集以及备选节点列表,使得新加入的节点首先加入最近访问节点数据集,以防止部分DDos攻击,并且利用备选节点列表来分散已加入网络的节点的访问压力。
Description
技术领域
本公开内容属于区块链技术领域,尤其涉及一种基于分布式哈希列表的网络初始节点引导方法以及一种基于分布式哈希列表的网络初始节点引导设备。
背景技术
DHT全称叫分布式哈希表(也即,Distributed Hash Table,简称DHT),是一种分布式存储方法。在不需要服务器的情况下,每个客户端负责一个小范围的路由,并负责存储部分数据,从而实现整个DHT网络的寻址和存储。
一个新节点需要知道某个网络中已经存在的节点地址才能加入该网络。新加入该网络的节点通常对网络中已有的节点不知情,目前的技术有通过中心服务器提供初始数据,或者通过用于发现网络的广播协议获取其他节点数据。这种服务称为初始节点引导(bootstrap)服务。
现有的广播协议主要适用于局域网,在公网条件下,最可行的是中心服务器。如果通过中心服务器,需要解决的问题是中心服务器对于DHT网络中节点地址的获取,对获取到的庞大数据维护,要保证地址数据的正确可达性。以及对于新节点的请求,尽量避免短时间内返回相同的地址,否则会增加返回的地址对应的节点的访问压力。
发明内容
由于目前市场上的广播协议主要通过中心服务器实现新节点加入网络,因此存在中心服务器如何获取该网络中节点地址的问题,对获取到的庞大数据维护如何保证地址数据的正确可达性的问题,以及对于新节点的请求,如何尽量减少返回的地址对应的节点的访问压力的问题。
针对上述问题,本公开内容的第一方面提出了一种基于分布式哈希列表的网络初始节点引导方法,所述方法包括:
接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识以及网络地址;
校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息,其中,所述最近访问节点数据集包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述最近访问节点数据集中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表中是否存在与所述新节点的唯一标识不同的节点信息,其中,所述备选节点列表包括与所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息;以及
将所述新节点的节点信息保存在所述最近访问节点数据集中。
根据本公开内容的第一方面,在接收节点请求之前,所述方法进一步包括:
在内存中不存在所述最近访问节点数据集的情况下,从持久化数据库中加载所述最近访问节点数据集,其中,所述持久化数据库包括所述最近访问节点数据集以及所述网络的节点信息;
在所述内存中不存在所述备选节点列表的情况下,从所述持久化数据库中随机选择至多两个桶的节点信息保存在所述备选节点列表。
根据本公开内容的第一方面,在内存中存在所述备选节点列表的情况下,所述方法进一步包括:
删除所述备选节点列表中重复的节点信息;
删除所述备选节点列表中与不可达节点相对应的节点信息,其中,所述不可达节点是不再属于所述网络的节点;
在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。
根据本公开内容的第一方面,删除所述备选节点列表中重复的节点信息进一步包括:
确定所述备选节点列表中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
根据本公开内容的第一方面,删除所述备选节点列表中与不可达节点相对应的节点信息进一步包括:
在每间隔第一配置时间段,基于所述备选节点列表中的每个节点的节点地址向所述节点发送ping消息;
确定在发送所述ping消息之后的第二配置时间段内是否收到所述节点返回的pong消息;
在确定所述第二配置时间段内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表中删除所述节点的节点信息。
根据本公开内容的第一方面,基于所述持久化数据库更新所述备选节点列表进一步包括:
从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库中;
从所述持久化数据库中随机选择一个第二桶的节点信息加入所述备选节点列表,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
根据本公开内容的第一方面,校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息进一步包括:
校验所述新节点的唯一标识是否与所述最近访问节点数据集中的任一节点的唯一标识相同;
在所述新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
根据本公开内容的第一方面,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息进一步包括:
在所述备选节点列表中,选择所述备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息;
返回所选择节点信息中的网络地址;
将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
记录所选择节点信息的被选中次数。
根据本公开内容的第一方面,所述方法进一步包括:
在每间隔第三配置时间段,确定所述备选节点列表中达到预设被选中次数的节点信息的数量;
当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
从所述持久化数据库中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
根据本公开内容的第一方面,在将所述新节点的节点信息保存在所述最近访问节点数据集中之后,所述方法进一步包括:
确定所述最近访问节点数据集中的节点信息的数量是否达到第二设定阈值;
在确定所述最近访问节点数据集中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集中的节点信息保存在所述持久化数据库中;
将已保存到所述持久化数据库中的节点信息从所述最近访问节点数据集中删除。
针对上述问题,本公开内容的第二方面提出了一种基于分布式哈希列表的网络初始节点引导设备,所述初始节点引导设备包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识以及网络地址;
校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息,其中,所述最近访问节点数据集包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述最近访问节点数据集中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表中是否存在与所述新节点的唯一标识不同的节点信息,其中,所述备选节点列表包括与所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息;以及
将所述新节点的节点信息保存在所述最近访问节点数据集中。
根据本公开内容的第二方面,在接收节点请求之前,当所述指令执行时使得所述处理器进一步执行以下操作:
在内存中不存在所述最近访问节点数据集的情况下,从持久化数据库中加载所述最近访问节点数据集,其中,所述持久化数据库包括所述最近访问节点数据集以及所述网络的节点信息;
在所述内存中不存在所述备选节点列表的情况下,从所述持久化数据库中随机选择至多两个桶的节点信息保存在所述备选节点列表。
根据本公开内容的第二方面,在内存中存在所述备选节点列表的情况下,当所述指令执行时使得所述处理器进一步执行以下操作:
删除所述备选节点列表中重复的节点信息;
删除所述备选节点列表中与不可达节点相对应的节点信息,其中,所述不可达节点是不再属于所述网络的节点;
在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。
根据本公开内容的第二方面,删除所述备选节点列表中重复的节点信息进一步包括:
确定所述备选节点列表中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
根据本公开内容的第二方面,删除所述备选节点列表中与不可达节点相对应的节点信息进一步包括:
在每间隔第一配置时间段,基于所述备选节点列表中的每个节点的节点地址向所述节点发送ping消息;
确定在发送所述ping消息之后的第二配置时间段内是否收到所述节点返回的pong消息;
在确定所述第二配置时间段内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表中删除所述节点的节点信息。
根据本公开内容的第二方面,基于所述持久化数据库更新所述备选节点列表进一步包括:
从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库中;
从所述持久化数据库中随机选择一个第二桶的节点信息加入所述备选节点列表,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
根据本公开内容的第二方面,校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息进一步包括:
校验所述新节点的唯一标识是否与所述最近访问节点数据集中的任一节点的唯一标识相同;
在所述新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
根据本公开内容的第二方面,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息进一步包括:
在所述备选节点列表中,选择所述备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息;
返回所选择节点信息中的网络地址;
将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
记录所选择节点信息的被选中次数。
根据本公开内容的第二方面,当所述指令执行时使得所述处理器进一步执行以下操作:
在每间隔第三配置时间段,确定所述备选节点列表中达到预设被选中次数的节点信息的数量;
当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
从所述持久化数据库中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
根据本公开内容的第二方面,在将所述新节点的节点信息保存在所述最近访问节点数据集中之后,当所述指令执行时使得所述处理器进一步执行以下操作:
确定所述最近访问节点数据集中的节点信息的数量是否达到第二设定阈值;
在确定所述最近访问节点数据集中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集中的节点信息保存在所述持久化数据库中;
将已保存到所述持久化数据库中的节点信息从所述最近访问节点数据集中删除。
依据本公开内容的基于分布式哈希列表的网络初始节点引导方法及设备能够首先对请求加入网络的新节点进行查重处理,以防止部分分布式拒绝服务(也即,DistributeDenial of Service,简称DDos)攻击;还能够分散已加入网络的节点的被访问压力;对于初始节点引导服务生命周期中添加的加入网络的节点庞大的数据,保证只有部分可控的数据量常驻任一节点内存,并通过备选节点列表的周期可达性检查,保证对新节点的加入请求的正确响应。
附图说明
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实施例,在附图中:
图1为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的示意性流程图之一;
图2为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的示意性流程图之二;
图3为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的示意性流程图之三;
图4为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的示意性流程图之四;
图5为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的示意性流程图之五;
图6为依据本公开内容的基于分布式哈希列表的网络初始节点引导方法的实施例示意图;以及
图7为依据本公开内容的基于分布式哈希列表的网络初始节点引导设备700的示意图。
具体实施方式
以下参考附图详细描述本公开的各个示例性实施例。附图中的流程图和框图示出了根据本公开的各种实施例的方法和***的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以使用专用硬件与计算机指令的组合来实现。
本公开内容的实施例主要关注以下技术问题:当新节点加入任一网络总时,如何确保新节点获取地址数据的正确可达性,以及对于新节点的加入请求如何减少返回地址所对应的节点的被访问压力。
为了解决上述问题,本公开内容实现了基于分布式哈希列表的网络初始节点引导方法及设备,在任一网络(例如,区块链网络)的任一节点上创建了最近访问节点数据集、备选节点列表以及持久化数据库分别存储不同类型的数据,并采用分布式哈希表来实现在新节点加入该网络时所获取的地址数据准确,并且减少新节点所接收到的地址数据所对应的节点的被访问压力。
区块链(Blockchain)技术是一种基于去中心化的对等网络的技术,其将密码学原理与共识机制相结合来保障分布式各节点的数据连贯和持续,从而实现信息即时验证、可追溯、难篡改和无法屏蔽之目的,进而创造了一套隐私、高效、安全的共享价值体系。基于上述区块链的特性,区块链技术越来越普遍应用到各个领域。然而,现有技术中,节点请求加入区块链网络时获取区块链网络中已存在的节点信息需要通过相对复杂、耗时的加入过程,如何提高节点加入区块链网络的效率也是相关领域技术人员亟待解决的问题。
本文所公开的网络初始节点引导方法既能够应用于各种局域网络,特别是能够有效地应用于区块链网络,来提高节点加入各种网络的效率。
如图1所示,公开了一种基于分布式哈希列表的网络初始节点引导方法。如图6所公开的实施例,基于DHT的网络610(可以是例如区块链网络等)包括多个网络节点(例如,第一网络节点630、第二网络节点611等),经设置后,基于DHT的网络610中的一个或多个网络节点都可以实现初始节点引导服务。例如,在本实施例中,可以设置第一网络节点630来实现初始节点引导服务,在第一网络节点630至少包括最近访问节点数据集631、备选节点列表632以及持久化数据库633;其中,所述最近访问节点数据集631包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息,所述备选节点列表632包括与所述网络的一个或多个节点相对应的一条或多条节点信息,并且所述持久化数据库633包括所述最近访问节点数据集以及所述网络的节点信息。
当初始节点引导服务启动时,第一网络节点630首先要完成以下动作:
首先,在内存中不存在所述最近访问节点数据集631的情况下,从持久化数据库633中加载所述最近访问节点数据集。
在本公开内容中,所述最近访问节点数据集用于记录加入任一网络(例如,基于DHT的网络610)的节点信息,从而防止在任一时间段内重复记录相同的节点信息。
其次,在所述内存中不存在所述备选节点列表632的情况下,从所述持久化数据库633中随机选择至多两个桶的节点信息保存在所述备选节点列表632。
在本文中,所述备选节点列表632用于确保节点信息的有效性,从而保证新节点能够访问其所接收到的节点信息所对应的节点。所述持久化数据库633用于防止第一网络节点630的内存数据量过大,也防止内存数据容易丢失,从而将不经常使用的内存数据转移到持久化数据库633所在的文件***中。
在步骤110之前完成上述动作,能够确保当第一网络节点630监听到新节点620所发出的节点请求时有效地实现对该节点请求的处理。另外,最近访问节点数据集631、备选节点列表632保存在第一网络节点630的内存中,与持久化数据库633交换数据以(举例而不限于)桶为单位进行,由此能够减少对持久化数据库633输入输出读写频率。
如图6所示,新节点620向基于DHT的网络610的第一网络节点630发送节点请求,第一网络节点630具体执行如下步骤来实现将新节点620加入基于DHT的网络610中:
步骤110:接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识(例如,节点ID)以及网络地址。
步骤120:校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息。
针对步骤120,第一网络节点630具体操作如下:
第一,校验所述新节点的唯一标识是否与所述最近访问节点数据集631中的任一节点的唯一标识相同。
所公开的校验机制(也即,查重机制)可以依据访问数据量大小进行调整;如果单位时间访问数据量大,则可以考虑用计数布隆过滤器,如果单位时间访问数据量少,则可以按照哈希表等一般校验方法即可。
第二,在新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
第三,在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
第一网络节点630所进行的步骤120的操作,能够有效地防止同一节点频繁的发出节点请求由此导致重复数据过多的问题出现,也能够防止部分DDoS攻击。
步骤130:在所述最近访问节点数据集631中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表632中是否存在与所述新节点的唯一标识不同的节点信息。
在所述备选节点列表中仅存在与所述新节点的唯一标识相同的节点信息的情况下,表明该新节点620是基于DHT的网络610的唯一节点,返回“null”至新节点620。
步骤140:在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息(例如,图6中第二网络节点611的节点信息),使得所述新节点620接收所选择的节点信息,所述新节点620基于所接收的节点信息来访问该节点信息所对应的节点(例如,第二网络节点611)。
如图2所示,针对步骤140,第一网络节点630具体操作如下:
步骤141:在所述备选节点列表中,选择该备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息。
步骤142:返回所选择节点信息中的网络地址(例如,图6中第二网络节点611的网络地址);
步骤143:将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
步骤144:记录所选择节点信息的被选中次数。
另外,如图5所示,针对所记录的被选中次数,第一网络节点630还进行如下操作:
步骤510:在每间隔第三配置时间段T3,确定所述备选节点列表632中达到预设被选中次数的节点信息的数量;该达到预设被选中次数用于确定任一节点信息是否被过于频繁的发送给发送节点请求的不同新节点。
步骤520:确定所述备选节点列表中达到预设被选中次数的节点信息的数量是否达到第一设定阈值;
步骤530:当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
当确定达到预设被选中次数的节点信息的数量达到第一设定阈值时,表明达到预设被选中次数的节点信息的数量足够多,需要从持久化数据库633中获取新的桶的节点信息,以减轻节点的被访问压力。
步骤540:从所述持久化数据库633中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
第一网络节点630所进行的步骤141-144以及步骤510-540的操作,能够有效地防止基于DHT的网络610中的同一节点在一段时间内被频繁访问,第一网络节点630在所述备选节点列表632中可以以队列或堆的形式对备选节点列表632内的节点信息按照读取顺序和次数进行管理,从而分散了被访问的已加入基于DHT的网络610的节点访问压力。
另外,当第一网络节点630判断在其内存中存在所述备选节点列表的情况下,如图3所示,第一网络节点630在执行步骤110-140的同时还可以同步或异步执行以下动作:
步骤310:删除所述备选节点列表中重复的节点信息;第一网络节点630具体操作如下:
第一,确定所述备选节点列表632中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
第二,在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表632中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
步骤320:删除所述备选节点列表中与不可达节点相对应的节点信息。如图4所示,第一网络节点630针对步骤320的具体操作如下:
步骤321:在每间隔第一配置时间段T1,基于所述备选节点列表632中的每个节点的节点地址向所述节点发送ping消息;
步骤322:确定在发送所述ping消息之后的第二配置时间段T2内是否收到所述节点返回的pong消息;
步骤323:在确定所述第二配置时间段T2内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表632中删除所述节点的节点信息。
在本实施例中,所述不可达节点是不再属于所述网络(例如,基于DHT的网络610)的节点。
步骤330:在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。第一网络节点630针对步骤330的具体操作如下:
首先,从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将经步骤310、320获得的删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库633中;
其次,从所述持久化数据库633中随机选择一个第二桶的节点信息加入所述备选节点列表632,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
第一网络节点630所进行的步骤310-330的操作能够有效地确保备选节点列表632所包含的每一条节点信息都是单一有效的,从而确保向新节点620返回的节点信息有效,最终提高了初始节点引导结果的有效性。
步骤150:将所述新节点620的节点信息保存在所述最近访问节点数据集631中。
在步骤150之后,第一网络节点630还需要执行以下动作:
首先,确定所述最近访问节点数据集631中的节点信息的数量是否达到第二设定阈值。
其次,在确定所述最近访问节点数据集631中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集631中的节点信息保存在所述持久化数据库633中。
第三,将已保存到所述持久化数据库633中的节点信息从所述最近访问节点数据集631中删除。
上述步骤的执行,使得最近一段时间内加入基于DHT的网络610的新节点的信息保存到持久化数据库633中,从而实现了对于bootstrap服务生命周期中添加的加入基于DHT的网络610的节点庞大的数据,保证只有部分可控的数据量常驻第一网络节点630的内存中,并通过备选节点列表632进行周期地可达性检查,确保对新节点的节点请求的正确响应。
图7所示,本文所公开的基于分布式哈希列表的网络初始节点引导设备700能够实现图1-图6所公开的基于分布式哈希列表的网络初始节点引导方法。该初始节点引导设备700包括处理器710和存储器720。其中,存储器720被配置为存储指令,使得处理器710执行以下操作:
接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识以及网络地址;
校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息,其中,所述最近访问节点数据集包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述最近访问节点数据集中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表中是否存在与所述新节点的唯一标识不同的节点信息,其中,所述备选节点列表包括与所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息;以及
将所述新节点的节点信息保存在所述最近访问节点数据集中。
在依据本公开内容的一个实施例中,在接收节点请求之前,当所述指令执行时使得所述处理器710进一步执行以下操作:
在内存中不存在所述最近访问节点数据集的情况下,从持久化数据库中加载所述最近访问节点数据集,其中,所述持久化数据库包括所述最近访问节点数据集以及所述网络的节点信息;
在所述内存中不存在所述备选节点列表的情况下,从所述持久化数据库中随机选择至多两个桶的节点信息保存在所述备选节点列表。
在依据本公开内容的一个实施例中,在内存中存在所述备选节点列表的情况下,当所述指令执行时使得所述处理器710进一步执行以下操作:
删除所述备选节点列表中重复的节点信息;
删除所述备选节点列表中与不可达节点相对应的节点信息,其中,所述不可达节点是不再属于所述网络的节点;
在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。
在依据本公开内容的一个实施例中,删除所述备选节点列表中重复的节点信息进一步包括:
确定所述备选节点列表中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
在依据本公开内容的一个实施例中,删除所述备选节点列表中与不可达节点相对应的节点信息进一步包括:
在每间隔第一配置时间段,基于所述备选节点列表中的每个节点的节点地址向所述节点发送ping消息;
确定在发送所述ping消息之后的第二配置时间段内是否收到所述节点返回的pong消息;
在确定所述第二配置时间段内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表中删除所述节点的节点信息。
在依据本公开内容的一个实施例中,基于所述持久化数据库更新所述备选节点列表进一步包括:
从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库中;
从所述持久化数据库中随机选择一个第二桶的节点信息加入所述备选节点列表,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
在依据本公开内容的一个实施例中,校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息进一步包括:
校验所述新节点的唯一标识是否与所述最近访问节点数据集中的任一节点的唯一标识相同;
在新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
在依据本公开内容的一个实施例中,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息进一步包括:
在所述备选节点列表中,选择所述备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息;
返回所选择节点信息中的网络地址;
将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
记录所选择节点信息的被选中次数。
在依据本公开内容的一个实施例中,当所述指令执行时使得所述处理器710进一步执行以下操作:
在每间隔第三配置时间段,确定所述备选节点列表中达到预设被选中次数的节点信息的数量;
当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
从所述持久化数据库中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
在依据本公开内容的一个实施例中,在将所述新节点的节点信息保存在所述最近访问节点数据集中之后,当所述指令执行时使得所述处理器进一步执行以下操作:
确定所述最近访问节点数据集中的节点信息的数量是否达到第二设定阈值;
在确定所述最近访问节点数据集中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集中的节点信息保存在所述持久化数据库中;
将已保存到所述持久化数据库中的节点信息从所述最近访问节点数据集中删除。
本公开内容所公开的基于分布式哈希列表的网络初始节点引导设备700能够将新节点的节点信息加入最近访问节点数据集中,并在加入该最近访问节点数据集中之前设置查重机制,从而防止部分DDoS攻击;另外,将持久化数据库中的节点信息以桶为单位取出后保存在备选节点列表,同时设定该备选节点列表维护访问指针以及访问次数计数,以队列或堆的形式对备选节点列表内的节点信息按照读取顺序和次数进行管理,由此可以分散被访问的已加入网络的节点的访问压力。此外,对于bootstrap服务生命周期中添加的加入该网络的节点庞大的数据,保证只有部分可控的数据量常驻内存,并通过备选列表的周期可达性检查,保证对新加入节点的节点请求的正确响应。
替代地,上述的初始节点引导方法能够通过计算机程序产品来实现。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
以上所述仅为本公开的实施例可选实施例,并不用于限制本公开的实施例,对于本领域的技术人员来说,本公开的实施例可以有各种更改和变化。凡在本公开的实施例的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的实施例的保护范围之内。
虽然已经参考若干具体实施例描述了本公开的实施例,但是应该理解,本公开的实施例并不限于所公开的具体实施例。本公开的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
Claims (20)
1.一种基于分布式哈希列表的网络初始节点引导方法,所述方法包括:
接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识以及网络地址;
校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息,其中,所述最近访问节点数据集包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述最近访问节点数据集中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表中是否存在与所述新节点的唯一标识不同的节点信息,其中,所述备选节点列表包括与所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息;以及
将所述新节点的节点信息保存在所述最近访问节点数据集中。
2.根据权利要求1所述的初始节点引导方法,其中,在接收节点请求之前,所述方法进一步包括:
在内存中不存在所述最近访问节点数据集的情况下,从持久化数据库中加载所述最近访问节点数据集,其中,所述持久化数据库包括所述最近访问节点数据集以及所述网络的节点信息;
在所述内存中不存在所述备选节点列表的情况下,从所述持久化数据库中选择至多两个桶的节点信息保存在所述备选节点列表。
3.根据权利要求1或2所述的初始节点引导方法,其中,在内存中存在所述备选节点列表的情况下,所述方法进一步包括:
删除所述备选节点列表中重复的节点信息;
删除所述备选节点列表中与不可达节点相对应的节点信息,其中,所述不可达节点是不再属于所述网络的节点;
在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。
4.根据权利要求3所述的初始节点引导方法,其中,删除所述备选节点列表中重复的节点信息进一步包括:
确定所述备选节点列表中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
5.根据权利要求3所述的初始节点引导方法,其中,删除所述备选节点列表中与不可达节点相对应的节点信息进一步包括:
在每间隔第一配置时间段,基于所述备选节点列表中的每个节点的节点地址向所述节点发送ping消息;
确定在发送所述ping消息之后的第二配置时间段内是否收到所述节点返回的pong消息;
在确定所述第二配置时间段内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表中删除所述节点的节点信息。
6.根据权利要求3所述的初始节点引导方法,其中,基于所述持久化数据库更新所述备选节点列表进一步包括:
从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库中;
从所述持久化数据库中随机选择一个第二桶的节点信息加入所述备选节点列表,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
7.根据权利要求1所述的初始节点引导方法,其中,校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息进一步包括:
校验所述新节点的唯一标识是否与所述最近访问节点数据集中的任一节点的唯一标识相同;
在所述新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
8.根据权利要求1所述的初始节点引导方法,其中,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息进一步包括:
在所述备选节点列表中,选择所述备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息;
返回所选择节点信息中的网络地址;
将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
记录所选择节点信息的被选中次数。
9.根据权利要求8所述的初始节点引导方法,其中,所述方法进一步包括:
在每间隔第三配置时间段,确定所述备选节点列表中达到预设被选中次数的节点信息的数量;
当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
从所述持久化数据库中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
10.根据权利要求1所述的初始节点引导方法,其中,在将所述新节点的节点信息保存在所述最近访问节点数据集中之后,所述方法进一步包括:
确定所述最近访问节点数据集中的节点信息的数量是否达到第二设定阈值;
在确定所述最近访问节点数据集中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集中的节点信息保存在所述持久化数据库中;
将已保存到所述持久化数据库中的节点信息从所述最近访问节点数据集中删除。
11.一种基于分布式哈希列表的网络初始节点引导设备,所述初始节点引导设备包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
接收节点请求,其中,所述节点请求包括请求加入网络的新节点的节点信息,所述节点信息包括节点的唯一标识以及网络地址;
校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息,其中,所述最近访问节点数据集包括与请求加入所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述最近访问节点数据集中不存在与所述新节点的节点信息完全相同的节点信息的情况下,确定备选节点列表中是否存在与所述新节点的唯一标识不同的节点信息,其中,所述备选节点列表包括与所述网络的一个或多个节点相对应的一条或多条节点信息;
在所述备选节点列表中存在与所述新节点的唯一标识不同的节点信息的情况下,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息;以及
将所述新节点的节点信息保存在所述最近访问节点数据集中。
12.根据权利要求11所述的初始节点引导设备,其中,在接收节点请求之前,当所述指令执行时使得所述处理器进一步执行以下操作:
在内存中不存在所述最近访问节点数据集的情况下,从持久化数据库中加载所述最近访问节点数据集,其中,所述持久化数据库包括所述最近访问节点数据集以及所述网络的节点信息;
在所述内存中不存在所述备选节点列表的情况下,从所述持久化数据库中选择至多两个桶的节点信息保存在所述备选节点列表。
13.根据权利要求11所述的初始节点引导设备,其中,在内存中存在所述备选节点列表的情况下,当所述指令执行时使得所述处理器进一步执行以下操作:
删除所述备选节点列表中重复的节点信息;
删除所述备选节点列表中与不可达节点相对应的节点信息,其中,所述不可达节点是不再属于所述网络的节点;
在确定删除后的备选节点列表中的节点信息数量不大于一个桶的数据量的情况下,基于所述持久化数据库更新所述备选节点列表。
14.根据权利要求13所述的初始节点引导设备,其中,删除所述备选节点列表中重复的节点信息进一步包括:
确定所述备选节点列表中是否存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息;
在确定存在两条或多条节点的唯一标识以及网络地址完全相同的节点信息的情况下,在所述备选节点列表中仅保留一条具有所述节点的唯一标识以及网络地址的节点信息。
15.根据权利要求13所述的初始节点引导设备,其中,删除所述备选节点列表中与不可达节点相对应的节点信息进一步包括:
在每间隔第一配置时间段,基于所述备选节点列表中的每个节点的节点地址向所述节点发送ping消息;
确定在发送所述ping消息之后的第二配置时间段内是否收到所述节点返回的pong消息;
在确定所述第二配置时间段内未收到所述节点返回的pong消息的情况下,确定所述节点是不可达节点,并从所述备选节点列表中删除所述节点的节点信息。
16.根据权利要求13所述的初始节点引导设备,其中,基于所述持久化数据库更新所述备选节点列表进一步包括:
从所述持久化数据库中删除提供给所述内存的所述备选节点列表的节点信息,并将删除后的备选节点列表中的节点信息作为第一桶的节点信息保存在所述持久化数据库中;
从所述持久化数据库中随机选择一个第二桶的节点信息加入所述备选节点列表,其中,所述第二桶的节点信息与所述第一桶的节点信息不同。
17.根据权利要求11所述的初始节点引导设备,其中,校验在最近访问节点数据集中是否存在与所述新节点的节点信息完全相同的节点信息进一步包括:
校验所述新节点的唯一标识是否与所述最近访问节点数据集中的任一节点的唯一标识相同;
在所述新节点的唯一标识与所述最近访问节点数据集中的任一节点的唯一标识相同的情况下,校验所述新节点的网络地址是否与具有相同唯一标识的节点的网络地址相同;
在确定网络地址不同的情况下,将所述新节点的节点信息替代具有相同唯一标识的节点信息。
18.根据权利要求11所述的初始节点引导设备,其中,返回从所述备选节点列表中选择的、与所述新节点的节点信息不同的至少一条节点信息进一步包括:
在所述备选节点列表中,选择所述备选节点列表的读指针所指向的、与所述新节点的节点信息不同的节点信息;
返回所选择节点信息中的网络地址;
将所述备选节点列表的读指针指向所述备选节点列表中的下一条节点信息;
记录所选择节点信息的被选中次数。
19.根据权利要求18所述的初始节点引导设备,其中,当所述指令执行时使得所述处理器进一步执行以下操作:
在每间隔第三配置时间段,确定所述备选节点列表中达到预设被选中次数的节点信息的数量;
当所述数量达到第一设定阈值时,将所述达到预设被选中次数的节点信息从所述备选节点列表中删除;
从所述持久化数据库中随机选择至少一个第三桶的节点信息保存在所述备选节点列表中,其中,所述第三桶的节点信息与所述备选节点列表中先前保存的节点信息不同。
20.根据权利要求11所述的初始节点引导设备,其中,在将所述新节点的节点信息保存在所述最近访问节点数据集中之后,当所述指令执行时使得所述处理器进一步执行以下操作:
确定所述最近访问节点数据集中的节点信息的数量是否达到第二设定阈值;
在确定所述最近访问节点数据集中的节点信息的数量达到所述第二设定阈值的情况下,将所述最近访问节点数据集中的节点信息保存在所述持久化数据库中;
将已保存到所述持久化数据库中的节点信息从所述最近访问节点数据集中删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910078437.XA CN109561160A (zh) | 2019-01-28 | 2019-01-28 | 基于分布式哈希列表的网络初始节点引导方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910078437.XA CN109561160A (zh) | 2019-01-28 | 2019-01-28 | 基于分布式哈希列表的网络初始节点引导方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109561160A true CN109561160A (zh) | 2019-04-02 |
Family
ID=65873688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910078437.XA Pending CN109561160A (zh) | 2019-01-28 | 2019-01-28 | 基于分布式哈希列表的网络初始节点引导方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109561160A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110650097A (zh) * | 2019-09-20 | 2020-01-03 | 腾讯科技(深圳)有限公司 | 一种数据传播方法、装置以及计算机可读存储介质 |
CN110784549A (zh) * | 2019-11-01 | 2020-02-11 | 深圳市网心科技有限公司 | 网络节点选择方法、装置、第一网络节点及存储介质 |
CN111064798A (zh) * | 2019-12-25 | 2020-04-24 | 深圳市网心科技有限公司 | 节点入网方法、装置、客户端节点及存储介质 |
US20210097538A1 (en) * | 2019-09-27 | 2021-04-01 | Cypherium Blockchain Inc. | Systems and methods for managing data generation, storage, and verification in a distributed system having a committee of validator nodes |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1553747A1 (en) * | 2004-01-09 | 2005-07-13 | NTT DoCoMo, Inc. | Network topology configuring method and node |
CN101510892A (zh) * | 2008-12-15 | 2009-08-19 | 中原工学院 | 用于网络通信***的命名服务方案及利用其实现的通信方法 |
CN101557335A (zh) * | 2008-04-11 | 2009-10-14 | 华为技术有限公司 | 控制节点加入对等网络的方法和装置 |
CN101616171A (zh) * | 2008-06-27 | 2009-12-30 | 华为技术有限公司 | 一种维护引导节点状态的方法、装置和*** |
CN101783742A (zh) * | 2010-03-10 | 2010-07-21 | 杭州华三通信技术有限公司 | 一种网络拓扑的发现方法和设备 |
CN102857536A (zh) * | 2011-07-01 | 2013-01-02 | 中兴通讯股份有限公司 | 对等网络中实现数据备份及迁移的方法及*** |
CN104378302A (zh) * | 2010-09-08 | 2015-02-25 | 华为技术有限公司 | 应用链路状态路由的二层协议中的地址对应关系发送方法 |
-
2019
- 2019-01-28 CN CN201910078437.XA patent/CN109561160A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1553747A1 (en) * | 2004-01-09 | 2005-07-13 | NTT DoCoMo, Inc. | Network topology configuring method and node |
CN101557335A (zh) * | 2008-04-11 | 2009-10-14 | 华为技术有限公司 | 控制节点加入对等网络的方法和装置 |
CN101616171A (zh) * | 2008-06-27 | 2009-12-30 | 华为技术有限公司 | 一种维护引导节点状态的方法、装置和*** |
CN101510892A (zh) * | 2008-12-15 | 2009-08-19 | 中原工学院 | 用于网络通信***的命名服务方案及利用其实现的通信方法 |
CN101783742A (zh) * | 2010-03-10 | 2010-07-21 | 杭州华三通信技术有限公司 | 一种网络拓扑的发现方法和设备 |
CN104378302A (zh) * | 2010-09-08 | 2015-02-25 | 华为技术有限公司 | 应用链路状态路由的二层协议中的地址对应关系发送方法 |
CN102857536A (zh) * | 2011-07-01 | 2013-01-02 | 中兴通讯股份有限公司 | 对等网络中实现数据备份及迁移的方法及*** |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110650097A (zh) * | 2019-09-20 | 2020-01-03 | 腾讯科技(深圳)有限公司 | 一种数据传播方法、装置以及计算机可读存储介质 |
US20210097538A1 (en) * | 2019-09-27 | 2021-04-01 | Cypherium Blockchain Inc. | Systems and methods for managing data generation, storage, and verification in a distributed system having a committee of validator nodes |
US11907174B2 (en) * | 2019-09-27 | 2024-02-20 | Cypherium Blockchain Inc. | Systems and methods for managing data generation, storage, and verification in a distributed system having a committee of validator nodes |
CN110784549A (zh) * | 2019-11-01 | 2020-02-11 | 深圳市网心科技有限公司 | 网络节点选择方法、装置、第一网络节点及存储介质 |
CN111064798A (zh) * | 2019-12-25 | 2020-04-24 | 深圳市网心科技有限公司 | 节点入网方法、装置、客户端节点及存储介质 |
CN111064798B (zh) * | 2019-12-25 | 2022-10-21 | 深圳市网心科技有限公司 | 节点入网方法、装置、客户端节点及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109561160A (zh) | 基于分布式哈希列表的网络初始节点引导方法及设备 | |
CN103136243B (zh) | 基于云存储的文件***去重方法及装置 | |
CN109902086B (zh) | 一种索引创建方法、装置及设备 | |
CN107329741A (zh) | 一种基于指纹识别的软件分布式升级方法与装置 | |
CN110673800B (zh) | 文件***的数据操作方法、装置、设备及可读存储介质 | |
EP3709568A1 (en) | Deleting user data from a blockchain | |
CN108021590A (zh) | 一种目标对象属性确定方法、属性更新方法及装置 | |
CN109117275A (zh) | 基于数据分片的对账方法、装置、计算机设备及存储介质 | |
CN110008743B (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN106021335A (zh) | 访问数据库的方法及装置 | |
CN110827028A (zh) | 一种基于区块链的数据采集交易***和方法 | |
CN110019278B (zh) | 一种数据验证方法、装置及设备 | |
CN110008203B (zh) | 一种数据清除方法、装置及设备 | |
CN108228646A (zh) | 用于访问数据的方法和电子设备 | |
CN110502363A (zh) | 一种业务规则的校验方法、设备及可读介质 | |
CN106227769B (zh) | 数据存储方法及装置 | |
CN106844676A (zh) | 数据存储方法及装置 | |
CN109471843A (zh) | 一种元数据缓存方法、***及相关装置 | |
CN109583861B (zh) | key-value数据库中的数据压缩方法、访问方法和*** | |
CN110442307A (zh) | 一种Linux***中磁盘的绑定方法、设备以及存储介质 | |
CN109726340A (zh) | 统一资源定位符分类的查询方法及装置 | |
CN107911335A (zh) | 校验统一资源标识符uri的方法、装置和*** | |
CN106649530B (zh) | 云详单查询管理***及方法 | |
CN106294033A (zh) | 一种多机房缓存同步功能的测试方法及装置 | |
CN110008210B (zh) | 一种索引创建方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190402 |