CN114095402A - 考虑信道质量的raft分布式系统传输时延分析方法 - Google Patents
考虑信道质量的raft分布式系统传输时延分析方法 Download PDFInfo
- Publication number
- CN114095402A CN114095402A CN202111396227.9A CN202111396227A CN114095402A CN 114095402 A CN114095402 A CN 114095402A CN 202111396227 A CN202111396227 A CN 202111396227A CN 114095402 A CN114095402 A CN 114095402A
- Authority
- CN
- China
- Prior art keywords
- queue
- transmission
- leader
- data packet
- packet
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 138
- 238000004458 analytical method Methods 0.000 title claims abstract description 15
- 230000004044 response Effects 0.000 claims abstract description 76
- 230000010076 replication Effects 0.000 claims abstract description 55
- 238000004364 calculation method Methods 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 26
- 230000008859 change Effects 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims description 13
- 101100091494 Mus musculus Rorc gene Proteins 0.000 claims description 5
- 238000013461 design Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004088 simulation Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- 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/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种考虑信道质量的RAFT分布式系统传输时延分析方法,涉及分布式系统传输时延分析的技术领域,首先构建RAFT日志复制阶段的系统架构,以日志复制作为表征,确认数据包传输队列,建立数据包传输队列延时模型,计算传输队列中每个位置上的数据包传输到接收端所需要的到达时间,然后求解Leader接收队列的停机概率,从而确认日志复制阶段结束时间,计算日志复制阶段的系统平均响应时间及数据包在Leader的发送队列处排队时发生的延时等待时间,并基于信道质量概率变化,对其计算精度优化,以实现对信道质量与系统时延进行分析预测的目的,准确度高,以便构建实际的分布式系统,对仿真软件的设计也具有重要意义。
Description
技术领域
本发明涉及分布式系统传输时延分析的技术领域,更具体地,涉及一种考虑信道质量的RAFT分布式系统传输时延分析方法。
背景技术
RAFT是目前共识领域的标准算法,在此之前,Paxos是共识领域的标准算法,但使用Paxos实现共识需要付出巨大的努力,因此Paxos不具备构建实际分布式系统的良好基础。
RAFT是Diego Ongaro在2014年提出的一种以可理解性作为设计目标的新的分布式共识算法,在Raft中,任何时候一个服务器可以扮演下面角色之一:Leader:处理所有客户端交互,log复制等,一般一次只有一个Leader:Followers:类似选民,完全被动;Candidate候选人:类似Proposer律师,可以被选为一个新的领导人。在分布式计算中,RAFT将用户数据称作日志log,存储在一个日志队列里,队列的每个节点上都有一份,队列里的每个日志都有一个序号,这个序号是连续递增的不能有缺,RAFT的广播过程包括:发送日志到所有Followers;Followers收到日志后,应答收到日志;当半数以上的Followers应答后,Leader通知Followers日志广播成功。
系统的吞吐量与日志应答响应时间是衡量RAFT系统性能的重要指标,该指标通过RAFT的log复制阶段表征,Leader收到用户请求开始进行log复制后,什么时间可以完成大多数Followers的复制是构建分布式系统重点考察的问题,若复制失败是由Leader和Followers之间的信道质量引起的,则Leader自己可以决定重发,且一定会重发,Leader也无需将收到失败的消息时与用户沟通,此时,日志应答成功需要的时间以及传输时延在一定程度上体现了信道错误率与系统吞吐量之间的关系。在计算机通信领域分布式系统建设时,对拜占庭广播过程中信道质量的变化与传输时延进行研究,对仿真软件的设计更具有重要意义。
2014年,Howard H发表“ARC:analysis of Raft consensus”的文章(HowardH.ARC:analysis of Raft consensus[R].University of Cambridge,ComputerLaboratory,2014),该文章中提出基于DES系统模拟RAFT的log复制阶段的方案,将性能参数(信道错误率)与系统规模(带宽,Follower数量)的关系作为仿真系统的输入,通用性较强,但难以定量分析他们的变化关系,另外,DES系统的网络传输驱动模型会对系统仿真的计算精度造成影响,某些传输细节处理不同会影响实验结果,因此,DES不能完全分析出RAFT的log复制阶段关于信道错误率方面的传输时延特性,甚至在某些情况下无法分析系统性能,而且计算量大,仅能做到点分析,无法快速精确分析信道质量变化引起的系统时延变化的问题。
发明内容
为解决当前RAFT日志复制阶段基于DES系统模拟的方式,计算量大,仅能做点分析,无法快速精确分析信道质量变化引起的系统时延变化的问题,本发明提出一种考虑信道质量的RAFT分布式系统传输时延分析方法,在信道质量变化情况下,对RAFT的log复制阶段所需的传输时延进行分析,以便构建实际的分布式系统,对仿真软件的设计也具有重要意义。
为了达到上述技术效果,本发明的技术方案如下:
一种考虑信道质量的RAFT分布式系统传输时延分析方法,包括以下步骤:
S1.引入交换机SW,构建RAFT日志复制阶段的系统架构,实现Leader与Follower之间数据包与应答包的传输;
S2.从Leader接收队列第一次接收到R个正确应答包的时刻出发,求解Leader接收队列的停机概率,从而确认RAFT日志复制阶段结束时间,R表示正确应答包个数下限;R与
S3.设置正确应答包个数下限R,从Leader接收队列第一次满足接收到R个正确应答包的时刻出发,求解Leader接收队列的停机概率,从而确认RAFT日志复制阶段结束时间;
S4.基于步骤S2所述的到达时间和步骤S3所述的Leader接收队列停机概率,计算RAFT日志复制阶段的系统平均响应时间;
S5.初步计算数据包在Leader的发送队列处排队时发生的延时等待时间;
S6.基于信道质量概率的连续变化,对数据包在Leader的发送队列处排队时发生的延时等待时间的计算精度进行优化。
在本技术方案中,构建分布式系统之前,基于RAFT分析传输时延,以RAFT的日志复制阶段作为表征,计算数据包在Leader的发送队列处排队时发生的延时等待时间,并基于信道质量概率变化,对其计算精度优化,在分布式系统建设以前,就可以对信道质量与系统时延进行分析预测,且是基于信道质量概率连续变化,而非某个信道质量点的预测,准确度高。
优选地,步骤S1所述构建的RAFT日志复制阶段的系统架构包括一个用户U、一个Leader节点L、一个交换机SW及n个Follower节点Fi,i=0,1,2,...,k,...,n-1;所述n个Follower节点参与日志复制,交换机SW无内部传输时延,用户U与Leader节点L双向连接,Leader节点L与交换机SW双向连接,交换机SW与n个Follower节点中的每一个均双向连接,用户U与Leader节点L之间的数据包传输不受交换机SW与n个Follower节点中的每一个Follower节点之间数据包传输的影响。
优选地,当日志复制阶段的数据包传输正常无传输错误时,数据包仅在Leader节点和每一个Follower节点之间传输一次,Follower节点对数据包的应答包仅在Follower节点和Leader节点之间传输一次;Leader节点收到Follower节点发来的应答包检查应答包的队列,当日志复制阶段的数据包的应答包出现传输错误时,重新传输当前的事务日志,形成Leader节点与Follower节点之间数据包传输队列。
优选地,设数据包一次传输的硬件处理流水周期为δ,硬件处理流水中最小数据包长度为L,则分配数据传输的带宽单位粒度为L/δ,设Leader节点L、交换机SW及Follower节点之间传输接口的最大带宽为W,则W是L/δ的倍数,设B表示传输接口一次传输的最小数据包的数量,B是最大带宽W的另一种表示形式;设数据包从Leader节点的传输接口发送到应答包从Follower节点返回Leader节点的传输接口需要的时间为Tf,Leader节点的下行信道带宽相为W,则上行带宽至少为W时不成为带宽瓶颈,Leader节点到交换机SW串行发送,交换机SW到Follower节点Fi并行发送,Follower节点Fi到交换机SW并行发送,交换机SW到Leader节点串行发送,所有链路上均没有排队的数据包和应答包。
优选地,设Leader节点一轮发送N个日志复制消息,信道质量用α表示,代表信道中消息丢失或错误的概率,设一次事务处理中共发送数据包的个数最多为A个,将A个数据包按发送顺序分割,其中,[0,B-1]个包是第一个流水发送,表示第0级流水,[B,2B-1]个包是第二个流水发送,[(C-1)B,A]是第C级流水发送,第0级流水发送的响应时间为:
TR0=2δ+Tf+TQ
最小传输时间表达式为:
TMIN=2δ+Tf
若A>N,则数据包需要跨轮传输,跨轮后一次仅发送αkN,k∈[0,D]个数据包,k是轮数,D是最多需要的传输轮次数,Leader节点的发送队列是先到先出的队列,把每轮失败的传输数据包加入发送队列,每轮队列长度为Rk,其中,R1=N,在计算精度为γ时,Rk的表达式为:
计算队列中每个位置的轮数,表达式为:
每个位置上的轮次数为:
RoundCount(n)=Round(n+1)-Round(n)+1
重传数据包在Leader节点的发送队列处排队,产生延时等待时间TQ,形成RAFT日志复制阶段的数据包传输队列延时模型;
传输队列中每个位置上的数据包传输到接收端所需要的到达时间的表达式为:
优选地,步骤S3中,若从Follower节点返回有R个应答包成功应答,Leader节点的日志复制成功,则Leader接收队列停机;将一次事务处理中共发送的A个数据包的接收队列排序为A′,对于接收队列A′上的每一个位置上,设事件为n时刻后已满足停机条件的事件集合,即n时刻后Leader节点收到R个以上成功应答包,为n时刻前,Leader收到k个成功应答包的事件集合,在命中概率为:λ=1-α时,显然的概率服从二项分布 设为[n,n+1]的时间区间Leader节点收到R个成功应答的事件集合,则:
其中,Q(λ,n,R)表示接收队列A′中n时刻恰好得到R个应答包成功应答而停机的概率,即RAFT日志复制阶段结束时间。
优选地,在计算精度大于γ时,A的长度A(λ,R,γ)至少为:
在计算精度为γ的分布式系统中,RAFT日志复制阶段的系统平均响应时间的表达式为:
在此,在发送A个数据包,按数据包的接收顺序排序,A个数据包发送必然收到A个应答包(如果丢包等同于应答错误,也会统计进入错误率α),由于至少要有R个成功数据包应答,才可能确认本轮log数据的copy已经成功,本轮的log复制即可成功结束;对已经成功应答的Follower,Leader也不会再次给这个follower发送数据,所以判断何时结束log复制的问题,就等于判断在接收队列中,何时会第一次碰到满足接收到R个正确应答包的位置,即停机(收到R个正确应答包)位置的概率。
优选地,设在信道质量为α时,平均单个数据包的重传次数为RetransmitPackge(λ,R),平均排队时间与队列的长度成正比,则:
其中,TransDelay(λ,R)表示有数据包重传情况下,传输P+Q个数据包需要的时间,Q表示重传数据包的数量,P表示开始传输时没有受到排队影响的数据包数量;TransDelayMIN(λ,R)表示P+Q次没有重传等待时的P+Q次传输的时间,为没有考虑TQ变化时计算出来的平均延时,表达式为:
表示相比于无重传数据包增加的情况下的传输时间变化的比;kmin+1+TMIN/δ表示没有排队时的队列长度;RetransmitPackge(λ,R)表示由于重传队列增加导致排队等效的传输长度增加量,通过每个数据包在成功应答前需要重新传输的平均次数ReTransPackCount(λ,R)计算得出;
每个数据包在成功应答前需要传输的平均次数:
其中,ReentryProbability(λ,i)表示在Leader接收队列中第i个位置,在命中概率为λ=1-α的时候,数据包在传输队列中可能命中的概率(命中即不再传输,未命中则继续传输),表达式为:
则数据包在Leader的发送队列处排队时发生的延时等待时间的表达式为:
优选地,步骤S6所述的基于信道质量概率变化,对数据包在Leader的发送队列处排队时发生的延时等待时间进行计算精度优化时,对数据包在Leader的发送队列处排队时发生的延时等待时间TQ进行精度优化,设Ri表示在Leader的接收队列的第i轮次的数据包传输完,能命中数据包的命中率倒数;当信道质量概率α增大到Rk,k>2时,的估算公式为:
Rk的计算公式如下:
其中,k表示轮数;
在α递增的初始阶段:
RCm=rmix1(m)
α递增,rmixi,i>1时,引入Rorgm来计算RCm,定义:
rmixshifti(m)=rmixi-1(m)-RCm
设Rorgshiftm=Rorgm-Rorgm-1代表Rorgm自身计算的增量,则:
RCm=Rorgm+rmixshifti(m)=Rorgm-1+rmixshifti(m)+Rorgshiftm,若Rorgm的变化情况与rmixi的变化趋势一致,则说明使用估算函数rmixi近似估算的误差小;利用rmixi的平滑特性,结合Rorgn的准确趋势稳定计算实现的精确估计,Rorgn的计算必然反应出某些rmixi起作用,某些rmixi不起作用;利用向量validRmix[i]表示具体某个rmixi是否起作用,其取值为0或1,当rmixk不起作用的时候,遇到rmixk能计算时,保持前面的计算公式RCn=rmixj(n)不变;
rmixshifti(n)实际是直接使用Rorgn估算和使用rmixi平滑后的RCn估算的差异,在每次α从0到l的计算中,rmixshifti(n)积累的绝对值越少,说明估算质量越高;rmixi的数量是比较少的,使用∑irmixshifti(n)作为度量,来选择选择哪些rmixk起作用,哪些rmixk不起作用;最后的估算取最优RCm的上包络。
在此,基于信道质量概率变化,对数据包在Leader的发送队列处排队时发生的延时等待时间计算精度优化时,按固定步长的方式增加α,是基于信道质量概率连续区间的变化,而非某个信道质量点的预测,准确度高。
与现有技术相比,本发明技术方案的有益效果是:
本发明提出一种考虑信道质量的RAFT分布式系统传输时延分析方法,构建分布式系统之前,基于RAFT分析传输时延。以日志复制阶段过程作为表征,首先构建RAFT日志复制阶段的系统架构,确认RAFT日志复制阶段的数据包传输队列,建立RAFT日志复制阶段的数据包传输队列延时模型,计算传输队列中每个位置上的数据包传输到接收端所需要的到达时间,然后求解Leader接收队列的停机概率,从而确认RAFT日志复制阶段结束时间,基于到达时间和Leader接收队列停机概率,计算RAFT日志复制阶段的系统平均响应时间及数据包在Leader的发送队列处排队时发生的延时等待时间,并基于信道质量概率变化,对其计算精度优化,以实现对信道质量与系统时延进行分析预测的目的,且是基于信道质量概率连续变化,而非某个信道质量点的预测,准确度高,以便构建实际的分布式系统,对仿真软件的设计也具有重要意义。
附图说明
图1表示本发明实施例1中提出的考虑信道质量的RAFT分布式系统传输时延分析方法的流程示意图;
图2表示本发明实施例2中提出的RAFT日志复制阶段的系统架构图;
图3表示本发明实施例2中提出的RAFT日志复制阶段的数据包传输队列形成过程示意图;
图4表示本发明实施例3中提出的RAFT日志复制阶段的数据包传输队列延时模型示意图;
图5表示服从Q(λ,Round(i),1)分布下的,当α=0.85,λ=0.15时的概率分布图;
图6表示本发明实施例3中提出的数据包在Leader的发送队列处排队时发生延时等待的过程示意图;
图7表示本发明实施例3中提出的Leader接收队列停机位置分布变化时,rmixk计算模拟示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好地说明本实施例,附图某些部位会有省略、放大或缩小,并不代表实际尺寸;
对于本领域技术人员来说,附图中某些公知内容说明可能省略是可以理解的。
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例中提出一种考虑信道质量的RAFT分布式系统传输时延分析方法,构建分布式系统之前,基于RAFT分析传输时延,以RAFT的日志复制阶段作为表征,计算数据包在Leader的发送队列处排队时发生的延时等待时间,并基于信道质量概率变化,对其计算精度优化,在分布式系统建设以前,就可以对信道质量与系统时延进行分析预测,且是基于信道质量概率连续变化,而非某个信道质量点的预测,准确度高。该方法的流程图参见图1,从整体上,该方法包括以下步骤:
S1.引入交换机SW,构建RAFT日志复制阶段的系统架构,实现Leader与Follower之间数据包与应答包的传输;
S2.确认RAFT日志复制阶段的数据包传输队列,建立RAFT日志复制阶段的数据包传输队列延时模型,计算传输队列中每个位置上的数据包传输到接收端所需要的到达时间;
S3.从Leader接收队列第一次接收到R个正确应答包的时刻出发,求解Leader接收队列的停机概率,从而确认RAFT日志复制阶段结束时间,R表示正确应答包个数下限;在此,Leader节点发送N个log复制消息,R与N的固定关系满足:
S4.基于步骤S2所述的到达时间和步骤S3所述的Leader接收队列停机概率,计算RAFT日志复制阶段的系统平均响应时间;
S5.初步计算数据包在Leader的发送队列处排队时发生的延时等待时间;
S6.基于信道质量概率的连续变化,对数据包在Leader的发送队列处排队时发生的延时等待时间的计算精度进行优化。
实施例2
在本实施例中,关于数字系统的传输建模规定如下:
系统中的传输包大小最小为L,每个传输包是整体传输的,但是系统根据带宽的不同,可以一次传输最小1或最多Max个L长度的数据包。系统一次传输的包是同时发出的,传输一次需要的时间相同,一次传输的最小时间为δ,不管是发送1个包还是m<=Max个包,传输时间都是δ。任意长度的数据会被拆分为M个大小为L的数据包,最后一个包如果不足L,则填充0xFF或0x00使得数据长度是L的倍数;传输包的延时包括两个部分,数据在各阶段通过硬件处理流水传输需要的时间和数据在系统中各buffer中等待的时间。
参见图2,步骤S1所述构建的RAFT日志复制阶段的系统架构包括一个用户U、一个Leader节点L、一个交换机SW及n个Follower节点Fi,i=0,1,2,...,k,...,n-1;所述n个Follower节点参与日志复制,交换机SW无内部传输时延,用户U与Leader节点L双向连接,Leader节点L与交换机SW双向连接,交换机SW与n个Follower节点中的每一个均双向连接,用户U与Leader节点L之间的数据包传输不受交换机SW与n个Follower节点中的每一个Follower节点之间数据包传输的影响。在图2中,请求数据从U到L是直接相连的,这个接口的传输不会受到L到SW接口的影响。而L到Fi和Fi到L之间,是需要通过SW进行的,数据从L发送到Fi是需要先串行发送到SW的,而且Fi的反馈数据,也是需要经过SW汇集到L的接收接口进行串行输入的。
在本实施例中,当日志复制阶段的数据包传输正常无传输错误时,数据包仅在Leader节点和每一个Follower节点之间传输一次,Follower节点对数据包的应答包仅在Follower节点和Leader节点之间传输一次;数据包传输队列形成过程示意图如图3所示,Leader节点收到Follower节点发来的应答包检查应答包的队列,当日志复制阶段的数据包的应答包出现传输错误时,重新传输当前的事务日志,形成Leader节点与Follower节点之间数据包传输队列。
设数据包一次传输的硬件处理流水周期为δ,硬件处理流水中最小数据包长度为L,则分配数据传输的带宽单位粒度为L/δ,设Leader节点L、交换机SW及Follower节点之间传输接口的最大带宽为W,则W是L/δ的倍数,设B表示传输接口一次传输的最小数据包的数量,B是最大带宽W的另一种表示形式;设数据包从Leader节点的传输接口发送到应答包从Follower节点返回Leader节点的传输接口需要的时间为Tf,Leader节点的下行信道带宽相为W,则上行带宽至少为W时不成为带宽瓶颈,Leader节点到交换机SW串行发送,交换机SW到Follower节点Fi并行发送,Follower节点Fi到交换机SW并行发送,交换机SW到Leader节点串行发送,所有链路上均没有排队的数据包和应答包。
实施例3
在本实施例中,设Leader节点发送N个日志复制消息(N代表系统中follower的数量,表示系统规模),信道质量用α表示,代表信道中消息丢失或错误的概率,只有正常请求复制的数据包在传输,Leader节点发送N个log复制消息,等Leader节点收到第一轮发送的N个log复制的应答消息的时候,统计平均会有αN个消息是错误的,因此,第二轮Leader会发送αN(统计平均)个包,第三轮Leader会发送α2N(统计平均)个包,第k轮Leader会发送αk-1N个包,即fk=αk-1N。设一次事务处理中共发送数据包的个数最多为A个,将A个数据包按发送顺序分割,其中,[0,B-1]个包是第一个流水发送,表示第0级流水,[B,2B-1]个包是第二个流水发送,[(C-1)B,A]是第C级流水发送,第0级流水发送的响应时间为:
TR0=2δ+Tf+TQ
最小传输时间表达式为:
TMIN=2δ+Tf
若A>N,则数据包需要跨轮传输,跨轮后一次仅发送αkN,k∈[0,D]个数据包,k是轮数,D是最多需要的传输轮次数,因此,遇到需要跨轮传输的数据包,则这些数据包直接插入到Leader的发送队列中,具体如图4所示的“斜线”填充的箭头所示。
Leader节点的发送队列是先到先出的队列,把每轮失败的传输数据包加入发送队列,每轮队列长度为Rk,其中,R1=N,在计算精度为γ时,Rk的表达式为:
计算队列中每个位置的轮数,表达式为:
每个位置上的轮次数为:
RoundCount(n)=Round(n+1)-Round(n)+1
重传数据包在Leader节点的发送队列处排队,产生延时等待时间TQ,形成RAFT日志复制阶段的数据包传输队列延时模型;
传输队列中每个位置上的数据包传输到接收端所需要的到达时间的表达式为:
在本实施例中,在发送A个数据包,按数据包的接收顺序排序,A个数据包发送必然收到A个应答包(如果丢包等同于应答错误,也会统计进入错误率α),由于至少要有R个成功数据包应答,才可能确认本轮log数据的copy已经成功,本轮的log复制即可成功结束;对已经成功应答的Follower,Leader也不会再次给这个follower发送数据,所以判断何时结束log复制的问题,就等于判断在接收队列中,何时会第一次碰到满足接收到R个正确应答包的位置,即停机(收到R个正确应答包)位置的概率。步骤S3中,在设置正确应答包个数下限R后,若从Follower节点返回有R个应答包成功应答,Leader节点的日志复制成功,则Leader接收队列停机;将一次事务处理中共发送的A个数据包的接收队列排序为A′,对于接收队列A′上的每一个位置上。
为计算每个位置n上停机的概率,我们先计算在A′队列中检测到达位置n以前,还不足R个正确应答的概率。因为接收流中每个数据包服从强度为λ=1-α的二项分布B(λ,n,k),其中n为独立实验次数,在本问题中就是A,k为事件发生次数,λ为事件发生的概率。设事件为n时刻后已满足停机条件的事件集合,即n时刻后Leader节点收到R个以上成功应答包,为n时刻前,Leader收到k个成功应答包的事件集合,在命中概率为:λ=1-α时,显然的概率服从二项分布设为[n,n+1]的时间区间Leader节点收到R个成功应答的事件集合,则:
其中,Q(λ,n,R)表示接收队列A′中n时刻恰好得到R个应答包成功应答而停机的概率,即RAFT日志复制阶段结束时间。
当α>0,则有可能出现某一次log复制,需要无限次的重传输,虽然这样事件的概率很小,所以系统中讨论的队列长度,如果是无限精度的情况下,是无限长的。但是当系统中的概率需要的精度是有限的情况下,RAFT的log复制系统需要考虑的队列长度,概率大于最小精度时的队列长度则是有限的。
在计算精度大于γ时,A的长度A(λ,R,γ)至少为:
在计算精度为γ的分布式系统中,RAFT日志复制阶段的系统平均响应时间的表达式为:
设在信道质量为α时,平均单个数据包的重传次数为RetransmitPackge(λ,R),平均排队时间与队列的长度成正比,则:
其中,TransDelay(λ,R)表示有数据包重传情况下,传输P+Q个数据包需要的时间,Q表示重传数据包的数量,P表示开始传输时没有受到排队影响的数据包数量;TransDelayMIN(λ,R)表示P+Q次没有重传等待时的P+Q次传输的时间,为没有考虑TQ变化时计算出来的平均延时,表达式为:
表示相比于无重传数据包增加的情况下的传输时间变化的比;kmin+1+TMIN/δ表示没有排队时的队列长度;RetransmitPackge(λ,R)表示由于重传队列增加导致排队等效的传输长度增加量,通过每个数据包在成功应答前需要重新传输的平均次数ReTransPackCount(λ,R)计算得出;
每个数据包在成功应答前需要传输的平均次数:
其中,ReentryProbability(λ,i)表示在Leader接收队列中第i个位置,在命中概率为λ=1-α的时候,数据包在传输队列中可能命中的概率(命中即不再传输,未命中则继续传输),表达式为:
服从Q(λ,Round(i),1)分布下的,当α=0.85,λ=0.15时的概率分布图如图5所示,在图5中,横坐标表示轮次Round。
则数据包在Leader的发送队列处排队时发生的延时等待时间的表达式为:
TQ是由于数据包需要重复传输使得在Leader的output buffer排队引起的,具体发生延时等待的过程示意图如图6所示,即假设现在有传输队列引起拥堵,重传的数据包需要排队,那么等价的,就等于部分包的分布后移了;如果延时的比例比变化,还不能直接等价于所有包都向后移动,还可能需要部分包向前移动,参见图6,横坐标表示传输时间,随着传输时间的增大,“○”形标注的数据包前移了,而“◇”形标注的数据包后移了。
然而,上述方法中,当α较小时,位置i∈[kmin,N-kmin]集中了大部分命中率,ReTransPackCount(λ,R)与正常希望得到的RetransmitPackge(λ,R)是有较大偏差的,α较小时ReentryProbability(λ,i)的概率集中在0处,ReTransPackCount(λ,R)则趋近于(N-kmin)/2,而此时重传包的数量应该趋近于0,因此这时通过ReTransPackCount(λ,R)作为ReentryProbability(λ,i)绝对值,这是误差较大;当α较大时,计算ReTransPackCount(λ,R),每个队列位置只分配固定的一个整数轮次,而每个传输轮次的边界实际上并不是刚好在整数边界,因此就会有轮次计算误差,而且我们目前的轮次取整方式,会使得在轮次边界处的轮次计算偏大,对于α较大时,计算ReTransPackCount(λ,R)实际上要经过多个轮次边界,因此轮次误差积累较大。
因此在本实施例中,基于信道质量概率变化,按固定步长的方式增加α,基于信道质量概率连续区间的变化,而非某个信道质量点的预测,对数据包在Leader的发送队列处排队时发生的延时等待时间进行计算精度优化时,数据包在Leader的发送队列处排队时发生的延时等待时间TQ进行精度优化。设Ri表示在Leader的接收队列的第i轮次的数据包传输完,能命中数据包的命中率倒数;当信道质量概率α增大到Rk,k>2时,的估算公式为:
其中,rmixk表示的估算函数,k表示总的轮次,Mi表示Round(i)=i的位置的数量,Mi服从Q(λ,i,1)分布,随着信道质量概率的增大(信道质量变坏)以及k值增大,rmixk的曲线如图7所示。
结合轮次计算,计算不同round的数据的传输时间增加的比例,在第一轮:
其中,TransQueenLens1(λ,R)表示命中率为λ=1-α时,传输完kmin+1+TMIN/δ个包需要的传输次数,TransQueenLenm1(λ,R)表示没有错误时,传输完成kmin+1+TMIN/δ个数据包需要的传输次数,TransPackagess1(λ,R)表示我们在λ=1-α时,在Leader的接收队列Round(i)=1中,kmin+1+TMIN/δ个包传输完能命中的包的数量。TransPackagesm1(λ,R)表示在Leader的接收队列kmin+1+TMIN/δ个对应位置的最大可能的命中包的数量。
Round(i)=1时,计算实际命中包数量:
TransPackagess1(λ,R)=(kmin+1+TMIN/δ)*ReentryProbability(λ,0)
TransPackagesm1(λ,R)=(kmmin+1+TMIN/δ)
其中,TransPackagess2(λ,R)表示在C1个位置上命中率为ReentryProbability(λ,0)时,命中数量(如果C1个位置上命中率为1,则不会有包到Round(i)=2),与C2个位于Round(i)=2的位置上命中率为ReentryProbability(λ,1)时,命中包数量之合。
其中,TransPackagesm2(λ,R)表示C1+C2个包每个位置上的命中率都为都为ReentryProbability(λ,0)时,能命中包的数量。
计算Round(i)=2时的命中率倒数为:
设系统中Round(i)=1的位置的数量为M1Round(i)=2的位置的数量为M2,这时估算公式:
Round(i)≥3以后,对应的命中率导数Rk,k>2的计算以此类推。按照α递增的顺序计算设按固定步长的方式增加α,处理序号为m,第m步计算出来的为RCm,设基于数据包在Leader的发送队列处排队时发生的延时等待时间计算出来的记为Rorgm;
Rk的计算公式如下:
其中,k表示轮数;
在α递增的初始阶段:
RCm=rmix1(m)
α递增,rmixi,i>1时,引入Rorgm来计算RCm,定义:
rmixshifti(m)=rmixi-1(m)-RCm
设Rorgshiftm=Rorgm-Rorgm-1代表Rorgm自身计算的增量,则:
RCm=Rorgm+rmixshifti(m)=Rorgm-1+rmixshifti(m)+Rorgshiftm
显然,本发明的上述实施例仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,包括以下步骤:
S1.引入交换机SW,构建RAFT日志复制阶段的系统架构,实现Leader与Follower之间数据包与应答包的传输;
S2.确认RAFT日志复制阶段的数据包传输队列,建立RAFT日志复制阶段的数据包传输队列延时模型,计算传输队列中每个位置上的数据包传输到接收端所需要的到达时间;
S3.从Leader接收队列第一次接收到R个正确应答包的时刻出发,求解Leader接收队列的停机概率,从而确认RAFT日志复制阶段结束时间,R表示正确应答包个数下限;
S4.基于步骤S2所述的到达时间和步骤S3所述的Leader接收队列停机概率,计算RAFT日志复制阶段的系统平均响应时间;
S5.初步计算数据包在Leader的发送队列处排队时发生的延时等待时间;
S6.基于信道质量概率的连续变化,对数据包在Leader的发送队列处排队时发生的延时等待时间的计算精度进行优化。
2.根据权利要求1所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,步骤S1所述构建的RAFT日志复制阶段的系统架构包括一个用户U、一个Leader节点L、一个交换机SW及n个Follower节点Fi,i=0,1,2,…,k,…,n-1;所述n个Follower节点参与日志复制,交换机SW无内部传输时延,用户U与Leader节点L双向连接,Leader节点L与交换机SW双向连接,交换机SW与n个Follower节点中的每一个均双向连接,用户U与Leader节点L之间的数据包传输不受交换机SW与n个Follower节点中的每一个Follower节点之间数据包传输的影响。
3.根据权利要求2所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,当日志复制阶段的数据包传输正常无传输错误时,数据包仅在Leader节点和每一个Follower节点之间传输一次,Follower节点对数据包的应答包仅在Follower节点和Leader节点之间传输一次;Leader节点收到Follower节点发来的应答包检查应答包的队列,当日志复制阶段的数据包的应答包出现传输错误时,重新传输当前的事务日志,形成Leader节点与Follower节点之间数据包传输队列。
4.根据权利要求3所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,设数据包传输的硬件处理流水周期为δ,硬件处理流水中最小数据包长度为L,则分配数据传输的带宽单位粒度为L/δ,设Leader节点L、交换机SW及Follower节点之间传输接口的最大带宽为W,则W是L/δ的倍数,设B表示传输接口一次传输的最小数据包的数量,B是最大带宽W的另一种表示形式;设数据包从Leader节点的传输接口发送到应答包从Follower节点返回Leader节点的传输接口需要的时间为Tf,Leader节点的下行信道带宽相为W,则上行带宽至少为W时不成为系统带宽瓶颈,Leader节点到交换机SW串行发送,交换机SW到Follower节点Fi并行发送,Follower节点Fi到交换机SW并行发送,交换机SW到Leader节点串行发送,所有链路上均没有排队的数据包和应答包。
5.根据权利要求4所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,设Leader节点发送N个日志复制消息,信道质量用α表示,代表信道中消息丢失或错误的概率,设一次事务处理中共发送数据包的个数最多为A个,将A个数据包按发送顺序分割,其中[0,B-1]个包是第一个流水发送,表示第0级流水,[B,2B-1]个包是第二个流水发送,[(C-1)B,A]是第C级流水发送,第0级流水发送的响应时间为:
TR0=2δ+Tf+TQ
最小传输时间表达式为:
TMIN=2δ+Tf
若A>N,则数据包需要跨轮传输,跨轮后一次仅发送αkN,k∈[0,D]个数据包,k是轮数,D是最多需要的传输轮次数,Leader节点的发送队列是先到先出的队列,把每轮失败的传输数据包加入发送队列,每轮队列长度为Rk,其中R1=N,在计算精度为γ时,Rk的表达式为:
计算队列中每个位置的轮数,表达式为:
每个位置上的轮次数为:
RoundCount(n)=Round(n+1)-Round(n)+1
重传数据包在Leader节点的发送队列处排队,产生延时等待时间TQ,形成RAFT日志复制阶段的数据包传输队列延时模型;
传输队列中每个位置上的数据包传输到接收端所需要的到达时间的表达式为:
6.根据权利要求5所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,步骤S3中,若从Follower节点返回有R个应答包成功应答,Leader节点的日志复制成功,则Leader接收队列停机;将一次事务处理中共发送的A个数据包的接收队列排序为A′,对于接收队列A′上的每一个位置上,设事件为n时刻后已满足停机条件的事件集合,即n时刻后Leader节点收到R个以上成功应答包,为n时刻前,Leader收到k个成功应答包的事件集合,在命中概率为:λ=1-α时,显然的概率服从二项分布 设为[n,n+1]的时间区间Leader节点收到R个成功应答的事件集合,则:
其中,Q(λ,n,R)表示接收队列A′中n时刻恰好得到R个应答包成功应答而停机的概率,即RAFT日志复制阶段结束时间。
8.根据权利要求7所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,设在信道质量为α时,平均单个数据包的重传次数为RetransmitPackge(λ,R),平均排队时间与队列的长度成正比,则:
其中,TransDelay(λ,R)表示有数据包重传情况下,传输P+Q个数据包需要的时间,Q表示重传数据包的数量,P表示开始传输时没有受到排队影响的数据包数量;TransDelayMIN(λ,R)表示P+Q次没有重传等待时的P+Q次传输的时间,为没有考虑TQ变化时计算出来的平均延时,表达式为:
表示相比于无重传数据包增加的情况下的传输时间变化的比;kmin+1+TMIN/δ表示没有排队时的队列长度;RetransmitPackge(λ,R)表示由于重传队列增加导致排队等效的传输长度增加量,通过每个数据包在成功应答前需要重新传输的平均次数ReTransPackCount(λ,R)计算得出;
每个数据包在成功应答前需要传输的平均次数:
其中,ReentryProbability(λ,i)表示在Leader接收队列中第i个位置,在命中概率为λ=1-α的时候,数据包在传输队列中可能命中的概率(命中即不再传输,未命中则继续传输),表达式为:
则数据包在Leader的发送队列处排队时发生的延时等待时间的表达式为:
10.根据权利要求9所述的考虑信道质量的RAFT分布式系统传输时延分析方法,其特征在于,按照α递增的顺序计算设按固定步长的方式增加α,处理序号为m,第m步计算出来的为RCm,设基于数据包在Leader的发送队列处排队时发生的延时等待时间计算出来的记为Rorgm;
在α递增的初始阶段:
RCm=rmix1(m)
α递增,rmixi,i>1时,引入Rorgm来计算RCm,定义:
rmixshifti(m)=rmixi-1(m)-RCm
设Rorgshiftm=Rorgm-Rorgm-1代表Rorgm自身计算的增量,则:
RCm=Rorgm+rmixshifti(m)=Rorgm-1+rmixshifti(m)+Rorgshiftm,
若Rorgm的变化情况与rmixi的变化趋势一致,则说明使用估算函数rmixi近似估算的误差小;利用rmixi的平滑特性,结合Rorgn的准确趋势稳定计算实现的精确估计,Rorgn的计算必然反应出某些rmixi起作用,某些rmixi不起作用;利用向量validRmix[i]表示具体某个rmixi是否起作用,其取值为0或1,当rmixk不起作用的时候,遇到rmixk能计算时,保持前面的计算公式RCn=rmixj(n)不变;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111396227.9A CN114095402B (zh) | 2021-11-23 | 2021-11-23 | 考虑信道质量的raft分布式系统传输时延分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111396227.9A CN114095402B (zh) | 2021-11-23 | 2021-11-23 | 考虑信道质量的raft分布式系统传输时延分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114095402A true CN114095402A (zh) | 2022-02-25 |
CN114095402B CN114095402B (zh) | 2024-03-12 |
Family
ID=80303429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111396227.9A Active CN114095402B (zh) | 2021-11-23 | 2021-11-23 | 考虑信道质量的raft分布式系统传输时延分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114095402B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103248965A (zh) * | 2013-03-05 | 2013-08-14 | 上海交通大学 | 一种基于近似时延的视频传输队列调度方法 |
WO2016088021A1 (en) * | 2014-12-02 | 2016-06-09 | Petelin Riccardo | Mobile queue tracking system for existing queuing systems |
US20160182388A1 (en) * | 2014-12-19 | 2016-06-23 | Fujitsu Limited | Communication device, relay device, and communication method |
US20180048587A1 (en) * | 2016-05-16 | 2018-02-15 | Yang Bai | Port switch service |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN113011009A (zh) * | 2021-03-01 | 2021-06-22 | 澳门科技大学 | 一种基于MoreData机制的参数优化方法、装置及存储介质 |
-
2021
- 2021-11-23 CN CN202111396227.9A patent/CN114095402B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103248965A (zh) * | 2013-03-05 | 2013-08-14 | 上海交通大学 | 一种基于近似时延的视频传输队列调度方法 |
WO2016088021A1 (en) * | 2014-12-02 | 2016-06-09 | Petelin Riccardo | Mobile queue tracking system for existing queuing systems |
US20160182388A1 (en) * | 2014-12-19 | 2016-06-23 | Fujitsu Limited | Communication device, relay device, and communication method |
US20180048587A1 (en) * | 2016-05-16 | 2018-02-15 | Yang Bai | Port switch service |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN113011009A (zh) * | 2021-03-01 | 2021-06-22 | 澳门科技大学 | 一种基于MoreData机制的参数优化方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114095402B (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6996064B2 (en) | System and method for determining network throughput speed and streaming utilization | |
US6393480B1 (en) | Application response time prediction | |
US8031639B2 (en) | Efficient probabilistic duplicate packet detector in computer networks | |
US7116639B1 (en) | System and method for determining network discrete utilization | |
US20230239200A1 (en) | Optimisation of network parameters for enabling network coding | |
Xia et al. | Analysis on packet resequencing for reliable network protocols | |
Rosberg et al. | Selective-repeat ARQ: the joint distribution of the transmitter and the receiver resequencing buffer occupancies | |
Xia et al. | On the large deviations of resequencing queue size: 2-M/M/1 Case | |
CN114095402A (zh) | 考虑信道质量的raft分布式系统传输时延分析方法 | |
Sventek et al. | Token ring local area networks: a comparison of experimental and theoretical performance | |
CN114448838B (zh) | 系统可靠度评估方法 | |
CN112019443B (zh) | 多路径数据传输方法及装置 | |
Mikheev et al. | Performance of transport connection with selective failure mode when competing for throughput of data transmission path | |
Kassa | Analytic models of TCP performance | |
Younes | Modelling and analysis of TCP congestion control mechanisms using stochastic reward nets | |
Moltchanov et al. | Performance response of wireless channels for quantitatively different loss and arrival statistics | |
Pustovoitov et al. | ASSESSMENT OF QOS INDICATORS OF A NETWORK WITH UDP AND TCP TRAFFIC UNDER A NODE PEAK LOAD MODE. | |
Oswald et al. | Tight bounds for delay-sensitive aggregation | |
Nada | Service Time Analysis of Go-Back-N ARQ Protocol | |
Makridis et al. | Harnessing HARQ Retransmissions for Fast Average Consensus Over Unreliable Communication Channels | |
CN114422416B (zh) | 多链路聚合的数据传输方法、系统、装置及存储介质 | |
Braun et al. | Goodput Analysis for Multi-Source Coded Downloads | |
Lent | Evaluating the Power of a DTN Link | |
Mikheev et al. | Available Throughput of Transport Connection with Selective Repeat Mode in the Loaded Data Transmission Path | |
CN115396066A (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 |