基于TSN的端到端网络 演算技术研究 (2022年) 工业互联网产业联盟(AII) 2023年6月 声明 本报告所载的材料和信息,包括但不限于文本、图片、数据、观点、建议,不构成法律建议,也不应替代律师意见。本报告所有材料或内容的知识产权归工业互联网产业联盟所有 (注明是引自其他方的内容除外),并受法律保护。如需转载,需联系本联盟并获得授权许可。未经授权许可,任何人不得将报告的全部或部分内容以发布、转载、汇编、转让、出售等方式使用,不得将报告的全部或部分内容通过网络方式传播,不得在任何公开场合使用报告内相关描述及相关数据图表。违反上述声明者,本联盟将追究其相关法律责任。 工业互联网产业联盟联系电话:010-62305887 邮箱:aii@caict.ac.cn 牵头编写单位: 华为技术有限公司 参与编写单位: 深圳市三旺通信股份有限公司中国联合网络通信有限公司中国移动通信有限公司研究院网络通信与安全紫金山实验室西安云维智联科技有限公司贵州大学 工业互联网产业联盟公众号 前言 TSN技术发展多年,在标准上也定义了多项TSN子技术。对于构建或更好地构建端到端TSN网络方案,或者在更广义的角度,构建提供确定性服务能力的网络方案,还涉及到TSN标准之外的技术。例如网络演算就是其中的一项关键技术。网络演算面向网络的确定性时延上界、缓存上界的分析,可用于TSN的有界时延保证的理论基础。 本研究项目着力于基于TSN的端到端网络演算技术研究,考虑网络演算与TSN数据面调度机制的配合关系 ,以及网络演算在TSN控制面方案中的应用。同时,将TSN应用时工程问题考虑在内,结合TSN设备和生态,以期望加快TSN产业化发展与应用落地。 编写组成员(排名不分先后): 陈李昊、张嘉怡、高涛、王童童、熊伟、邓顺义、高一颠、贾雪琴、韩政鑫、刘鹏、何斌、王红春、邹赛 目录 1概述1 2网络演算介绍1 2.1网络演算基本概念1 2.2确定性网络演算8 2.3随机网络演算13 2.4网络演算在AFDX网络中的应用15 3TSN调度机制与网络演算的关系17 3.1基于经验的做法17 3.2SP的时延计算18 3.3CBS的时延计算19 3.4ATS的时延计算21 3.5关于时间门控23 4应用网络演算的TSN方案23 4.1服务与流量建模23 4.2网络演算与TSN配置模型、TSN方案的关系25 附录A确定性方案的本质探讨27 对确定性方案的分类27 运用网络演算进行性能分析30 整形的影响32 参考文献35 1概述 TSN制定了多种调度机制,简单来讲可以分为同步调度(TAS)和异步调度(SP,CBS,ATS)两大类。基于这些调度机制,配合合理的资源预留,则可以实现对流量的有界时延等保障。为了进行资源预留,TSN定义了三种配置模型,其中两种都需要一个集中的网络控制器功能实体。在网络控制器上,网络演算是属于算法模块的重要功能。网络演算以当前的网络信息和流量信息(包括对端到端时延上界的保障需求)作为输入,基于TSN异步调度类机制,计算出网络配置参数,从而帮助实现整体的TSN方案。 就网络演算与TSN的关系,尤其是与TSN调度机制的关系,具体而言,就是TSN调度机制及其配置参数,会对设备的服务能力——即处理报文排队转发时的特征与约束——产生显著的影响,而这就是网络演算在对网络设备进行建模时需要重点考虑的。特别是当使用TSN异步调度类机制时,网络在不同条件下对流量所能提供的时延保障,不像门控类方案那样可以轻松获得。基于经验的计算方案会带来精度上的误差和使用上的约束,而网络演算基于严谨的数学分析过程,可以成为TSN时延分析和网络配置指导的理想工具。 本文研究、总结了网络演算的基本概念和方法,TSN调度机制与网络演算的具体关系,以及基于网络演算的TSN方案应用案例。 2网络演算介绍 2.1网络演算基本概念 Networkcalculus直译过来叫网络微积分,又称网络演算(下文均称网络演算)。 网络演算是用于分析如通信网络、数字电路、并行程序等人造系统的一种数学方法,主要分析目标是时延等“服务保障(performanceguarantees)”。网络演算最初由R.L.Cruz在1990年提出[1][2],此后迅速发展[3][4]。 网络演算主要由以下关键部件组成: 流量建模:使用到达曲线(ArrivalCurve)描述流量到达网络设备时的行为特征。 网络服务建模:使用服务曲线(ServiceCurve)描述网络设备的服务能力,重点是对调度器行为的描述。 计算方法:考虑网络拓扑、流量间的相互干扰等,计算任意一个流量在网络中传输的端到端时延上界。 通过建立到达曲线和服务曲线,网络演算可以把复杂且非线性的网络系统转变为易于分析的线性系统,进而计算求解。 目前网络演算的主要技术分支有: 确定性网络演算(DeterministicNetworkCalculus,DNC), 基于到达曲线和服务曲线,计算100%保障的时延上界,如端到端最坏时延不会超过10ms。[4][5] 随机网络演算(StochasticNetworkCalculus,SNC),建模时 考虑流量到达和网络服务的随机特性,引入了概率论,计算满足概率的时延上界,如端到端时延99.99%不超过10ms。[6][8] 学术界对于网络演算研究的应用场景从最初ATM网络,发展到IP网络,再逐渐扩展到机载网络、工业网络、车载网络,以及无线网络等。 目前网络演算最成功的商业应用案例是在机载网络。航空电子全双工交换式以太网(AFDX,AvionicsFullDupleXswitchedEthernet)技术需配合网络演算的理论证明,验证相关流量被保障获得的时延上界满足其需求[9][10]。AFDX已应用于空客A380、波音B787等大型客机上。西门子的西门子网络规划工具(SINETPLAN)也使用了网络演算来辅助PROFINET网络的设计[11]。 2.1.1到达曲线——描述流量特征 网络演算理论使用到达曲线α(t)来描述流量特征。到达曲线是流量到达行为的上包络,即对于任意时刻t以及0≤s≤t,满足:R(t)– R(s)≤α(t-s)。其中,R(t)是流量的累积到达函数。如图1所示,黑色曲线是一个流量的累积到达,随时间单调递增(非严格);红线是到达曲线。将到达曲线的起点从原点开始沿着黑色曲线任意移动,黑色曲线始终位于红线之下。 另外,图1中的到达曲线是一种经典的到达曲线的形式,可以描述为α(t)=rt+b。直观的理解是:r描述了流量的长期平均速率,即图中红线的斜率;b描述了流量的最大突发量,即图中过原点的红线与纵轴的交点。 图1到达曲线α(t)与流量累积到达R(t)的关系[7] 到达曲线建模真实流量的举例: 设有一个流量,从一个1Gbps的链路到达网络设备,每间隔1ms会有5个连续报文的突发到达,报文长度均为1500Byte。如图2中,黑线表示了这个流量的累积到达量。最简单地,我们可以用该流量的平均速率60Mbps和突发量60Kbit作为到达曲线α(t)=rt+b中的r和b,此时刻画的到达曲线如图2中红线所示。如果考虑到流量到达受链路速率的约束,则可以用紫线来描述。紫线也是到达曲线,而且显然,紫线对于流量到达行为的刻画更为准确。 图2到达曲线实例 到达曲线可以描述单流,也可以描述聚合流。例如,聚合流由两个单流组成,则α=α1+α2,如图3。 图3到达曲线的聚合 2.1.2服务曲线——描述调度器行为 网络演算理论使用服务曲线β(t)来描述网络设备的服务能力,且 可以具体到描述设备对于其调度器中一个特定队列的服务能力。服务曲线是服务能力的下包络,满足:R*(t)≥(R⮾β)(t)。其中,R(t)和R*(t)分别是流量的累积到达和累积输出。如图4所示,黑色曲线是一个流量的累积到达,随时间单调递增(非严格);由于蓝色的服务曲线是对于该流量服务能力的下包络,所以流量的实际累积输出(即红色曲线)一定总在流量的累积到达R与服务曲线β的卷积(即绿色曲线)之上。该处卷积指最小加卷积(min-plusconvolution):f⮾g(t)=inf0≤s≤t[f(s)+g(t-s)],用以表征两个函数之间的加和下界。换言之,流量的实际累积输出同时受到流量的累积到达量和设备调度器服务能力的限制,卷积运算描述了这两个限制同时作用后的结果。 另外,图4中蓝色的服务曲线是一种经典的服务曲线形式,即β(t)=R(t-T)。这种服务曲线也被称作“rate-latency”服务曲线。直观的理解是:T描述了流量抵达后,最长需要等待T时间,才能得到调度服务;R描述了流量可以从调度器上获取的长期平均最小调度速率。 图4服务曲线β(t)与流量累积输出R*(t)的关系[7] 服务曲线建模DRR调度器的举例: DeficitRound-Robin(DRR,亦称DeficitWeightedRound-Robin,DWRR)是一种经典的加权轮询调度器[12],很多网络设备上都使用了DRR或类似于DRR的调度机制。DRR的基本原理示意如图5:三个队列分别配置了权重值Qi,每一轮轮询过程中,每个队列根据权重值来调度报文出队。 图5DRR原理示意图 [13]给出了DRR的服务曲线推导,这里直接列出结论,任意一个DRR队列i的服务曲线为: 其中,Q是所有DRR队列的总权重值,Li、Lj是各DRR队列中的最大报文长。该服务曲线符合β(t)=R(t-T)的形式。具体地,对于“R”的理解,即该DRR队列i中的流量所能获得的长期平均最小调度速率就是该队列的权重份额的比例乘以总服务速率;而“T”则是由DRR调度机制造成的最大轮询等待时间。 多个服务曲线级联时,可以进行卷积运算。一个流量先通过服务曲 线为β1的调度器,再通过服务曲线为β2的调度器,相当于只通过一个服务曲线为β=β1⮾β2的调度器,如图6。 图6服务曲线的级联 2.1.3时延上界 到达曲线α描述了流量到达行为的上包络,亦即流量到达行为的上界;服务曲线β描述了设备调度器服务能力的下包络,亦即服务能力的 下界。如图7所示,将两个曲线放在一起,则两个曲线的最大垂直距离 为该流量在该设备上所能占用的缓存量的上限,即缓存上界;而两个曲线的最大水平距离为该流量中任意报文在该设备调度器中所能经历的最大时延,即时延上界D=h(α,β)。 图7时延上界与缓存上界 时延的上界(delay/latencyupper-bound),或者说时延界 (delay/latencybound),是网络演算最主要的研究对象。由于时延 界是基于流量到达行为的上界和设备服务能力的下界所给出的,所以时延界也被称作为最差情况下的时延(worst-casedelay/latency)。用通俗的话来说,当一个流量的最大突发刚好赶上一个调度器最忙碌的状态时,这个流量中的某个报文可能会在调度器里经历这个最差情况下的时延。 下面举一个具体的例子:选取2.1.1节中的流量进行分析,该流量的到达曲线为:α(t)=rt+b=6*107*t+6*104,设为最高优先级;设经过一个总服务速率为1Gbps的绝对优先级(StrictPriority,SP)调度器,所有低优先级流量的最大报文长为1500Byte=12000bit,即等待一个低优先级最长报文完成传输需要12微秒,则调度器对该流量的服务曲线为:β(t)=R(t-T)=1*109(t–1.2*10-5)。至此,由于R>r,很容易求得时延上界:D=T+b/R=7.2*10-5s。 以上是一个流量经过一个调度器(一个设备)的情况,得到的时延上界是单点的时延上界。当然,网络演算也适用于多节点级联网络的端到端时延上界的计算,也适用于网络中有大量不同特征的流量互相交汇、干扰的情况。在下面两节,会给出进一步的介绍。 2.2确定性网络演算 确定性网络演算(DNC,DeterministicNetworkCalculus)基于到