一种网络流处理方法和装置的制造方法

文档序号:8322166阅读:252来源:国知局
一种网络流处理方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,特别涉及一种网络流处理方法和装置。
【背景技术】
[0002]交换机设备上,很多都带有现场可编程门阵列(Field Programmable GateArray,FPGA)芯片,用来实现普通交换芯片无法实现的功能,如网络地址转换(NAT)、网络流(netstream)等功能,这些FPGA芯片和交换芯片之间通过物理端口相连接,同时和中央处理器(CPU)之间通过总线接口(PCIE)互联。
[0003]netstream功能是一种网络流量统计和分析技术,在这里实现原理是,通过把交换芯片上的流引到FPGA上,然后对流量进行解析,将具有相同特征的报文作为一条流,对各个流进行统计,记录流的统计信息并输出。也可以把多个具有某些相同特征的流聚合成一条聚合流,记录聚合流的统计信息并输出。
[0004]要对端口的流量进行分析,就需要把端口的流量引到FPGA芯片上,最容易考虑到的方法是通过镜像(miiTor)功能来引流。具体实现是在需要引流的端口上配置镜像功能,把流量镜像一份到交换芯片和FPGA互连的端口上。FPGA对镜像过来的报文进行分析,可以得到报文的入接口、目的IP地址、源IP地址、目的端口号、源端口号、协议号等信息。
[0005]通过镜像功能发出的报文的目的会被修改成指向与FPGA芯片相连的端口,于是当我们从FPGA取出报文信息的时候,无法得到报文原始的目的信息,这样导致进行解析处理后只能对入方向上的流进行统计,而无法对出方向上的流进行统计。

【发明内容】

[0006]有鉴于此,本申请提供一种网络流处理方法和装置,以解决在实现解析处理时FPGA负担重,并丢失报文信息的问题。
[0007]为解决上述技术问题,本申请的技术方案是这样实现的:
[0008]一种网络流处理方法,应用于交换设备的任一交换芯片,该方法包括:
[0009]所述交换芯片针对经过配置采样功能的端口的报文,按配置的采样规则进行采样;
[0010]所述交换芯片将采样到的报文根据配置的封装信息进行封装,形成封装报文;
[0011 ] 所述交换芯片根据配置的现场可编程门阵列FPGA转发表中的出端口号对应的端口,将该封装报文发送给FPGA芯片,以使所述FPGA芯片解封装接收到的封装报文,并对所述采样到的报文进行解析处理。
[0012]一种网络流处理装置,应用于交换设备的任一交换芯片,该装置包括:配置单元、采样单元、封装单元和发送单元;
[0013]所述配置单元,用于在需要进行解析处理的报文所经的端口上配置采样功能,配置采样规则,配置封装信息;
[0014]所述采样单元,用于针对经过所述配置单元配置采样功能的端口的报文,按配置的采样规则进行采样;
[0015]所述封装单元,用于将所述采样单元采样到的报文根据所述配置单元配置的封装信息进行封装,形成封装报文;
[0016]所述发送单元,用于将所述封装单元形成的封装报文根据所述配置单元配置的FPGA转发表中的出端口号对应的端口发送给FPGA芯片,以使所述FPGA芯片解封装接收到的封装报文,并对所述采样到的报文进行解析处理。
[0017]由上面的技术方案可知,本申请中交换芯片配置采样功能,将采样后的报文通过芯片封装发送给FPGA芯片,使FPGA芯片解封装接收到的报文后,进行解析处理。能够在减轻FPGA的负担,且不丢失报文信息的基础上实现解析处理。
【附图说明】
[0018]图1为本申请实施例中网络流处理流程示意图;
[0019]图2为本申请实施例中应用于上述技术的装置结构示意图。
【具体实施方式】
[0020]为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本发明的技术方案进行详细说明。
[0021]本申请提供一种网络流处理方法,应用于交换设备的任一交换芯片上,该交换芯片配置采样功能,将采样后的报文通过芯片封装发送给FPGA芯片,使FPGA芯片解封装接收到的报文后,进行解析处理。该方案在减轻FPGA的负担,且不丢失报文信息的基础上实现解析处理。
[0022]本申请实施例具体实现之前,需预先配置采样规则、封装信息以及FPGA转发表。
[0023]其中,采样规则的配置本申请不作限制。如可以设置一个采样比例,每10条报文采样I条报文?’每20条报文采样I条报文等。
[0024]对于封装信息,本申请实施例的具体配置至少包括如下信息:目的媒体访问控制(MAC)地址、源MAC地址和虚拟局域网标识(VLAN ID)、封装类型;
[0025]在配置封装信息中的各信息中时,具体如何配置,根据配置的FPGA转发表相关。
[0026]如果各交换芯片均自带进行解析处理的FPGA时,FPGA转发表中只包括出端口号即可;如果存在一些交换芯片未自带FPGA芯片,即需要其他交换芯片中转上送FPGA芯片的报文时,配置的FPGA转发表还应该包括匹配信息。
[0027]在具体实现时,匹配信息可以为MAC地址、VLAN ID、封装类型等,甚至其组合。下面针对各匹配信息详细描述如何配置:
[0028]当FPGA转发表中配置的匹配信息为MAC地址,即FPGA转发表包括:MAC地址和出端口号,其中的MAC地址为封装信息中的目的MAC地址;这时,封装信息中的目的MAC地址配置为预留MAC地址,即通常不被使用的MAC地址;其他封装信息可以任意配置。
[0029]当FPGA转发表中配置的匹配信息为VLAN ID,即FPGA转发表包括:VLAN ID和出端口号,其中的VLAN ID为封装信息中的VLAN ID ;这时,封装信息中的VLAN ID配置为预留VLAN ID,即通常不被使用的MAC地址;其他封装信息可以任意配置。
[0030]当FPGA转发表中配置的匹配信息为封装类型,即FPGA转发表包括:封装类型和出端口号,其中的封装类型为封装信息中的封装类型;这时,封装信息中的封装类型配置为预留封装类型,即通常不被使用的封装类型;其他封装信息可以根据实际需要任意配置。
[0031 ] 如果一个FPGA芯片需对多个交换芯片上报文进行解析处理,所述源MAC地址配置为唯一标识本交换芯片的MAC地址,用于使所述FPGA芯片获知发送报文的交换芯片。
[0032]若该交换芯片与所述FPGA芯片直连,则所述FPGA转发表中的出端口号为本交换芯片与所述FPGA芯片相连的物理端口的端口号;所述MAC地址为所述封装信息中的目的MAC地址;所述VLAN ID为封装信息中的VLAN ID。
[0033]若该交换芯片与所述FPGA芯片通过其他交换芯片相连,则所述FPGA转发表中的出端口号为本交换芯片与所述其他交换芯片相连的物理端口的端口号。
[0034]参见图1,图1为本申请实施例中网络流处理流程示意图。具体步骤为:
[0035]步骤101,交换芯片针对经过配置采样功能的端口的报文,按配置的采样规则进行米样。
[0036]本申请实施例中还需针对需要关注的报文,即需要进行解析处理的报文所经端口配置采样功能,这样,仅将采样到的报文发送给FPGA芯片,而不需将经过该端口的所有报文都发送给FPGA芯片,从而大大减少了向FPGA芯片发送的报文,避免交换芯片与交换芯片,交换芯片与FPGA芯片互联的端口的拥塞,并且减轻了 FPGA进行解析处理的负担。
[0037]步骤102,该交换芯片将采样到的报文根据配置的封装信息进行封装,形成封装报文。<
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1