一种区块链网络拓扑动态建立和数据传输优化方法技术

技术编号:35521755 阅读:17 留言:0更新日期:2022-11-09 14:41
本发明专利技术涉及一种区块链网络拓扑动态建立和数据传输优化方法,用于解决区块链网络的数据传输效率低的问题。首先设计了可信值函数计算区块链节点的可信值,综合考虑节点的可信值和节点之间的数据传输时间构建树型拓扑。之后基于树型拓扑设计转发路径选择策略,以最小并发传输时间为目标,建立每个节点关于其邻居节点转发顺序的转发路径表。根据节点的加入行为、节点的离开行为、节点的可信值变化和节点之间的权值变化情况,设计了拓扑动态优化策略局部调整拓扑结构。本发明专利技术采用转发路径选择策略可以加快节点的数据转发,使用拓扑动态优化策略能够降低节点状态变化对拓扑调整的影响,有效缩短数据传输时间并减少额外开销。有效缩短数据传输时间并减少额外开销。有效缩短数据传输时间并减少额外开销。

【技术实现步骤摘要】
一种区块链网络拓扑动态建立和数据传输优化方法


[0001]本专利技术属于区块链网络层
,具体涉及一种区块链网络拓扑动态建立和数据传输优化方法。

技术介绍

[0002]随着加密货币价值的不断提升,作为底层技术的区块链逐渐兴起。区块链集成了数学、对等网络、加密算法和共识算法等各种技术和工具,以实现无需任何第三方参与的可信应用。由于区块链具有去中心化、匿名性和不可篡改性等多个特性,已经被广泛应用于金融、政务、能源和物联网等领域,展现出广阔的应用前景。但是,区块链技术在广泛应用过程中,区块链的效率严重影响其进一步发展。区块链节点之间的交易数据和区块数据的传输过程通过区块链网络层实现,区块链网络层为区块链提供底层的网络支撑,搭建节点之间的数据传输环境。由于区块链网络存在频繁的交易数据和区块数据的传播和验证,而且网络层机制对区块链的数据传输效率和安全性有着重要的影响。因此,本专利技术针对区块链网络层的网络拓扑和数据传输机制进行研究,对于缩短区块链数据传输时间以及提升区块链的效率具有重要意义。
[0003]在区块链网络拓扑和数据传输机制方面,已有方案设计了一个简化的结构化网络拓扑及其数据传输方法。针对网络拓扑的改进方案,具体利用Kruskal算法或Prim算法生成一个树形网络拓扑结构,并且将可能产生恶意行为的节点置于树型拓扑的叶子节点,使其不参与数据的转发,从而缩短数据传输时间并且提高安全性。此外,对于数据传输机制的优化方案是在不同节点并发传输的基础上,针对节点之间数据传输时间不相等的情况设计了通信树作为一种数据传输方法,每次选择数据发起节点作为通信树的根节点,从根节点开始由上往下优先选取与当前通信树中节点相连接的权值最小边的节点加入,从而实现二叉树的构造,进一步缩短数据传输时间。
[0004]上述区块链网络拓扑和数据传输机制设计方案存在无法很好地维护网络中节点发生变化后的拓扑结构以及数据传输方法效率低等问题。具体来说,上述方案在区块链网络拓扑方面,根据节点的信任度和权值等因素,仅考虑对当前网络中的节点以及节点间的连接状态生成网络的树型拓扑结构,简化网络整体的拓扑连接,从而缩短节点进行数据传输的总时间。但是,对于区块链网络中的节点状态发生变化,例如节点的加入行为、节点的离开行为、节点的可信值变化和节点之间的权值变化情况,只能重新构建网络的树型拓扑结构,导致网络的额外开销增大。此外,上述方案在数据传输机制方面,对数据发起节点构建通信树来实现节点之间的数据转发。虽然上述方法能够缩短将数据传输给所有节点的总时间,但是每次都为数据发起节点构建通信树的这种方法效率较低。

技术实现思路

[0005]针对以上问题,本专利技术综合考虑节点的可信程度、节点之间的数据传输时间和节点的连通度,其中,设计了可信值函数来计算节点的可信值,在生成的树型拓扑基础上,设
计一种拓扑动态优化策略和转发路径选择策略。通过拓扑动态优化策略,按照节点的加入行为、节点的离开行为、节点的可信值变化和节点之间的权值变化的情况设计不同的拓扑动态优化策略,针对区块链网络中节点发生变化的4种情况,分别根据其相对应的策略局部调整其网络的树型拓扑结构,减少重构全网拓扑所带来的额外开销,提升区块链数据传输效率。通过转发路径选择策略,以最小并发传输时间为目标,为每个节点生成一个转发路径表,表中按照转发顺序存储其邻居节点的ID和邻居节点所在子树的最小并发传输时间。在转发路径表生成之后,由每个节点负责维护自己的路径表,不需要每次为数据发起节点生成路径表,有效节省了时间。转发路径选择策略指导节点将数据转发给其邻居节点的转发顺序,缩短数据传输时间,减少网络中的冗余数据。综上所述,本专利技术可以降低节点状态变化情况对拓扑调整的影响,并使用转发路径表可以加快节点的数据转发,有效缩短数据传输时间并减少额外开销。
[0006]具体技术方案如下:
[0007]通过可信拓扑选取方法,完成可信节点的拓扑构建;通过树型拓扑构建算法,完成对所有节点的树型拓扑构建;基于所有节点的树型拓扑结构,通过转发路径选择策略,指导节点的数据转发顺序,完成数据传输。
[0008]所述的可信拓扑选取方法具体过程如下:
[0009]获取区块链网络拓扑结构并抽象为图结构,区块链节点为图节点,区块链节点之间的路径抽象为边,并且将两个节点之间的边赋予权值属性,每个节点还具有可信值属性,其中,权值指节点之间的数据传输时间,可信值是利用可信值函数计算得到;可信值阈值是从可信值函数的取值范围[0,2]中设定的,通过多次实验来确定可信值阈值的值,将所有节点的可信值与可信值阈值相比较,大于可信值阈值的是可信节点,否则为不可信节点;选取可信节点的拓扑结构,所述可信节点的拓扑结构由可信节点以及可信节点之间的边构成。
[0010]所述的可信值函数具体公式如下:
[0011][0012]C
i
(s,u,n)表示节点的可信值。i表示节点的ID,s表示截止构建可信节点拓扑结构时,节点交易成功的次数,u表示截止构建可信节点拓扑结构时,节点交易失败的次数,n表示节点在构建可信节点拓扑结构完成后,自上次交易失败到本次交易时累计的连续交易成功次数。其中具体公式如下:
[0013][0014]u
x
表示节点本次交易结束后总的交易失败次数,u
x
‑1表示节点上一次交易结束后总的交易失败次数,n表示节点在构建可信节点拓扑结构完成后,自上次交易失败到本次交易时累计的连续交易成功次数。若本次交易成功则n加1,若本次交易失败则n置为0。
[0015]所述树型拓扑构建算法的工作过程如下:对可信节点和其拓扑结构利用Sollin算
法来生成可信树型拓扑,再将不可信节点作为叶子节点按策略加入可信树型拓扑中,生成所有节点的树型拓扑;所述不可信节点的加入策略是首先从区块链拓扑中选择该不可信节点的所有邻居节点,以及该不可信节点与所有邻居节点之间的边的权值,然后从所有邻居节点中选出所有可信节点,最后选择该不可信节点与可信邻居节点中具有最小权值的边加入可信树型拓扑。
[0016]所述的转发路径选择策略具体为:
[0017]首先,从所有节点的树型拓扑中获取节点之间的权值和连通度参数,其中权值是指节点之间的数据传输时间,连通度为节点的邻居节点个数;
[0018]然后,以最小并发传输时间为目标,为每个节点生成其转发路径表,所述转发路径表有序存储其所有邻居节点的ID和邻居节点所在子树的最小并发传输时间,节点的转发路径表的格式为{(第1邻居节点ID、第1邻居节点所在子树的最小并发传输时间),(第2邻居节点ID、第2邻居节点所在子树的最小并发传输时间),

},节点转发路径表中邻居节点的顺序是按照邻居节点所在子树的最小并发传输时间由大到小排列的,节点的邻居节点所在子树是假设删除节点与邻居节点直接相连的边,包含邻居节点所在的树便是邻居节点所在子树;
[0019]之后,节点在转发数据之前先检查自己是否是数据发起节点,如果是发起节点,那么直接按照本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链网络拓扑动态建立和数据传输优化方法,基于区块链网络层构建,其特征在于:首先,通过可信拓扑选取方法,完成可信节点的拓扑构建;其次,通过树型拓扑构建算法,完成对所有节点的树型拓扑构建;之后,基于所有节点的树型拓扑结构,通过转发路径选择策略,指导节点的数据转发顺序,完成数据传输。2.根据权利要求1所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:所述的可信拓扑选取方法具体过程如下:获取区块链网络拓扑结构并抽象为图结构,区块链节点为图节点,区块链节点之间的路径抽象为边,并且将两个节点之间的边赋予权值属性,每个节点还具有可信值属性,其中,权值指节点之间的数据传输时间,可信值是利用可信值函数计算得到;可信值阈值是从可信值函数的取值范围[0,2]中设定的,通过多次实验来确定可信值阈值的值,将所有节点的可信值与可信值阈值相比较,大于可信值阈值的是可信节点,否则为不可信节点;选取可信节点的拓扑结构,所述可信节点的拓扑结构由可信节点以及可信节点之间的边构成。3.根据权利要求2所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:所述的可信值函数具体公式如下:C
i
(s,u,n)表示节点的可信值,i表示节点的ID,s表示截止构建可信节点拓扑结构时,节点交易成功的次数,u表示截止构建可信节点拓扑结构时,节点交易失败的次数,n表示节点在构建可信节点拓扑结构完成后,自上次交易失败到本次交易时累计的连续交易成功次数,其中具体公式如下:u
x
表示节点本次交易结束后总的交易失败次数,u
x
‑1表示节点上一次交易结束后总的交易失败次数,n表示节点在构建可信节点拓扑结构完成后,自上次交易失败到本次交易时累计的连续交易成功次数。若本次交易成功则n加1,若本次交易失败则n置为0。4.根据权利要求1所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:所述树型拓扑构建算法的工作过程如下:对可信节点和其拓扑结构利用Sollin算法来生成可信树型拓扑,再将不可信节点作为叶子节点按策略加入可信树型拓扑中,生成所有节点的树型拓扑;所述不可信节点的加入策略是首先从区块链拓扑中选择该不可信节点的
所有邻居节点,以及该不可信节点与所有邻居节点之间的边的权值,然后从所有邻居节点中选出所有可信节点,最后选择该不可信节点与可信邻居节点中具有最小权值的边加入可信树型拓扑。5.根据权利要求1所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:所述的转发路径选择策略具体为:首先,从所有节点的树型拓扑中获取节点之间的权值和连通度参数,其中权值是指节点之间的数据传输时间,连通度为节点的邻居节点个数;然后,以最小并发传输时间为目标,为每个节点生成其转发路径表,所述转发路径表有序存储其所有邻居节点的ID和邻居节点所在子树的最小并发传输时间,节点的转发路径表的格式为{(第1邻居节点ID、第1邻居节点所在子树的最小并发传输时间),(第2邻居节点ID、第2邻居节点所在子树的最小并发传输时间),

},节点转发路径表中邻居节点的顺序是按照邻居节点所在子树的最小并发传输时间由大到小排列的,节点的邻居节点所在子树是假设删除节点与邻居节点直接相连的边,包含邻居节点所在的树便是邻居节点所在子树;之后,节点在转发数据之前先检查自己是否是数据发起节点,如果是发起节点,那么直接按照转发路径表中的顺序依次向邻居节点转发数据;如果节点不是发起节点,则节点不再向给它发送数据的节点转发数据,按照转发路径表依次选取其余节点转发数据,直到所有节点都接收到数据,那么本次数据转发完成。6.根据权利要求5所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:转发路径表的建立方法是随机选择一个节点作为根节点,得到以该节点为根节点的树型拓扑,然后经过自底向上和自顶向下两个过程建立每个节点的转发路径表。7.根据权利要求1所述的一种区块链网络拓扑动态建立和数据传输优化方法,其特征在于:针对区块链网络中节点发生变化的情况,利用拓扑动态优化策略局部调整节点发生变化所影响的树型拓扑结构,用...

【专利技术属性】
技术研发人员:霍如程祥凤
申请(专利权)人:北京工业大学
类型:发明
国别省市:

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

1