CN107707492A - 一种上报和下发报文的方法及装置 - Google Patents
一种上报和下发报文的方法及装置 Download PDFInfo
- Publication number
- CN107707492A CN107707492A CN201711171930.3A CN201711171930A CN107707492A CN 107707492 A CN107707492 A CN 107707492A CN 201711171930 A CN201711171930 A CN 201711171930A CN 107707492 A CN107707492 A CN 107707492A
- Authority
- CN
- China
- Prior art keywords
- message
- fpga
- interface
- cpu
- switching equipment
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- 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 Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种上报和下发报文的方法,所述方法包括:在接收到由FPGA发送的报文时,解析所述FPGA发送的报文的报文头;根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找交换设备与CPU相连的接口;通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;在接收到所述CPU下发的经过处理的报文时,解析所述经过处理的报文的报文头;根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找交换设备与FPGA相连的接口;通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
Description
技术领域
本申请涉及通信领域,尤其涉及一种上报和下发报文的方法及装置。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程阵列)芯片是一种可编程的逻辑芯片,通过编写不同的程序代码可以实现高速的业务处理能力,这与传统的CPU实现的处理能力相比,FPGA芯片具有明显的优势。因此目前的高性能网络设备基本采用FPGA芯片作为主力业务处理芯片,CPU作为控制端来实现辅助性的功能。例如网络协议报文是在CPU上处理的,为了将FPGA芯片接收的网络协议报文上报给CPU,以使CPU对网络协议报文进行处理。目前是FPGA芯片接收到报文之后,进入FPGA芯片的报文解析查询流程,如果查询到是本网络设备的网络协议报文,则FPGA芯片通过指定的报文出接口,通过PCIE总线发送给CPU,在CPU侧对网络协议报文处理完成以后,为了将处理好的网络协议报文下发给FPGA,CPU将处理完的网络协议报文通过PCIE总线发送给FPGA芯片。但是FPGA芯片与CPU之间的PCIE总线的带宽是有限的,PCIE总线还需要承担由CPU向FPGA芯片下发控制指令的通道功能,如果CPU和FPGA芯片之间有大量的报文收发的话,会影响CPU向FPGA芯片下发控制指令。另一方面由FPGA芯片发送给CPU的报文,需要FPGA对报文封装特定的报文头格式,以使CPU可以对报文进行正确的解析,由CPU发送报文给FPGA芯片也需要对报文封装特定的报文头格式,如此一来加大了开发力度,出现问题之后无法定位。
发明内容
有鉴于此,本申请提供一种上报和下发报文的方法及装置。
具体地,本申请是通过如下技术方案实现的:
一种上报和下发报文的方法,所述方法包括:
交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
一种上报和下发报文的装置,所述装置包括:
第一报文解析单元,用于交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
第一接口查找单元,用于根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
第一报文上报单元,用于通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
第二报文解析单元,用于交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
第二接口查找单元,用于根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
第二报文下发单元,用于通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
采用本申请的技术方案,通过交换设备上报和下发报文,能够减少FPGA与CPU的开发工作量,减少网络设备本身的复杂度,而且CPU可以通过PCIE总线正常向FPGA下发控制指令,提高网络设备整体的稳定性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本申请一示例性实施例示出的一种FPGA通过PCIE总线与CPU相连的连接关系示意图;
图2是本申请一示例性实施例示出的一种交换设备与FPGA、CPU的连接关系示意图;
图3是本申请一示例性实施例示出的上报和下发报文的方法的一种实施流程图;
图4是本申请一示例性实施例示出的FPGA根据报文检查策略对报文检查以决定是否上传CPU的一种应用场景示意图;
图5是本申请一示例性实施例示出的上报和下发报文的装置的一种结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先对本申请实施例提供的一种上报和下发报文的方法进行说明,该方法可以包括以下步骤:
交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
在背景技术中提到,如图1所示,FPGA芯片通过PCIE总线与CPU相连,FPGA芯片接收到报文之后,进入FPGA芯片的报文解析查询流程,如果查询到是本网络设备的网络协议报文,则FPGA芯片通过指定的报文出接口,通过PCIE总线发送给CPU,在CPU侧对网络协议报文处理完成以后,为了将处理好的网络协议报文下发给FPGA,CPU将处理完的网络协议报文通过PCIE总线发送给FPGA芯片。本申请提供的技术方案如图2所示的应用场景,本申请应用于包含交换设备、FPGA、CPU的系统,其中三者连接关系如图2所示,交换设备连接FPGA,交换设备连接CPU,其中FPGA可以向交换设备发送报文,也可以接收交换设备发送的报文;交换设备可以接收FPGA、CPU发送的报文,同时也可以向FPGA、CPU发送报文;CPU可以接收交换设备上报的报文,也可以向交换设备下发经过处理的报文。
在FPGA接收到报文并触发上报CPU的流程后,通过与交换设备相连的接口,将报文发送给交换设备;交换设备在接收到FPGA发送的报文时,解析所述FPGA发送的报文的报文头;根据解析得到的所述FPGA发送的报文的报文头信息,在预设的转发表项中查找所述交换设备与CPU相连的接口;通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;在CPU对所述FPGA发送的报文处理完毕以后,将经过处理的报文下发给交换设备,交换设备在接收到所述CPU下发的经过处理的报文时,解析所述经过处理的报文的报文头;根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA,以使FPGA将所述经过处理的报文转发出去。为了对本申请进一步说明,提供下列实施例,且在提供的实施例中交换设备以交换芯片为例进行说明:
如图3所示,为本申请上报和下发报文的方法的一种实施流程图,其具体可以包括以下步骤:
S101,交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
在一实施例中,如图4所示,在FPGA接收到报文时,这里以网络协议报文为例进行说明,当FPGA根据预先下发的报文检查策略,检查到接收到的报文为网络协议报文时,即触发了上报CPU的流程,其中这里的报文检查策略可以根据自己需求去设置,例如检查数据包格式的报文,可以下发检查数据包格式报文的策略,FPGA根据此策略去检查报文,在触发了上报CPU的流程时,FPGA将接收到的报文通过FPGA的报文出接口3或4,将报文发送给Switch,这里Switch以交换芯片为例。FPGA在将报文通过FPGA的报文出接口3或4发送给Switch时,需要封装一种特定的报文头格式,这种报文头格式适用于芯片与芯片之间的报文传输,暂且命名为hig报文头,报文的源入接口封装为FPGA的入接口,如FPGA的入接口1,目的入接口封装为CPU的入接口,例如CPU的入接口0。交换芯片在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头,即解析特定格式的报文头,解析报文的源入接口、目的入接口,例如解析hig报文头的源入接口为FPGA的入接口1,目的入接口为CPU的入接口0。
S102,根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
在一实施例中,如上述所说的源入接口为FPGA的入接口1,目的入接口为CPU的入接口0,根据所述解析得到的报文头信息,在预存的转发表项中查找所述交换芯片与CPU相连的接口。如下表1所示,根据源入接口和目的入接口,可以查询到交换芯片的报文出接口,交换芯片的报文出接口与CPU的报文入接口相连。
源入接口 | 目的入接口 | 报文出接口 |
FPGA-1 | CPU-0 | Switch-0 |
FPGA-2 | CPU-0 | Switch-0 |
表1
其中上述所说的预存的转发表项,因为交换芯片与FPGA、CPU的连接关系,因物理结构、芯片管脚出厂时所定义的用途,交换芯片与FPGA、CPU相连的接口事先定义好了,例如上述的FPGA的接口3与交换芯片的接口3相连,FPGA的接口4与交换芯片的接口2相连,交换芯片的接口0与CPU的接口0相连,基于源接口与目的接口,以及上述接口连接关系,生成转发表项预存在交换芯片中。
S103,通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
在一实施例中,根据所述查找到的交换芯片与CPU相连的接口,确定所述查找到的交换芯片与CPU相连的接口所对应的发包函数,根据所述解析得到的所述FPGA发送的报文携带的目的入接口信息调用所确定的发包函数,通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理。例如上述查找到的交换芯片的报文出接口Switch-0与CPU的CPU-0入接口相连,然后确定所述报文出接口Switch-0所对应的发包函数a,根据所述FPGA发送的报文携带的目的入接口CPU-0调用发包函数a,通过所述查找到的报文出接口Switch-0,将所述FPGA发送的报文上报给CPU,以使所述CPU对报文进行处理。
在CPU接收到由交换芯片上报的报文时,先读取到内存中,并解析报文的hig报文头,可以得知是由FPGA上报的报文,此时需要将报文的入接口替换成FPGA的入接口1,上送到协议栈进行协议处理。协议栈处理完报文后,直接指定FPGA的出接口进行发送,FPGA由FPGA的入接口1接收报文,协议栈指定报文的出接口为FPGA的出接口1,这里FPGA的入接口1与FPGA的出接口1都为FPGA的接口1。这时也需要为经过处理的报文封装一个hig报文头,报文的目的出接口修改成FPGA的出接口1,然后将经过处理的报文下发给CPU。
S104,交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
在一实施例中,交换芯片接收到所述CPU下发的经过处理的报文时,解析经过处理的报文的hig报文头,解析所述CPU下发的经过处理的报文携带的源出接口与目的出接口,即所述hig报文头中源出接口封装为CPU的出接口,目的出接口封装为FPGA的出接口,例如上述hig报文头中,报文的目的出接口封装成FPGA的出接口1,报文的源出接口封装为CPU的出接口0。
S105,根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
在一实施例中,根据解析得到的所述经过处理的报文携带的源出接口与目的出接口信息,判断所述经过处理的报文是否为下发给FPGA的报文,在所述经过处理的报文为下发给FPGA的报文时,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。其中交换芯片可以接收来自其它设备发送的报文,因此在接收到CPU下发的报文时,需要确定CPU下发的报文是否为下发给FPGA的报文,如果不是下发给FPGA的报文,也需要在预存的转发表项中查找交换芯片的报文出接口,将报文下发给其它设备。例如在上述所说的报文的目的出接口封装成FPGA的出接口1,报文的源出接口封装为CPU的出接口0,由报文携带的目的出接口(FPGA的出接口1)可以判定该经过处理的报文为下发给FPGA的报文,如下表2所示,在预存的转发表项中查找交换芯片与FPGA相连的接口。
源出接口 | 目的出接口 | 报文出接口 |
CUP-0 | FPGA-1 | Switch-1 |
CUP-0 | FPGA-2 | Switch-2 |
表2
由上述的表2所知,根据源出接口与目的出接口可以得知交换芯片的报文出接口,其中在交换芯片接收FPGA发送的报文时,经过的报文入接口1或2,与报文的出接口1或2可以是如表2所示的Switch-1或Switch-2。如上述所说的目的出接口(FPGA-1)可以得知报文出接口为Switch-1,其中Switch-1与FPGA-3相连,Switch-2与FPGA-4相连。
S106,通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
在一实施例中,根据所述交换芯片与FPGA相连的接口,确定所述交换设备与FPGA相连的接口所对应的发包函数,根据解析得到的所述经过处理的报文携带的目的出接口信息调用所确定的发包函数,通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。例如根据上述查找到的交换芯片与FPGA相连的接口Switch-1,可以确定与其对应的发包函数b,根据解析得到的所述经过处理的报文携带的目的出接口信息FPGA-1调用发包函数b,并通过上述查找到的交换芯片与FPGA相连的接口Switch-1,将所述经过处理的报文下发给FPGA。在FPGA通过FPGA-3接口接收到交换芯片下发的所述经过处理的报文时,先解析所述hig报文头,即解析目的出接口FPGA-1,然后将经过处理的报文去掉hig报文头,调用FPGA-1对应的发包函数,将去掉hig报文头的报文通过FPGA-1接口将报文发送出去。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
与前述上报和下发报文的方法的实施例相对应,本申请还提供了上报和下发报文的装置的实施例。如图5所示,包括第一报文解析单元210、第一接口查找单元220、第一报文上报单元230、第二报文解析单元240、第二接口查找单元250、第二报文下发单元260。
所述第一报文解析单元210,用于交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
所述第一接口查找单元220,用于根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
所述第一报文上报单元230,用于通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
所述第二报文解析单元240,用于交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
所述第二接口查找单元250,用于根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
所述第二报文下发单元260,用于通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
在本申请的一种具体实施方式中,所述第一接口查找单元220具体用于:
根据解析得到的所述FPGA发送的报文携带的源入接口以及目的入接口信息,在预存的转发表项中查找所述交换设备与CPU相连的接口。
在本申请的一种具体实施方式中,所述第一报文上报单元230具体用于:
根据所述查找到的交换设备与CPU相连的接口,确定所述查找到的交换设备与CPU相连的接口所对应的发包函数,根据所述解析得到的所述FPGA发送的报文携带的目的入接口信息调用所确定的发包函数,通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理。
在本申请的一种具体实施方式中,所述第二接口查找单元250具体用于:
根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。
在本申请的一种具体实施方式中,所述第二接口查找单元250,包括:判断子单元、第二接口查找子单元
所述判断子单元,用于根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,判断所述CPU下发的经过处理的报文是否为下发给FPGA的报文;
第二接口查找子单元,用于在所述CPU下发的经过处理的报文为下发给FPGA的报文的情况下,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。
在本申请的一种具体实施方式中,所述第二报文下发单元260具体用于:
根据所述交换设备与FPGA相连的接口,确定所述交换设备与FPGA相连的接口所对应的发包函数,根据解析得到的所述经过处理的报文携带的目的出接口信息调用所确定的发包函数,通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
上述系统中各个单元的作用实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明可以在由计算机执行的计算值可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种上报和下发报文的方法,其特征在于,应用于包含FPGA、交换设备、CPU的系统,所述交换设备与所述FPGA、所述CPU相连接,所述方法包括:
交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
2.根据权利要求1所述的方法,其特征在于,所述根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口,包括:
根据解析得到的所述FPGA发送的报文携带的源入接口以及目的入接口信息,在预存的转发表项中查找所述交换设备与CPU相连的接口。
3.根据权利要求2所述的方法,其特征在于,所述通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理,包括:
根据所述查找到的交换设备与CPU相连的接口,确定所述查找到的交换设备与CPU相连的接口所对应的发包函数,根据所述解析得到的所述FPGA发送的报文携带的目的入接口信息调用所确定的发包函数,通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理。
4.根据权利要求1所述的方法,其特征在于,所述根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口,包括:
根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。
5.根据权利要求4所述的方法,其特征在于,所述根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口,包括:
根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,判断所述CPU下发的经过处理的报文是否为下发给FPGA的报文;
在所述CPU下发的经过处理的报文为下发给FPGA的报文的情况下,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。
6.根据权利要求5所述的方法,其特征在于,所述通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA,包括:
根据所述交换设备与FPGA相连的接口,确定所述交换设备与FPGA相连的接口所对应的发包函数,根据解析得到的所述经过处理的报文携带的目的出接口信息调用所确定的发包函数,通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
7.一种上报和下发报文的装置,其特征在于,所述装置包括:
第一报文解析单元,用于交换设备在接收到由FPGA发送的报文的情况下,解析所述FPGA发送的报文的报文头;
第一接口查找单元,用于根据解析得到的所述FPGA发送的报文的报文头信息,在预存的转发表项中查找所述交换设备与CPU相连的接口;
第一报文上报单元,用于通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理;
第二报文解析单元,用于交换设备在接收到所述CPU下发的经过处理的报文的情况下,解析所述经过处理的报文的报文头;
第二接口查找单元,用于根据解析得到的所述经过处理的报文的报文头信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口;
第二报文下发单元,用于通过所述交换设备与FPGA相连的接口将所述经过处理的报文下发给FPGA。
8.根据权利要求7所述的装置,其特征在于,所述第一接口查找单元具体用于:
根据解析得到的所述FPGA发送的报文携带的源入接口以及目的入接口信息,在预存的转发表项中查找所述交换设备与CPU相连的接口。
9.根据权利要求7所述的装置,其特征在于,所述第一报文上报单元具体用于:
根据所述查找到的交换设备与CPU相连的接口,确定所述查找到的交换设备与CPU相连的接口所对应的发包函数,根据所述解析得到的所述FPGA发送的报文携带的目的入接口信息调用所确定的发包函数,通过所述查找到的交换设备与CPU相连的接口,将所述FPGA发送的报文上报给CPU,以使CPU对所述FPGA发送的报文进行处理。
10.根据权利要求7所述的装置,其特征在于,所述第二接口查找单元具体用于:
根据解析得到的所述经过处理的报文携带的源出接口以及目的出接口信息,在所述预存的转发表项中查找所述交换设备与FPGA相连的接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711171930.3A CN107707492B (zh) | 2017-11-22 | 2017-11-22 | 一种上报和下发报文的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711171930.3A CN107707492B (zh) | 2017-11-22 | 2017-11-22 | 一种上报和下发报文的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107707492A true CN107707492A (zh) | 2018-02-16 |
CN107707492B CN107707492B (zh) | 2020-05-12 |
Family
ID=61185376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711171930.3A Active CN107707492B (zh) | 2017-11-22 | 2017-11-22 | 一种上报和下发报文的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107707492B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587087A (zh) * | 2018-12-10 | 2019-04-05 | 杭州迪普科技股份有限公司 | 一种报文处理方法及系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102664803A (zh) * | 2012-04-23 | 2012-09-12 | 杭州华三通信技术有限公司 | 一种ef队列的实现方法和设备 |
CN103179036A (zh) * | 2011-12-21 | 2013-06-26 | 上海博达数据通信有限公司 | 基于FPGA实现MPLS-TP OAM的Linktrace的方法 |
CN103944738A (zh) * | 2014-04-14 | 2014-07-23 | 贵州电力试验研究院 | 一种支持功能扩展的交换机 |
CN104202131A (zh) * | 2014-08-21 | 2014-12-10 | 云南电力试验研究院(集团)有限公司电力研究院 | 一种在电力配网系统中提高采样数据传输实时性的方法 |
CN204089874U (zh) * | 2014-09-12 | 2015-01-07 | 国家电网公司 | 一种支持报文存储的交换机 |
CN104639455A (zh) * | 2015-02-16 | 2015-05-20 | 杭州华三通信技术有限公司 | 一种网络流处理方法和装置 |
CN104917705A (zh) * | 2015-06-18 | 2015-09-16 | 国家电网公司 | 一种智能变电站过程层交换机的网络报文管理方法 |
CN204795120U (zh) * | 2015-05-28 | 2015-11-18 | 国家电网公司 | 一种分体式可扩展的网络报文存储装置 |
CN205265863U (zh) * | 2015-12-28 | 2016-05-25 | 申瓯通信设备有限公司 | 用于改变语音交换机接收发送dtmf信号的电路 |
CN106411790A (zh) * | 2016-09-29 | 2017-02-15 | 北京东土科技股份有限公司 | 基于智能变电站保护控制系统的数据传输方法 |
-
2017
- 2017-11-22 CN CN201711171930.3A patent/CN107707492B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179036A (zh) * | 2011-12-21 | 2013-06-26 | 上海博达数据通信有限公司 | 基于FPGA实现MPLS-TP OAM的Linktrace的方法 |
CN102664803A (zh) * | 2012-04-23 | 2012-09-12 | 杭州华三通信技术有限公司 | 一种ef队列的实现方法和设备 |
CN103944738A (zh) * | 2014-04-14 | 2014-07-23 | 贵州电力试验研究院 | 一种支持功能扩展的交换机 |
CN104202131A (zh) * | 2014-08-21 | 2014-12-10 | 云南电力试验研究院(集团)有限公司电力研究院 | 一种在电力配网系统中提高采样数据传输实时性的方法 |
CN204089874U (zh) * | 2014-09-12 | 2015-01-07 | 国家电网公司 | 一种支持报文存储的交换机 |
CN104639455A (zh) * | 2015-02-16 | 2015-05-20 | 杭州华三通信技术有限公司 | 一种网络流处理方法和装置 |
CN204795120U (zh) * | 2015-05-28 | 2015-11-18 | 国家电网公司 | 一种分体式可扩展的网络报文存储装置 |
CN104917705A (zh) * | 2015-06-18 | 2015-09-16 | 国家电网公司 | 一种智能变电站过程层交换机的网络报文管理方法 |
CN205265863U (zh) * | 2015-12-28 | 2016-05-25 | 申瓯通信设备有限公司 | 用于改变语音交换机接收发送dtmf信号的电路 |
CN106411790A (zh) * | 2016-09-29 | 2017-02-15 | 北京东土科技股份有限公司 | 基于智能变电站保护控制系统的数据传输方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587087A (zh) * | 2018-12-10 | 2019-04-05 | 杭州迪普科技股份有限公司 | 一种报文处理方法及系统 |
CN109587087B (zh) * | 2018-12-10 | 2020-12-29 | 杭州迪普科技股份有限公司 | 一种报文处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107707492B (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9461912B2 (en) | Load distribution architecture for processing tunnelled internet protocol traffic | |
CN102301663A (zh) | 一种报文处理方法及相关设备 | |
CN109586959B (zh) | 一种故障检测的方法及装置 | |
CN104852867A (zh) | 数据包转发方法、装置及系统 | |
JP7092813B2 (ja) | パケット伝送方法及び装置 | |
CN102761479A (zh) | 链路选择方法和装置 | |
CN103490961A (zh) | 一种网络设备 | |
CN105939297A (zh) | 一种tcp报文重组方法和装置 | |
US9509523B2 (en) | Method for protection switching in ethernet ring network | |
CN102014065A (zh) | 报文包头的解析方法、包头解析预处理装置和网络处理器 | |
CN101110772B (zh) | 一种处理报文的设备和方法 | |
CN111726414A (zh) | 一种车辆上报数据的处理方法和车辆数据上报系统 | |
CN102307137B (zh) | 管理报文发送和接收方法、装置、堆叠交换机和堆叠系统 | |
CN106027534A (zh) | 一种基于Netty实现金融报文处理系统 | |
US7693169B2 (en) | Transmission apparatus and frame transmission method | |
CN106534048A (zh) | 一种防范sdn拒绝服务攻击的方法、交换机和系统 | |
CN101997772A (zh) | 流量控制方法、装置、系统及网络设备 | |
CN107707492A (zh) | 一种上报和下发报文的方法及装置 | |
CN107277652A (zh) | Pon接入系统的跨盘lacp链路聚合方法及装置 | |
CN101540653A (zh) | 数据发送和接收方法、数据传输装置和数据传输系统 | |
SE515101C2 (sv) | Styrning vid utväxling av datapaket i nät | |
KR20160022327A (ko) | 소프트웨어 정의 네트워킹 네트워크에서 트랜잭션 관리 방법 | |
CN101909011A (zh) | 报文传输方法、系统、客户端和代理网关 | |
CN105323234B (zh) | 业务节点能力处理方法、装置、业务分类器及业务控制器 | |
CN104184843A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210621 Address after: 310051 05, room A, 11 floor, Chung Cai mansion, 68 Tong Xing Road, Binjiang District, Hangzhou, Zhejiang. Patentee after: Hangzhou Dip Information Technology Co.,Ltd. Address before: 6 / F, Zhongcai building, 68 Tonghe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee before: Hangzhou DPtech Technologies Co.,Ltd. |