CN113365229A - 一种多联盟链共识算法的网络时延优化方法 - Google Patents
一种多联盟链共识算法的网络时延优化方法 Download PDFInfo
- Publication number
- CN113365229A CN113365229A CN202110591340.6A CN202110591340A CN113365229A CN 113365229 A CN113365229 A CN 113365229A CN 202110591340 A CN202110591340 A CN 202110591340A CN 113365229 A CN113365229 A CN 113365229A
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- multicast tree
- node
- vector
- alliance chain
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/04—Wireless resource allocation
- H04W72/044—Wireless resource allocation based on the type of the allocated resource
- H04W72/0453—Resources in frequency domain, e.g. a carrier in FDMA
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种多联盟链共识算法的网络时延优化方法,通过路由控制器利用强化学习技术先为通信网络拓扑中的每条联盟链构建一颗多播树,其中,每棵多播树以联盟链的主节点作为根节点,构建出保证主节点至所有副节点都连通的多播树,从而使得由主节点产生的区块可以通过多播树路由至所有成员节点处;另外,路由控制器为每棵多播树上的每条路径分配带宽,带宽分配过程中,需考虑每条边上各条联盟链的延迟指标,同时同一边上所有链的带宽占用之和也不能超过该链路的可用总带宽;最后,路由控制器将多播树路由、带宽分配结果部署到通信网络中,从而完成通信网络的时延优化。
Description
技术领域
本发明属于区块链技术领域,更为具体地讲,涉及一种多联盟链共识算法的网络时延优化方法。
背景技术
作为区块链技术中许可链的典型代表,联盟链近年逐渐得到广泛关注和运用。联盟链是由多个机构组成的联盟构建,其账本的生成、共识、维护由联盟指定的成员参与完成。联盟链中最关键的技术是共识算法,它将区块广播至网络中,全网节点接收大量区块后顺序进行共识过程从而验证内容,形成账本,即具有特定结构的区块集。对于交易量极为庞大的业务,实现共识过程的快慢变得尤为重要,只有更快完成共识才能保证更多的交易在短时间内能被所有节点确认。
共识算法的运行需要依托共识协议。联盟链中最常见的共识协议是实用拜占庭容错协议(Practical Byzantine Fault Tolerance,PBFT)。该协议将联盟链上的节点分为主节点和副节点,其中主节点负责从所有节点收集交易信息并将交易信息打包成区块,副节点则参与验证和转发。PBFT共识主要分为预准备、准备和接受3个阶段:在预准备阶段中,主节点收集来自所有节点的交易信息后,排序并提出合法区块提案,多播给所有副节点;在准备阶段中,所有副节点先验证所收到区块提案的合法性,生成验证结果摘要,并将其组播给其他副节点;在接受阶段中,每个副节点收到超过总副节点数量2/3的同意投票后,传输接受投票的信号给主节点,当主节点收到超过2/3个接受信息时便存储区块并将其置为被验证状态。整个过程中,在预准备阶段由于区块由主节点产生,数据量较大,从主节点处多播区块内容将成为共识算法中网络耗时最多的步骤。
已有很多工作尝试从共识机制上优化共识过程的时延,但是这些工作都假设网络层路由及带宽资源相对稳定。然而在实际场景中,同一网络可能承载多条来自不同业务的联盟链,如税务账本联盟链、跨银行转账业务联盟链等。由于网络资源有限且交易到达率波动较大,有必要灵活地对每条联盟链共识算法涉及的路由及带宽进行灵活地调整及分配,从而使得每条联盟链的共识算法的网络层传播时延得以优化。
发明内容
本发明的目的在于克服现有技术的不足,提供一种多联盟链共识算法的网络时延优化方法,通过为每条联盟链构建多播树并设计带宽分配,从而找到最优带宽分配,实现网络时延优化。
为实现上述发明目的,本发明一种多联盟链共识算法的网络时延优化方法,其特征在于,包括以下步骤:
(1)、设置待优化的通信网络的拓扑结构为G,拓扑中节点数量为N,连接边数量为L,各边的可用带宽向量E,共将部署M条联盟链,每条联盟链包含一个主节点;设置路由变更的决策间隔时隙T;
(2)、在路由变更的决策时隙T到来时,路由控制器向交换机和各联盟链的主节点发送数据收集请求;
(3)、采集通信网络的状态信息
(3.1)、交换机接收到数据收集请求后,提取通信网络的网络层信息,具体包括:拓扑结构G及各边的可用带宽向量E;
(3.2)、各联盟链的主节点接收到数据收集请求后,提取通信网络的应用层信息,具体包括:区块大小、待验证区块数量、区块平均等待时间、当前主节点编号以及前k个决策时隙内的交易到达强度;
(3.3)、将以上的网络层和应用层信息合并成一维的状态向量,并进行数据归一化,作为状态向量提供给决策网络推断模块;
(4)、使用强化学习技术的决策网络推断模块将状态向量作为输入,快速决策出每条联盟链中选择使用各条边的概率p,再将这些概率数据按各联盟链编号整理成M×L维度的概率矩阵;
(5)、为各联盟链生成对应的多播树
(5.1)、多播树构建模块根据输入的概率矩阵,依次获取每一条联盟链对应的一行概率数据;
(5.2)、将获取的每一行概率数据中的每个概率值p进行(1-p)处理,处理完成后替换对应位置上的概率值p,最后将替换后的概率值作为该条联盟链中各条边的权重;
(5.3)、基于每条边的权重,以主节点为根节点,调用最小生成树算法,为每一条联盟链生成一棵多播树;
(6)、为各联盟链进行路由、带宽分配
(6.1)、设置截止精度t*;设置延迟时间t,且满足:t=(a+b)/2,初始时刻左边界a=0,右边界b设置为常数;设置带宽分配矩阵B;
(6.2)、带宽分配模块提取各联盟链的网络层信息、应用层信息及多播树发送给可行性验证模块;
(6.3)、延迟可行性检查
(6.3.1)、设置带宽占用向量C、初始带宽矩阵B',以及控制信号s,并默认初始时刻B'为全0矩阵,s=1;
可行性验证模块接收到每条联盟链的多播树和区块大小,构建每棵多播树的拓扑Gi,以及对应连接边带宽向量Ei,i=1,2,…,M表示联盟链编号;
可行性验证模块根据每条联盟链的多播树,对每条联盟链的网络拓扑进行裁剪,去除既不是联盟链的副节点,又没有在多播树中承担中继任务的节点;
(6.3.2)、对于联盟链编号i做循环,如果i比联盟链数量大,则跳出循环进入(6.3.5),否则进入步骤(6.3.3);
(6.3.3)、利用最低带宽计算模块计算第i条联盟链在满足延迟t时所需占用的带宽向量Ci;
(6.3.3.1)、设置初始带宽占用向量Ci;根据多播树拓扑Gi构建节点深度向量Di;设置第i条联盟链的区块大小设为Si;
最低带宽计算模块从可行保证模块中提取第i条联盟链的多播树、区块大小和延迟时间t;按照节点深度向量Di,将第i棵多播树上所有节点按深度从大到小进行排序,得到节点序列Pi,当前节点记为Pi[p],p=1,2,…表示节点编号;
(6.3.3.2)、获取当前节点的深度记为Di[p],并获取多播树上从当前节点Pi[p]至根节点的路径,将路径上使用的连接边构成边集合Li,当前边记为Li[e],e=1,2,…表示边编号;
(6.3.3.3)、遍历边集合Li,检查第e条边的带宽占用向量Ci[Li[e]]是否在初始化后被赋值,如果没有,则令Ci[Li[e]]=Di[p]·Si/t,并将Li[e]两端的节点标记为已被遍历,继续遍历Li;否则,直接遍历Li;
(6.3.3.4)、对于当前节点Pi[p],遍历完其对应边集合Li后,更新节点编号p=p+1,检查新的节点是否被标记遍历,如果没有,则返回步骤(6.3.3.2);否则,继续更新节点编号,直到整棵多播树中所有节点都被遍历完成,再进入步骤(6.3.3.5);
(6.3.3.5)、输出第i条联盟链满足延迟t时所需的带宽占用向量Ci至可行性验证模块;
(6.3.4)、可行性验证模块将第i条联盟链所需的带宽占用向量Ci按位与总的带宽占用向量C相加,并将Ci作为带宽矩阵B'的第i行数据;然后更新序号i=i+1,再返回步骤(6.3.2);
(6.3.5)、当遍历完所有联盟链后,将带宽占用向量C与连接边带宽向量E逐位对比,若发现某一位j出现C[j]>E[j],则表示如要保证延迟时间t各条链的带宽需求,则在边j上将超出可用带宽容量,将控制信号s置为s=0,输出初始带宽矩阵B';否则,保持s=1,输出最终的B',将结果传递给带宽分配模块,进入步骤(6.4);
(6.4)、带宽分配模块判断控制信号s是否为s=0,如果s=0,则表示在此延迟时间t下没有可行的带宽分配方案,延迟时间t设置较小,调整迭代左边界a=t;如果保持s=1,则表示延迟时间t下存在可行的带宽分配方案,延迟t设置较大或者刚好合适,调整迭代右边界b=t,且更新带宽矩阵B=B';
(6.5)、在更新边界后,利用公式t=(a+b)/2更新延迟时间,并判断b-a的绝对值是否小于等于截止精度t*,如果大于,则返回步骤(6.3);如果小于截止精度,则跳出延迟时间t的迭代过程,输出带宽分配矩阵B和延迟时间t;
(7)、路由控制器将多播树路由、带宽分配结果部署到通信网络中,从而完成通信网络的时延优化。
本发明的发明目的是这样实现的:
本发明为一种多联盟链共识算法的网络时延优化方法,通过路由控制器利用强化学习技术先为通信网络拓扑中的每条联盟链构建一颗多播树,其中,每棵多播树以联盟链的主节点作为根节点,构建出保证主节点至所有副节点都连通的多播树,从而使得由主节点产生的区块可以通过多播树路由至所有成员节点处;另外,路由控制器为每棵多播树上的每条路径分配带宽,带宽分配过程中,需考虑每条边上各条联盟链的延迟指标,同时同一边上所有链的带宽占用之和也不能超过该链路的可用总带宽;最后,路由控制器将多播树路由、带宽分配结果部署到通信网络中,从而完成通信网络的时延优化。
同时,本发明一种多联盟链共识算法的网络时延优化方法还具有以下有益效果:
(1)、首次提出通过优化网络路由方案来优化共识算法时延;现有的共识算法时延优化工作都假设底层网络资源充裕且波动较小,并不符合实际业务的使用场景,本发明考虑了应用层指标下的网络路由和带宽分配的联合方案。
(2)、本发明考虑了多条联盟链共享物理网络场景下的时延优化;现有的共识算法时延优化工作着重于单联盟链的时延优化,而在多联盟链的场景中,由于共用有限的网络资源,综合考虑多链场景下的全局时延优化,可获得更多收益。
(3)、运用深度增强学习技术解决网络路由优化问题;实际业务场景下建模出的网络优化问题属于在线问题,几乎不能获取到此场景下的最优分配方案,故无法提供最优解数据集使用监督学习方法训练神经网络。我们的方案可在训练过程中直接与环境交互,逐渐探索并估计环境情况,学习出较优的决策,且在网络训练完毕后,实际运用中可在毫秒级时间获得较优解的解决方案。
(4)、针对实际的应用场景,本发明以更少的网络资源满足多条联盟链高质量的业务需求。
附图说明
图1是本发明一种多联盟链共识算法的网络时延优化方法流程图;
图2是示例拓扑和联盟链节点位置示意图;
图3是强化学习决策网络的神经网络架构图;
图4是各多播树结构及带宽分配示意图;
图5是为各联盟链进行路由、带宽分配的流程图;
图6是深度向量构建示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
图1是本发明一种多联盟链共识算法的网络时延优化方法流程图。
在本实施例中,如图1所示,本发明一种多联盟链共识算法的网络时延优化方法,包括以下步骤:
S1、在本实施例中,使用14-Node NSFNET拓扑作为物理拓扑,拓扑中节点数量为14,连接边数量为20,每条连接边上可用带宽范围为5~10Mbps,共将部署3条联盟链,如图2所示。其中联盟链1包含1、3、4、6、8、9、12号节点,联盟链2包括0、3、5、7、10、12、13号节点,联盟链3包含2、4、7、8、10、11、13号节点,主节点每10分钟切换一次。
S2、在路由变更的决策时隙T=5秒到来时,路由控制器向交换机和各联盟链的主节点发送数据收集请求;
S3、采集通信网络的状态信息
S3.1、交换机接收到数据收集请求后,提取通信网络的网络层信息,具体包括:拓扑结构及各边的可用带宽向量;
S3.2、各联盟链的主节点接收到数据收集请求后,提取通信网络的应用层信息,具体包括:区块大小、待验证区块数量、区块平均等待时间、当前主节点编号以及前k=5个决策时隙内的交易到达强度;
S3.3、将以上的网络层和应用层信息合并成一维的状态向量,并进行数据归一化,作为状态向量提供给决策网络推断模块;
在本实施例中,拓扑连接状态向量20维,各边的可用带宽向量20维,每条链待验证区块数量、区块大小、平均区块等待时间、主节点编号、之前5个决策时隙内的交易到达强度共计9维,合并成一维的状态向量,其总长度为20+20+9×3=67维,并根据每个数据所处位置进行归一化,作为状态信息提供给决策网络。
S4、使用强化学习技术的决策网络推断模块将状态向量作为输入,快速决策出每条联盟链中选择使用每条边的概率p,再将这些概率数据按各联盟链编号整理成20×3维度的概率矩阵;
在本实施例中,决策网络推断模块需要训练一个用于决策的神经网络,相关流程如下:
1)、由于需要解决的问题为在线问题,且多次决策间相互具有关联性,很难获取到最优求解方案,因此我们采用深度增强学习技术来训练神经网络。在此案例中,我们使用DDPG深度增强学习框架完成训练,其中涉及以下几个关键点:
1-1)、我们使用时变的泊松分布来模拟各条链的交易到达,通过调整泊松分布参数模拟到达率随时间的变化,根据实际业务情况,设定每到达60~100笔交易或者达到强制成块时间时,联盟链主节点产生一个待验证区块,产生待验证区块的耗时参考相关资料设置为常数,以此为基础搭建仿真环境。按照图3所示流程完成神经网络的构建;
1-2)、DDPG深度增强学习框架中,在训练时设置有4个神经网络,一个是用于决策的演员网络(actor network),一个是估计环境的评论家网络(critic network),一套辅助拟合的target actor网络和target critic网络。其中对于每个网络,输入都为从状态收集模块所获取的67维状态输入。actor网络输出20×3=60维的0到1之间连续值,表示每条联盟链选择使用每条边的概率,获得20×3的概率矩阵,与其他模块一起构成决策结果,返回给仿真环境,仿真环境计算下一个决策时隙内所有区块被验证的耗时平均值,将其作为奖励值返回给DDPG算法用于训练。
1-3)、设置critic网络的学习率为1×10-4,actor网络的学习率为1×10-5,使用pytorch深度学习框架完成部署,利用RMSProp优化器更新神经网络,利用TD error估计动作价值,衰减率为0.99。每次训练网络时从经验池中抽取64个样本来批处理更新网络,使用量级为1×10-4的L2范数来防止过拟合。
2)、使用DDPG算法将网络训练至收敛后,将其中actor网络作为最终的决策网络,其结构图如图5所示,从状态收集模块所获取的67维状态向量作为输入,经过2个宽度为256的全连接隐藏层实现特征高维抽象,由于拓扑中共有20条连接边,最终在输出层进行20×3=60维的0到1之间连续值输出,每20位输出代表一条联盟链使用每条边的概率,将最终结果整理为20×3的概率矩阵,提供给多播树构建模块。
S5、给各联盟链生成对应的多播树
S5.1、多播树构建模块根据输入的概率矩阵,依次获取每一条联盟链对应的一行概率数据;
S5.2、将获取的每一行概率数据中的每个概率值p进行(1-p)处理,处理完成后替换对应位置上的概率值p,最后将替换后的概率值作为该条联盟链中每条边的权重;
S5.3、基于每条边的权重,以主节点为根节点,调用最小生成树算法,为每一条联盟链生成一棵多播树,如图4所示,图上的边与边连接处给出了对应的带宽分配结果;
S6、给各联盟链进行路由、带宽分配,具体流程如图5所示;
S6.1、设置截止精度t*=10毫秒;设置延迟时间t,且满足:t=(a+b)/2,初始时刻左边界a=0毫秒,右边界b=2000毫秒;设置带宽分配矩阵B;
S6.2、带宽分配模块提取各联盟链的网络层信息、应用层信息及多播树发送给可行性验证模块;
S6.3、延迟可行性检查
S6.3.1、设置带宽占用向量C、初始带宽矩阵B',以及控制信号s,并默认初始时刻B'为全0矩阵,s=1;
可行性验证模块接收到每条联盟链的多播树和区块大小,构建每棵多播树的拓扑Gi,以及对应连接边带宽向量Ei,i=1,2,3表示联盟链编号;
可行性验证模块根据每条联盟链的多播树,对每条联盟链的网络拓扑进行裁剪,去除既不是联盟链的副节点,又没有在多播树中承担中继任务的节点;
S6.3.2、对于联盟链编号i做循环,如果i比联盟链数量大,则跳出循环进入S6.3.5,否则进入步骤S6.3.3;
S6.3.3、利用最低带宽计算模块计算第i条联盟链在满足延迟t时所需占用的带宽向量Ci;
S6.3.3.1、设置初始带宽占用向量Ci;如图6所示,根据多播树拓扑Gi构建节点深度向量Di;设置第i条联盟链的区块大小设为Si;
最低带宽计算模块从而可行性验证模块中提取第i条联盟链的多播树、区块大小和延迟时间t;按照节点深度向量Di,将第i棵多播树上所有节点按深度从大到小进行排序,得到节点序列Pi,当前节点记为Pi[p],p=1,2,…表示节点编号;
S6.3.3.2、获取当前节点的深度记为Di[p],并获取多播树上从当前节点Pi[p]至根节点的路径,将路径上使用的连接边构成边集合Li,当前边记为Li[e],e=1,2,…表示边编号;
S6.3.3.3、遍历边集合Li,检查第e条边的带宽占用向量Ci[Li[e]]是否在初始化后被赋值,如果没有,则令Ci[Li[e]]=Di[p]·Si/t,并将Li[e]两端的节点标记为已被遍历,继续遍历Li;否则,直接遍历Li;
S6.3.3.4、对于当前节点Pi[p],遍历完其对应边集合Li后,更新节点编号p=p+1,检查新的节点是否被标记遍历,如果没有,则返回步骤S6.3.3.2;否则,继续更新节点编号,直到整棵多播树中所有节点都被遍历完成,再进入步骤S6.3.3.5;
S6.3.3.5、输出第i条联盟链满足延迟t时所需的带宽占用向量Ci至可行性验证模块;
S6.3.4、可行性验证模块将第i条联盟链所需的带宽占用向量Ci按位与总的带宽占用向量C相加,并将Ci作为带宽矩阵B'的第i行数据;然后更新序号i=i+1,再返回步骤S6.3.2;
S6.3.5、当遍历完所有联盟链后,将带宽占用向量C与连接边带宽向量E逐位对比,若发现某一位j出现C[j]>E[j],则表示如要保证延迟时间t各条链的带宽需求,则在边j上将超出可用带宽容量,将控制信号s置为s=0,输出初始带宽矩阵B';否则,保持s=1,输出最终的B',将结果传递给带宽分配模块,进入步骤S6.4;
S6.4、带宽分配模块判断控制信号s是否为s=0,如果s=0,则表示在此延迟时间t下没有可行的带宽分配方案,延迟时间t设置较小,调整迭代左边界a=t;如果保持s=1,则表示延迟时间t下存在可行的带宽分配方案,延迟t设置较大或者刚好合适,调整迭代右边界b=t,且更新带宽矩阵B=B';
S6.5、在更新边界后,利用公式t=(a+b)/2更新延迟时间,并判断b-a的绝对值是否小于等于截止精度t*,如果大于,则返回步骤S6.3;如果小于截止精度,则跳出延迟时间t的迭代过程,输出带宽分配矩阵B和延迟时间t;
S7、路由控制器将多播树路由、带宽分配结果部署到通信网络中,从而完成通信网络的时延优化。
以具体场景举例:
区块链云服务提供商。现在大量涉及多地区的网络服务都在尝试将业务部署在云服务器处,区块链作为一类具有分布式特性的业务更是如此。作为区块链云服务提供商,所管理的网络上将有多条联盟链需要提供可靠服务,此时可用本专利算法,以更少的网络资源满足多条联盟链的业务需求。
金融区块链专用网络管理部门。银行、税务部门等金融相关行业群体,需要利用联盟链构建可靠的多方合作金融服务。在金融专用网络中,可能运行多条具有不同业务性质的金融联盟链,例如税务账本联盟链、跨银行转账业务联盟链等,此时金融专用网络管理部门可利用本专利所述方案,提供更高质量的联盟链网络服务。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (2)
1.一种多联盟链共识算法的网络时延优化方法,其特征在于,包括以下步骤:
(1)、设置待优化的通信网络的拓扑结构为G,拓扑中节点数量为N,连接边数量为L,各边的可用带宽向量E,共将部署M条联盟链,每条联盟链包含一个主节点;设置路由变更的决策间隔时隙T;
(2)、在路由变更的决策时隙T到来时,路由控制器向交换机和各联盟链的主节点发送数据收集请求;
(3)、采集通信网络的状态信息
(3.1)、交换机接收到数据收集请求后,提取通信网络的网络层信息,具体包括:拓扑结构G及各边的可用带宽向量E;
(3.2)、各联盟链的主节点接收到数据收集请求后,提取通信网络的应用层信息,具体包括:区块大小、待验证区块数量、区块平均等待时间、当前主节点编号以及前k个决策时隙内的交易到达强度;
(3.3)、将以上的网络层和应用层信息合并成一维的状态向量,并进行数据归一化,作为状态向量提供给决策网络推断模块;
(4)、使用强化学习技术的决策网络推断模块将状态向量作为输入,快速决策出每条联盟链中选择使用各条边的概率p,再将这些概率数据按各联盟链编号整理成M×L维度的概率矩阵;
(5)、为各联盟链生成对应的多播树
(5.1)、多播树构建模块根据输入的概率矩阵,依次获取每一条联盟链对应的一行概率数据;
(5.2)、将获取的每一行概率数据中的每个概率值p进行(1-p)处理,处理完成后替换对应位置上的概率值p,最后将替换后的概率值作为该条联盟链中各条边的权重;
(5.3)、基于每条边的权重,以主节点为根节点,调用最小生成树算法,为每一条联盟链生成一棵多播树;
(6)、为各联链进行路由、带宽分配
(6.1)、设置截止精度t*;设置延迟时间t,且满足:t=(a+b)/2,初始时刻左边界a=0,右边界b设置为常数;设置带宽分配矩阵B;
(6.2)、带宽分配模块提取各联盟链的网络层信息、应用层信息及多播树发送给可行性验证模块;
(6.3)、延迟可行性检查
(6.3.1)、设置带宽占用向量C、初始带宽矩阵B',以及控制信号s,并默认初始时刻B'为全0矩阵,s=1;
可行性验证模块接收到每条联盟链的多播树和区块大小,构建每棵多播树的拓扑Gi,以及对应连接边带宽向量Ei,i=1,2,…,M表示联盟链编号;
可行性验证模块根据每条联盟链的多播树,对每条联盟链的网络拓扑进行裁剪,去除既不是联盟链的副节点,又没有在多播树中承担中继任务的节点;
(6.3.2)、对于联盟链编号i做循环,如果i比联盟链数量大,则跳出循环进入(6.3.5),否则进入步骤(6.3.3);
(6.3.3)、利用最低带宽计算模块计算第i条联盟链在满足延迟t时所需占用的带宽向量Ci;
(6.3.4)、可行性验证模块将第i条联盟链所需的带宽占用向量Ci按位与总的带宽占用向量C相加,并将Ci作为带宽矩阵B'的第i行数据;然后更新序号i=i+1,再返回步骤(6.3.2);
(6.3.5)、当遍历完所有联盟链后,将带宽占用向量C与连接边带宽向量E逐位对比,若发现某一位j出现C[j]>E[j],则表示如要保证延迟时间t各条链的带宽需求,则在边j上将超出可用带宽容量,将控制信号s置为s=0,输出初始带宽矩阵B';否则,保持s=1,输出最终的B',将结果传递给带宽分配模块,进入步骤(6.4);
(6.4)、带宽分配模块判断控制信号s是否为s=0,如果s=0,则表示在此延迟时间t下没有可行的带宽分配方案,延迟时间t设置较小,调整迭代左边界a=t;如果保持s=1,则表示延迟时间t下存在可行的带宽分配方案,延迟t设置较大或者刚好合适,调整迭代右边界b=t,且更新带宽矩阵B=B';
(6.5)、在更新边界后,利用公式t=(a+b)/2更新延迟时间,并判断b-a的绝对值是否小于等于截止精度t*,如果大于,则返回步骤(6.3);如果小于截止精度,则跳出延迟时间t的迭代过程,输出带宽分配矩阵B和延迟时间t;
(7)、路由控制器将多播树路由、带宽分配结果部署到通信网络中,从而完成通信网络的时延优化。
2.根据权利要求1所述的一种多联盟链共识算法的网络时延优化方法,其特征在于,所述步骤(6.3.3)中计算第i条联盟链在满足延迟t时所需占用的带宽向量Ci的具体方法为:
1)、设置初始带宽占用向量Ci;根据多播树拓扑Gi构建节点深度向量Di;设置第i条联盟链的区块大小设为Si;
最低带宽计算模块从可行保证模块中提取第i条联盟链的多播树、区块大小和延迟时间t;按照节点深度向量Di,将第i棵多播树上所有节点按深度从大到小进行排序,得到节点序列Pi,当前节点记为Pi[p],p=1,2,…表示节点编号;
2)、获取获取当前节点的深度记为Di[p],并获取多播树上从当前节点Pi[p]至根节点的路径,将路径上使用的连接边构成边集合Li,当前边记为Li[e],e=1,2,…表示边编号;
3)、遍历边集合Li,检查第e条边的带宽占用向量Ci[Li[e]]是否在初始化后被赋值,如果没有,则令Ci[Li[e]]=Di[p]·Si/t,并将Li[e]两端的节点标记为已被遍历,继续遍历Li;否则,直接遍历Li;
4)、对于当前节点Pi[p],遍历完其对应边集合Li后,更新节点编号p=p+1,检查新的节点是否被标记遍历,如果没有,则返回步骤2);否则,继续更新节点编号,直到整棵多播树中所有节点都被遍历完成,再进入步骤5);
5)、输出第i条联盟链满足延迟t时所需的带宽占用向量Ci至可行性验证模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110591340.6A CN113365229B (zh) | 2021-05-28 | 2021-05-28 | 一种多联盟链共识算法的网络时延优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110591340.6A CN113365229B (zh) | 2021-05-28 | 2021-05-28 | 一种多联盟链共识算法的网络时延优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113365229A true CN113365229A (zh) | 2021-09-07 |
CN113365229B CN113365229B (zh) | 2022-03-25 |
Family
ID=77528120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110591340.6A Active CN113365229B (zh) | 2021-05-28 | 2021-05-28 | 一种多联盟链共识算法的网络时延优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113365229B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022340A (zh) * | 2022-06-01 | 2022-09-06 | 蚂蚁区块链科技(上海)有限公司 | 一种运行联盟链网络的方法 |
CN116566740A (zh) * | 2023-06-30 | 2023-08-08 | 济南职业学院 | 一种工业分布式认证系统及实现方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529951A (zh) * | 2016-12-30 | 2017-03-22 | 杭州云象网络技术有限公司 | 一种联盟链网络下采用异步方式的节点共识验证方法 |
US20190354518A1 (en) * | 2018-05-01 | 2019-11-21 | Michael Zochowski | Chain mesh network for decentralized transaction systems |
CN111030993A (zh) * | 2019-11-11 | 2020-04-17 | 重庆邮电大学 | 一种在联盟区块链中基于扩展型可信认证的瑞波共识方法 |
CN111600965A (zh) * | 2020-06-05 | 2020-08-28 | 支付宝(杭州)信息技术有限公司 | 区块链中的共识方法和系统 |
CN111598127A (zh) * | 2020-04-09 | 2020-08-28 | 南京邮电大学 | 一种基于机器学习的区块链共识算法 |
CN111612455A (zh) * | 2020-04-21 | 2020-09-01 | 国网江苏省电力有限公司电力科学研究院 | 一种面向用电信息保护的拜占庭容错联盟链共识方法及其系统、存储介质 |
CN111770148A (zh) * | 2020-06-22 | 2020-10-13 | 重庆邮电大学 | 一种基于区块链技术的雾计算卸载模型优化方法 |
US20210021915A1 (en) * | 2019-07-15 | 2021-01-21 | Yunqu Liu | Remote data multicasting and remote direct memory access over optical fabrics |
US20210026745A1 (en) * | 2019-07-24 | 2021-01-28 | The University Of North Carolina At Charlotte | Methods, systems, and computer readable media for providing byzantine fault tolerance |
-
2021
- 2021-05-28 CN CN202110591340.6A patent/CN113365229B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529951A (zh) * | 2016-12-30 | 2017-03-22 | 杭州云象网络技术有限公司 | 一种联盟链网络下采用异步方式的节点共识验证方法 |
US20190354518A1 (en) * | 2018-05-01 | 2019-11-21 | Michael Zochowski | Chain mesh network for decentralized transaction systems |
US20210021915A1 (en) * | 2019-07-15 | 2021-01-21 | Yunqu Liu | Remote data multicasting and remote direct memory access over optical fabrics |
US20210026745A1 (en) * | 2019-07-24 | 2021-01-28 | The University Of North Carolina At Charlotte | Methods, systems, and computer readable media for providing byzantine fault tolerance |
CN111030993A (zh) * | 2019-11-11 | 2020-04-17 | 重庆邮电大学 | 一种在联盟区块链中基于扩展型可信认证的瑞波共识方法 |
CN111598127A (zh) * | 2020-04-09 | 2020-08-28 | 南京邮电大学 | 一种基于机器学习的区块链共识算法 |
CN111612455A (zh) * | 2020-04-21 | 2020-09-01 | 国网江苏省电力有限公司电力科学研究院 | 一种面向用电信息保护的拜占庭容错联盟链共识方法及其系统、存储介质 |
CN111600965A (zh) * | 2020-06-05 | 2020-08-28 | 支付宝(杭州)信息技术有限公司 | 区块链中的共识方法和系统 |
CN111770148A (zh) * | 2020-06-22 | 2020-10-13 | 重庆邮电大学 | 一种基于区块链技术的雾计算卸载模型优化方法 |
Non-Patent Citations (7)
Title |
---|
SOL HAN: "Switch-Centric Byzantine Fault Tolerance Mechanism in Distributed Software Defined Networks", 《IEEE COMMUNICATIONS LETTERS》 * |
WEI TONG: "Trust-PBFT: A PeerTrust-Based Practical Byzantine Consensus Algorithm", 《2019 INTERNATIONAL CONFERENCE ON NETWORKING AND NETWORK APPLICATIONS (NANA)》 * |
张彭奕; 宋杰: "区块链共识算法效能优化研究进展", 《计算机科学》 * |
张维忠等: "对用电信息保护的拜占庭容错联盟链共识算法", 《电气时代》 * |
王栋; 秦日臻; 黄宇鹏; 李达; 陈虹: "一种高效的联盟链网络构建设计", 《中国电子科学研究院学报》 * |
陆歌皓等: "区块链共识算法对比研究", 《计算机科学》 * |
韩镇阳等: "一种区块链实用拜占庭容错算法的改进", 《计算机应用与软件》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022340A (zh) * | 2022-06-01 | 2022-09-06 | 蚂蚁区块链科技(上海)有限公司 | 一种运行联盟链网络的方法 |
WO2023231344A1 (zh) * | 2022-06-01 | 2023-12-07 | 蚂蚁区块链科技(上海)有限公司 | 一种运行联盟链网络的方法 |
CN116566740A (zh) * | 2023-06-30 | 2023-08-08 | 济南职业学院 | 一种工业分布式认证系统及实现方法 |
CN116566740B (zh) * | 2023-06-30 | 2023-09-01 | 济南职业学院 | 一种工业分布式认证系统及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113365229B (zh) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kandali et al. | A new hybrid routing protocol using a modified K-means clustering algorithm and continuous hopfield network for VANET | |
CN113365229B (zh) | 一种多联盟链共识算法的网络时延优化方法 | |
CN101777990B (zh) | 多目标免疫优化组播路由路径选择方法 | |
WO2021036414A1 (zh) | 一种低轨移动卫星星座下星地下行链路同频干扰预测方法 | |
CN111191918A (zh) | 一种智能电网通信网的业务路由规划方法及装置 | |
CN102594909A (zh) | 基于共邻矩阵谱信息的多目标社区检测方法 | |
CN114415735B (zh) | 面向动态环境的多无人机分布式智能任务分配方法 | |
CN101013955B (zh) | 用于业务量矩阵估计的快速模拟退火 | |
Lam et al. | Opportunistic routing for vehicular energy network | |
CN108111335A (zh) | 一种调度和链接虚拟网络功能的方法及系统 | |
CN113886501A (zh) | 一种基于多链架构下的区块链业务模块扩展方法 | |
CN107203221B (zh) | 无人机和有人机混合编队内的在线信息分发方法和装置 | |
CN115049071A (zh) | 一种基于dag区块链的联邦学习方法 | |
CN102164420A (zh) | 基于卫星网络的多对一通信冲突处理方法 | |
CN113472671A (zh) | 组播路由的确定方法、装置和计算机可读存储介质 | |
CN116681291B (zh) | 一种基于集成模型的风控预测方法及系统 | |
CN112415959B (zh) | 边云协同的工业信息物理系统主动安全响应方法及架构 | |
CN112787833B (zh) | 内容分发网络cdn服务器的部署方法和装置 | |
CN113541986B (zh) | 5g切片的故障预测方法、装置及计算设备 | |
Shelat et al. | Calibrating route choice sets for an urban public transport network using smart card data | |
Lemus-Romani et al. | Limited stop services design considering variable dwell time and operating capacity constraints | |
CN101741749A (zh) | 基于免疫克隆的多目标组播路由优化方法 | |
de Oliveira et al. | A hybrid firefly-genetic algorithm for planning of optical transport networks | |
CN115913979A (zh) | 一种全域网络拓扑处理方法和设备 | |
CN114745288A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |