基于FAST的TSN交换(7)TSN网络接口适配器需求分析与实现模型

基于FAST的TSN交换(7)TSN网络接口适配器需求分析与实现模型

    TSN网络实现确定性的分组交换不但需要TSN交换机,TSN接口适配器以及管理控制系统配合实现,而且必须能够清晰的给出时间敏感流量的规范特性。由于TSN技术发展迅速,新标准和修订不断涌现,特别是面向特定行业的解决方案差异较大,因此不同厂商的TSN设备互联互通十分困难。TSN解决方案提供商必须提供TSN网络整套解决方案,在研制TSN交换机同时,必须提供配套的网络接口适配器和控制软件的方案。

一、TSN网络接口适配器的特点

(1)与商用网卡的比较
    由于TSN网络具有明显的行业特点,不同场景下的TSN交换具有不同的网络接口和链路,资源预约方式,时间同步方式,故障冗余等要求,特别的TSN定义了与标准以太网不同的UNI接口,因此构建TSN网络不能使用标准的网络接口适配器,必须进行针对性的定制。
    TSN网络接口适配器与标准网卡的比较如下表所示。

要求 标准网卡 TSN接口适配器
接口和链路 速率自适应,最高25G-40G接口 速率固定,1G接口可满足要求
资源预约 不要求 离线或在线预约
分组标记与整形 优先级默认为0 对进入网络分组进行标记和整形
时间同步 实现PTP协议部分功能,需要驱动配合 完全由硬件实现
冗余控制 不要求 多端口接入网络
硬件加速 RDMA,TCP卸载等 应用相关功能加速处理
CPU连接方式 PCIe总线 总线或以太网
管理 本地的配置管理 接受外部集中控制器的管理

(2)TSN接口适配器实现模型
    TSN接口适配器实现需要考虑外部接口定义以及内部处理模型两方面,如下图所示。TSN接口适配器的接口包含与结点CPU连接的接口,与网络连接的接口(UNI)以及与配置管理系统连接的接口。
    通常TSN接口适配器与控制计算机CPU的接口为PCIe接口,可保证较大的传输带宽和较小的延时,与传感器/控制器节点连接的接口为以太网接口(适配器与控制器/传感器物理分离)或内部总线接口(适配器与传感器/控制器深度集成在一个SOC系统内)。
    TSN适配器与网络为标准的以太网接口,本文后续将会对UNI接口进行详细分析。而对TSN接口适配器的配置管理接口可采用多样化的实现方式,既可以通过CPU接口,由驱动程序对适配器进行管理控制,也可以通过UNI接口,由外部的集中控制器对适配器进行控制。在特定环境中,TSN网络还可以采用独立的总线对接口适配器的管理甚至是时间同步进行控制。
基于FAST的TSN交换(7)TSN网络接口适配器需求分析与实现模型_第1张图片
    TSN适配器内部逻辑除了比较直观和标准的“分类标记整形与调度”,“时间同步”,“配置管理”外,还包含“冗余控制”和“应用加速”两部分。
    冗余控制是根据TSN网络特定应用场景的需求确定的,例如在舰船上特定应用场景需要支持冗余接入备份的双口功能。
    应用加速功能是扩充网络适配器功能,使之具有类似智能网卡的应用加速功能,以便减小TSN网络结点体积和功耗对特定应用的加速。一个典型的场景是将高分辨摄像头通过TSN适配器接入网络,适配器不但能根据摄像头的数据流规范向网络预约资源,保证采集数据传输的质量,还可以利用可编程资源,在数据传输前完成视频采集数据的编解码和内容加解密等处理。这类功能虽然与TSN无关,但可以对全系统整体的处理效率、功耗和体积进行优化,特别适合汽车、飞机和卫星上数据采集和计算分析的场景。

二、TSN网络的用户网络接口(UNI)设计

    UNI定义了TSN端节点与网络的接口规范,从物理层的接口速率,线缆长度,时间同步,到链路层的资源预约和故障冗余等机制都需要进行针对性设计。
(1)UNI接口速率
    目前工业环境下TSN网络链路主要采用100M以太网和1G以太网,对10/100/1000以太网速率的自动协商并没有明确的要求。一方面是因为网络是封闭和确定的,其中接入节点的带宽可以预先规划;另一方面是不确定的链路协商速率使得网络延时和带宽难以预知,增加了确定性管理的复杂性。因此TSN接口适配器在设计时可以根据需求固定网络接口的速率,使用简单的MAC层处理逻辑,而无需支持接口速率的自适应。
(2)UNI接入电缆长度
    TSN网络UNI设计时一个比较容易忽略的问题时TSN网络中网线的长度。假设信号在光纤和电缆上传输的速度为每秒30万公里(由于存在分布电感和电容,电信号在电缆中传输速度一般按照20万公里估算),那么30m的传输延时约为100ns左右。因此为了提升时间同步精度,TSN网络在规划时必须考虑电缆长度。如果接口适配器接入网络的接入电缆长度无法确定,那么可以考虑采用IETF Detnet工作组提出的大规模网络确定性转发的方案,放松对时间同步的要求。
(3)UNI的资源预约
    TSN保证确定性交换的前提就是提前有一个类似“高铁运行时刻表”的规划图,生成这个规划图分为在线两种和离线方式。在线规划方式要求TSN网络接口支持类似802.1Qat和802.1Qcc协议,动态的为时间敏感业务预约网络资源,其优点是支持网络节点的动态加入和退出以及可变的时间敏感业务传输需求,但这大大增加了TSN网络接口驱动的复杂性。
    离线规划方式主要针对时间敏感业务传输需求是固定的封闭网络,例如工厂车间的现场控制网络,列车骨干网络和汽车车载网络等。这些网络的网络接口不需采用动态协议向网络预约资源,十分适合计算和存储能力都十分有限的传感器和控制器接入TSN网络。离线资源预约只适用于满足局域网内部交换的确定性,在更大区域范围内跨网关或路由器的确定性转发控制必须采用其他的技术,如2015年IETF成立的Detnet(确定性网络)工作组提出的L3网络中的确定性保证机制,当然目前Detnet相关规范还在草案阶段,与TSN相比,更加不够成熟。
(4)UNI时间同步
    虽然近年来一些IETF Detnet工作组针对大规模网络提出了不需要时间同步的确定性转发方案,但这些会大大增加网络接口和交换对时间槽标记和映射的复杂性,难以在局域网中部署。因此TSN网络接口适配器必须支持1588时间同步机制。
    当前一些商用网卡如i350,82559,x550等支持1588PTP协议。但由于这些网卡的时间同步实现必须驱动参与,例如生成follow up同步帧,因此需要占用计算和存储资源,难以支持较高频率的时间同步,同步精度难以保证。条件许可情况下,TSN网络接口适配器应由硬件实现全部的时间同步功能。
(5)UNI故障冗余
    除了具有确定性延时外,确保分组不丢包的可靠传输也是TSN的重要目标。TSN 802.1CB规范定义了为了确保可靠传输的帧复制和消除机制,基本思想是从TSN网络接口就将数据流划分成不同的子流,不同的子流通过网络中不同的路径进行传输,在子流的汇聚点再进行重复分组的丢弃,以避免路径故障带来的分组丢失。因此,TSN网络接口适配器必须支持多个冗余的网络接口接入网络,并可根据需求支持802.1CB等协议的处理。
    后续我们会对基于FAST架构和Zynq FPGA的TSN接口适配器的设计思路和实现技术进行分析,欢迎继续关注。

你可能感兴趣的:(FAST,TSN)