一种数据包处理板及处理方法技术

技术编号:9279335 阅读:90 留言:0更新日期:2013-10-25 00:24
本发明专利技术提供了一种数据包处理板及处理方法,通过数据包处理板上采用FPGA作为主处理单元以负责数据接收、报文信息提取、TCAM预查找和DPI,并搭配XLP芯片作为协处理单元负责具体报文信息规则查找、流量采样、负载均衡控制及相关系统管理工作,将FPGA的数据处理优势与XLP芯片的中断控制及系统管理优势进行结合,有效地解决了现有双NP数据包处理板存在的问题。

【技术实现步骤摘要】
一种数据包处理板及处理方法
本专利技术涉及一种数据包处理板及处理方法。
技术介绍
目前以REDSYS为代表的双NP(NetworkProcessor,网络处理器)方案的数据包处理板能够支持40G流量的数据处理速度。双NP方案,即在一块板子上有两个完全独立的NP每个负责20G的流量处理任务。上述的双NP方案会存在两个NP的负载不均衡,例如一个NP收到的数据流量为25G,NP的处理量已经大大超过其处理能力,而另一个NP收到的数据流量仅为5G,没有合理利用NP的处理能力,一个NP超负荷工作,一个NP没有被分配合理的工作量,存在明显的负载不均,严重限制了数据包处理板的处理效率。若加入动态的负载均衡处理又会产生额外的开销,且双NP方案很难在板子上直接接入40G的流量,需要额外的预处理板或接口板,在机箱槽位有限的情况下,降低了整个系统的计算密度。此外,有些算法会增加NP访问内存的压力,不适合采用NP实现。
技术实现思路
为了解决上述问题,本专利技术提供了一种数据包处理板,至少包括:FPGA主处理单元、协处理单元、交换单元、POS子卡接口单元、CPB接口单元和RTM接口单元,其中,FPGA主处理单元与POS子卡接口单元相连接,通过Interlaken总线与协处理单元相连接,通过GE或10GE总线与交换单元相连接,FPGA主处理单元用于接收数据、提取报文信息、报文信息预查找、指示协处理单元进行报文信息详细规则查找和指示交换单元进行数据重定向;协处理单元通过PCIE总线与FPGA主处理单元、交换单元和POS子卡接口单元连接,以对FPGA主处理单元、交换单元和与POS子卡接口单元相连接的POS子卡上的成帧器进行驱动,经过交换单元与CPB接口单元进行连接,协处理单元用于进行报文信息详细规则查找、流量采集、负载均衡管理;交换单元通过GE或10GE总线与协处理单元、CPB接口单元和FPGA主处理单元、RTM接口单元相连接,交换单元用于从CPB接口单元接收规则数据转发给协处理单元,接收FPGA主处理单元的数据及配置信息,并依据配置信息将数据发送至RTM接口单元;POS子卡接口单元用于与POS子卡相连;CPB接口单元用于与CPB相连;RTM接口单元用于与RTM连接。另一方面,本专利技术还提供了一种利用数据包处理板的数据包处理方法,包括:FPGA主处理单元通过POS子卡接口单元从POS子卡读取数据并提取报文信息;FPGA主处理单元通过TCAM进行报文信息的规则预查找,将预查找结果发送给协处理单元,并指示协处理单元进行报文信息的详细规则查找;协处理单元进行报文信息详细规则查找,并将查找结果反馈给FPGA主处理单元;FPGA主处理单元依据协处理的报文信息详细规则查找结果,向交换单元发送数据、转发表及数据重定向指示信息;交换单元根据数据重定向信息,将收到的数据发送到RTM接口单元,由RTM单元将数据发送到重定向的相应接口。本专利技术通过数据包处理板上采用FPGA作为主处理单元以负责数据接收、报文信息提取、TCAM(TernaryContentAddressableMemory,三态内容寻址存储器)预查找、DPI(DeepPacketInspection),搭配XLP(eXtremLowPower,极低功耗)芯片作为协处理单元负责具体报文信息规则查找、流量采样、负载均衡控制及相关系统管理工作,将FPGA的数据处理优势与XLP芯片的中断控制及系统管理优势进行结合,有效地解决了现有双NP数据包处理板存在的问题。附图说明图1为根据本专利技术的数据包处理板的示意图;图2为根据本专利技术的数据包处理板的电路示意图;图3为利用根据本专利技术的数据包处理板的数据包处理方法的流程图。具体实施方式如图1所示,本专利技术提供了一种数据包处理板,包括:FPGA(Field-ProgrammableGateArray,现场可编程门阵列)主处理单元、协处理单元、交换单元、POS(PackageoverSDH,利用SDH骨干网传输IP包的中间协议层)子卡接口单元、CPB(ControlProcessingBoard,控制处理板)接口单元、RTM(RearTransitionModule,后端转换模块)接口单元、QDR(QuadDataRate,4倍速率SRAM)、TCAM(TernaryContentAddressableMemory,三态内容寻址存储器)和DDR3,其中,FPGA主处理单元与POS子卡接口单元相连接,通过Interlaken总线与协处理单元相连接,通过GE或10GE总线与交换单元相连接,FPGA主处理单元用于接收数据、提取报文信息、报文信息预查找、指示协处理单元进行报文信息详细规则查找和指示交换单元进行数据重定向;协处理单元通过PCIE总线与FPGA主处理单元、交换单元和POS子卡接口单元连接,以对FPGA主处理单元、交换单元和与POS子卡接口单元相连接的POS子卡上的成帧器进行驱动,经过交换单元与CPB接口单元进行连接,协处理单元用于进行报文信息详细规则查找、流量采集、负载均衡管理;交换单元通过GE或10GE总线与协处理单元、CPB接口单元和FPGA主处理单元、RTM接口单元相连接,交换单元用于从CPB接口单元接收规则数据转发给协处理单元,接收FPGA主处理单元的数据及配置信息,并依据配置信息将数据发送至RTM接口单元;POS子卡接口单元用于与POS子卡相连;CPB接口单元用于与CPB相连;RTM接口单元用于与RTM连接。TCAM与FPGA主处理单元相连,用于报文信息规则预查找;QDR与FPGA主处理单元相连,用于存储FPGA主处理单元读取的报文数据;DDR3与协处理单元相连,用于存储报文的详细规则数据。在数据包处理板中,为了满足数据包读取的速度和DPI(DeepPacketInspection,深度包解析)的需求,选用了FPGA作为主处理单元,前面板接入的经POS成帧器解析后的数据首先进入FPGA,由FPGA进行数据的报文提取并将报文信息缓存到QDR中、通过TCAM预查找报文信息规则、进行DPI处理和重定向回流传输等适合硬件执行的处理,由XLP通过DDR3查找报文信息的详细规则、进行流量采样和负载均衡计算等复杂的适合软件执行的处理。FPGA对收到的每个报文信息,提取出报文信息的五元组信息(传输层协议、源ip、目的ip、传输层源端口、传输层目的端口),指示协处理单元到详细规则数据表中查找,根据查找到的规则,决定转发给哪些服务器继续分析,还是阻断或继续传输该报文。在硬件结构中,FPGA成为数据包的调度中心,起到了主芯片的作用,XLP作为FPGA的协处理器使用。FPGA有4个XFI(万兆光模块接口标准)接口连接到前面板的四个XFP光模块上(XFI和XFP的个数可以根据实际需要设定),用以接收输入的4*10G流量(可以是万兆以太或者10GPOS),此外FPGA通过一个25G的IL总线连接到POS子卡上,子卡上面有POS的成帧器可以提供2*10G的POS数据输出,这里POS成帧器主要用于对数据包进行协议解析后,通过POS子卡接口单元输出给FPGA。为了提高系统吞吐量,FPGA连接了两个TCAM用来预查找规则,由于一片TCAM的容量不够,采用了串接的方式连本文档来自技高网...
一种数据包处理板及处理方法

【技术保护点】
一种数据包处理板,至少包括:FPGA主处理单元、协处理单元、交换单元、POS子卡接口单元、CPB接口单元和RTM接口单元,其中,FPGA主处理单元与POS子卡接口单元相连接,通过Interlaken总线与协处理单元相连接,通过GE或10GE总线与交换单元相连接,FPGA主处理单元用于接收数据、提取报文信息、报文信息预查找、指示协处理单元进行报文信息详细规则查找和指示交换单元进行数据重定向;协处理单元通过PCIE总线与FPGA主处理单元、交换单元和POS子卡接口单元连接,以对FPGA主处理单元、交换单元和与POS子卡接口单元相连接的POS子卡上的成帧器进行驱动,经过交换单元与CPB接口单元进行连接,协处理单元用于进行报文信息详细规则查找、流量采集、负载均衡管理;交换单元通过GE或10GE总线与协处理单元、CPB接口单元和FPGA主处理单元、RTM接口单元相连接,交换单元用于从CPB接口单元接收规则数据转发给协处理单元,接收FPGA主处理单元的数据及配置信息,并依据配置信息将数据发送至RTM接口单元;POS子卡接口单元用于与POS子卡相连;CPB接口单元用于与CPB相连;RTM接口单元用于与RTM连接。...

【技术特征摘要】
1.一种数据包处理板,至少包括:FPGA主处理单元、协处理单元、交换单元、利用SDH骨干网传输IP包的中间协议层POS子卡接口单元、控制处理板CPB接口单元和后端转换模块RTM接口单元,其中,FPGA主处理单元与POS子卡接口单元相连接,通过Interlaken总线与协处理单元相连接,通过GE或10GE总线与交换单元相连接,FPGA主处理单元用于接收数据、提取报文信息、报文信息预查找、指示协处理单元进行报文信息详细规则查找和根据协处理单元反馈的报文信息详细查找结果指示交换单元进行数据重定向;协处理单元通过PCIE总线与FPGA主处理单元、交换单元和POS子卡接口单元连接,以对FPGA主处理单元、交换单元和与POS子卡接口单元相连接的POS子卡上的成帧器进行驱动,经过交换单元与CPB接口单元进行连接,协处理单元用于进行报文信息详细规则查找、流量采集、负载均衡管理;交换单元通过GE或10GE总线与协处理单元、CPB接口单元和FPGA主处理单元、RTM接口单元相连接,交换单元用于从CPB接口单元接收规则数据转发给协处理单元,接收FPGA主处理单元的数据及配置信息,并依据配置信息将数据发送至RTM接口单元;POS子卡接口单元用于与POS子卡相连;CPB接口单元用于与CPB相连;RTM接口单元用于与RTM连接。2.如权利要求1所述的数据包处理板,其特征在于,还包括用于报文信息规则预查找的三态内容寻址存储器TCAM,TCAM与FPGA主处理单元相连。3.如权利要求1或2所述的数据包处理板,其特征在于,还包括用于存储FPGA主处理单元读取的报文信息的四倍数据速率同步动态随机存储器QDR,QDR与FPGA主处理单元相连。4.如权利要求1所述的数据包处理板,其特征在于,还包括用于存储报文信息的详细规则数据的第三代双倍速率同步动态随机存储器DDR3,DDR3与协处理单元相连。5.如权利要求2所述的数据包处理板,其特征在于,FPGA主处理单元与两个TCAM相连接,两个TCAM之间通过Interlaken总线相连接。6.如权利要求1所述的数据包处理板,其特征在于,所述的FPGA主处理单元还用于对发送给交换单元的报文信息中增加标记作为数据重定向指示信息。7.如权利要求1或6所述的数据包处理板,其特征在于,FPGA主处理单元在将数据发送至交换单元前,根据协处理器反馈的报文信息详细规则查找的结果对数据进行处理,具体包括:当报文信息详细规则查找命中时,FPGA主处理单元用于指示交换单元将数据分发到命中的相应接口;当报文信息详细规则查找没有命中时,FPGA用于将所述的数据丢弃。8.如权利要求1所述的数据包处理板,其特征在于,所述的协处理单元与交换单元间通过10GE和GE连接,其中,10GE用于传输流量采样和负载均衡信息;GE用于传输控制信息。9.如权利要求1所述的数据包处理板,其特征在于,所述的协处理单元包括多个处理模块,其中一个处理模块用于系统管...

【专利技术属性】
技术研发人员:姚文浩柳胜杰张克功袁海滨
申请(专利权)人:曙光信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1