0731-84728105
15116127200
OpenBox:软件定义时间敏感网络SD-TSN
发布时间:2021-05-18
      软件定义时间敏感网络:SD-TSN。融合了软件定义网络技术与时间敏感网络技术的综合系统网络。该网络既具备软件定义网络的组网灵活性、协议无关转发的高适应性、转发控制分(fēn)离的高效性与可(kě)控性,同时又(yòu)具有(yǒu)低延时、低抖动的时间敏感特性。通过软件流表与队列映射的灵活定义,极大放宽了全网流规划调度的难度,增强了TSN网络的适用(yòng)范围和行业兼容性。
     TSN的时间敏感特征到底是谁的属性?毋庸置疑,这是业務(wù)的属性。TSN的技术标准起源于音视频行业,其核心特性要求是高实时和同步传输。為(wèi)什么是高实时与同步传输这两个特性呢(ne)?因為(wèi)这确实是属于现代多(duō)媒體(tǐ)业務(wù)发展的必然需求,比如说实况赛事直播。随着现代工业互联网的发展和生产规模的扩大及协同要求,TSN所提供的网络特性逐渐被工业界各行业所关注和吸引,特别是在IT与OT融合和5G技术的商(shāng)用(yòng)背景下,TSN技术的重要性越发变得明显。
     万物(wù)皆有(yǒu)宿命,技术在特定领域下所拥有(yǒu)的优势也必然成為(wèi)它在适应其他(tā)领域的不足。我们深入研究技术的核心与本质,不迷信技术,善于结合技术的优势来解决业務(wù)的痛点。
      1.确定的网络需要确定的环境
     在当前时代与技术背景下,TSN确实变得很(hěn)重要。但它并不是灵丹妙药,也不是万能(néng)解药。TSN技术的重要性主要體(tǐ)现在其技术规范要求的网络环境下,可(kě)以确保业務(wù)的分(fēn)组数据以确定的延时和较小(xiǎo)的抖动到达业務(wù)对端。TSN的核心特征是保证确定的延时(范围),可(kě)以规划出较小(xiǎo)延时。抖动大小(xiǎo)跟具體(tǐ)网络业務(wù)流量、调度策略相关。為(wèi)保障上述特征,在TSN网络系统中网络环境的各种参数,如时间、流特征以及调度控制都是其正确运行的先决条件,确定因素。
     1.1 全局时间同步
     时钟同步比较好理(lǐ)解,就好比全中國(guó)都使用(yòng)北京时间对自己的生产和生活进行安排参考。TSN网络运行的前提条件就是时间同步,只有(yǒu)所有(yǒu)节点全都同步到了一个全局的时钟刻度,才有(yǒu)可(kě)能(néng)為(wèi)其进行业務(wù)流的规划,各流之间才不会碰撞。例如高铁网络,各个站点之间如果不都是基于北京时间来进行列車(chē)调度,肯定无法完成整个高铁网络的正确运转,甚至带来严重后果。时间同步是基于时间信息做规划调度的前期和基础。
     1.2 时间敏感流参数明确
     TSN对流的要求一是确定且固定的周期性;二是分(fēn)组長(cháng)度尽量固定;三是有(yǒu)可(kě)接受的延时与抖动指标。TSN网络只能(néng)保障时间敏感流的实时性和可(kě)靠性,其关键原因就是这些时间敏感流的业務(wù)特征是明确的,先知的。不具备周期性的流,调度程序无法為(wèi)其做出无限期的门控规划。分(fēn)组長(cháng)度随机的流则只能(néng)按最坏情况(最大MTU)大小(xiǎo)為(wèi)其规划,造成该分(fēn)组转发后的调度时隙资源的浪费,為(wèi)其他(tā)更多(duō)流的规划带来限制和困难。延时和抖动本身就是时间敏感流自备的属性,同时也是做规划调度需要计算考虑的因素。
     只有(yǒu)这些流属性参数都明确,才能(néng)為(wèi)其进行统一的规划调度。否则,流的周期不确定,或是分(fēn)组長(cháng)度随机,都将无法為(wèi)其提供TSN流的服務(wù),只能(néng)当作BE流来处理(lǐ)。
     1.3 全网统一规划调度
     TSN流一定是先规划调度再上線(xiàn)运行。在全局时钟同步和时间敏感流的各项属性参数都明确的条件下,可(kě)以准备做全网流量转发的规划调度,生成各节点各端口的门控列表。规划调度的输入参数非常多(duō),求解过程也非常复杂。有(yǒu)无解或最优解生成取决于规划程序对完整系统的方方面面因素的考虑与算法的合理(lǐ)性。随着TSN流数量的增加、流周期的冲突增加和最小(xiǎo)公倍数变大,规划调度的计算结果会程指数性变化,可(kě)能(néng)甚至无法求解。
     综上所述,TSN网络需要在全局同步在同一个时钟刻度基础上运行,所有(yǒu)时间敏感流需要具备明确的周期性、固定分(fēn)组長(cháng)度和可(kě)接受的延时与抖动值。
     2.行业需求与TSN要求之间的磨合
     TSN网络的时间特征优势与高带宽优势被许多(duō)使用(yòng)传统总線(xiàn)的行业所关注,这些行业正在考虑向TSN网络转移,如車(chē)载网络、工业制造控制网络等。在我们对TSN业務(wù)调研中发现,大多(duō)数的客户应用(yòng)场景中,只存在较少完全符合TSN特征要求的流,不管从数量上还是流量上来看,10%都不到,另外80%的流对实时都有(yǒu)要求,但并不完全符合TSN流的特征要求,特别是周期性。剩下的BE流数量不多(duō),流量也不大。可(kě)能(néng)是想上TSN技术的行业考虑更多(duō)的主要还是有(yǒu)实时要求的业務(wù),或是BE业務(wù)仍较庞大,依然保留现网的运营模式。
     2.1 流特征
     TSN整个网络系统的正确运行是基于所有(yǒu)数据IO与转发节点都同步在一个时钟基准上,并基于全局的时钟进行规划的统一调度,為(wèi)每一条流都指定一个进入网络的时间槽位置。核心内容就是全网时钟同步和统一规划调度。那非周期性流是否可(kě)以当作TSN流使用(yòng)呢(ne)?非固定長(cháng)度分(fēn)组是否也可(kě)以呢(ne)?答(dá)案是不确定的。首先,非周期性流的不确定性主要是看非周期性流产生的方式,如果是纯随机发生,也不存在产生的最小(xiǎo)间隔,或者说可(kě)能(néng)的最小(xiǎo)间隔非常小(xiǎo),那这样的流确实很(hěn)难放进TSN网络进行规划。其次,非固定長(cháng)度可(kě)以在规划时统一成最大長(cháng)度进行规划。但是会造成一些实时调度时隙的空闲。若存在调度能(néng)接受的最小(xiǎo)时间间隔和随机長(cháng)度所带来的不稳定抖动,则可(kě)以考虑按照其最小(xiǎo)间隔方式规划该流,其最大抖动会是该流的最小(xiǎo)间隔長(cháng)度加上系统抖动的最大值。若规划结果符合TSN流的预期则可(kě)以部署实施,若无法规划或最优解无法满足流的延时与抖动要求,则无法完成此类型流的规划部署要求。
     2.2 协议特征
     转移到TSN网络的行业场景里,存在大部分(fēn)的总線(xiàn)节点,其传输协议并不是标准的以太网和IPv4等网络标准协议,更多(duō)的是一些专有(yǒu)协议,并不完全满足802.1Q规范。这些节点通常又(yòu)需要实时性,是完成业務(wù)实时功能(néng)需求的必要组成。如何让这些节点能(néng)快速接入到TSN网络中是行业转网的一大挑战。可(kě)行的方案有(yǒu)很(hěn)多(duō),无非是从两边入手。要么让这些节点全部按照标准协议来转换,要么TSN网络能(néng)支持协议无关的转发。二者总要有(yǒu)一方妥协才能(néng)组合到一起正常工作。
     2.3 延时与抖动保障
     任何存在数据交互的行业应用(yòng)对数据传输的要求都少不了低延时和低抖动。就TSN技术而言,Qch标准解决的是延时确定化,而Qbv是提供实现延时最小(xiǎo)化的可(kě)能(néng)。在传统的BE网络,分(fēn)组进入链路完全靠运气,凭借着一股执念终成正果的精神在网络空间横冲直撞。而在TSN网络中,所有(yǒu)的时间敏感流分(fēn)组都要求按规划的时间槽进入,避免大家出现碰撞。换个技术词汇可(kě)以用(yòng)时分(fēn)网络来形容一下。在时分(fēn)网络中,时间的规划是至关重要的。
     Qch以乒乓队列形式进行调度,其流的规划策略相对简单,流在每个节点至少等待一个调度周期,故其到达目标节点的时间是在固定范围之内的。这种调度方式固然实现确定延时,但无法有(yǒu)效降低延时,也不适应不同周期、延时和抖动差异化要求的混合业務(wù)调度。
     Qbv可(kě)以实现多(duō)个不同队列,每个队列可(kě)映射不同的TSN流进行转发。举个更為(wèi)形象的例子,TSN网络就好比是多(duō)車(chē)道交通网络,每个分(fēn)组為(wèi)一辆小(xiǎo)車(chē)。每辆車(chē)都会行驶在一条指定的車(chē)道上,在通过交叉路口的时候根据红绿信号灯通行。不同車(chē)道都有(yǒu)一个信号灯指示其可(kě)否通行。Qbv的调度跟上述模型基本一致,当我们规划某辆車(chē)在某条車(chē)道上行驶,规划好其进入車(chē)道的时间,行进到路口时,将其車(chē)道亮起绿灯,并且确保直至目的地的每个路口都在車(chē)辆到达时刻為(wèi)绿灯,则该車(chē)辆将以最短时间通过该交通网络。这种开車(chē)體(tǐ)验只有(yǒu)与你在路口没亮交通信号灯也没有(yǒu)交通警察指挥(BE网络)的情况下开車(chē)对比后才能(néng)够得到。这么美好的开車(chē)體(tǐ)验是不是人人想要?整个交通网络都按照这种方式来控制信号灯是否可(kě)行?是不是可(kě)以一条道車(chē)开到终点?人工智能(néng)与自动驾驶技术的到来会加速这一可(kě)能(néng),但并不是所有(yǒu)交通网络都会这样运行。回到TSN网络上,如果TSN的流很(hěn)少,很(hěn)明显可(kě)以比较容易做到这一点。但是随着TSN流的数量增加,其周期性、延时与抖动要求互不让步的情况下,这种规划调度的难度会越来越来大,甚至变得不可(kě)能(néng)。
     所以,在TSN网络系统中最难的事情既不是时钟同步、也不是Qbv调度,而是全系统TSN流的调度规划。特别是在现有(yǒu)TSN的规范标准和现有(yǒu)行业需求背景下,其灵活度、适应性和普适性是很(hěn)难满足各行各业特有(yǒu)时间敏感需求的功能(néng)场景。
     宿命并非终点,命运是通往终点的过程。任何技术都是為(wèi)了解决行业需求产生的,在具體(tǐ)行业场景下,技术能(néng)力必须适用(yòng)本行业特征,支持行业特性的定义与定制。
     1.SDN是网络架构,TSN是网络属性
     在TSN技术规范定义的时候,SDN的概念刚刚兴起。SDN的出现,打破了对传统网络的管理(lǐ)与调度方式,其数控分(fēn)离理(lǐ)念与流表定义的方式使得网络转发更具规划性与可(kě)控性。SDN是一种网络架构及管理(lǐ)层面的突破,是為(wèi)了让网络数据平面更专注、控制平面更灵活。而TSN的时间敏感特征应该是网络分(fēn)组的一个专有(yǒu)属性,是对网络流特征的一种规范和定义,参考其规范要求实现传输则可(kě)以满足时间敏感特性,与网络架构、拓扑组成以及分(fēn)组转发方式等无关。其核心调度规划和门控输出其实也符合SDN思想,可(kě)以通过软件方式来灵活定义不同的门控数据以控制流的精确传输。
     2.将SDN架构网络赋予TSN属性
     从网络架构与功能(néng)特性上分(fēn)析,将TSN的流特性加入到SDN网络中应该会是一个更好的网络解决方案。同时具备时间敏感特性和网络灵活定义,其应用(yòng)范围与适应能(néng)力会得到更好的扩大和强化。
     结合目前行业需求与TSN规范中存在的问题,我们分(fēn)析认為(wèi),网络的转发行為(wèi)及方式需要由我们自己灵活定义,并且是可(kě)以為(wèi)每个节点不同队列定义不同的行為(wèi)与方式。TSN通过VLAN的优先级字段映射到不同调度队列,是属于类流调度。SDN的流表匹配及队列映射也可(kě)以实现将不同流映射到不同调度队列,这二者其实差异不大,无非是SDN的流表可(kě)以用(yòng)更多(duō)元组字段表示,最终都是将流映射到了某个指定队列。但SDN的流表可(kě)以在不同交换机上设置不同的映射队列,错开某个产生碰撞的队列和时间。在复杂的调度规划中,部分(fēn)交换机的流量可(kě)能(néng)会比较大,队列的不同时间槽会排得比较满,导致某些流按同一优先级队列调度输出可(kě)能(néng)产生碰撞。那么在延时和抖动允许的条件下,我们可(kě)以在适当节点為(wèi)其换个队列,继续转发,以保证系统可(kě)以调度规划更多(duō)的流。SDN的灵活定义在此显得格外重要,当然,我们也可(kě)以通过SDN流表定义该流走网络中的另一条路径来躲避这种可(kě)能(néng)。SDN技术可(kě)以為(wèi)全系统的流量调度规划带来更大、更多(duō)的可(kě)能(néng)性。
     3.软件定义更多(duō)可(kě)能(néng)
     软件定义时间敏感网络没有(yǒu)从根本上解除时间敏感网络流的本质要求,只是将其时间调度模型的条件限制变得更加宽松,适应范围变得更加广泛,以满足更多(duō)不同行业对时间敏感流的规划调度需求。同时再加上SDN的软件定义能(néng)力和网络综合管理(lǐ)配置功能(néng),能(néng)极大的简化用(yòng)户使用(yòng)和管理(lǐ)网络的复杂度。如灵活自组网、协议无关转发、在線(xiàn)规划调度、增量规划调度、实时流路径迁移和交换节点热切换等等。
     TSN的时间敏感特性是属于业務(wù)的,业務(wù)数据的生产与消费通过TSN网络来联通。这从系统架构层对整个TSN网络提出的全实时的要求,主要包括业務(wù)数据的生产消费、数据在系统中的传递、接入TSN网络的网卡、中间的网络交换机等所有(yǒu)业務(wù)数据流经的每个环节。首先,端节点与交换机需要都支持全局时钟同步,端节点不仅是网卡还包括主机系统。即使主机系统不进行时钟同步,也需要实时感知网络的时钟刻度。其次,所有(yǒu)的业務(wù)流产生、传输都需要严格按照全网的规划调度进行。TSN流的规划是从网卡接入开始的,业務(wù)数据的产生和传输到网卡的时间则交给应用(yòng)自己控制。应用(yòng)精准控制的前提就需要实时感知网络时钟刻度和系统提供实时服務(wù)。
     1)实时应用(yòng)
     TSN网络的业務(wù)都是实时应用(yòng),实时应用(yòng)需要运行在实时系统之上,而且应用(yòng)可(kě)以对网络全局时钟实时感知。实时业務(wù)流都需要通过全网规划调度后确定其准入网络的具體(tǐ)时间槽位置,流的调度起点从网卡开始。故业務(wù)需要将数据内容在其网卡调度时间槽位置时刻前送达网卡,以确保准时进入网络。业務(wù)流到网卡的时间主要由系统调度模型决定,非实时调度系统无法保障用(yòng)户数据到达网卡时间的确定性。
     2)实时系统
     实时系统為(wèi)实时应用(yòng)提供实时数据IO服務(wù),该服務(wù)不仅要求系统调度模型是实时,同时还需要包含实时网络协议栈、实时网络驱动等。实时调度系统可(kě)以提供较小(xiǎo)抖动和较低延时的分(fēn)组IO能(néng)力,不是完全时间确定的。实时系统还可(kě)以分(fēn)為(wèi)软实时系统和硬实时系统。通过与普通系统的实验测试发现,延时排名是:硬实时系统<><><><普通系统。根据用户对业务流延时和抖动的允许差值可以选择软实时系统或硬实时系统。允许误差范围较大的甚至也可以使用普通系统。若对延时与抖动要求极低,则可以考虑使用裸cpu运行实时应用或采用转用硬件实现业务功能。>
     3)TSN网卡
     TSN网卡必须和其TSN网络中的时间主节点进行时钟同步,并提供实时的网络时刻给上层应用(yòng)。网卡是实时流调度的起点,TSN流必须在其规划调度的确定时间槽位置发送进入网络。提前到达则会引发其他(tā)流的抖动,占用(yòng)交换机缓冲區(qū)时间较長(cháng),影响交换机吞吐率。滞后到达影响更大。TSN的技术规范中有(yǒu)输入检查,判断数据输入的有(yǒu)效性与合法性,以确保整网的调度正常。
     4)TSN交换机
     TSN交换机是整个TSN网络的核心,各交换节点中必须有(yǒu)一台是时钟主节点,其他(tā)节点向主节点进行时钟同步。交换机的输入检查、队列映射、门控列表和调度方式也是其核心内容。Qbv是一种高灵活性的调度方式,适应不同周期性流的灵活映射与实时控制。
     5)网络控制器
     采用(yòng)软件定义时间敏感网络的系统,其网络管理(lǐ)配置功能(néng)由SDN的控制器完成。為(wèi)支持控制器对TSN交换机的门控等一系列参数的配置,需要扩展北向REST API接口、控制器支撑模块、南向协议支持规范等,满足对TSN特性的功能(néng)的配置。
     本文(wén)是作者结合多(duō)年SDN研究、TSN研究和客户需求分(fēn)析交流的一些总结。受知识、经验和行业了解的限制,一些观点不一定都正确。行业调查数据及测试数据都只在特定行业和场景下获得。敬请理(lǐ)性看待。
     任何技术都有(yǒu)优缺点,在不同应用(yòng)场景下其表现形式也不同。采用(yòng)软硬件全可(kě)编程平台和软件定义方案只是能(néng)更多(duō)的适应场景变化,在不同场景应用(yòng)下,其软硬件功能(néng)和定义方法也不尽相同,都只是為(wèi)了更好的适应场景要求。
      好在这样的平台和方法可(kě)以支持各行业用(yòng)户场景的编程和定义的要求。

关注FAST开源社區(qū)
FAST一一开源、开放、高速、高效、可(kě)编程、可(kě)定义!软硬件协同并行处理(lǐ)。
服務(wù)热線(xiàn)