《超低延迟 (ULL) 网络:IEEE TSN 和 IETF DetNet 标准及相关 5G ULL 研究》
DOI:10.1109/COMST.2018.2869350
前言
IEEE 802.1 时间敏感网络 (TSN) 标准和相关研究旨在为 ULL 网络提供链路层支持,而新兴的 IETF 确定性网络 (DetNet) 标准则寻求提供补充网络层 ULL 支持。
因为研究方向为TSN,所以以下总结基本上与TSN相关。
正文
一、
延迟是指从发送者(谈话者)开始传输到接收者(听众)完成接收的总端到端数据包延迟。
延迟抖动,或简称抖动,是指数据包延迟变化。
延迟和抖动是 ULL 网络的两个主要服务质量 (QoS) 指标。
二、
802.1工作组被授权在以下领域开发和维护标准和推荐实践:1) 802 LAN/MAN 架构,2) 802 LAN、MAN 和其他广域网之间的互联,3) 安全性,4) 802 整体网络管理,以及 5) MAC 和 LLC 层之上的协议层。目前,该工作组中有四个活跃的任务组:1)时间敏感网络,2)安全,3)数据中心桥接,4)OmniRAN。
多年来不断修订和更新的 IEEE 802.1 主要标准是 IEEE 802.1Q-2014 [58],正式名称为 IEEE 802.1D 标准。也就是说,IEEE 802.1Q-2014,我们缩写为 IEEE 802.1Q,是主要的桥接和桥接网络标准,它包含了所有 802.1Qxx 修订,其中“xx”表示对802.1Q先前版本的修订。
IEEE 802.1Q 规定了互连网桥(L2节点)之间通信的架构和协议,以及与主 802.1 层 (L2) 相邻的层和子层之间的进程间通信。
三、
IEEE 802.1Q 标准规定了具有相应优先级值的流量类别,这些优先级值表征基于流量类别的转发行为,即服务等级 (CoS) [58,附件 I]。802.1Q 标准中规定了八种流量等级,其中优先级范围从最低优先级 (0) 到最高优先级 (7)。(从图中推测之前看的论文中的CT是指control traffic)
四、
以太网定义缺少以下方面来支持 ULL 应用:
1、缺乏 QoS 机制来为要求苛刻的应用程序实时传送数据包,例如实时音频和视频传送。
2、网络元素中缺乏全局定时信息和同步。
3、缺乏网络管理机制,例如带宽预留机制。
4、缺乏策略执行机制,例如数据包过滤来确保最终用户的 QoS 级别。
受这些以太网缺点的启发,IEEE 在 IEEE 802.1 工作组 (WG) 的 TSN 任务组中推行时间敏感网络 (TSN) 标准化[62],主要关注物理层(第一层,L1)和链路层(第二层,L2)技术.
五、
TSN 流由以太网报头中 802.1Q VLAN 标记内的优先级代码点 (PCP) 字段和 VLAN ID (VID) 定义。
六、
时间同步是通过 IEEE 802.1AS 独立标准[65]、[79]实现的,该标准使用 IEEE 1588-2008 (1588v2) [80]的专用配置文件(功能/配置的选择) ,即通用精确时间协议(gPTP)。gPTP 通过传递相关的时间事件消息来同步网络设备之间的时钟[18]. 时钟主机(CM)和时钟从机(CS)之间的消息传递形成了一个时间感知网络,也称为gPTP域,如图所示。时间感知网络利用对等路径延迟机制来计算停留时间,即网桥内入口到出口的处理、排队和传输时间,以及链路延迟,即单跳传播延迟在时间感知网络层次结构内的相邻网桥之间,参考层次结构根部的大师(GM)时钟[65,秒。11]。GM 时钟被定义为具有最佳主时钟算法 (BMCA) [80]选择的最准确时钟源的桥。
上图是典型 gPTP 域操作和时间共享的图示,其中选定的 GM 源将时间信息分发到所有下游 802.1AS 网桥。每个网桥都会纠正延迟并在所有下游端口上传播时序信息,最终到达 802.1AS 端点(终端站)。国际原子时 (TIA) 是 GM 的计时信息来源。
同步通过两阶段过程完成:gPTP 设备 1) 建立主从层次结构,以及 2) 应用时钟同步操作。特别是,gPTP 使用 BMCA [80]建立了主从层次结构,它由两个独立的算法组成,即数据集比较和状态决策。每个 gPTP 设备运行一个 gPTP 引擎,即 gPTP 状态机,并使用多个 gPTP UDP IPv4 或 IPv6 多播和单播消息来建立适当的层次结构并正确同步时间[65]。任何不能中继或同步定时消息的非时间感知网桥不参与 BMCA 时钟生成树协议。
为了达到高精度,802.1AS时间感知系统通过GM的频率比对接收到的上行邻居主时钟的定时信息进行校正,这个过程在标准中称为逻辑同步。在同步上下文中,频率是指时钟振荡器频率。频率比是本地时钟频率与连接链路另一端的时间感知系统频率的比值。802.1AS 使用 GM 相对于本地时钟的频率比来计算同步时间,从而实现时间感知网桥和终端系统之间的正确同步
IEEE802.1AS-REV 引入了时间敏感型应用所需的新功能。这些功能包括支持多个时域的能力,以便在 GM 时钟出现故障时允许快速切换,并提高时间测量精度。
七、
流量控制指定如何在启用 TSN 的网桥中处理属于规定流量类别的帧。
IEEE 802.1Qav 是为了限制下游接收网桥和/或终端站的 A/V 流量缓冲量。突发多媒体流量比例的增加会导致多媒体流量的大量缓冲,从而可能导致缓冲区溢出和数据包丢失。数据包丢失可能会触发重传,这会增加延迟,使重传的数据包过时并降低体验质量 (QoE)。
IEEE 802.1Qav 通过流预留协议 (SRP) [67] 与基于信用的整形器 (CBS) 一起限制接收站所需的缓冲量。 CBS 隔开 A/V 帧以减少突发和拥塞。由于最大 AVB 流突发是有限的,因此 A/V 帧的这种间隔可以保护尽力而为的流量。 A/V 帧的间隔还通过限制back-to-back的 突发性AVB 流来保护 AVB 流量,这可能会干扰并导致下游网桥的拥塞。
CBS 整形器将队列分成两个流量类别,A 类(紧延迟界限)和 B 类(松延迟界限)。
一些关键的 CBS 缺点是平均延迟增加。
为了解决 CBS 的缺点,TSN TG 引入了其他标准,例如 IEEE 802.1Qbv、802.1Qch 和 802.1Qcr。
作为对 IEEE 802.1Qav 缺点的回应,TSN 任务组提出了一种新的流量整形器,即 IEEE 802.1Qbv 时间感知整形器 (TAS) [71]以及 IEEE 802.1Qbu 帧抢占技术[ 73]来提供细粒度的 QoS [90]。TAS 和帧抢占机制适用于具有确定性端到端 ULL 要求的流量,例如,具有亚微秒延迟要求的关键控制或进程间通信 (IPC) 流量。具体而言,TAS 在时间触发窗口中调度关键流量流,这些窗口也称为受保护流量窗口或时间感知流量窗口。因此,TAS 遵循 TDMA 范式,类似于灵活时间触发以太网 (FTT-E) [91], [92],其中每个窗口都有一个分配的传输时间,如图9 所示。为了防止较低优先级的业务,例如尽力而为业务,干扰调度的业务传输,调度的业务窗口之前有一个所谓的保护带。
计划流量通过以太网流量内的同步时分复用“窗口”发送。黄色标记的帧是时间敏感的高优先级 (HP) 流量,保证了整个网络的预留资源,而蓝色帧对应于尽力而为的低优先级 (LP) 流量。
根据 GCL,给定出口队列的帧符合传输条件,GCL 通过 802.1AS 时间参考在时间上同步。GCL 以周期性重复的循环时间执行,其中每个循环时间包含一个 GCL 执行。在一个循环时间内,门打开的时间段称为时间感知流量窗口。如图所示,根据GCL和传输选择决策来传输帧。每个单独的软件队列都有自己的传输选择算法,例如,严格优先级排队(这是默认设置)。总体而言,图底部的 IEEE 802.1Qbv 传输选择如果:(i)队列包含准备好传输的帧,(ii)具有开放门的更高优先级流量类队列没有要传输的帧,并且(iii)帧传输可以在给定队列的门关闭之前完成。请注意,这些传输选择条件确保仅当传输将在高优先级流量的调度流量窗口开始前完成时,才允许低优先级流量开始传输。因此,这种传输选择有效地实施了“保护带”,以防止低优先级流量干扰高优先级流量。
上图是带有 8 个软件队列的出口硬件队列示意图,每个都有其独特的传输选择算法。传输由具有多个门控制条目 (GCE) 的门控制列表 (GCL) 控制,这些门控制条目 (GCE) 确定打开哪些软件队列。
上图表示如果在调度的流量窗口开始前无法完成传输,则 IEEE 802.1Qbv 传输选择会阻止低优先级(尽力而为)帧开始传输。这种传输选择实质上强制实施保护带(大小为最大大小的帧)以保护调度的流量窗口。通过抢占(IEEE 802.3br、IEEE 802.1Qbu),保护带可以减少到最小的以太网帧片段。
一个关键的 TAS 缺点是由于额外的采样延迟,即由于等待时间,直到下一个时间触发窗口开始,导致了一些延迟。当不同步的数据从端点传递到网络时,就会出现这种采样延迟。终端节点中的任务和消息调度需要与网络中的 TAS 门调度相结合,以实现最低延迟。此外,需要彻底检查 TAS 对带宽的有效使用。总体而言,TAS 具有较高的配置复杂性。未来的研究需要仔细检查大型网络的可扩展性、运行时重新配置以及独立开发的子系统的集成。
八、
为了解决 ULL 延迟要求和倒置优先级问题,即低优先级帧的持续传输阻止高优先级帧传输的问题,802.1 TG 与 802.3 TG 一起引入了帧抢占(802.1Qbu 和 802.3br ) [72],[73]。帧抢占将给定的网桥出口端口分成两个 MAC 服务接口,即可抢占 MAC (pMAC) 和快速 MAC (eMAC),如图 12 所示. 帧抢占状态表将帧映射到 pMAC 或 eMAC;默认情况下,所有帧都映射到 eMAC。传输中的可抢占帧,即它们持有资源(传输介质),可以被快速帧抢占。在快速帧的传输完成后,抢占帧的传输可以恢复。
这种抢占仅发生在链路级别,并且任何分段的帧都在 MAC 接口处重新组装。因此,交换机仅在内部处理完整的帧。也就是说,通过物理链路传输到下一个网桥的任何帧片段都在链路层接口(数据链路层包括MAC(媒体访问控制)和LLC(逻辑链路控制)子层)中重新组装;具体来说,MAC 合并子层(见下图) 在下一个网桥的链路层,然后下一个网桥只处理完整的帧。
九、
虽然带有 CBS 的 IEEE 802.1Qav FQTSS(时间敏感性流的转发和队列) 非常适合软实时约束,例如 A/V 流量,但现有的 FQTSS 仍然存在一些缺点,包括:i ) 病态拓扑可能导致延迟增加,以及ii ) 最坏情况延迟取决于拓扑,不仅取决于跳数,因此交换机中的缓冲区需求也取决于拓扑。
网络搜索FQTSS(原文:怿星科技),得到:
协议作用对象
它对非时间敏感性流同样有用。因为只有将网络节点发送端口处所有队列中的流进行有序管理,才能优先保证时间敏感性流的传输,这是相辅相成的。
协议作用
列队转发作用,根据实际需求将端口处接收到的帧按照流量类别以及优先级进行排队并有序发送,但也会限制高优先级流的带宽占用(例如SPQ(严格优先级队列)调度会出现低优先级流量长期处于饥饿状态),防止高优先级流一直占用网络而导致低优先级流一直无法发送的不合理现象。
那么FQTSS究竟是如何实现该作用的呢?主要是通过基于信用的流量整形和严格优先级这两种算法实现的。提到算法选择,就不得不先说说流量类别了。
流量类别(Tracfic Class)
目前FQTSS作用对象有两种流量,SR类和非SR类。SR类就是需要进行流预留(SRP为此而设计)的类别,非SR类为不需要进行流预留的类别。
对于SR类,AVB中定义了两类常见的标准SR流:A类和B类,均有其固定属性。
若用户选择使用这两类,必须严格遵守规范定义的固定属性配置,但是SR类别优先级的数值可以适当进行调整,只要保证相对的优先关系不变即可,这个视具体使用场景而定。当然用户也可以根据实际项目需求自定义其他类别的SR流以及相应属性配置,但是在类别的属性定义上不得与标准类别相同,相对来说比较灵活,也能更好地满足需求。
对于非SR类,即Best-Effort流,仅仅通过配置优先级保证其传输。
传输选择算法
FQTSS定义了两种传输选择算法:基于信用的流量整形算法(CBS:Credit Based Shaper)以及严格优先级(Strict priority)算法。
基于信用的流量整形算法:当信用值≥0时,相关的流才能发送出去,否则无法发送。发送流时会消耗信用,不发送流且流在发送队列中时信用会一直累积直到流可以被发送出去,不发送流且流不在队列中时信用累积的最大值只能到0。
严格优先级算法:严格按照优先级进行发送,当基于信用的流信用用完无法发送时,尽力而为(Best-Effect)流才可以发送,且发送顺序严格按照优先级从高到低依次发送,直到基于信用的流再次可以发送。
FQTSS协议规定SR类流使用基于信用的流量整形算法,非SR类流使用严格优先级传输算法。
一般来说,基于信用的流量整形算法的流传输优先级均高于严格优先级传输的流,换句话说,当这两种流同时需要往外发送时,优先发送前者(只要信用值≥0),但也不是无限制的发送前者,因为发送前者是需要消耗信用的,如果信用值<0,则停止发送前者(当前正在传输的流不会受到影响,会保证其完整传输),转为发送尽力而为流,直到基于信用流的信用累积≥0时再次转为发送基于信用的流。
那么属于同类别流但处于不同队列的发送顺序又是如何的呢?
不同队列的多个SR类流等待发送时,先比较信用值,再比较优先级。有信用的可以发送,优先级高的先发送;
不同队列的多个非SR流等待发送时,只看优先级;
同队列的流按照FIFO原则依次发送。
十、
TSN TG 引入了循环队列和转发 (CQF) [74],也称为蠕动整形器 (PS),作为同步入队和出队操作的方法。同步操作有效地允许 LAN 网桥以循环方式同步其帧传输,实现零拥塞损失和有限延迟,独立于网络拓扑。
网络搜索CQF(忘记从哪搜的了,可能是维基百科,就不贴链接了),得到:
这个机制由Qci-用于流滤波与监测标准对入口的队列进行处理,然后在队列里将2个缓冲(也可以是3个或更多),其核心机制在于“数据包每个周期在每个桥仅走一步”,如果选择4和5两个队列,则这两个队列对数据进行排队,在同一跳转节点上,队列4的门是写入数据,而对队列5发送数据,而到了下一个周期,队列4发送,而队列5则接收数据,这样,交替开关4和5队列的门,这样就可以形成一个TAS中的GateControlList所开/关的门会使得队列形成一个周期性排队,转发的过程,这使得整个数据的延迟为一个传输过程+一个跳转过程的延迟,即,数据传输的延迟被“确定”了。
虽然 CQF 和 TAS 为关键流量提供 ULL,但它们依赖于网络范围内的协调时间,而且重要的是,由于在强制周期性周期中强制执行数据包传输,它们对网络带宽的利用效率低下[89]。为了克服这些缺点,TSN TG 提出了 IEEE 802.1Qcr 异步流量整形器(ATS)[75],它基于基于紧急度的调度器(UBS)[89]、[93]. ATS 旨在通过重塑每跳的 TSN 流、实施每流队列以及将紧急流量优先于宽松流量来平滑流量模式。ATS 以异步方式运行,即网桥和端点不需要及时同步。因此,即使在具有混合流量负载(即周期性和零星流量)的高链路利用率下运行时,ATS 也可以有效地利用带宽。