1、2023 年第 9 期68计算机应用信息技术与信息化TTE 协议数据与 FC 协议数据转换设计及实现雷俊婷1 李正军1 石 岩1 李 凤1 赵玄润1LEI Junting LI Zhengjun SHI Yan LI Feng ZHAO Xuanrun 摘要 随着网络技术的更新迭代及新型飞机对通信数据需求的日益增加,航空电子系统对于机载网络的带宽、实时性、可靠性要求也越来越高。目前 FC 协议因其高速率、高可靠性等优势被广泛应用于航空电子系统中,而 TTE 协议基于分布式同步算法,采用时间触发方式,增强了通信网络的实时性、确定性及可预测性,并被安全关键应用领域所关注。介绍了FC网络及TTE网络
2、的相关技术内容,简述两者的优缺点,并对 TTE 协议数据转为 FC 协议数据的数据转换过程进行设计实现。测试验证结果表明,协议转换能够有效解决两种不同协议设备之间的数据兼容问题。关键词 航空电子系统;机载网络;光纤网络;时间触发以太网;协议转换 doi:10.3969/j.issn.1672-9528.2023.09.0151.中国航空工业集团公司西安航空计算技术研究所 陕西西安 7100650 引言系统总线是航空电子系统发展的重要因素之一,随着网络技术的更新迭代以及新型飞机对机载数据网络通信要求的增加,航空电子系统对系统总线技术提出了更高的要求1。当前 FC 网络协议应用较为广泛2,其具有高
3、速率、高可靠性等优势,而 TTE 网络的出现也以其独有的优势(强实时性、高确定性、分布式同步算法等)得到了重点关注3。本文简述了 FC 及 TTE 网络技术的网络特点及优势,并设计实现了 TTE 协议数据转换为 FC 协议数据的数据转换过程,使得TTE交换机在接收到TTE协议数据后能够转发至FC网络,有效解决了网络间的协议兼容问题,增强了网络的可用性。1 协议简介1.1 FC 协议FC(fi bre channel)光纤通道协议4提出的初衷在于解决 I/O 传输瓶颈对整个存储系统带来的消极影响,最终形成了一个光纤通道协议簇,并实现了在同一协议平台框架下映射至更多 FC-4 上层协议。随着 FC
4、 技术的发展,其带宽也不断地扩展,以满足更高的通信数据需求。从逻辑的角度而言,可将 FC 看作是一种双向的、点对点的串行数据通信,FC 网络的核心则是由 FC 交换机和 FC 节点机构成5。其中交换机的作用在于完成信息交换,具体体现在处理接收到的源节点机发来的数据,随后根据配置表单播或多播至一个或多个目的节点,以实现各节点间的互联通信。节点机则指接入至 FC网络中的设备,主要用于实现消息的接收及发送。当前 FC网络协议在航电系统上的应用主要分为两个大的分支:FC-AE、FC-AV(ARINC818)6。FC-AE 标准是将 FC 协议应用到航空电子环境中的一组协议集,主要用于各设备之间的数据通
5、信,传输相关数据信息,例如视频、仪器仪表、传感器等数据。相较而言,FC-AV 则能实现传输大数据量的音视频数据流,更符合当前使用的需求。机载 FC 网络相较于传统的总线网络而言,具备以下五点优势。(1)高速率FC 网络协议可实现多种传输速率,具体包括:1 Gbit/s、2 Gbit/s、4 Gbit/s、8 Gbit/s、16 Gbit/s,其链路介质常用光纤。(2)高可靠性FC 网络协议物理链路的传输误码率小于 10-12。(3)强抗干扰性FC 网络协议通常采用光纤作为传输介质,因此其抗电磁干扰能力较强。(4)重量轻FC 网络协议采用的光纤重量相较于同轴线缆而言小很多,大约每千米轻20 kg
6、,使得其线路易于铺设,从而节省空间。(5)拓扑结构灵活FC 网络协议可采用点到点、仲裁环及交换等拓扑结构。这三种拓扑结构各有优缺点,其中点到点的拓扑结构能够在实现较大的通信带宽的同时实现较小的传输延迟,但存在扩展性差的问题;仲裁环的优势在于其成本低且通信不依赖于交换机,但同时会造成实时性、可靠性差的问题;交换结构的优点在于扩展性好、带宽高,但其结构设计难度大且成本高。因此在实际应用的过程中,应当根据实际情况选择具体 2023 年第 9 期69计算机应用信息技术与信息化的拓扑结构,以满足特定的需求。1.2 TTE 协议TTE(time-triggered ethernet)时间触发以太网7,顾名
7、思义 TTE 网络协议不同于传统以太网采用的事件触发方式,而是选择采用了时间触发方式。时间触发方式的优点在于可预测性,系统采用集中式调度表来控制网络中各个节点的访问,具体过程为在固定的周期间隔进行触发,每个节点进行感知、通信、计算、控制等操作,能够保证具有前驱和后续关系的任务之间的正常调度与协同处理,从而实现了在继承传统以太网优点的基础上,克服了以太网在传输过程中存在的时延及抖动等问题,提高了网络的可靠性和安全性,使得 TTE 网络协议在航空航天领域有着更为广阔的应用前景8。TTE 网络协议可以简单理解为在传统以太网的基础上增加了时钟同步、时间触发通信、速率受限传输及尽力而为传输的功能,其具备
8、以下四点优势。(1)高兼容性TTE 网络协议实现了与以太网 802.3 协议的完全兼容,可以实现不同类型的应用业务在同一网络上的无缝连接,例如个人的 PC 机、多媒体系统等均可使用相同的网络。(2)高适用性TTE 网络协议适用各种带宽速率,能高效地应用10 Mbit/s、100 Mbit/s、1 Gbit/s、10 Gbit/s 等各种带宽网络。(3)高容错性TTE 网络协议能够有效阻止个别端系统存在的胡言乱语等错误蔓延至整个网络,且可以防止外部对系统资源的非法访问。(4)可扩展性TTE 网络协议可根据实际需求进行扩展,使得已有系统应用无需做任何更改。TTE 网络主要由 4 个部分构成,分别为
9、时间触发以太网交换机(CM)、时间触发以太网控制器终端(SM)、时间触发以太网客户终端(SC)及物理链路。其拓扑结构也有多种形式,不同的分类标准下将存在不同的结构,具体分为以下两大类。一是根据网络中是否存在交换机链路分为单跳拓扑(single-hop topology)和多跳拓扑(multi-hop topology);二是根据网络中端节点间的余度通信链路分为单通道拓扑、双通道拓扑及多通道拓扑,具体的网络结构应当根据使用过程中的需求进行设计。2 协议转换实现如 1.1 及 1.2 节所述,FC 网络协议及 TTE 网络协议各有特点,针对当前航空电子系统的发展需求,即在同一个系统中同时存在 FC
10、 网络协议和 TTE 网络协议的应用情况,因此根据系统需要进行协议数据转换,从而提高机载系统之间的兼容性。具体地,交换机相关端口实现存储 TTE 网络消息ID 与 FC 网络消息 ID 的静态映射表,在网络协议转换时通过查表实现相互转换,本文则主要针对 TTE 协议数据转换为 FC 协议数据的数据转换过程的设计及实现,具体流程如下所述。2.1 TTE 数据的接收接收到的 TTE 数据由 9 个部分构成,依次为 DMAC、SMAC、TYPE、LEN、PAYLOAD、HVPC、PAD、SN 及FCS,如表 1 所示。表 1TTE 数据发送序列字段DMACSMACTYPELENPAYLOAD字节数6
11、622X字段HVPCPADSNFCS字节数4314如 表 1 中 所 示,TTE 数 据 按 照 DMAC、SMAC、TYPE、LEN、PAYLOAD、HVPC、PAD、SN 及 FCS 的顺序依次组成9,各部分的具体描述如下。(1)DMAC 为目的 MAC 地址,由 6 个字节构成,具体包括虚拟链路标志符、消息长度、消息标记、优先级及固定域。其中,DMAC 中的 29:28 及 15:0 位拼成一个 18 位的数据,用于查询 CAM1 表,当表中有对应数据时,则输出MATCH_ADDR1。在接收到 DMAC 数据的同时,需要进行数据检查,例如 DAMC 数据中部分指定位的数据值应当为设定的固
12、定值。(2)SMAC 为源 MAC 地址,同样由 6 个字节构成,其中具体包括接口标志符、用户定义标志符及固定域。同DMAC 中所述,SMAC 中的 23:8 及 7:5 位将拼成一个 19位的数据,用于查询 CAM2 表,当表中有对应数据时,则输出 MATCH_ADDR2。(3)TYPE 表示 MAC 帧类型,由 2 字节构成,该值应当为固定值。(4)LEN 表示负载长度,由 2 字节构成,其在非分拆帧的情况下,应当等于 PAYLOAD_LEN 的数值。(5)PAYLOAD 为负载,其具体的字节数将根据网络中传输的实际数据决定。(6)HVPC 为硬件校验值,主要用于校验接收到的数据是否正确。
13、在非分拆帧的情况下,HVPC=VPC(PAYLOAD,PAD)。(7)PAD 则表示 padding,主要用于当数据长度不足 64字节时,则需要利用 PAD 将其补齐至 64 字节,此处表示采用了 3 字节的填充字节。(8)SN 为帧顺序号,由 1 字节构成。(9)FCS 为帧校验序列,由 4 字节构成。2023 年第 9 期70计算机应用信息技术与信息化TTE 数据接收模块将完成数据的接收,同时完成数据的检查判断,只有满足上述各字段数据值要求时,才表明接收到的数据是正确的,随后将其存储至相应的寄存器中,方便实现后续操作。2.2 数据转换TTE 交换机在接收 TTE 协议数据的同时完成数据检查
14、,如 2.1 中所述,需要判断各字节数据是否符合 TTE 协议数据的要求,仅在接收到的数据为正确的情况下,才会将接收到的 TTE 协议数据通过数据转换传输至 FC 网络。具体地,为了明确当前时刻接收到的数据为 TTE 协议数据结构中的哪一部分,则需要了解数据的接收过程,具体如图 1 所示。图 1 10G MAC 数据接收过程如图 1 所示,根据 10 G MAC 的接口时序,每个时钟周期将接收 8 字节数据,即 64 位数据,依次为 tdata7:0、tdata15:8、tdata23:16、tdata31:24、tdata39:32、tdata47:40、tdata55:48、tdata63
15、:56,此 处 tdata 全 称 应当 为 rx_axis_tdata,同 理 rx_axis_tvalid,rx_axis_tkeep,rx_axis_tlast 均进行了简写。tvaild 信号拉高时,说明数据有效,在此期间实现 TTE 数据的接收。tkeep 是一个 8 位的数据,其用于表明在每个时钟周期内接收到的 8 字节数据中有几个字节数据是有效的,例如当 tkeep7:0=0 xFF 时,则说明该时钟周期下接收到的 8 字节数据均为有效数据,而当tkeep7:0=0 x03 时,说明该时钟周期下接收到的 8 字节数据中仅有 tdata7:0、tdata15:8 这两字节数据为有效
16、数据,其他情况同理可得。tlast 数据将在数据的最后一个时钟周期处拉高,即 tlast 的值由 0 变为 1,用于表明数据包的结束。结合上述各个数据信息,便可得到接收数据的起始、结尾及每个时钟周期下 8 字节数据的具体组成元素,方便后续数据的接收、检查及转换操作。图中详细展现了在同一时钟周期下接收到的 8 字节数据分别对应表 1 TTE 数据结构中的哪一部分。因此设置 count实现计数,count 的初始值设为 0,每当接收一个 8 字节数据,则完成 count+1 的操作,并将接收到的数据写入对应的寄存器中。此时,根据 count 的计数值便可明确当前接收到的 8 字节中具体包含哪些数据
17、。例如 count 初始值设为 0,当其增加至 1 时,则说明此时接收到了第一个 8 字节数据。从图 1中可对应看出,第一个 8 字节数据中包含了 6 字节的 DMAC数据及 2 字节 SMAC 数据。由于 FPGA 采用的是并行模式,因此在接收第一个 8 字节数据的同时,便可以进行数据的判断,即判断 DMAC 中各位的数据是否符合数据协议的要求。后续依次完成相同的判断操作,对数据的每一位完成判断操作,最终仅有在接收到的数据格式正确的情况下,才会完成数据的转换。顾名思义,数据传输的重点在于传输的数据本身,即其中的 PAYLOAD 部分,因此根据 TTE 数据格式的要求,验证提取到的负载部分,并
18、将数据帧内实际负载长度所包含的内容作为 FC 协议的负载部分,随后添加 FC 协议定义的包头及包尾后,便可按照 FC 网络协议的要求进行传输。值得注意的是,其中部分数据信息需要从 CAM 表中查询得到 MATCH_ADDR,并利用 MATCH_ADDR 同时查询多个存储信息数据的 RAM,这要求仅在对应两个 CAM 表所查询到的 MATCH_ADDR_1 与 MATCH_ADDR_2 相等的前提下,才可从相应的 RAM 中提取到所需数据,共同构成 FC 数据的各个部分。2.3 FC 数据的发送为了符合 FC 网络协议的数据格式,除需将接收到的负载数据作为 FC 协议数据的负载数据外,还需添加相
19、应的包头和包尾,具体格式如下所述。FC 数据由多个字段构成,具体包括 SOF、R_CTL、DID、PRI、SID、TYPE、OXID、MID、EOF 等,其中部分数据位为固定值10。SOF 为帧起始的标志,对应地,EOF 则为帧结束的标志,因此通过 SOF 及 EOF 便可轻松判断出 FC数据的起始位置及结束位置。其中 DID、SID、PRI、OXID、MID、MPRI 值均为需要根据 MATCH_ADDR_1 查询相应 RAM 而得到的数据值。最终将构建好的 FC 协议数据通过 FC MAC 传输出去,经过 VIVADO 软件抓取得到的数据表明,最终的 FC 协议数据符合 FC 网络协议要求
20、,且负载部分数据与接收到的一致。3 测试验证3.1 测试验证过程测试验证过程如图 2 所示,从左往右依次为 PC1、分流器、交换机、SW_ES、FC 接口、Finisar 及 PC2,其中 PC1后接分流器,分流器的作用则在于为后续的交换机提供数据源。交换机则是一种用于转发数据的设备,其能够连接多台 2023 年第 9 期71计算机应用信息技术与信息化计算机并可以根据数据包中携带的目的地址将数据包转发至对应的端口上。SW_ES 则为内置端系统的缩写,经过其中的协议转换功能,实现 TTE 协议数据到 FC 协议数据的数据转换,并将其接至 FC 接口处。FC 接口经过 Finisar 设备后发送至
21、 PC2,其中 Finisar 设备可以实现实时显示及转发数据的功能,至此完成了 TTE 协议数据与 FC 协议数据的数据转换。故而在测试验证的过程中,可通过对比PC1与PC2上的数据,以此验证数据转化的正确性。PC1交换机SW_ESFC接口PC2分流器Finisar图 2 测试验证流程具体验证体现在 PC1 上的 TTE 协议数据包中的 PAY-LOAD 部分应当与 PC2 上的 FC 协议数据包中 PAYLOAD 部分的数据保持一致,且 PC1 及 PC2 上的数据格式应当分别符合 TTE 协议及 FC 协议的数据格式要求。3.2 测试验证结果在测试验证的过程中分别验证了发送正确帧及错误帧
22、的不同情况,确保其能正确处理数据包且能够对错误的数据包进行识别并做出响应,具体情况如下所述,分为发送正确数据帧及错误数据帧两大类。发送正确数据帧的情况如下所示。(1)通过 PC1 发送 20 万包数据,同时在 PC2 处接收到了 20 万包数据,没有出现数据包丢失的情况,表明 数据完成正确传输。(2)通过对比 PC1 及 PC2 接收到的数据,其 PAYLOAD部分数据完全一致,且未发生数据包丢失的情况,表明数据完成正确传输。构建错误数据帧,以此验证其是否能够完成数据检查及是否能够正确丢弃错误数据包。(1)DMAC 数据存在错误。例如 DMAC 某些位的数据值不等于约定的固定值,则会将该数据包
23、丢弃;或是在查询CAM 表时无法匹配,同样会将该数据包丢弃。(2)SMAC、TYPE 中固定值部分不正确。若真实值不等于设定的固定值,则该数据包将被丢弃。(3)HVPC 值不匹配。通过接收到的实际数据包 PAY-LOAD 部分计算得到的 HVPC 值与数据包中对应位的 HVPC值不相等,则证明 HVPC 验证错误,该数据包将被丢弃。在测试验证的过程中人为构造错误数据,测试验证其能准确识别错误数据且完成错误数据的丢弃,充分说明其能完成数据的正确转换及错误数据的识别及丢弃。4 总结随着网络技术的发展以及研制任务需求的增加,航空机载网络技术也得到了快速发展,其中 FC 协议及 TTE 协议均为具有代
24、表性的网络技术,FC 协议已得到了广泛使用,TTE协议也以其独有的优势(强实时性、高确定性、分布式同步算法等)得到了重点关注,两者各具特点。在实际的应用中,当网络中同时存在 FC 协议数据及 TTE 协议数据时,便有了数据转换的需求,其可实现网络间协议的兼容,从而有效提升了网络间的兼容性。具体地,TTE 交换机要将接收到的TTE 协议数据传输至 FC 网络时,首先将 TTE 协议数据帧内实际负载长度所包含的内容作为 FC 协议的负载,随后添加FC 协议定义的包头包尾后,按照 FC 协议的要求进行传输,测试验证了数据转换的合理性及正确性,有效解决了网络间不同协议的兼容问题。参考文献:1 朱闻 渊
25、,尹家伟,蒋祺明.新型航空电子系统总线互连技术发展综述 J.计算机工程,2011,37(S1):398-402.2 王海 青,王岩,杨广双,等.光纤通道在航空电子环境中的应用 J.飞机设计,2014,34(1):67-72+80.3 刘嘉 乐.TTE 网络监控交换机设计与实现 D.西安:西安电子科技大学,2022.4 浅析 光纤通道协议 J.每周电脑报,2007(41):47-48.5 俞大 磊,何立军,解文涛.FC 统一光纤网络在综合化航电系统中的应用 J.电子技术,2016,45(5):77-79.6 刘倩 .光纤通道(fi ber channel)协议测试方法的研究 D.西安:西安电子科
26、技大学,2013.7 KO PETZ H,BAUER G.The time-triggered architectureJ.Proceedings of the IEEE,2003,91(1):112-126.8 蒋社 稷,卢海涛,史志钊,等.时间触发以太网在航空电子系统中的应用 J.电光与控制,2015,22(5):84-88.9 郭爱 英.时间触发以太网同步技术的研究与实现D.成都:电子科技大学,2013.10 倪永 军,徐忠.光纤通道协议技术分析与研究 J.信阳师范学院学报(自然科学版),2006(4):442-445.【作者简介】雷俊婷(1997),女,陕西西安人,硕士,助理工程师,研究方向:计算机网络。李正军(1991),男,陕西安康人,硕士,工程师,研究方向:计算机网络。石岩 (1996),男,甘肃临夏人,硕士,助理工程师,研究方向:计算机网络。李凤 (1996),女,河南永城人,硕士,助理工程师,研究方向:计算机网络。赵玄润(1997),男,陕西三原人,硕士,助理工程师,研究方向:网络通信。(收稿日期:2023-08-01 修回日期:2023-08-22)