CN112383418B - 一种基于fpga的以太网报文高速可靠传输的设计方法 - Google Patents
一种基于fpga的以太网报文高速可靠传输的设计方法 Download PDFInfo
- Publication number
- CN112383418B CN112383418B CN202011203869.8A CN202011203869A CN112383418B CN 112383418 B CN112383418 B CN 112383418B CN 202011203869 A CN202011203869 A CN 202011203869A CN 112383418 B CN112383418 B CN 112383418B
- Authority
- CN
- China
- Prior art keywords
- message
- fpga
- terminal
- numbering
- reliable transmission
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0836—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/781—On-chip cache; Off-chip memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6225—Fixed service order, e.g. Round Robin
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明一种基于FPGA的以太网报文高速可靠传输的设计方法,其中,包括:通过FPGA对接收到的报文进行编号判断,并根据结果进行操作,包括:S1、查询第一分片报文的终端编号在FPGA的编号索引内是否能检索到,如果能检索到,则返回错误报文,并丢弃报文,如果不能检索到,则执行S2;S2、查询报文编号对应的报文在FPGA内是否有对应缓存,如果有缓存,则直接读取缓存内容,发送到终端,如果没有缓存,则执行S3;S3、对接收报文进行报文处理,处理完成后,将报文写入到循环缓存区,同时写入报文缓存索引,并同时发送处理后的报文到需要到达的终端。本发明实现了网络的高速可靠传输。
Description
技术领域
本发明涉及网络通信技术,特别涉及一种基于FPGA的以太网报文高速可靠传输的设计方法。
背景技术
网络通信中,为了保证网络数据传输的安全性,通常需要对待传输的网络数据进行处理。由于数据处理模块性能的限制和要求,输入数据处理模块的网络数据包必须是可靠传输的。由于以太网传输安全机制不健全、逻辑中缓存资源有限等客观条件,在较大吞吐量、较大带宽的数据传输场合,不可避免会出现某些报文在传输过程中丢失,这就会造成数据处理出现紊乱,必须进行报文重传和重复报文处理等过程,导致报文处理速率低下。
发明内容
本发明的目的在于提供一种基于FPGA的以太网报文高速可靠传输的设计方法,用于解决报文处理速率低下的问题。
本发明一种基于FPGA的以太网报文高速可靠传输的设计方法,其中,包括:通过FPGA对接收到的报文进行编号判断,并根据结果进行操作,包括:S1、查询第一分片报文的终端编号在FPGA的编号索引内是否能检索到,如果能检索到,则返回错误报文,并丢弃报文,如果不能检索到,则执行S2;S2、查询报文编号对应的报文在FPGA内是否有对应缓存,如果有缓存,则直接读取缓存内容,发送到终端,如果没有缓存,则执行S3;S3、对接收报文进行报文处理,处理完成后,将报文写入到循环缓存区,同时写入报文缓存索引,并同时发送处理后的报文到需要到达的终端。
根据本发明所述的基于FPGA的以太网报文高速可靠传输的设计方法的一实施例,其中,发送端报文编号方法包括:根据发送报文的三元组或五元组进行终端编号;根据发送多链接不同报文进行报文编号;根据发送单链接相同报文进行分片报文编号。
根据本发明所述的基于FPGA的以太网报文高速可靠传输的设计方法的一实施例,其中,接收端报文处理包括:对接收报文的第一分片报文的终端编号进行重复行检查;根据接收报文的编号进行处理后的报文检索;接收端处理报文并缓存报文。
根据本发明所述的基于FPGA的以太网报文高速可靠传输的设计方法的一实施例,其中,终端发送端根据发送报文的三元组或五元组进行终端编号,根据多链接并发报文进行报文编号,对单链接报文进行分片编号。
根据本发明所述的基于FPGA的以太网报文高速可靠传输的设计方法的一实施例,其中,S1如果能检索到报文的终端编号,还报告编号重复错误类型。
本发明提出的技术方案通过构建“发送终端报文编号”、“接收终端编号重复性检查”、“接收终端报文编号检索”三大机制,通过保存多个处理后的报文现场,减少重复报文的处理时间,实现了网络的高速可靠传输,设计者采用此机制可以结合实际情况灵活配置。
附图说明
图1所示为报文编号格式示意图;
图2为接收报文编号处理示意图;
图3为FPGA缓存处理后报文示意图;
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1所示为发送终端报文编号示意图,报文编号方法包括:
A1、终端编号:三元组或五元组到终端编号的映射,映射方法由使用者定制,映射后的序列号需满足条件:其他终端映射的序列号与当前终端映射的序列号必须是不相同的。
A2、报文编号:根据不同的报文,设置不同的报文编号,需满足条件:正在传输的报文编号不能有重复的。
A3、分片报文编号:第一个分片报文从0或1开始,其他分片报文依次累加编号。
图2所示为接收端报文处理编号示意图,报文编号处理方法包括:
B1、第一分片报文的终端编号进行重复性检查,确保正在接收的报文终端编号不能重复,报文编号和分片报文编号可以重复,执行B2。
B2、报文编号的缓存索引,查询当前接收的报文是否有已经完成处理的缓存报文,如果有,则当前报文不需进行二次处理,可直接发送到终端;如果没有,则执行B3。
B3、报文处理:报文按使用者进行处理,并将处理后的报文输出到发送终端,同时更新处理后的报文到本地缓存buffer,同时写入报文缓存索引。
图3所示为报文缓存区
C1、处理后的报文需缓存到循环buffer,并将报文编号同步缓存到索引buffer中,需要说明的是,索引buffer的内容为报文buffer的地址指针。
C2、报文检索:根据接收的报文编号,检索索引buffer,查询接收的报文是否已经进行过处理;如果已经进行过处理,则直接读取缓存buffer,输出处理后的报文;如果没有检索到报文编号,则报文发送到报文处理模块,进行处理。
本发明一种基于FPGA的以太网报文高速可靠传输的设计方法,其中,包括:发送端报文编号方法,包括终端发送端根据发送报文的三元组或五元组进行终端编号,根据多链接并发报文进行报文编号,对单链接报文进行分片编号;FPGA对接收到的报文进行判断,执行如下判断步骤:查询第一分片报文的终端编号在FPGA的编号索引内是否能检索到,如果能检索到,则返回错误报文,报告编号重复错误类型,表示当前编号已经被应用,并丢弃报文,如果没有检索到,则执行S2;S2、查询编号对应报文在FPGA内是否有对应缓存,如果有缓存,则直接读取缓存内容,发送到终端,如果没有缓存,则执行S3;S3、接收报文并进行报文处理,处理完成后,报文写入到循环buffer缓存区,同时写入报文缓存索引,并同时发送处理后的报文到需要到达的终端。终端发送端编号包括:终端发送端根据发送报文的三元组或五元组进行终端编号,保证各个终端编号不能重复,以区分不同终端;终端发送端根据发送多链接不同报文进行报文编号,以区分不同链接的报文;终端发送端根据发送单链接相同报文进行分片报文编号,以区分相同链接报文的不同分片报文。
与现有技术相比,本发明提出的技术方案通过构建“发送终端报文编号”、“接收终端编号重复性检查”、“接收终端报文编号检索”三大机制,通过保存多个处理后的报文现场,减少重复报文的处理时间,实现了网络的高速可靠传输,设计者采用此机制可以结合实际情况灵活配置,所以本发明具有一定的工程实用价值。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (2)
1.一种基于FPGA的以太网报文高速可靠传输的设计方法,其特征在于,包括:
发送端报文编号方法,包括:
发送端根据发送报文的三元组或五元组进行终端编号;
发送端根据多链接并发报文进行报文编号;
发送端对单链接报文进行分片编号;
接收端通过FPGA对接收到的报文进行编号判断,并根据结果进行操作,包括:
S1、接收端查询第一分片报文的终端编号在FPGA的编号索引内是否能检索到,如果能检索到,则返回错误报文,并丢弃报文,如果不能检索到,则执行S2;
S2、接收端查询报文编号对应的报文在FPGA内是否有对应缓存,如果有缓存,则直接读取缓存内容,发送到需要到达的终端,如果没有缓存,则执行S3;
S3、接收端对接收报文进行报文处理,处理完成后,将报文写入到循环缓存区,同时写入报文缓存索引,并同时发送处理后的报文到需要到达的终端。
2.如权利要求1所述的基于FPGA的以太网报文高速可靠传输的设计方法,其特征在于,S1如果能检索到报文的终端编号,还报告编号重复错误类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011203869.8A CN112383418B (zh) | 2020-11-02 | 2020-11-02 | 一种基于fpga的以太网报文高速可靠传输的设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011203869.8A CN112383418B (zh) | 2020-11-02 | 2020-11-02 | 一种基于fpga的以太网报文高速可靠传输的设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112383418A CN112383418A (zh) | 2021-02-19 |
CN112383418B true CN112383418B (zh) | 2023-07-14 |
Family
ID=74576117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011203869.8A Active CN112383418B (zh) | 2020-11-02 | 2020-11-02 | 一种基于fpga的以太网报文高速可靠传输的设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112383418B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765721B (zh) * | 2021-09-14 | 2024-02-09 | 北京左江科技股份有限公司 | 一种基于fpga的以太网远程配置装置 |
CN114615343A (zh) * | 2022-03-24 | 2022-06-10 | 北京左江科技股份有限公司 | 一种基于fpga的以太网报文可靠传输的实现方法 |
CN116527406B (zh) * | 2023-07-03 | 2023-09-12 | 北京左江科技股份有限公司 | 一种基于fpga的多主机的安全***和通信方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100531147C (zh) * | 2007-03-07 | 2009-08-19 | 华为技术有限公司 | 多链路捆绑协议报文分片接收方法 |
CN101572651B (zh) * | 2008-04-30 | 2013-06-05 | 华为技术有限公司 | 报文传输的方法及装置 |
CN101510886B (zh) * | 2009-03-09 | 2012-09-05 | 华为技术有限公司 | 应用于mp组的报文处理方法及装置 |
CN101795236B (zh) * | 2010-03-31 | 2012-08-08 | 成都市华为赛门铁克科技有限公司 | 报文保序方法及装置 |
CN104618208A (zh) * | 2015-01-26 | 2015-05-13 | 国电南瑞科技股份有限公司 | 数据弹***互综合总线*** |
CN110198315B (zh) * | 2019-05-30 | 2022-02-25 | 新华三信息安全技术有限公司 | 一种报文处理的方法及装置 |
-
2020
- 2020-11-02 CN CN202011203869.8A patent/CN112383418B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112383418A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112383418B (zh) | 一种基于fpga的以太网报文高速可靠传输的设计方法 | |
EP1196856B1 (en) | Method and apparatus for monitoring traffic in a network | |
CN111277480B (zh) | 一种高可用性无缝冗余环网重复帧丢弃方法及*** | |
CN115344527B (zh) | 一种基于fpga的高速行情数据缓存方法 | |
CN115037700B (zh) | 一种复杂网络数据包传送方法、***、终端及存储介质 | |
CN111917753B (zh) | 一种基于位域的Modbus TCP报文解析方法 | |
CN111682994A (zh) | 基于epa协议的环形或线形网络***和非实时数据的传输方法 | |
CN102238055B (zh) | 基于mdio接口的下载方法及*** | |
CN107896141B (zh) | 一种fc-ae-asm网络数据冗余方法 | |
US6285686B1 (en) | Using page registers for efficient communication | |
EP4175231A1 (en) | Message processing method, network device and related device | |
CN108600041B (zh) | 一种基于rfc6349的数据块乱序测试方法及装置 | |
CN108429707B (zh) | 一种适应不同传输速率的时间触发业务转发器及方法 | |
CN110069429B (zh) | 基于zynq的实时高性能srio控制器及控制方法 | |
CN100479450C (zh) | 用于减少对存储器的访问的方法和*** | |
CN110474827B (zh) | 一种fin报文多环境转发方法、设备以及*** | |
CN115913473A (zh) | 一种数据选择性重传方法及其***、存储介质、电子设备 | |
CN115866103A (zh) | 一种报文处理方法、装置、智能网卡和服务器 | |
KR100311619B1 (ko) | 분산처리 시스템에서 프로세서간 메시지 송수신 방법 | |
CN107707492B (zh) | 一种上报和下发报文的方法及装置 | |
CN109981481B (zh) | 一种多现场保护的设计方法 | |
CN115297070B (zh) | 一种多元数据激励的arinc664交换机缓存溢出测试方法 | |
US11907147B1 (en) | Programmable message inspection engine implemented in hardware that generates an output message using a content modification plan and a destination control plan | |
CN113726755B (zh) | 一种slip协议数据的处理方法 | |
CN118316888A (zh) | 报文保序传输方法、芯片及电子设备 |
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 |