CN112367310A - 一种基于fpga的srio总线加密传输装置 - Google Patents
一种基于fpga的srio总线加密传输装置 Download PDFInfo
- Publication number
- CN112367310A CN112367310A CN202011167693.5A CN202011167693A CN112367310A CN 112367310 A CN112367310 A CN 112367310A CN 202011167693 A CN202011167693 A CN 202011167693A CN 112367310 A CN112367310 A CN 112367310A
- Authority
- CN
- China
- Prior art keywords
- data
- srio
- module
- packet
- fpga
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0435—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种基于FPGA的SRIO总线加密传输装置,属于数据传输技术领域。本发明提出的一种基于FPGA的SRIO总线加密传输装置,该装置基于FPGA可编程逻辑设计实现,同时结合SRIO协议的特点,仅要求用户传输的有效数据载荷为256字节的整数倍,并内置加解密模块实现了高速数据的加密传输,并通过门铃包实现数据帧的同步。该装置能够满足用户数据在现有SRIO网络里的加密传输需求,极大提升了数据传输的安全性,从而满足特定领域的应用需求。
Description
技术领域
本发明属于数据传输技术领域,具体涉及一种基于FPGA的SRIO总线加密传输装置。
背景技术
随着嵌入式系统互联总线技术的发展,SRIO总线在嵌入式设备中的应用越来越广泛。同时,为提升数据传输的安全性,满足特定领域对数据安全性的需求,亟需开展针对网络、PCIe、SRIO等接口的数据加密传输装置的研究和设计工作。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何设计一种SRIO总线加密传输装置,以满足用户数据在现有SRIO网络里的加密传输需求。
(二)技术方案
为了解决上述技术问题,本发明提供了一种基于FPGA的SRIO总线加密传输装置,包括第一FPGA、第一PCIe/Ethernet协议处理模块、包头发生器、数据加密模块、SRIO组包模块、第一SRIO控制器、SRIO交换模块、第二FPGA、SIRO分包模块、包头解析模块、第二PCIe/Ethernet协议处理模块、数据解密模块;
设主机A与主机B之间需要进行数据加密传输;SRIO交换模块用于基于SRIO ID实现主机A与主机B的之间的数据包转发处理;
若主机B向主机A发送数据,位于主机A中的应用程序调用PCIe或Ethernet驱动程序,生成需要发送的PCIe和Ethernet数据帧,通过第一FPGA,即FPGA_A可编程逻辑芯片将其发送至第一PCIe/Ethernet协议处理模块提取出有效数据和目的地址信息;包头发生器根据数据包的目的地址生成SRIO ID,同时生成包头信息,有效数据则进入数据加密模块进行加密操作生成密文数据;SRIO组包模块实现包头信息和密文数据的拼接,并将拼接后的数据包送入第一SRIO控制器发送出去,整帧数据发送完毕时,插入一个DOORBELL门铃包;
SRIO交换模块根据目的SRIO ID信息将数据包路由至第二FPGA,即FPGA_B可编程逻辑芯片的SRIO控制器,该数据包经过SIRO分包模块提取包头信息和有效数据,包头信息送至包头解析模块,有效数据则进入数据解密模块进行解密,得到明文数据;当包头解析模块检测到收到1个DOORBELL门铃则认为已收到一个完整的数据帧,则通过中断的方式通知第二PCIe/Ethernet协议处理模块将数据打包成PCIe/Ethernet数据帧并传输至主机B;位于主机B中的应用程序调用PCIe或Ethernet驱动程序,接收并解析所收到的PCIe和Ethernet数据帧。
本发明还提供了一种利用所述装置实现的数据加密传输方法。
优选地,该方法在实现过程中约定:所有SRIO数据帧中的有效数据都为SRIO协议最大值的字节数,应用程序需要做到SRIO协议最大值的字节数对齐传输。
优选地,该方法在实现过程中还约定:仅对有效数据进行加密,包头不进行加密处理。
优选地,所述SRIO协议最大值的字节数为256字节。
优选地,所述包头信息为SWRITE/NWRITE。
优选地,所述SRIO交换模块位于SRIO交换网络中。
本发明还提供了一种所述装置在数据传输技术领域中的应用。
本发明还提供了一种所述的方法在数据传输技术领域中的应用。
(三)有益效果
本发明提出的一种基于FPGA的SRIO总线加密传输装置,该装置基于FPGA可编程逻辑设计实现,同时结合SRIO协议的特点,仅要求用户传输的有效数据载荷为256字节的整数倍,并内置加解密模块实现了高速数据的加密传输,并通过门铃包实现数据帧的同步。该装置能够满足用户数据在现有SRIO网络里的加密传输需求,极大提升了数据传输的安全性,从而满足特定领域的应用需求。
附图说明
图1为本发明提供的一种基于FPGA的SRIO加密传输装置原理框图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
SRIO数据帧格式采用包头+有效数据的方式,通过包头中的信息来区分请求和响应类型。SRIO数据帧类型主要分为NEAD、SWRITE、NWRITE、NWRITE-R、MSG和DOORBELL等,其中NEAD响应帧、SWRITE请求帧、NWRITE请求帧、NWRITE-R请求帧、MSG请求帧中包含有效数据,而DOORBELL请求和响应帧、NWRITE-R响应帧、MSG响应帧不包含有效数据,仅只有包头。
通过深入分析各类加解密算法的特点及应用场景,对称算法更加适合数据加密传输的场景。而对称算法通常算法位宽为128位或256位,因此数据需要为16字节或32字节的整数倍。
结合上述分析得出的SRIO数据包格式和对称算法的特点,本发明提出一种基于FPGA的SRIO总线加密传输装置。该装置约定如下:第一、所有SRIO数据帧中的有效数据都为256字节(SRIO协议最大值),应用程序需要做到256字节对齐传输;第二、仅对有效数据进行加密,包头不进行加密处理。
主机A向主机B发送数据的流程如图1所示,主机B向主机A发送数据的流程则也与之完全相同。其中,SRIO交换模块基于SRIO ID实现主机A与主机B的之间的数据包转发处理。由于该加密传输装置仅对SRIO有效数据载荷进行加解密处理,对于SRIO ID以及请求包头和响应包头不做任何处理,数据包完全符合SRIO协议,因此不影响SRIO数据包正常通过SRIO交换网络进行转发处理。
位于主机A中的应用程序调用PCIe或Ethernet驱动程序,生成需要发送的PCIe和Ethernet数据帧,通过第一FPGA,即FPGA_A可编程逻辑芯片将其发送至第一PCIe/Ethernet协议处理模块提取出有效数据和目的地址信息;包头发生器根据数据包的目的地址生成SRIO ID,同时生成包头信息(如SWRITE/NWRITE),有效数据则进入数据加密模块进行加密操作生成密文数据;SRIO组包模块实现包头信息和密文数据的拼接,并将拼接后的数据包送入第一SRIO控制器发送出去,整帧数据发送完毕时,插入一个DOORBELL门铃包;
SRIO交换网络中的SRIO交换模块根据目的SRIO ID信息将数据包路由至第二FPGA,即FPGA_B可编程逻辑芯片的SRIO控制器,该数据包经过SIRO分包模块提取包头信息和有效数据,包头信息送至包头解析模块,有效数据则进入数据解密模块进行解密,得到明文数据;当包头解析模块检测到收到1个DOORBELL门铃则认为已收到一个完整的数据帧,则通过中断的方式通知第二PCIe/Ethernet协议处理模块将数据打包成PCIe/Ethernet数据帧并传输至主机B;位于主机B中的应用程序调用PCIe或Ethernet驱动程序,接收并解析所收到的PCIe和Ethernet数据帧。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (9)
1.一种基于FPGA的SRIO总线加密传输装置,其特征在于,包括第一FPGA、第一PCIe/Ethernet协议处理模块、包头发生器、数据加密模块、SRIO组包模块、第一SRIO控制器、SRIO交换模块、第二FPGA、SIRO分包模块、包头解析模块、第二PCIe/Ethernet协议处理模块、数据解密模块;
设主机A与主机B之间需要进行数据加密传输;SRIO交换模块用于基于SRIO ID实现主机A与主机B的之间的数据包转发处理;
若主机B向主机A发送数据,位于主机A中的应用程序调用PCIe或Ethernet驱动程序,生成需要发送的PCIe和Ethernet数据帧,通过第一FPGA,即FPGA_A可编程逻辑芯片将其发送至第一PCIe/Ethernet协议处理模块提取出有效数据和目的地址信息;包头发生器根据数据包的目的地址生成SRIO ID,同时生成包头信息,有效数据则进入数据加密模块进行加密操作生成密文数据;SRIO组包模块实现包头信息和密文数据的拼接,并将拼接后的数据包送入第一SRIO控制器发送出去,整帧数据发送完毕时,插入一个DOORBELL门铃包;
SRIO交换模块根据目的SRIO ID信息将数据包路由至第二FPGA,即FPGA_B可编程逻辑芯片的SRIO控制器,该数据包经过SIRO分包模块提取包头信息和有效数据,包头信息送至包头解析模块,有效数据则进入数据解密模块进行解密,得到明文数据;当包头解析模块检测到收到1个DOORBELL门铃则认为已收到一个完整的数据帧,则通过中断的方式通知第二PCIe/Ethernet协议处理模块将数据打包成PCIe/Ethernet数据帧并传输至主机B;位于主机B中的应用程序调用PCIe或Ethernet驱动程序,接收并解析所收到的PCIe和Ethernet数据帧。
2.一种利用权利要求1所述装置实现的数据加密传输方法。
3.如权利要求2所述的方法,其特征在于,该方法在实现过程中约定:所有SRIO数据帧中的有效数据都为SRIO协议最大值的字节数,应用程序需要做到SRIO协议最大值的字节数对齐传输。
4.如权利要求2所述的方法,其特征在于,该方法在实现过程中还约定:仅对有效数据进行加密,包头不进行加密处理。
5.如权利要求2所述的方法,其特征在于,所述SRIO协议最大值的字节数为256字节。
6.如权利要求2所述的方法,其特征在于,所述包头信息为SWRITE/NWRITE。
7.如权利要求2所述的方法,其特征在于,所述SRIO交换模块位于SRIO交换网络中。
8.一种如权利要求1所述的装置在数据传输技术领域中的应用。
9.一种如权利要求2至7中任一项所述的方法在数据传输技术领域中的应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011167693.5A CN112367310B (zh) | 2020-10-28 | 2020-10-28 | 一种基于fpga的srio总线加密传输装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011167693.5A CN112367310B (zh) | 2020-10-28 | 2020-10-28 | 一种基于fpga的srio总线加密传输装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112367310A true CN112367310A (zh) | 2021-02-12 |
CN112367310B CN112367310B (zh) | 2022-11-18 |
Family
ID=74511000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011167693.5A Active CN112367310B (zh) | 2020-10-28 | 2020-10-28 | 一种基于fpga的srio总线加密传输装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112367310B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010145441A1 (zh) * | 2009-06-19 | 2010-12-23 | 中兴通讯股份有限公司 | 用于无线基站的数据传输方法和应用该方法的无线基站 |
US20130089099A1 (en) * | 2009-04-27 | 2013-04-11 | Lsi Corporation | Modifying Data Streams without Reordering in a Multi-Thread, Multi-Flow Network Communications Processor Architecture |
CN108055244A (zh) * | 2017-11-27 | 2018-05-18 | 珠海市鸿瑞信息技术股份有限公司 | 一种基于srio接口技术的双处理系统网络安全隔离方法 |
CN109286492A (zh) * | 2018-10-25 | 2019-01-29 | 北京中科富星信息技术有限公司 | 基于fpga和dsp的国密加密安全视频数据交换卡及交换方法 |
CN110912841A (zh) * | 2019-11-19 | 2020-03-24 | 天津津航计算技术研究所 | 面向128bit位宽的SRIO协议控制字符与数据包分离系统 |
-
2020
- 2020-10-28 CN CN202011167693.5A patent/CN112367310B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130089099A1 (en) * | 2009-04-27 | 2013-04-11 | Lsi Corporation | Modifying Data Streams without Reordering in a Multi-Thread, Multi-Flow Network Communications Processor Architecture |
WO2010145441A1 (zh) * | 2009-06-19 | 2010-12-23 | 中兴通讯股份有限公司 | 用于无线基站的数据传输方法和应用该方法的无线基站 |
CN108055244A (zh) * | 2017-11-27 | 2018-05-18 | 珠海市鸿瑞信息技术股份有限公司 | 一种基于srio接口技术的双处理系统网络安全隔离方法 |
CN109286492A (zh) * | 2018-10-25 | 2019-01-29 | 北京中科富星信息技术有限公司 | 基于fpga和dsp的国密加密安全视频数据交换卡及交换方法 |
CN110912841A (zh) * | 2019-11-19 | 2020-03-24 | 天津津航计算技术研究所 | 面向128bit位宽的SRIO协议控制字符与数据包分离系统 |
Non-Patent Citations (2)
Title |
---|
刁丹丹等: "基于TMS320C6678的SRIO接口设计", 《电子科技》 * |
吕鹏: "基于SRIO总线的全交换路由设计与实现", 《无线电通信技术》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112367310B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9596075B2 (en) | Transparent serial encryption | |
CN102064989B (zh) | 用于高带宽总线的端口适配器 | |
US8843735B2 (en) | Method and apparatus of communicating security/encryption information to a physical layer transceiver | |
EP1225749B1 (en) | Methods and systems for creating an Ethernet upstream and a DOCSIS downstream packet by appending/extracting packet tags for support of remote network functions/packet classification | |
US7979693B2 (en) | Relay apparatus for encrypting and relaying a frame | |
WO2021037216A1 (zh) | 一种报文传输方法及设备、计算机存储介质 | |
WO2004092930A2 (en) | Transparent ipsec processing inline between a framer and a network component | |
KR20200007966A (ko) | 프레임 속성들을 이용하는 구성가능 서비스 패킷 엔진 | |
CN110620762A (zh) | 基于rdma的数据传输方法、网卡、服务器及介质 | |
US6643719B1 (en) | Equalizing FIFO buffer with adaptive watermark | |
CN110222519A (zh) | 一种可配置通道的数据处理系统及方法 | |
CN111669374B (zh) | 一种IPsec VPN单条隧道软件加解密性能扩展方法 | |
CN112367310B (zh) | 一种基于fpga的srio总线加密传输装置 | |
CN100450119C (zh) | 在ip视频会议系统中进行密文传输的方法 | |
EP1668807B1 (en) | Method and apparatus of integrating link layer security into a physical layer transceiver | |
CN115442305B (zh) | 具有中间介质访问控制安全设备的端到端流量控制 | |
CN107124435A (zh) | 一种tcp报文加密电路及方法 | |
CN109861974A (zh) | 一种数据加密传输装置及方法 | |
US11929934B2 (en) | Reliable credit-based communication over long-haul links | |
CN114365455B (zh) | 用于在自动化网络中处理电报的方法、自动化网络、主用户以及从用户 | |
CN112333204B (zh) | 基于tcp ip协议乱序特征码的5g网络传输保密装置 | |
Van Phan et al. | A solution for packet security 1 Gbps on layer 2 with technology FPGA | |
WO2022100069A1 (zh) | 加解密系统、光模块和相关装置、系统 | |
GB2168573A (en) | Packet switched system | |
CN116170220A (zh) | 一种goose实时报文保护方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |