thumbnail for this post
翁雨键
翁雨键
explore the unknown..
Mar 25, 2019 1 min read

从AVB到TSN - 时效性网络来了

原文发布于微信公众号:曲奇泡芙

传统以太网的传输机制类似于公路运输,从一个地方去到另一地方所需的时间取决于沿途公路的拥堵情况,时延往往波动较大并具有不确定性。随着以太网应用的推广,音视频应用首先对以太网传输提出了确定性时效的需求。想象在一个广阔的球场上东西两侧各有一个以太网连接的扬声器,扬声器中间可能经过多个交换机设备,当主持人讲话时,我们希望两个扬声器能够同时发声,而不会出现一前一后叠音的情况;进一步的,即使同个网络拓扑中还有其他应用在使用流量,我们也希望两个扬声器的效果是稳定的。

 

为了解决以太网中音视频同步稳定传输的问题,IEEE AVB (Audio Video Bridging) 工作组制定了一组802.1的以太网标准,包含802.1AS, 802.1Qat, 802.1Qav等协议。随着工业自动化和汽车市场对以太网实时通信需求的迅速增长,2012年AVB工作组更名为TSN (Time-Sensitive Networking) 工作组,扩展AVB技术的适用范围以统一解决网络传输中的时效性问题。相对于传统以太网, AVB 主要提供了以下三个能力:

  • 预留带宽 (Bandwidth-reservation)

  • 流量优先级 (Traffic-priorititzation)

  • 时间同步 (Time-synchronization)

 

TSN 扩展了AVB的能力,增加了两个新的能力:

  • 时间调度流量 (Time-scheduled traffic)

  • 抢占帧 (Frame-preemption)

 

TSN 是一组IEEE 802.1协议标准,包括  802.1AS-Rev, 802.1Qbv, 802.1Qbu, 802.1CB等多个协议,工作在OSI七层网络模型中的第二层 - 数据链路层。

802.1AS(-Rev) Timing and Synchronization

全局时钟同步是实现网络节点确定性通信的重要机制。802.1AS是IEEE 1588 PTP (Precision Time Protocol) 同步协议的一个推广,它支持兼容不同TSN设备之间的同步。时钟同步为每个参与网络设备的流量调度奠定了基础。TSN中还定义了802.1AS-Rev来增加对容错和多个主时钟源的支持。

如下图,时钟同步在多个网络设备中进行时,Slave节点同步到的时间为原主节点时间累加上链路延时(Pdelay),数据传输用时(transmissionTime)以及停留时间(residenceTime):

 

TimeSynced = preciseOriginTimestamp + correctionField(1) + Pdelay(2) + transmissionTime(2)

correctionField(1) = Pdelay(1) + residenceTime + transmissionTime(1)

 

802.1Qbv Scheduled Traffic

流量调度是TSN中的一个核心概念。基于 802.1AS提供的共享全局时间,802.1Qbv 在参与的网络设备之间创建和分发 一个时间计划表 。802.1Qbv定义了控制TSN交换机出口处发送队列的阀门开关的机制。计划流量所在队列在预定的时间窗口到达后会被放行传输,而在同个时间窗口中其他非计划流量的队列会被阻止传输,因此排除了计划流量被非计划流量阻塞的可能性。这意味着通过每个交换机的延迟是确定的,通过TSN网络的消息延迟可以得到保证。

 

如下图示意, 交换机出口队列的阀门好比十字路口的红绿灯,当有计划好的关键消息需要传输时,关键消息所在的队列绿灯放行,而其他非关键消息的队列则红灯暂停传输。在汽车领域,新兴的以太网作为主干的汽车电子架构中,传输在车载以太网中的数据既有需要实时响应的关键车控信号数据(如刹车信号)也有重要性略低的车载娱乐应用流量,802.1Qbv使得我们可以针对不同类型的流量调度,实现车控信号实时传输而娱乐流量则 见缝插针的使用车载以太网带宽。

802.1Qbu Frame Preemption

虽然802.1Qbv机制保护关键消息不受其他网络流量的干扰,但它并不一定导致最佳带宽使用或最小的通信延迟。当这些因素很重要时,可以使用802.1Qbu中定义的抢占机制。802.1Qbu允许中断标准以太网或巨型帧的传输,以便允许高优先级帧的传输,然后在不丢弃之前传输的中断消息片段的情况下恢复传输。

如下图所示,绿色帧为关键消息,橙色帧为非关键消息,橙色帧先到达并开始传输。在可抢占式的MAC中,当绿色帧到达时,允许中断橙色帧的传输,先传输绿色帧,完成后再继续橙色帧的传输,从而使得关键消息更早完成传输。

 

802.1CB Frame Replication & Elimination

802.1CB定义了在多链路中通过复制帧冗余管理实现消息高可用传输的方法。为了提高可用性,相同消息的冗余副本通过不相交的路径并行在网络中传输 (用于路径控制和保留的802.1Qca标准定义了如何设置这些路径)。冗余管理机制将这些来自不同链路的冗余消息聚合在一起,去除重复消息后生成发送给接收方的单个信息流。

如下图,同样的消息在上下两条链路中传输,即使其中一条链路中某个节点出现故障,消息仍能从另外的链路被投递到目的节点。由于802.1CB工作在数据链路层,帧复制和重复帧消除的操作对应用层透明。

802.1Qcc Central Configuration Method

802.1Qcc定义了TSN的网络管理接口和协议。它对流保留协议(802.1Qat)的增强包括支持更多流、可配置流保留类和流、更好地描述流特性、支持第3层流、确定性流保留收敛以及用于路由和保留的用户网络接口(UNI)。802.1Qcc支持TSN网络调度的离线和在 线配置, 采用集中配置模式,由1或多个CUC(集中用户配置)和1个CNC(集中网络配置)构成。CUC制定用户周期性时间相关的需求并传输过程数据到CNC,CNC计算TSN配置以满足需求。

802.1Qci Per-stream Filtering and Policing

为了防止流量过载影响网络中的接收节点,802.1Qci可以在交换机入口处根据到达时间,速率和带宽等信息过滤掉部分数据帧,避免错误的或恶意的节点破坏整个网络,将故障隔离在网络中的特定区域。

802.1Qca Path Control and Reservation

802.1Qca用于发现和收集网络拓扑中的节点信息,以发现拓扑中可用于冗余数据传输的不相交路径。

TSN消除了传统以太网由于交通拥堵导致的不确定性,对于具有关键时间约束的应用TSN是必不可少的。目前TSN的发展已经可以满足汽车对可预测延迟和保证带宽不断增长的需求。 NXP推出的SJA1105QEL/SEL系列车载以太网千兆交换机在支持802.1Qav及802.1AS等AVB特性的基础上扩张支持了IEEE 802.1Qbv及IEEE 802.1Qci等TSN特性。 随着车载以太网逐渐成为汽车电子架构中的主干网,TSN技术也将被越来越多的应用在汽车领域中。

 

End