区块链支付通道网络交易的高效调度方法技术

技术编号:37996488 阅读:8 留言:0更新日期:2023-06-30 10:10
本发明专利技术公开了一种区块链支付通道网络交易的高效调度方法,包括:定义支付通道网络交易调度问题,在交易双方节点选定执行交易调度策略的条件下,执行节点以网络吞吐量最大化为目标设定多个约束条件,为双方缓冲区内的交易调度问题建模得到交易调度优化问题;针对该问题执行节点利用编码器模型对当前输入序列中各交易的静态特征和动态特征进行提取,得到各交易的编码器输出向量合并构成编码器输出序列;执行节点利用解码器模型基于注意力机制和掩码机制对当前得到的编码器输出序列以自迭代的方式进行交易顺序决策,在不断迭代后输出交易序列以调度双方完成交易。本发明专利技术能对缓冲区中交易进行合理调度,提高吞吐量并降低交易的平均等待时间。的平均等待时间。的平均等待时间。

【技术实现步骤摘要】
区块链支付通道网络交易的高效调度方法


[0001]本专利技术属于区块链领域,具体涉及区块链支付通道网络交易的高效调度方法。

技术介绍

[0002]区块链由于具有去中心化、透明度高、不可篡改等优点已经被广泛应用于金融、医疗和车联网等领域。
[0003]在支付通道中,当交易金额不大于通道容量时该交易被执行,通道容量被更新,否则该交易被拒绝。如图1所示,不改变交易顺序的情况下,交易1的执行将通道的资金集中在Bob侧、交易2和交易3因为通道容量不足,无法执行,使得交易吞度量降低。
[0004]为了提高支付通道网络的吞吐量,现有的工作通过引入缓冲区的方式,并不立刻执行交易,而是将交易缓冲在缓冲区一段时间,等满足一定条件后再执行。
[0005]Sivaraman等人首先在支付通道网络中引入缓冲区。为了最大化网络的长期吞吐量,它利用流体模型对到达的交易进行建模,并利用拥塞控制的思想对交易进行拆分,拆分后的交易单元在节点上的传输需要考虑路径中的拥塞情况(即路径中其他交易的方向和金额),通过在每个节点中引入缓冲区,当通道缺乏立即处理他们的资金时,交易单元就会在缓冲区中排队。该方案只有在交易在到达时不能执行的情况下,才会对交易进行缓冲。此外,该方案侧重点在于通过缓冲区调整交易执行的速度,其未对交易在缓冲区中的调度策略进行研究。
[0006]Varma等人使用双向队列建模缓冲区。与Sivaraman等人使用速率稳定性不同的是,它基于正递归的缓冲区稳定性定义了链上再平衡的概念,解决了速率稳定性不能确保稳态分布存在的确定。它提出一种新的算法保证缓冲区到稳定状态。然而,他通过被动的缓冲交易避免了网络的拥塞,而没有研究缓冲区中的交易调度问题。
[0007]Papadis等人引入了缓冲区,并首次研究了支付通道网络的单跳调度策略。针对交易金额固定的情况,它利用来自对侧缓冲区的交易来平衡通道,推导出了一种最优调度策略,并证明了该策略的最优性。针对交易金额灵活多变的情况,该方案将交易金额固定情况下的最优调度策略进行了扩展,当交易不可行时,通过改变交易双方的执行顺序,让对侧缓冲区中的交易先执行使当前通道的容量满足交易执行的条件。然而,当交易金额灵活多变时,该策略丧失了最优性。它只改变了交易双方的执行顺序,但是没有对各自缓冲区中的交易的顺序进行合理的调度,因此网络吞吐量提升受限且由于只有在到达最大缓冲时间时,交易才会被执行,交易在缓冲区中的平均等待时间较长。
[0008]Luo等人根据交易的转发费用为交易分配不同的优先级,转发费用高的交易先被执行。针对并发交易带来的通道容量竞争问题,发送节点采用多智能体强化学习算法感知其他交易的优先级进而调整其交易的优先级。尽管该方法能够提高中间节点的总收入和短期内的交易吞吐量,但这种方法仍然是短视的。在这种方法下,由于金额大的交易往往具有更高的转发费用,因此具有更高的优先级。金额大的交易被率先执行导致支付通道迅速不平衡,通道的一侧容量被耗尽,不利于提高交易的长期吞吐量。
[0009]因此,现有工作通过在节点中增加交易缓冲区来提高支付通道网络的交易吞吐量,具体而言,当交易到达节点时并不立刻执行,而是将交易在缓冲区保存一段时间。通过适当的等待,通道容量可能因其它交易而增大,从而满足当前交易的执行条件。基于上述设计,更多的交易被成功执行,从而增大了网络的吞吐量。虽然现有工作通过引入缓冲区在一定程度上提高了支付通道网络的吞吐量,但是他们没有考虑缓冲区中交易执行的顺序问题,从而导致上述工作带来的网络吞吐量提升是受限的,因此现有方法都不适合解决支付通道网络中交易的调度问题。
[0010]因此,如何对缓冲区中的交易进行合理调度,以提高交易金额灵活可变情况下的吞吐量并同时降低交易的平均等待时间,是本领域内一个亟待解决的问题。

技术实现思路

[0011]为了解决现有技术中存在的上述问题,本专利技术提供了一种区块链支付通道网络交易的高效调度方法。本专利技术要解决的技术问题通过以下技术方案实现:
[0012]定义支付通道网络交易调度问题,在交易双方节点选定执行交易调度策略的条件下,执行节点以网络吞吐量最大化为目标,设定多个约束条件,为双方缓冲区内的交易调度问题建模,得到交易调度优化问题;其中,选定执行的交易调度策略包括定期调度策略或条件调度策略;所述执行节点包括交易双方中任一节点;至少一个约束条件与交易的平均等待时间相关;
[0013]针对所述交易调度优化问题,所述执行节点利用编码器模型对当前输入序列中双方缓冲区内各交易的静态特征和动态特征进行提取,得到各交易对应的编码器输出向量,并合并构成编码器输出序列;
[0014]所述执行节点利用解码器模型,基于注意力机制和掩码机制对当前得到的编码器输出序列以自迭代的方式进行交易顺序决策,在不断迭代后输出表征双方缓冲区内交易顺序的交易序列,以调度交易双方按所述交易序列的顺序完成交易;其中,所述编码器模型和所述解码器模型基于强化学习预先训练完成。
[0015]在本专利技术的一个实施例中,交易双方节点选定执行交易调度策略的依据为时效性;其中,当时效性要求较低时,交易双方节点选定执行所述定期调度策略;当时效性要求较高时,交易双方节点选定执行所述条件调度策略。
[0016]在本专利技术的一个实施例中,所述执行节点以网络吞吐量最大化为目标,设定多个约束条件,为双方缓冲区内的交易调度问题建模,得到交易调度优化问题,包括:
[0017]用标准化吞吐量衡量网络的吞吐量;
[0018]设定决策时每个顺序仅能执行一笔交易且每笔交易仅能被执行一次,构建第一约束条件;
[0019]设定仅当对应方向的支付通道的容量大于交易的金额时,交易才会被执行,构建第二约束条件;
[0020]设定当交易执行成功后,交易执行方向的通道容量需要增加,相反方向的通道容量需要减少相同数量,构建第三约束条件;
[0021]设定若交易的方向和金额均相同,距离最大缓冲时间近的交易先被执行,以用于降低交易在缓冲区中的平均等待时间,构建第四约束条件;
[0022]以所述标准化吞吐量最大化为优化目标,并以所述第一约束条件、所述第二约束条件、所述第三约束条件和所述第四约束条件作为约束,将双方缓冲区内的交易调度问题表示为线性0/1整数规划问题,建模得到交易调度优化问题。
[0023]在本专利技术的一个实施例中,所述标准化吞吐量表示为:
[0024][0025]其中,E表示所述标准化吞吐量;P(A)表示A缓冲区;P(B)表示B缓冲区;m表示A缓冲区和B缓冲区总的交易数目;t表示交易的产生时间;k表示第k笔交易;表示第k笔交易是否第t个执行;v
k
表示第k笔交易的金额;且为一个二元决策变量,若则表示第k笔交易第t个执行,否则
[0026]所述第一约束条件表示为:
[0027][0028]所述第二约束条件表示为:
[0029][0030][0031]其中,表示在第t笔交易执行时节点A通道的容量;表示在第t笔本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链支付通道网络交易的高效调度方法,其特征在于,包括:定义支付通道网络交易调度问题,在交易双方节点选定执行交易调度策略的条件下,执行节点以网络吞吐量最大化为目标,设定多个约束条件,为双方缓冲区内的交易调度问题建模,得到交易调度优化问题;其中,选定执行的交易调度策略包括定期调度策略或条件调度策略;所述执行节点包括交易双方中任一节点;至少一个约束条件与交易的平均等待时间相关;针对所述交易调度优化问题,所述执行节点利用编码器模型对当前输入序列中双方缓冲区内各交易的静态特征和动态特征进行提取,得到各交易对应的编码器输出向量,并合并构成编码器输出序列;所述执行节点利用解码器模型,基于注意力机制和掩码机制对当前得到的编码器输出序列以自迭代的方式进行交易顺序决策,在不断迭代后输出表征双方缓冲区内交易顺序的交易序列,以调度交易双方按所述交易序列的顺序完成交易;其中,所述编码器模型和所述解码器模型基于强化学习预先训练完成。2.根据权利要求1所述的区块链支付通道网络交易的高效调度方法,其特征在于,交易双方节点选定执行交易调度策略的依据为时效性;其中,当时效性要求较低时,交易双方节点选定执行所述定期调度策略;当时效性要求较高时,交易双方节点选定执行所述条件调度策略。3.根据权利要求1或2所述的区块链支付通道网络交易的高效调度方法,其特征在于,所述执行节点以网络吞吐量最大化为目标,设定多个约束条件,为双方缓冲区内的交易调度问题建模,得到交易调度优化问题,包括:用标准化吞吐量衡量网络的吞吐量;设定决策时每个顺序仅能执行一笔交易且每笔交易仅能被执行一次,构建第一约束条件;设定仅当对应方向的支付通道的容量大于交易的金额时,交易才会被执行,构建第二约束条件;设定当交易执行成功后,交易执行方向的通道容量需要增加,相反方向的通道容量需要减少相同数量,构建第三约束条件;设定若交易的方向和金额均相同,距离最大缓冲时间近的交易先被执行,以用于降低交易在缓冲区中的平均等待时间,构建第四约束条件;以所述标准化吞吐量最大化为优化目标,并以所述第一约束条件、所述第二约束条件、所述第三约束条件和所述第四约束条件作为约束,将双方缓冲区内的交易调度问题表示为线性0/1整数规划问题,建模得到交易调度优化问题。4.根据权利要求3所述的区块链支付通道网络交易的高效调度方法,其特征在于,所述标准化吞吐量表示为:其中,E表示所述标准化吞吐量;P(A)表示A缓冲区;P(B)表示B缓冲区;m表示A缓冲区和
B缓冲区总的交易数目;t表示交易的产生时间;k表示第k笔交易;表示第k笔交易是否第t个执行;v
k
表示第k笔交易的金额;且为一个二元决策变量,若则表示第k笔交易第t个执行,否则所述第一约束条件表示为:所述第一约束条件表示为:所述第二约束条件表示为:所述第二约束条件表示为:其中,表示在第t笔交易执行时节点A通道的容量;表示在第t笔交易执行时节点B通道的容量;所述第三约束条件表示为:所述第三约束条件表示为:所述第四约束条件表示为:其中,Tra
k
={s
k
,des
k
,v
k
,t
k
,o
k
}表示第k笔交易;其内的s
k
表示交易的发送节点;des
k
表示交易的接收节点;v
k
表示交易的金额;t
k
表示交易的产生时间;o
k
表示交易的最大缓冲时间;t
s
、t
l
、o
s
、o
l
、v
s
、v
l
、s
s
、s
l
分别为k取s和l的情况,表示第s和l笔交易对应的参数。5.根据权利要求4所述的区块链支付通道网络交易的高效调度方法,其特征在于,所述针对所述交易调度优化问题,所述执行节点利用编码器模型对当前输入序列中双方缓冲区内各交易的静态特征和动态特征进行提取,得到各交易对应的编码器输出向量,并合并构成编码器输出序列,包括:针对当前输入序列,获取其中每个交易Tra
k
的元组序列其中,b
k
=(s

【专利技术属性】
技术研发人员:李兴华王子豪苗银宾任哲李卓文王运帷任彦冰张俊伟杨超姜奇郭晶晶
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

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

1