当前位置: 首页 > 专利查询>鹏城实验室专利>正文

区块链数据同步方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:37412206 阅读:7 留言:0更新日期:2023-04-30 09:37
本申请公开了区块链数据同步方法、装置、电子设备及可读存储介质,应用于目标区块链节点,所述区块链数据同步方法包括:若若检测到数据同步状态下的数据同步任务,则确定所述数据同步任务对应的待同步兴趣包,其中,所述数据同步任务由数据同步事件或数据同步周期触发;对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据;向所述目标区块链节点的相邻区块链节点发送所述目标同步数据对应的目标同步兴趣包,以同步所述目标区块链节点与所述相邻区块链节点之间的区块链数据。本申请解决了基于NDN网络架构的区块链数据的同步效果差的技术问题。步效果差的技术问题。步效果差的技术问题。

【技术实现步骤摘要】
区块链数据同步方法、装置、电子设备及可读存储介质


[0001]本申请涉及区块链
,尤其涉及一种区块链数据同步方法、装置、电子设备及可读存储介质。

技术介绍

[0002]区块链技术凭借着去中心化、不可篡改以及可溯源等特性,已逐步应用金融、物联网以及公共服务等众多领域,与此同时,随着区块链上的数据量日益庞大,如何建立安全且高效得区块链数据传输体系俨然成为了区块链
亟待解决的问题。
[0003]目前,一般通过将区块链部署于NDN(Named Data Networking,命名数据网络)网络架构中,利用NDN天然多播优势和网内缓存机制以有效地解决区块链数据传输效率问题,并且,为了使区块链数据能够透明化,通常会在NDN网络中设置数据轮询发送周期或者增加数据传输结构进行广播,但是,前者会受限于数据轮询发送周期而导致区块链数据的同步时间不可控,后者存在NDN数据分发机制和区块链的数据通信机制的兼容性问题,所以,当前基于NDN网络架构的区块链数据的同步效果差。

技术实现思路

[0004]本申请的主要目的在于提供一种区块链数据同步方法、装置、电子设备及可读存储介质,旨在解决现有技术中基于NDN网络架构的区块链数据的同步效果差的技术问题。
[0005]为实现上述目的,本申请提供一种区块链数据同步方法,应用于目标区块链节点,所述区块链数据同步方法包括:若检测到数据同步状态下的数据同步任务,则确定所述数据同步任务对应的待同步兴趣包,其中,所述数据同步任务由数据同步事件或数据同步周期触发;对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据;向所述目标区块链节点的相邻区块链节点发送所述目标同步数据对应的目标同步兴趣包,以同步所述目标区块链节点与所述相邻区块链节点之间的区块链数据。
[0006]可选地,所述所述数据同步任务包括第一数据同步任务和第二数据同步任务,所述确定所述数据同步任务对应的待同步兴趣包的步骤包括:若所述数据同步任务为所述第一数据同步任务,则在区块链数据池中获取对应的待同步数据;根据所述待同步数据,生成所述待同步兴趣包;或,若所述数据同步任务为所述第二数据同步任务,则接收区块链同步节点发送的待同步兴趣包。
[0007]可选地,所述待同步数据包括待同步区块数据和待同步交易数据,所述根据所述待同步数据,生成所述待同步兴趣包的步骤包括:将所述待同步交易数据封装为所述待同步兴趣包;或,获取所述待同步区块数据的区块信息;根据所述区块信息,生成所述待同步兴趣包。
[0008]可选地,所述对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据的步骤包括:在所述待同步兴趣包中提取所述目标区块链节点的节点信息;若检测到所述节点信息更新成功,则将所述待同步数据作为所述目标同步数据。
[0009]可选地,所述对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据的步骤包括:获取所述待同步兴趣包携带的接收状态向量;根据所述接收状态向量和所述目标区块链节点的本地状态向量之间的对应关系,确定是否更新所述待同步数据;若是,则根据所述接收状态向量的接收序列号,对所述待同步数据进行更新,得到所述目标同步数据;若否,则将所述待同步数据作为所述目标同步数据。
[0010]可选地,所述根据所述接收状态向量的接收序列号,对所述待同步数据进行更新,得到所述目标同步数据的步骤包括:检测所述本地状态向量是否存在所述接收序列号;若是,则根据所述接收序列号和所述本地状态向量的本地序列号之间的大小关系,更新所述待同步数据,得到所述目标同步数据;若否,则将所述接收序列号添加至所述本地状态向量,以及在区块链数据池中将所述待同步数据替换为拉取到的区块链数据,得到所述目标同步数据。
[0011]可选地,所述根据所述接收序列号和所述本地状态向量的本地序列号之间的大小关系,更新所述待同步数据,得到所述目标同步数据的步骤包括:若所述接收序列号大于所述本地序列号,则执行步骤:在区块链数据池中将所述待同步数据替换为拉取到的区块链数据,得到所述目标同步数据;若所述接收序列号小于所述本地序列号,则通过预设时间段内的兴趣包接收情况,更新所述待同步数据,得到所述目标同步数据。
[0012]为实现上述目的,本申请还提供一种区块链数据同步装置,应用于目标区块链节点,所述区块链数据同步装置包括:确定模块,用于若检测到数据同步状态下的数据同步任务,则确定所述数据同步任务对应的待同步兴趣包,其中,所述数据同步任务由数据同步事件或数据同步周期触发;同步模块,用于对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据;发送模块,用于向所述目标区块链节点的相邻区块链节点发送所述目标同步数据对应的目标同步兴趣包,以同步所述目标区块链节点与所述相邻区块链节点之间的区块链数据。
[0013]可选地,所述数据同步任务包括第一数据同步任务和第二数据同步任务,所述确定模块还用于:若所述数据同步任务为所述第一数据同步任务,则在区块链数据池中获取对应的待同步数据;根据所述待同步数据,生成所述待同步兴趣包;或,若所述数据同步任务为所述第二数据同步任务,则接收区块链同步节点发送的待
同步兴趣包。
[0014]可选地,所述待同步数据包括待同步区块数据和待同步交易数据,所述确定模块还用于:将所述待同步交易数据封装为所述待同步兴趣包;或,获取所述待同步区块数据的区块信息;根据所述区块信息,生成所述待同步兴趣包。
[0015]可选地,所述同步模块还用于:在所述待同步兴趣包中提取所述目标区块链节点的节点信息;若检测到所述节点信息更新成功,则将所述待同步数据作为所述目标同步数据。
[0016]可选地,所述同步模块还用于:获取所述待同步兴趣包携带的接收状态向量;根据所述接收状态向量和所述目标区块链节点的本地状态向量之间的对应关系,确定是否更新所述待同步数据;若是,则根据所述接收状态向量的接收序列号,对所述待同步数据进行更新,得到所述目标同步数据;若否,则将所述待同步数据作为所述目标同步数据。
[0017]可选地,所述同步模块还用于:检测所述本地状态向量是否存在所述接收序列号;若是,则根据所述接收序列号和所述本地状态向量的本地序列号之间的大小关系,更新所述待同步数据,得到所述目标同步数据;若否,则将所述接收序列号添加至所述本地状态向量,以及在区块链数据池中将所述待同步数据替换为拉取到的区块链数据,得到所述目标同步数据。
[0018]可选地,所述同步模块还用于:若所述接收序列号大于所述本地序列号,则执行步骤:在区块链数据池中将所述待同步数据替换为拉取到的区块链数据,得到所述目标同步数据;若所述接收序列号小于所述本地序列号,则通过预设时间段内的兴趣包接收情况,更新所述待同步数据,得到所述目标同步数据。
[0019]本申请还提供一种电子设备,所述电子设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述区块链数据同步方法的程序,所述区块链数据同步方法的程序被处理器执行时可实现如上述的区块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链数据同步方法,其特征在于,应用于目标区块链节点,所述区块链数据同步方法包括:若检测到数据同步状态下的数据同步任务,则确定所述数据同步任务对应的待同步兴趣包,其中,所述数据同步任务由数据同步事件或数据同步周期触发;对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据;向所述目标区块链节点的相邻区块链节点发送所述目标同步数据对应的目标同步兴趣包,以同步所述目标区块链节点与所述相邻区块链节点之间的区块链数据。2.如权利要求1所述区块链数据同步方法,其特征在于,所述数据同步任务包括第一数据同步任务和第二数据同步任务,所述确定所述数据同步任务对应的待同步兴趣包的步骤包括:若所述数据同步任务为所述第一数据同步任务,则在区块链数据池中获取对应的待同步数据;根据所述待同步数据,生成所述待同步兴趣包;或,若所述数据同步任务为所述第二数据同步任务,则接收区块链同步节点发送的待同步兴趣包。3.如权利要求2所述区块链数据同步方法,其特征在于,所述待同步数据包括待同步区块数据和待同步交易数据,所述根据所述待同步数据,生成所述待同步兴趣包的步骤包括:将所述待同步交易数据封装为所述待同步兴趣包;或,获取所述待同步区块数据的区块信息;根据所述区块信息,生成所述待同步兴趣包。4.如权利要求1所述区块链数据同步方法,其特征在于,所述对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据的步骤包括:在所述待同步兴趣包中提取所述目标区块链节点的节点信息;若检测到所述节点信息更新成功,则将所述待同步数据作为所述目标同步数据。5.如权利要求1所述区块链数据同步方法,其特征在于,所述对所述待同步兴趣包携带的待同步数据进行同步,得到目标同步数据的步骤包括:获取所述待同步兴趣包携带的接收状态向量;根据所述接收状态向量和所述目标区块链节点的本地状态向量之间的对应关系,确定是否更新所述待同步数据;若是,则根据所述接收状态向量的接收序列号,对所述待同步数据进行更新,得到所述目标同步数据;若否,则将所述待同步数据作为所述目标同步数据。6.如权利要求5所述区块链数据同步方法,其特征在于,...

【专利技术属性】
技术研发人员:梁腾张宇黄炜李敏杨孙傲王坤刘旭辉张伟哲方滨兴
申请(专利权)人:鹏城实验室
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1