基于抖动测试的AFDX端到端延迟紧性修正
2017-03-21吴佳丽刘志军
吴佳丽,何 锋,王 彤,刘志军
(1.北京航空航天大学 电子信息工程学院,北京 100191; 2.北京航天测控技术有限公司,北京 100041)
基于抖动测试的AFDX端到端延迟紧性修正
吴佳丽1,何 锋1,王 彤1,刘志军2
(1.北京航空航天大学 电子信息工程学院,北京 100191; 2.北京航天测控技术有限公司,北京 100041)
AFDX引入虚拟链路(Virtual Link)实现物理带宽资源的逻辑分隔;由于数据帧的异步到达和多路复用输出造成虚拟链路的时延抖动现象,并最终导致流量端到端延迟分析的不确定性;为此提出了一种基于抖动测试值的网络演算紧缩方法;通过分布式测试,获得虚拟链路在网络中的实际传输抖动,并以此为基础,建立了流量传输精确化模型,通过流量模型的逐级修正,使端到端延迟计算结果逐级精确化;通过将抖动实际值与理论分析结果相结合,提供了网络演算悲观度及其扩散影响度量的直观对比,提高了延迟计算的紧性。
航空电子全双工以太网;网络演算;抖动测试;端到端延迟
0 引言
航空电子全双工以太网(Avionics Full Duplex Switched Ethernet, AFDX)是近年来出现的一种航空电子总线,它对交换式网络进行了严格实时性和冗余配置改造,以用于大中型飞机的航空电子系统组网需求[1]。Airbus A380首先使用并推广了AFDX技术;2005年,ARINC公司发布了ARINC 664 Part 7规范,对这种确定性网络进行了标准化定义[2]。AFDX引进了虚拟链路(Virtual Link, VL)来对带宽资源进行有效的分隔,目的是提高网络确定性,减少流量之间的相互干扰。VL流量存在着时延抖动(jitter)现象,这取决于VL的多路复用和数据帧的调度情况。实时通信的设计目标要求端到端的时延抖动限制于确定的界限之内。
确定性网络演算(Deterministic Network Calculus)方法最初由Cruz R.在文献[3]中较为系统地提出,用来计算网络数据包的端到端延迟上界。法国图卢兹大学IRIT实验室首次将网络演算应用到AFDX网络中,得到了每条VL的时延上界,并应用“组技术”(Grouping technique)使计算出的上界更紧[4]。目前,网络演算在AFDX中的应用大多采用的是简单VL流模型。VL流模型是用来描述VL流量特征的数学模型,利用这个流量模型,并结合服务曲线,可以实现流量最坏延迟的计算。文献[4]考虑到交换机流量管制的影响,提出了VL精确流模型,进一步优化了计算结果。
网络演算方法对AFDX网络上分散到达的数据包进行建模,用到达曲线和服务曲线分别对输入数据流和输出端口的服务行为进行描述[3]。到达曲线是输入数据累积函数的上包络,是一个较为悲观的结果。此外,由于网络演算模型本身的模糊性,通过它得到的端到端时延同样是悲观的。然而,真是的最坏延迟是难以量化的,虽然可以通过模型检查的方法获得,但是通过枚举方法遍历流量之间干扰的各种情况,在时间维度上不具有大规模应用的可能性。
在实际网络当中,输出端口的流量争用会使VL出现时延抖动[2]。当一条VL经过多级交换节点时,抖动会变的越来越大并逐级扩散。通过分布式测试,我们可以得到分布式网络节点上的最大时延抖动,并观察到抖动的扩散影响。这一测试结果可以被用来修正到达曲线模型,进行后续节点的时延值预测,并得到更紧的端到端时延上界。
1 基于网络演算的理论分析
1.1 网络演算的基本原理
网络演算是一种基于最小加代数的确定性网络延迟界限的分析方法[3]。采用网络演算技术,可以计算数据帧经过交换网络的积压、时间延迟等性能参数的确界。
网络演算有两个基本的计算操作,极小加卷积与反卷积:
(1)
确定性网络演算还包括两个重要概念:到达曲线(arrival curve)和服务曲线(service curve)。到达曲线描述了输入流量的约束条件,服务曲线描述了多路复用的排队服务规则。依据网络演算理论,节点的时延上界由该节点处的到达曲线和服务曲线决定。设网络上共有n条VL,用Vi表示第i条VL。令Ri(t)表示Vi上的累积数据量,当且仅当Ri(t)≤Ri(t)⊗αi(t)时,其中αi(t)为Vi的到达曲线。对于最大数据帧长度为Lmax,带宽分配间隔为GBAG的虚拟链路,可以用(σ,ρ)模型来描述虚拟链路经过交换机流量整形后的流量特征。其中σ为突发度,ρ为可持续的平均流量,存在[6]:
(2)
到达曲线为:
(3)
AFDX交换机的每一个输出端口都提供了形为β(t)=C[t-T]+的服务曲线,其中C为该端口的工作输出速率,T是该端口的技术延迟,如图1(a)所示。经过该端口的所有VL都满足R′≥R⊗β,其中,R是VL的输入累积流量,R′是输出累积流量。此时,R′的到达曲线为α′=αØβ。
图1 服务曲线与最大延时
VL数据流R的时延上界由到达曲线与服务曲线的水平距离所确定,如图1(b)所示,表达式如下:
(4)
假设一条VL数据流经过了多级交换机,其中第i级节点的到达曲线为αi(t)=σi+ρt,延迟界限为Di,根据网络演算理论,经过该节点后第i+1级节点的到达曲线为:
(5)
1.2 VL精确流模型
VL的配置参数包括带宽分配间隔(Bandwidth Allocation Gap, BAG)、最大帧长、最小帧长。简单流模型是取参数允许范围内的最大流量,即VL以BAG为周期发送最大长度的数据帧。设虚拟链路Vi上最大的帧长为Lmax,i,BAG为Ti,Vi的简单流模型如图2所示。
图2 简单流模型
在简单流模型中,一条流量受到阻塞后,到达曲线变为原始到达曲线位移后的结果,物理意义是只要VL被阻塞了,其突发度就会增大。文献[4]对VL流模型进行了精确化。若已知VL流量Vi到达交换机h时的最大延时抖动是Jmax,i,h,则VL的精确流模型如图3所示,其物理意义是:数据包在被阻塞后仍然是离散到达的,突发度不会随着被阻塞的时间连续地增大,而是阶跃地增大[5]。VL精确流模型的到达曲线要略小于VL简单流模型的到达曲线。相比于“组方法”,精确流模型是从单个VL的角度进行优化,而“组方法”是对多个VL的和进行优化。
图3 VL精确流模型
2 端到端延迟的紧性修正
VL精确流模型考虑的是流量管制所允许的最大抖动(ms级)。在AFDX网络的配置过程中,受主观因素影响,这个值要远远大于实际网络中的最大抖动(us级),从而丧失了网络流量确定性预测的精准性。即便使用网络演算方法进行精确化计算,但考虑到其结果的悲观性,这个计算值也会远大于实际测试值。为了评估时延抖动的扩散影响,本文将通过测试得到最大的时延抖动值Jtest,并使用测试值代替精确流模型中的Jmax,使网络演算的结果逐级精确化,并得到更紧致的端到端时延上界。
本文基于AFDX一体化监视测试平台,采用物理测试方法得到时延抖动的实测值。ES模拟器在执行AFDX端系统测试和AFDX交换机测试过程中时,可以进行网络流量注入,模拟ES流量行为。
图4 AFDX测试网络结构示意图
测试主机上安装有监控采集板卡,通过网络分支器可以截获任意节点的数据帧流量。板卡的A端口捕获进入交换机节点前的VL流量,
B端口捕获交换机发出的VL流量。抖动测试模块的伪代码如下:
LOOP
findSameVLID()
input -> VLID
selectFrame(m_AVLList) -> m_pAVL
selectFrame(m_BVLList) -> m_pBVL
findSameSN(m_pAVL,m_pBVL)
Delay <- calculateDelay(m_pAVL, m_pBVL)
Jittermax <- DelayMax-DelayMin
具体计算方法如下:
1)从A B端口提取相同的VLID;
2)选择要进行测试的VLID;
3) 将接收到的ID号等于所选VLID的数据帧分别存入缓存区m_pAVL、m_pBVL;
4)在输入输出队列中分别找出顺序号(Sequence Number, SN)相同的一组数据帧,令其时间分别为tA、tB,则Delay= |tA-tB|,遍历所有数据,得到每组数据帧的延迟;
5)记录得到的最大延迟时间DelayMax与最小延迟时间DelayMin,可以得到虚拟链路的最大时延抖动为jitter=DelayMax-DelayMin。
为了使测试结果更加接近真实值,我们将测试时间延长至2小时,并取这段时间之内最大的时延抖动为Jtest。
当端系统以BAG为间隔发送最大帧长的数据包时,网络流量达到最大。图5所示为出现某一抖动的VL数据流。通过测试得到的真实值小于VL在交换机中配置的最大抖动。
图5 最大允许抖动与抖动真实值
VL流量在交换机h中针对精确流量模型的到达曲线是分段曲线,可以用如下联立的数学公式表示:
(6)
定义参数nJmax,i,h和ΔJmax,i,h如下:
其中:ΔJmax,i,h 设精确流模型的到达曲线为α(t),下一级到达曲线为α′(t);改进后的到达曲线为α1(t),下一级到达曲线为α1′(t)。当使用Jtest代替Jmax后,下一级的到达曲线得到了优化。从图6可以看出,h(α′,β)≥h(α1′,β)。 图6 优化的精确流模型 为了验证优化方法,搭建如图7所示的AFDX实测网络,该网络包含8个端系统,4台AFDX交换机,69条VL。交换机的固定转发延迟为10μs。取VL7,VL8,VL15,VL17进行测试。这4条VL具有一定的典型性,它们在同一端口竞争输出,相互干扰会造成时延抖动。 图7 AFDX实测网络 VL号帧长度/字节发送周期/msVL716564VL8173112VL15187128VL17171112 在交换机1的5端口放置探针,测试时间为2小时。通过将抖动测试值带入到达曲线,可以预测到下一级的最坏时延,同时可以得到端到端时延上界。 表2和表3分别为普通网络演算与使用组方法的网络演算得到的计算结果。其中,抖动计算值为当前结点的时延上界减去最小的固定延迟和数据帧的传输时间。 表2 使用普通网络演算的优化结果 表3 使用组技术的网络演算优化结果 ms 依据测试结果,可以绘制如图8所示的柱状图,基于测试值修正的网络演算结果优化了10%以上。 图8 网络演算优化结果(单位:ms) 最后,通过测试得到全部多跳VL的第一级抖动结果,如图9所示,通过基本网络演算,所有VL的端到端时延都得到了一定程度的优化。 基本的网络演算方法得到的结果是及其悲观的,对于包含多跳VL的AFDX网络,计算结果的悲观性会随着网络流量的传播而逐级扩散。通过抖动的测试值对到达曲线进行修正,一方面可以观察到最大时延逐级精确化的过程,另一方面可以使 图9 所有VL的端到端时延及修正结果 端到端的时延上界更加紧致。从实验数据中可以看出,修正后计算结果的优化率达到了10%以上。通过将实际值与理论方法相结合,可以确切地衡量网络演算方法的悲观度及其扩散影响,实现了理论与实际的综合评价,并为AFDX网络的设计提供了数据参考。 [1] 熊华钢,王中华,先进航空电子综合技术[M].北京:国防工业出版社,2009. [2]ARINC664Aircraftdatanetwork,part7:AvionicsfullduplexswitchedEthernet(AFDX)Network[S]. [3]BoudecJYL,ThiranP.NetworkCalculus[M].BerlinGermany:SpringerVerlag,LNCSvolume2050, 2004. [4] 赵永库,王红春,唐来胜AFDX网络端到端时延分析方法[J].电光与控制, 2013(4). [5]LiuC,WangT,ZhaoCX,etal.Worst-caseflowmodelofVLforworst-casedelayanalysisofAFDX[J].ElectronicsLetter, 2012,48(6): 372-328. [6] 杨 云,熊华钢. 计算AFDX延迟的网络演算方法[J]. 电光与控制,2008, 15(9): 57-60. [7] 张瀚文,AFDX分布式数据监视与分析方法研究[D]. 北京: 北京航空航天大学, 2015. [8]Chararah,ScharbargJL,ErmontJ,etal.Methodsforboundingend-to-enddelaysonanAFDXnetwork[A].Proceedingsofthe18thEuromicroConferenceonReal-TimeSystems[C]. 2006. [9]FrancesF,FraboulC,GrieuJ.UsingNetworkCalculustooptimizetheAFDXnetwork[J].ERTS2006-25-27, 2006. A Tightening Method of AFDX End-to-End Delay Based on Jitter Tests Wu Jiali1, He Feng1, Wang Tong1, Liu Zhijun2 (1.School of Electronics and Information Engineering, Beihang University, Beijing 100191, China;2.Beijing Aerospace Measurement and Control Corporation,Beijing 100041,China) AFDX uses Virtual Link to realize the logical separation of the physical bandwidth resources. The delay jitter on virtual links is caused by asynchronous arrival and multiplexing output of data frames, which also leads to the uncertainty in the end to end delay analysis. A method of network calculation based on jitter test was proposed to solve the problem. The network transmission jitters on VLs have been caught by distributed test. On the foundation of the testing results, a precise flow model was established, and with the stepwise correction of the flow model, the end to end delay was corrected gradually. By combining the actual value of jitter with the theoretical analysis results, a visual result of the network calculus pessimism and its diffusion effect was proposed. This result improves the compactness of the network delay calculation. avionics full duplex switched Ethernet; network calculus; jitter test; end to end delay 2016-09-08; 2016-09-27。 国家自然科学基金(61301086),教育部发展基金(YWF-15-GJSYS-055)。 吴佳丽(1992-),女,河北石家庄人,硕士,主要从事航空电子网络方向的研究。 1671-4598(2017)02-0057-04 10.16526/j.cnki.11-4762/tp.2017.02.015 TP393 A3 示例分析
4 结论