TSN介绍
TSN我也不会,啊哈哈哈,但是希望大家一起努力,彼此成长。
首先我来告诉你,什么是TSN?
随着信息技术(informationtechnology,IT)与运营技术(operation technology,OT)的不断融合,对于统一网络架构的需求变得迫切。智能制造、工业物联网、大数据的发展,都使得这一融合变得更为紧迫。而IT与OT对于通信的不同需求也导致了在很长一段时间,融合这两个领域出现了很大的障碍:互联网与信息化领域的数据需要更大的带宽,而对于工业而言,实时性与确定性则是问题的关键。这些数据通常无法在同一网络中传输。因此,寻找一个统一的解决方案已成为产业融合的必然需求。
时间敏感型网络(timesensitive network,TSN)是目前国际产业界正在积极推动的全新工业通信技术。时间敏感型网络允许周期性与非周期性数据在同一网络中传输,使得标准以太网具有确定性传输的优势,并通过厂商独立的标准化进程,已成为广泛聚焦的关键技术。目前,IEEE、IEC等组织均在制定基于TSN的工业应用网络的底层互操作性标准与规范[1]。
1 实时通信技术的发展及需求
1.1总线时代
早在20世纪70年代,随着可编程逻辑控制器(programmable logic controller,PLC)的产生,为了分布式控制所需的总线也诞生。至今,总线技术已经发展了近50年,各始创公司开发了多种总线,其在介质、信号电平、校验方式、物理接口、波特率等多个指标方面都有不同。20世纪90年代,随着竞争的加剧,各公司在IEC争取主导地位,产生了“总线之争”。IEC因此产生了多达18个总线标准,对访问造成很大障碍。
1.2 实时以太网阶段
进入21世纪,随着标准以太网成本的下降,总线开始进入基于以太网的实时网络时代。2001年,贝加莱推出了工业应用的Ethernet POWERLINK;2003年,在Profibus基础上,Siemens开发了PROFINET,Rockwell、 ABB开发了基于DeviceNet应用层协议的Ethernet/IP,Beckhoff开发了EtherCAT,Rexroth开发了基于SERCOS的SERCOSIII。这些网络均采用了标准以太网介质,即在物理层和数据链路层统一了标准,而在应用层仍然保持原有的应用层,旨在保护用户的软件资产投入。
1.3 在智能时代的网络融合需求
2014年以后,随着工业4.0的提出,工业物联网、智能制造的需求逐渐变得迫切,对于连接的需求产生了变化。传统的以太网通常不支持交换机网络(考虑到延时,通常采用HUB的透传方式),其轮询机制(如Profinet、POWERLINK、Ethernet/IP)或集束帧技术(如EtherCAT、SERCOSIII)使得标准以太网和实时以太网无法在同一网络中进行数据的传输。但是,对于边缘计算、工业物联网、智能制造的全局优化而言,制造现场控制所需的实时性数据和生产管理与优化层所需的非实时性数据要通过统一网络进行集中,在统一的数据平台进行数据处理与分析,并能够下发到各个控制器执行;而一些全局优化的工作并不需要通过层级的控制器,而是希望直接到边缘侧或者云端。这使得同一网络的需求变得迫切。另外,对于制造业的终端用户而言,生产系统往往由来自不同企业的设备与系统构成,必须有统一的网络与协议规范。因此,独立于厂商的总线在智能时代变得更为必要。
工业通信技术的发展过程如图1所示[2]。
图1 工业通信技术的发展过程
2 TSN的简要发展
TSN本身并非是一项全新的技术。IEEE于2002年发布了IEEE 1588[3]精确时钟同步协议。2005年,IEEE 802.1成立了IEEE 802.1AVB工作组,开始制定基于以太网架构的音频/视频传输协议集,用于解决数据在以太网中的实时性、低延时以及流量整形的标准,同时又确保与以太网的兼容性。AVB引起了汽车工业、工业领域的技术组织及企业的关注。其成立了TSN工作组,进而开发了时钟同步、流量调度、网络配置系列标准集。在这个过程中,由AVnu、IIC、OPC UA基金会等组织共同积极推进TSN技术的标准。工业领域的企业(包括B&R、TTTech、SEW、Schneider等)着手为工业领域的严格时间任务制定整形器,成立了整形器工作组,并于2016年9月在维也纳召开了第一次整形器工作组会议。然后,有更多的企业和组织(包括德国工业4.0组织LNI、美国工业互联网组织IIC、中国的边缘计算产业联盟ECC、工业互联网产业联盟AII等)加入TSN技术的研究,并构建了多个测试床。2019年,IEC与IEEE合作成立IEC 60802工作组,并在日本召开了第一次工作组会议,以便工业领域的TSN开发可以实现底层的互操作。同时,在OPC UA基金会也成立了(field level communication,FLC)工作组,将TSN技术与OPC UA规范融合,以提供适用于智能制造、工业互联网领域的高带宽、低延时、语义互操作的工业通信架构。
图2简要说明了IEEE组织TSN相关标准的发布过程[4]。其中,IEEE802.1Qat[5]是早期的网络配置方法,而IEEE 802.1Qcc[6]则是其增强版,于2018年底发布。
图2 TSN相关标准的发布过程
3 TSN基本概念
TSN由一系列技术标准构成。其主要分为时钟同步、数据流调度策略(即整形器)以及TSN网络与用户配置三个部分相关标准。
3.1 VLAN技术
按照网络架构,网络通常分为标准以太网、确定性以太网。TSN实现了混合网络的数据传输能力,满足标准以太网的分布式对等架构、确定性网络所采用的轮询/集束帧技术各自的存在的要求,并使得网络能够发挥各自的优势功能。TSN基于IEEE 802.1Q[7]的虚拟局域网(virtual local area network,VLAN)和优先级标准。IEEE802.1Q支持服务质量(quality of service,QoS)。QoS是一种基础网络技术,用于为网络通信提供更好的服务。它是一种网络安全机制,用于解决网络延时与拥塞的问题。最初的Internet并未设计QoS机制。为满足用户不同应用的服务质量需求,需要网络能够根据用户需求进行配置与资源调度。IEEE 802.1Q标准是一种包含了QoS机制的网络,能够提供网络性能的可预知性,并有效分配网络带宽,以便合理利用资源。
3.1.1 TSN
TSN是IEEE 802.1Q标准的VLAN。该标准在标准以太网帧中插入4个字节用于定义其特征。TSN的标签位定义[8]如图3所示。
图3 TSN的标签位定义
①标签协议识别:网络类型识别,代表这是一个TSN网络,标记0X8100。
②优先级代码(prioritycode point,PCP)由3位代码构成。
③丢弃标志位:对于网络低QoS要求的数据,可以丢弃,以确保高优先级数据的QoS。
④VLANIdentifier(VID):VLAN网络的识别号,12位表示可支持的子网数量,2的12次方即4 096,VID=0 用于识别帧优先级,4 095(FFF)作为预留值。所以,VID最多可以表示4 094个子网。这表明TSN是为了大型的数据传输而设计的。
3.1.2 优先级的定义
TSN有一个服务等级(class of service,CoS)的概念。对TSN网络而言,不同优先级的服务对应图3中的PCP码。3位PCP码定义了0(最低)~7(最高)这8个优先级,传输类型分别对应
基础、最大努力、卓越努力、严苛应用、延时和抖动小于100 ms的视频、延时和抖动小于10 ms的音频、内部网络控制、网络控制。其会对网络场景进行不同的匹配,是后续调度、配置设计中会考虑到的数据流调度因素。
3.2 TSN在ISO/OSI模型中的位置
TSN在IEEE 802.1Q仅指ISO/OSI参考模型的第二层数据链路层的标准。TSN在七层架构中的位置[9]如图4所示。
图4 TSN在七层架构中的位置
3.3 精确时钟同步与延时计算
对于通信、工业控制等领域而言,所有的任务都是基于时间基准的。因此,精确时钟同步是基础的标准。TSN首先要解决网络中的时钟同步与延时计算问题,以确保整个网络的任务调度具有高度一致性。
3.3.1 时钟同步机制
TSN标准由IEEE 802.1AS[10]和为工业所开发的升级版IEEE 802.1AS-rev[11]构成。
IEEE 802.1AS是基于IEEE 1588 V2精确时钟同步协议发展的,称为gPTP-广义时钟同步协议。gPTP是一个分布式主从结构,它对所有gPTP网络中的时钟与主时钟进行同步。首先由最佳主时钟算法(best clock master algrothms,BCMA)建立主次关系,分别称为主时钟(clock master,CM)和从时钟(clock slave,CS)。每个gPTP节点会运行一个gPTP Engine。IEEE1588所采用的PTP是由网络的L3和L4层的IP网络传输,通过IPv4或IPv6的多播或单播进行分发时钟信息。而gPTP则是嵌入在MAC层硬件中,只在L2工作,直接对数据帧插入时间信息,并随着数据帧传输到网络每个节点。
gPTP应用快速生成树协议(papid spanning tree protocol,RSTP)。这是一种网络中的节点路径规划,网络配置后生成一个最优路径。其由TSN桥接节点计算并以表格形式分发给每个终端节点存储。当一个TSN节点要发送数据时,它会先检查这个表格,计算最短路径,整个网络以最短路径传送至需要接收的节点。IEEE 802.1AS的时钟结构[2]如图5所示。
图5 IEEE802.1AS的时钟结构
图5中,最左下方的802.1AS端点从上游CM接收时间信息。该时间信息包括从GM到上游CM的累计时间。对于全双工以太网LAN,计算本地CS和直接CM对等体之间的路径延时测量并用于校正接收时间。在调整(校正)接收时间后,本地时钟应与gPTP域的GM时钟同步。SN网络也支持交叉通信,每个节点都会有RSTP所给出的路径表。
802.1AS的核心在于时间戳机制(Timestamping)。PTP消息在进出具备802.1AS功能的端口时,会根据协议触发对本地实时时钟(real time clock,RTC)采样,并将自己的RTC值与来自该端口相对应的CM信息进行比较;利用路径延时测算和补偿技术,将RTC时钟值匹配到PTP域的时间。当PTP同步机制覆盖整个AVB局域网,各网络节点设备间就可以通过周期性的PTP消息的交换,精确地实现时钟调整和频率匹配算法。最终,所有的PTP节点都将同步到相同的“挂钟”(Wall Clock)时间,即主节点时间。在最大7跳的网络环境中,理论上PTP能够保证时钟同步误差在1 μs以内。
IEEE 802.1AS-rev则是一种多主时钟体系,主要优势是支持新的连接类型(如WiFi)、改善冗余路径的支持能力、增强了时间感知网络的主时钟切换时间等性能。当有一个GrandMaster宕机时,其可确保快速切换到一个新的主时钟,以便实现高可用性系统。对于车载系统而言,采用IEEE 802.1AS即可;而对于工业领域则考虑高可用性,采用AS-Rev版本。
3.3.2 TSN网络中的延时测量方法
对于网络时钟而言,其时钟同步精度主要取决于驻留时间(residence time)和链路延时(link latency)。
在gPTP中,时间同步的过程与IEEEStd 1588-2008采用相同的方式:主时钟发送同步时间信息给所有直接与其连接的时间感知系统。这些时间感知系统在收到这个同步时间信息后必须通过加上信息从主时钟传播到本节点的传输时间来修正同步时间信息。如果这个时间感知系统是一个时间感知网桥,则它必须向与它连接的其他时间感知系统转发修正后的同步时间信息(包含额外的转发过程的延时)。
数据传输过程中的延时[12]如图6所示。这些延时可以被精确计算。
图6 数据传输过程中的延时
为了保证上述过程正常工作,整个过程中有两个时间间隔必须精确已知:①转发延时(驻留时间);②同步时间信息在两个时间感知系统之间的传输路径的延时。驻留时间是在时间感知网桥内部测量的,比较简单;而传输路径上的延时则取决于诸多因素,包括介质相关属性和路径长度等。
对于每一类型的局域网或传输路径,有不同的方法来测量传播时间。但这些方法都基于同一原理:测量从一个设备发送某个消息的时间以及另一个设备接收到此消息的时间,然后以相反方向发送另一个消息,并执行相同的测量。
在这个过程中,可以计算Pdelay:
(1)
其比率r为:
(2)
网络的延时测量原理[13-14]如图7所示。
(a) 1步法
(b) 2步法
图7 网络的延时测量原理图
Fig.7Schematic diagram of network delay measurement
由图7可知,网络的延时测量有1步法和2步法两种。因为在这个网络中可能有一个节点无法提供准确的时钟。对于时间感知型节点而言,由于时间信息是随着数据载荷发送的,因此每个节点都会带有时间信息。而对于有一些非时间感知网络,则需要在发送数据帧后再向另一个节点发送一个发送的时间信息。因此,IEEE 802.1AS-Rev增强了对1步法的支持,使得实时性得以提高。
3.4 网络传输过程
对于TSN而言,其数据调度机制是关键。TSN中数据的传输过程[15]如图8所示。网络数据通过接收端口,进行帧滤波、流量计量、帧排队。在传输选择部分,TSN的调度机制将发挥作用。IEEE 802.1Q工作组定义了不同的整形器(Shaper)机制来实现这些调度。它是一种传输选择算法(transmission selection algorithm,TSA)。每种算法对应一种调度机制,适用于不同的应用场景。
TSN网络中数据的传输过程如图8所示。
图8 TSN中数据的传输过程
3.5 流预留协议
从图8可以看到,网络存在滤波数据库、传输端口状态监测、队列管理。这些都用于解决网络资源分配与调度问题。而IEEE 802.1Qat所采用的流预留协议(stream reservation protocol,SRP)机制是一个对TSN进行配置的标准。其在2010年SRP标准化成为IEEE802.1Qat,并入IEEE 802.1Q-2011标准中。SRP定义了OSI模型第2层的流概念。
SRP的工作在于建立AVB域、注册流路径、制定AVB转发规则、计算延时最差情况、为AVB流分配带宽。SRP在于让网络中的发言者(Talker)用合适的网络资源将数据发送给听者(Listener),并在网络中传播这些信息。而在终端节点之间的网桥则维护一个发言者对一个或多个听者注册的相同数据流的路径带宽等资源的需求记录。SRP是在原有IEEE 802.1Qak-MRP多注册协议之上的一个实现。SRP标准则提供了一个新的多协议注册协议(multiple multicast registration protocol,MMRP)来管理相关流带宽服务的属性,MSRP、MVRP、MMRP提供了整个SRP协议的网络信号处理过程。关于SRP机制,可以参考AVnu的SRP文档[16]。
4 流控制相关标准
对于TSN而言,数据流的管理标准由一系列主要方式构成。通用网络通常遵循严格优先级的方式,而TSN则为这种缺乏传输确定性的机制引入了新的网络调度、整形方法,并根据不同的应用场景需求提出了多种不同的整形器(Shaper)。这也是整个TSN的核心调度机制。
4.1 基于信用的整形器机制
IEEE 802.1Qav定义了时间敏感流转发与排队(forwarding and queuing for time-sensitive streams,FQTSS)的数据敏感性转发机制,并成为了IEEE 802.1Q的标准。作为一个主要对于传统以太网排队转发机制的增强标准,最初它的开发主要用于限制A/V信息缓冲。增强的突发多媒体数据流会导致较大的缓冲拥堵,并产生丢包。丢包会产生重新发包,使得服务体验下降。它采用了基于信用的整形器(credit-based shaper,CBS),以应对数据突发和聚集,可限制爆发的信息。
CBS的工作队列时序[17]如图9所示。
图9 CBS的工作队列时序图
CBS将队列分为Class A(Tight delay bound)和Class B(Loose delay bound)。如果没有数据传输,队列的信用设置为0,A队列的信用非负时可以传输。如果有数据传输,其信用将按照SendSlope下降,而另一个队列则IdelSlope速度上升,idleSlope是实际带宽(bit/s),而SendSlope是端口传输率,由MAC服务支持。
CBS控制每个队列最大数据流不超过配置的带宽限制(75%最大带宽)。CBS和SRP融合,可以提供250 μs/桥的延时。整体来说,IEEE802.1Qav以太网保证在7个跳转(hop)最差2 ms Class A和50 ms Class B延时。
当然,这个延时对于工业应用来说是不能接受的。为了获取更好的QoS,IEEE 802.1TSN TG又进一步开发了Qbv时间感知整形器、Qbu抢占式MAC等机制。
4.2 时间感知整形器机制
时间感知整形器(Time Awareness Shaper,TAS)是为了更低的时间粒度、更为严苛的工业控制类应用而设计的调度机制,目前被工业自动化领域的企业所采用。TAS由IEEE 802.1Qbv定义,是基于预先设定的周期性门控制列表,动态地为出口队列提供开/关控制的机制。Qbv定义了一个时间窗口,是一个时间触发型网络(Time-trigged)。这个窗口在这个机制中是被预先确定的。这个门控制列表被周期性的扫描,并按预先定义的次序为不同的队列开放传输端口。
出口硬件有8个软件队列,每个都有唯一的传输选择算法。传输由门控制列表(gate control list,GCL)控制。它是多个门控制实体确定软件的队列开放。
TAS的工作原理如图10所示。
图10 TAS的工作原理图
在TAS机制中,为了确保数据传输前网络是空闲的,在整个启动传输前需要设置一个保护带宽(Guardbound)[18]。Guardband占用最大的以太网帧传输长度,以确保最差情况——即使前面有一个标准以太网帧正在传输,也不会让GCL在重启下一个周期前被占用网络。
4.3 抢占式MAC机制
在TAS机制中,会存在两个问题:①保护带宽消耗了一定的采样时间;②低优先级反转的风险。因此,TSN的802.1Qbu和IEEE 802.3工作组共同开发了IEEE 802.3br,即可抢占式MAC机制。基于抢占式MAC的传输机制[19]如图11所示。其采用了802.3TG中的帧抢占机制,将给定的出口分为2个MAC服务接口,分别称为可被抢占MAC(pAMC-Preemptable MAC)和快速MAC(eMAC-express MAC)。pMAC可以被eMAC抢占,进入数据堆栈后等待eMAC数据传输完成,再传输。
图11 基于抢占式MAC的传输机制
通过抢占,保护带宽可以被减少至最短低优先级帧片段。然而,在最差情况下,低优先级的片段可以在下一个高优先级前完成。当然,抢占这个传输过程仅在连接层接口——即对于抢占式MAC,交换机需要专用的硬件层MAC芯片支持。
4.4 周期性排队与转发机制
由于CBS机制仅可实现软实时级,路径拓扑会导致持续的延时增加。而最差延时情况与拓扑、跳数、交换机的缓冲需求相关。因此,TSN工作组推进了周期性排队与转发(cyclic quening forwarding,CQF)机制(又称蠕动整形器)。作为一个同步入队和出队的方法,CQF使得运行允许LAN桥与帧传输在一个周期内实现同步,以获得零堵塞丢包以及有边界的延时,并能够独立于网络拓扑结构而存在。IEEE 802.1Qch标准定义了CQF要与IEEE 802.1Qci标准相互配合使用。IEEE 802.1Qci-t表明,它会根据达到时间、速度、带宽,对桥节点输入的每个队列进行滤波和监管,用于保护过大的带宽使用、突发的传输尺寸以及错误或恶意端点。IEEE 802.1Qch所采用的CQF机制遵循了一个“每周期走一步”的策略,为数据传输赋予了确定性。
CQF可以与帧抢占IEEE 802.1Qbu合并使用,以降低完整尺寸帧到最小帧片段的传输周期时间。为使CQF正常工作,必须将所有帧保持在其分配的周期内。因此,需要考虑周期时间,使得中间网桥的周期与第一次和最后一次传输的时间都对齐,以确保达到所需的等待时间边界。为此,CQF结合Qci入口策略和IEEE 802.1Qbv整形器,可确保所有帧保持在确定的延时范围,并保证在其分配时间内发送。
4.5 异步流整形机制
CQF和TAS提供了用于超低延时的数据,依赖网络高度时间协同,以及在强制的周期中增强的包传输。但其对带宽的使用效率并不高。因此,TSN工作组提出IEEE 802.1Qcr异步流整形(asynchronous traffic shaper,ATS)机制。ATS基于紧急度的调度器设计。其通过重新对每个跳转的TSN流整形,以获得流模式的平滑,实现每个流排队,并使得优先级紧急的数据流可以优先传输。ATS以异步形式运行,桥和终端节点无需同步时间。ATS可以更高效地使用带宽,可运行在高速连接应用的混合负载时间,如周期和非周期数据流。
5 TSN网络配置标准IEEE 802.1Qcc
对于TSN而言,在时钟同步、调度策略之后,就必须考虑网络配置的问题。在AVB中,SRP是一种分布式网络配置机制。而在更为严格的工业应用中,需要更为高效、易用的配置方式。IEEE 802.1Qcc是目前普遍接受的配置标准。TSN网络配置的集中式模式原理[20]如图12所示。
图12 TSN网络配置的集中式模式原理图
对于IEEE802.1Qat所提供的SRP机制而言,这是一种分布式方式的网络需求与资源分配机制。新的注册或退出注册、任何变化与请求都将导致网络延时和超负荷,降低网络的传输效率。因此,TSN工作组又提供了IEEE 802.1Qcc支持集中式的注册与流预留服务,称为SRP增强模式。在这种模式下,系统通过降低预留消息的大小与频率(放宽计时器),以便在链路状态和预留变更时触发更新。
此外,IEEE802.1Qcc提供了一套工具,用于全局管理和控制网络,通过UNI来增强SRP,并由一个集中式网络配置(centralized network configuration,CNC)节点作为补充。UNI提供了一个通用L2层服务方法。CNC与UNI交互以提供运行资源的预留、调度以及其他类型的远程管理协议,如NETCONF或RESTCONF;同时,IEEE 802.1Qcc与IETF YANG/NETCONF数据建模语言兼容。
对于完全集中式网络,可选的CUC节点通过标准API与CNC通信,用于发现终端节点、检索终端节点功能和用户需求,以及配置优化的TSN终端节点的功能。其与更高级的流预留协议(例如RSVP)的交互是无缝的,类似于AVB利用现有的SRP机制。
IEEE 802.1Qcc仍然支持原有的SRP的全分布式配置模式,允许集中式管理的系统与分布式系统间共存。此外,IEEE 802.1Qcc支持一种称为混合配置模式,从而为旧式设备提供迁移服务。这个配置管理机制与IEEE 802.1Qca路径控制与预留,以及TSN整形器相结合,可以实现端到端传输的零堵塞损失。
对于整个网络而言,必须有高效、易用的网络配置,以获得终端节点、桥节点的资源、每个节点的带宽、数据负载、目标地址、时钟等信息,并汇集到中央节点进行统一进调度,以获得最优的传输效率。
6 TSN应用前景
TSN的应用前景非常广阔,目前来说聚焦于以下几个方面。
6.1 汽车领域
在汽车工业领域,随着高级辅助驾驶系统(advanced driver assistance system,ADAS)的发展,迫切需要更高带宽和响应能力的网络来代替传统的CAN总线。IEEE 802.1AVB就是汽车行业发起并正在执行的标准组。目前,奥迪、奔驰、大众等已经开始进行基于TSN的以太网应用测试与验证工作。2019年,由三星所发起的汽车产业发展联盟向TTTech投资9 000万美元,共同开发基于以太网的车载电子系统。
6.2 工业物联网
工业物联网将意味着更为广泛的数据连接需求,通过机器学习、数字孪生技术来更好地发挥数据作用,为整体的产线优化提供支撑。而这些数据(包括机器视觉、AR/VR数据)将需要更高的带宽。因此,来自于ICT领域的CISCO、华为等厂商都将目标聚焦于通过OPC UA over TSN的网络架构来实现这一互联需求。OPC UA扮演了数据规范与标准的角色,而TSN则赋予它实时性传输能力。这样的架构可以实现从传感器到云端的高效连接,在很多场景可以直接省略掉传统工业架构中的控制器层,形成一个新的分布式计算架构。
6.3 工业控制
目前,在工业领域,包括贝加莱、三菱、西门子、施耐德、罗克韦尔等主流厂商已经推出其基于TSN的产品。贝加莱推出新的TSN交换机、PLC,而三菱则采用了TSN技术的伺服驱动器。未来,TSN将成为工业控制现场的主流总线。
TSN的意义对于工业而言并非仅仅是实时性,而在于通过TSN实现了从控制到整个工厂的连接。TSN是IEEE的标准,更具有“中立性”,因而得到了广泛的支持。未来,TSN将会成为工业通信的共同选择。