CN117527920A - 一种光纤通道数据转发方法及装置 - Google Patents

一种光纤通道数据转发方法及装置 Download PDF

Info

Publication number
CN117527920A
CN117527920A CN202311574953.4A CN202311574953A CN117527920A CN 117527920 A CN117527920 A CN 117527920A CN 202311574953 A CN202311574953 A CN 202311574953A CN 117527920 A CN117527920 A CN 117527920A
Authority
CN
China
Prior art keywords
data
forwarding
protocol
receiving
fiber channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311574953.4A
Other languages
English (en)
Inventor
肖常丰
李琳
陈晓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Shiyou University
Original Assignee
Xian Shiyou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Shiyou University filed Critical Xian Shiyou University
Priority to CN202311574953.4A priority Critical patent/CN117527920A/zh
Publication of CN117527920A publication Critical patent/CN117527920A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/083Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • H04L69/085Protocols for interworking; Protocol conversion specially adapted for interworking of IP-based networks with other networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及通信技术领域,公开了一种光纤通道数据转发方法,包括以下步骤:接收光纤通道发送的数据,并将其存储在DDR中等待处理;将FC协议数据转化成UDP协议;将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。光纤通道数据转发装置,包括:数据接收模块,连接光纤通道与转发装置,用于接收和存储发送来的FC数据;整形模块,由控制单元和整形单元组成,控制单元向装置各模块发送指令,实现各模块通信功能,控制整个转发流程,整型单元用于FC数据的协议转换以及分帧处理。本申请通过硬件加速的方法来解决由于光纤通道数据发送速率过快而软件处理数据帧能力不足导致的转发数据堆积甚至溢出问题,大大提高了数据转发的效率。

Description

一种光纤通道数据转发方法及装置
技术领域
本申请涉及通信技术领域,具体涉及一种光纤通道数据转发方法及装置。
背景技术
光纤通道(Fiber Channel)是一个为适应高性能数据传输要求而设计的计算机通信协议,具有带宽高、延迟低、拓扑结构灵活、对距离不敏感等优点,传输速率可达10GB/s。它的诸多优点使其在商用领域中得到广泛应用,而且也提供对航空电子环境下的支持。光纤通道的高速性正是航空电子环境所需要的,但大部分机上设备并不支持光纤通道,这就需要使用数据采集器来将FC数据帧转化成各设备需要的帧格式再发向各个设备。而统软件的数据转发速率已经跟不上急剧增加的数据量需求,软件的转发速率决定了FC通道的传输速率。
随着科学技术的发展,不同网络传输协议在不同的领域具有独特的优势,FC协议凭借着高速和高可靠性在存储领域、航空电子领域具有重要的应用价值,FC协议是一种双向的、点对点的高性能串行通信技术,具有高带宽、传输距离长、可靠性高、实时性强、可扩展和开放式互联等特性,使其可以适用于多种应用场景。FC协议的物理层通常采用光纤介质,光纤介质具有良好的抗干扰性,且FC协议具有完善的错误处理机制和流控机制,因此即使在复杂的环境中仍有高度可靠性。FC协议提供了上层协议支持,如IP协议和SCSI(SmallComputer System Interface,小型计算机系统接口)等,在航空电子领域和高速存储领域应用广泛。FC传输速率随着技术的发展不断提升,从最初的1.0625Gbps提升到256Gbps。FC协议定义了点对点、仲裁环和星型结构等三种拓扑结构,可以在不同场景灵活使用。此外在航空电子领域中,FC-AE(Avionics Environment,光纤通道航空电子环境)可以满足不同航空电子系统对实时高速网络数据传输的要求。
UDP协议因其无连接的服务具有更高的传输速率,在对数据可靠性要求不高的系统中广泛运用。FC协议和UDP协议互相转换可以提高网络传输的可靠性和灵活性,在数据传输的网络中有着重要的研究价值。随着光纤通道需求不断增加,其传输数据量也在急速增加。因此传统软件的数据转发速率已经跟不上急剧增加的数据量需求,软件的转发速率决定了FC通道的传输速率。
UDP协议和FC协议的转换加速方式可以分成软件加速、软硬件协同加速以及硬件加速等三种方案,三种方案优势和劣势见表1所示。
表1加速方案对比
发明内容
针对现有技术存在的上述不足,本发明的目的在于提供一种光纤通道数据转发方法及装置。
为实现以上目的,一方面,本申请涉及一种光纤通道数据转发方法,采用如下技术方案:
一种光纤通道数据转发方法,包括以下步骤:
接收光纤通道发送的数据,并将其存储在DDR中等待处理;
将FC协议数据转化成UDP协议;
将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
优选的,控制系统在收到FC数据传输请求后将所述请求进行发送,接收端接收到请求后接收FC数据并将其存储在接收端DDR中。
优选的,当接收端中DDR内不为空时,接收端发送协议转换请求,控制系统收到请求后读取DDR内数据内容,挑选出有用信息后进行FC协议到UDP协议的转换。
优选的,在数据协议转换完成之后,进行每一数据帧的长度判断,将超出UDP协议最大长度的帧进行分帧处理,再将处理过的数据帧打包封装成UDP数据包。
优选的,光纤通道数据通过两路光纤通道进行重复发送。
优选的,存储在DDR中等待处理的数据随后通过Aurora接口和PCIe接口向外传输。
另一方面,本申请涉及一种光纤通道数据转发装置,采用如下技术方案:
一种光纤通道数据转发装置,包括:
数据接收模块,连接光纤通道与转发装置,用于接收和存储发送来的FC数据;
整形模块,包括控制单元和整形单元,控制单元向转发装置各模块发送指令,实现各模块通信功能,控制整个转发流程;整型单元用于FC数据的协议转换以及分帧处理,将FC协议数据转化成UDP协议,将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
优选的,所述数据接收模块存储有接收的FC数据,仅对数据进行存储,并在数据读取后清除存储数据内容。
优选的,所述控制单元为CPU,通过PCIe接口连接数据接收模块和整形模块。
优选的,所述整形单元通过Aurora接口连接数据接收模块进行数据传输,数据处理完成后通过千兆以太网转发数据。
与现有技术相比,本发明具有以下有益效果
(1)本申请一些实施例提供了一种光纤通道数据转发方法及装置,通过硬件加速的方法来解决由于光纤通道数据发送速率过快而软件处理数据帧能力不足导致的转发数据堆积甚至溢出问题,大大提高了数据转发的效率,为光纤通道的广泛应用提供了改进基础。
(2)采用本申请一些实施例提供的装置或方法,无需额外生产成本,只需更改硬件逻辑及软件,即可以大大提高了FC转发速率,解决了现有传输速率过慢的问题。
(3)本申请装置或方法。采用硬件加速方式,减轻了CPU处理压力,能够延长产品寿命。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本申请实施例1光纤通道数据转发装置使用时系统框图;
图2为FC转发功能示意图;
图3为FC仿真卡软件界面;
图4为三十分钟数据转发测试;
图5为短帧帧数据;
图6为FC转发速率。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
实施例1
在本公开的一种实施例中,一种光纤通道数据转发方法,包括以下步骤:
接收光纤通道发送的数据,并将其存储在DDR中等待处理;
将FC协议数据转化成UDP协议;
将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
本实施例中,控制系统在收到FC数据传输请求后将所述请求进行发送,接收端接收到请求后接收FC数据并将其存储在接收端DDR中。
本实施例中,当接收端中DDR内不为空时,接收端发送协议转换请求,控制系统收到请求后读取DDR内数据内容,挑选出有用信息后进行FC协议到UDP协议的转换。
本实施例中,在数据协议转换完成之后,进行每一数据帧的长度判断,将超出UDP协议最大长度的帧进行分帧处理,再将处理过的数据帧进行UDP打包处理。
本实施例中,存储在DDR中等待处理的数据随后通过Aurora接口和PCIe接口进行向外传输。
FC协议一般用于航空电子系统中,由于机上供电统一为28V直流供电,因此将各模块统一电压定为5V,由电源模块进行28V转5V为各模块进行供电,如图1所示。为保证提供可靠的飞行参数,采用了余度方式传输数据,即数据通过两路光纤通道进行重复发送,将两路数据分别存储在数据接模块中进行转发,这样能大大提高数据转发的可靠性,减少错误帧的转发。
在本公开的一种实施例中,一种光纤通道数据转发装置能够用于实现光纤通道数据转发方法,包括:
数据接收模块,连接光纤通道与转发装置,用于接收和存储发送来的FC数据;
整形模块,包括控制单元和整形单元,控制单元向转发装置各模块发送指令,实现各模块通信功能,控制整个转发流程;整型单元用于FC数据的协议转换以及分帧处理,将FC协议数据转化成UDP协议,将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
如图1所示,FC通信网络交换机用于提供FC数据,FC数据首先通过光纤通路传送至光纤数据接收模块中,所述数据接收模块存储有接收的FC数据,仅对数据进行存储,并在数据读取后清除存储数据内容;随后通过Aurora接口和PCIe接口将数据传输至整形模块。本实施例中所述控制单元为CPU板,CPU板实现特征参数缓存打包和以太网发送功能。数据接收模块将收到的FC帧过滤后通过PCIe接口送到CPU板的内存中,应用软件(嵌入式设备中载入的处理数据的软件代码)从内存中读取数据并进行特征参数提取和数据打包处理,完成打包后由以太网接口发送给整形单元。整形单元接收CPU板发送的数据包,实现数据缓存和按配置周期由以太网口向外部设备发送。同时整形单元还接收两块数据接收模块通过两路Aurora接口发送的FC帧数据,进行切帧处理和打包,以UDP方式通过千兆以太网接口实现100%转发。转发装置将数据处理后转发至记录器设备,本领域技术人员可以理解,图1中的记录器设备可以是任何存储设备,仅用于记录分析本发明转发效果,不属于本发明转发装置组成部分。
本实施例中,所述控制单元为CPU,通过PCIe接口连接数据接收模块和整形模块。
本实施例中,所述整形单元通过Aurora接口连接数据接收模块进行数据传输,数据处理完成后通过千兆以太网转发数据。
传统FC转发功能的实现主要是由软件部分进行FC帧到UDP帧的转换,但随着用户对于数据量的需求越来越高,只靠软件处理帧会大大降低FC转发的效率,因此采用了硬件加速协助软件处理的方案来提高FC转发的效率。如图2所示,本实施例中采用仿真卡作为模拟FC数据的发送端,FC为数据接收模块,ETH为整形模块,存储设备为转发后数据的接收端。整形模块接收到FC帧后首先将其发送至PL端(Programmable Logic)即FPGA内核部分,PL端是逻辑端,相当于硬件部分处理数据,PL端的DDR用于存储FC帧数据,在PL端中会将收到的FC数据帧进行协议类型以及数据长度等信息进行检查核对,在此过程中会过滤掉错误帧,核对无误之后将FC帧进行协议转换以及分帧操作。随后PL端通过DMA方式将处理过的UDP帧发送至PS端(Process System)即处理系统,PS端为软件端,通过操作系统在软件中处理数据帧,PS端处理后将转换后的UDP数据发送至DDR中进行储存,最后通过软件处理将DDR内的UDP帧通过以太网口转发至记录器设备完成FC数据转发。
FC数据通过AXI接口存放到外部DDR中,在DDR缓存不为空的情况下采用公平调度的原则,将接收到的2路FC帧从DDR读出后写入数据接收缓存区,读出的数据会在写入数据接收缓冲区时打上通道号标识。接收缓冲区采用双缓冲结构,每块缓冲区大小为256KB,在一块缓冲区为满时以DMA方式传输至PL端进行帧格式的转换以及切帧处理。转换后的数据以0x800(2K)大小为一帧,发送至PS端被打包成UDP协议存储在大小为512MB的DDR中,以循环队列的方式进行转发输出。
由于FC帧的长度在36-2148字节,而UDP帧的长度在46-1500字节,所以超过一定长度的FC帧需要进行分帧处理来适应UDP帧的长度要求。因此将接收到的长度大于1400字节FC帧进行分帧处理,将前1400字节的内容分为UDP帧的第一帧,1400字节后的数据分为UDP帧的第二帧。为了便于区分数据帧是否分帧,在输出的数据中加入了分帧识别字字段来进行区分。表2是转发后的数据格式,通过帧计数来记录当前已经发送了多少帧,分帧识别字来判断是否分帧和数据是第一帧还是第二帧,通过检查传输状态来确认该帧是否有错误,其余的时标则是数据自带的信息。表3详细介绍了各字段的具体作用。
表2FC数据转发输出数据格式
表3FC数据转发输出数据格式说明
对于两路FC数据的余度处理,采用了“先到先收”的规则,当接收端接收到某一消息ID的第一帧时,将该通道帧的帧计数记录到帧计数寄存器中。再收到该消息ID的数据时比对帧计数与帧计数寄存器的值,若新的帧计数小于等于寄存器中的值则认为已经接收过该帧进行冗余丢弃,收到大于寄存器的帧计数则接收该帧并更新寄存器数值。
实施例2
测试平台由一台PC、一张FC仿真卡、一个硬件开发平台组成,FC仿真卡插在PC主板上来模拟发送机上FC数据,仿真卡通过光纤连接到硬件开发平台中,向设备发送FC数据。经过设备进行协议转换处理后再通过以太网接口将UDP数据包由网线转发至PC进行存储,随后在PC中将使用Wireshark软件来查看转发数据的内容。
完成FC数据转发测试平台的搭建后,需要对FC数据转发功能和性能进行测试,其中包括长帧分帧功能验证、数据转发完整性验证以及极限条件下转发速率的测试。由于机上环境难以在实验室中完全模拟,因此采用FC仿真卡模拟机上环境进行FC数据的发送,使用FC仿真卡在PC上对发送数据的内容、长度、Message ID、发送周期、发送次数以及发送信息的条数进行设置,仿真卡的界面如图3所示。首先配置发送数据,从消息ID 00000100开始配置40条递增数据,消息内容均为空值,发送周期为10ms,选择节点速率为4.25Gbps进行测试。
对设备发送了三十分钟数据,经Wireshark查看未出现UDP以外类型数据,并且40种消息ID类型的数据均能接收到,如图4所示。查看数据的SOF与EOF段,SOF为BC B5 56 56,EOF为BC 95 75 75,与设置值相同,数据帧的完整性得以验证。由于四十条数据长度一致并且为长帧,所以接收到的数据也是长度一致且有分帧。数据的帧计数连续递增,证明没有出现丢帧现象。
再对分帧功能进行验证,分别发送长帧与短帧,通过Wireshark查看帧长度及分帧识别字进行验证。长帧第一帧长度为1446字节,因为设定为大于1400字节进行分帧,UDP包的填充字段为46字节,所以1400+46=1446,符合分帧长度。其长帧第一、二帧的分帧识别字也与规定相符。如图5所示,为短帧数据的UDP包,其分帧识别字也符合规定,经实验测试验证分帧功能正常。
最后对FC转发速率进行测试,加载256条消息进行发送,通过软件测得FC转发速率约为37.32MB/s,如图6所示。相较于改进前的15MB/s左右转发速率提升了约2.5倍,效果十分显著,因此硬件加速方案验证成功。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

Claims (10)

1.一种光纤通道数据转发方法,其特征在于,包括以下步骤:
接收光纤通道发送的数据,并将其存储在DDR中等待处理;
将FC协议数据转化成UDP协议;
将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
2.如权利要求1所述的光纤通道数据转发方法,其特征在于,控制系统在收到FC数据传输请求后将所述请求进行发送,接收端接收到请求后接收FC数据并将其存储在接收端DDR中。
3.如权利要求1所述的光纤通道数据转发方法,其特征在于,当接收端中DDR内不为空时,接收端发送协议转换请求,控制系统收到请求后读取DDR内数据内容,挑选出有用信息后进行FC协议到UDP协议的转换。
4.如权利要求1所述的光纤通道数据转发方法,其特征在于,在数据协议转换完成之后,进行每一数据帧的长度判断,将超出UDP协议最大长度的帧进行分帧处理,再将处理过的数据帧打包封装成UDP数据包。
5.如权利要求1所述的光纤通道数据转发方法,其特征在于,光纤通道数据通过两路光纤通道进行重复发送。
6.如权利要求1所述的光纤通道数据转发方法,其特征在于,存储在DDR中等待处理的数据随后通过Aurora接口和PCIe接口向外传输。
7.一种光纤通道数据转发装置,其特征在于,包括:
数据接收模块,连接光纤通道与转发装置,用于接收和存储发送来的FC数据;
整形模块,包括控制单元和整形单元,控制单元向转发装置各模块发送指令,实现各模块通信功能,控制整个转发流程;整型单元用于FC数据的协议转换以及分帧处理,将FC协议数据转化成UDP协议,将传输的FC长帧切分为两帧以适应UDP协议包的数据长度。
8.如权利要求7所述的光纤通道数据转发装置,其特征在于,所述数据接收模块存储有接收的FC数据,仅对数据进行存储,并在数据读取后清除存储数据内容。
9.如权利要求7所述的光纤通道数据转发装置,其特征在于,所述控制单元为CPU,通过PCIe接口连接数据接收模块和整形模块。
10.如权利要求7所述的光纤通道数据转发装置,其特征在于,所述整形单元通过Aurora接口连接数据接收模块进行数据传输,数据处理完成后通过千兆以太网转发数据。
CN202311574953.4A 2023-11-23 2023-11-23 一种光纤通道数据转发方法及装置 Pending CN117527920A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311574953.4A CN117527920A (zh) 2023-11-23 2023-11-23 一种光纤通道数据转发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311574953.4A CN117527920A (zh) 2023-11-23 2023-11-23 一种光纤通道数据转发方法及装置

Publications (1)

Publication Number Publication Date
CN117527920A true CN117527920A (zh) 2024-02-06

Family

ID=89754801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311574953.4A Pending CN117527920A (zh) 2023-11-23 2023-11-23 一种光纤通道数据转发方法及装置

Country Status (1)

Country Link
CN (1) CN117527920A (zh)

Similar Documents

Publication Publication Date Title
JP4554863B2 (ja) ハードウェアが削減されたネットワークアダプタ及び通信方法
CN111200581B (zh) 基于lvds总线的数据收发模块
US20140068134A1 (en) Data transmission apparatus, system, and method
EP0459753A2 (en) Network access controller having logical FIFO buffer
US10127168B2 (en) Network controller—sideband interface port controller
CN109905321B (zh) 一种用于自定义高速接口与以太网交互的路由控制系统
US11681470B2 (en) High-speed replay of captured data packets
CN106953853A (zh) 一种片上网络千兆以太网资源节点及其工作方法
CN107579894B (zh) 一种基于fpga的ebr1553总线协议实现装置
US10218635B2 (en) Network controller-sideband interface port controller
CN109412897A (zh) 基于多核处理器及fpga的共享mac实现系统及方法
CN113051204A (zh) 串行背板总线通信方法及系统
CN111600809B (zh) 一种千兆单光口服务器适配器
CN117527920A (zh) 一种光纤通道数据转发方法及装置
CN116405420A (zh) 一种网络测试仪、网络测试系统和网络测试方法
CN109462530B (zh) 一种基于RS422总线和Slip协议的飞机数字音频传输方法
CN108521416B (zh) 一种ecn板卡
CN113556320B (zh) 以太网多路音频实时传输方法及设备
CN112653536B (zh) 一种基于FPGA的SpaceFibre星载网络节点测试系统及方法
CN111555800B (zh) 一种千兆双光口服务器适配器
CN110188054B (zh) 1553总线网络产品
CN102089750B (zh) 将串行scsi阵列控制器连接至存储区域网络的系统
CN115001627B (zh) 一种InfiniBand网络子网管理报文处理方法及系统
CN116561045B (zh) 一种双处理器核间通信方法、装置、tbox及存储介质
Xiao et al. Design and Implementation of Fc Data Forwarding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination