由于FAST 2.0的流水线扩展模型难以满足确定性交换的要求,在保持FAST基本流水线架构不变的前提下,我们提出了FAST 3.0流水线扩展模型。

一、FAST 2.0流水线扩展模型的不足

FAST 2.0的流水线扩展模型如图1所示。其优点是在保持FAST标准五级流水线(GPP-GKE-GME-GAC-GOE)的基础上,支持用户定义解析(UDP)、用户定义关键字提取(UKE)、用户定义动作(UDA)和用户定义输出(UDO)等模块的插入,易于功能的扩展。但FAST 2.0在支持TSN方面主要存在两点不足。

一个不足是在GOE和UDO之间存在用户逻辑难以控制的FPGA OS提供的分组缓冲区,在极端情况下,当一个输出接口发成拥塞后,可能会阻塞其他端口分组的发送,因此高优先级的TSN帧可能在FPGA OS中被阻塞,难以控制分组的延时;

第二个不足是UDP只能插入到GPP之后,只能在GPP支持的IPv4、IPv6和ARP三个解析树的基础上对分组的L4-L7协议进行进一步解析,而难以支持直接封装在以太网中的PTP协议(IEEE 1588)帧的解析。

图1  FAST 2.0的流水线扩展模型

二、FAST 3.0流水线扩展模型

FAST3.0流水线扩展模型如图2所示。在两个方面对FAST 2.0扩展模型进行了改进。一是增加了Pre-Ingress流水线段,支持对GPP不支持的协议帧进行解析和处理,避免GPP将1588等未知协议帧定向到软件处理或丢弃;二是将GOE直接与UDO连接,避免了分组输出延时的不确定性,可以有效支持在UDO中实现各种QoS保证功能,为基于FAST架构的TSN交换实现奠定了基础。

2  FAST 3.0的流水线扩展模型

FAST 3.0流水线扩展模型不修改模块的接口规范,因此兼容基于FAST2.0的所有设计。

三、相关工作进展

  1. FAST社区已经完成对FAST流水线扩展模型介绍文档的更新,参见(http://fastswitch.org/col.jsp?id=101) “FAST入门(7)FAST硬件流水线之三(修订版)”
  2. 湖南新实在Openbox-S4上实现了支持FAST3.0扩展模型的FPGA OS(正在测试),预计1月底正式推出。

发表评论

电子邮件地址不会被公开。 必填项已用*标注