一种高性能网络数据处理平台系统的制作方法

文档序号:7796317阅读:472来源:国知局
一种高性能网络数据处理平台系统的制作方法
【专利摘要】本发明公开了一种高性能网络数据处理平台系统,该平台系统包括带Cavium处理器的业务板卡,X86管理板卡,和2插槽ATCA机箱。通过关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突,同时通过软硬件结合的方式和分布式的系统部署,依赖交换芯片足够强大的性能,把一部分软件工作分担给硬件,节省了网络数据处理器的不必要开销,增加了网络数据处理器的核心业务处理性能。
【专利说明】一种高性能网络数据处理平台系统
【技术领域】
[0001]本发明涉及计算机网络应用领域,尤其涉及一种高性能网络数据处理平台系统。【背景技术】
[0002]随着信息技术的进步,互联网已成为工作、生活、学习、娱乐的必须工具,而网络速度已成为阻碍各行各业发展的瓶颈。高性能网络通信设备已在电信、企业、工业、医疗、教育等行业充当着网络出口的重要角色。因此,高性能网络通信设备必须有足够强的数据处理能力、足够高的数据传输速度、足够多的外部连接接口、安全而高效的系统连接方式、易于维护的系统架构、良好的开放性和可扩展性、抗恶劣环境能力和容错能力。基于这些要求,急需一套高性能的数据处理平台系统。
[0003]一些低端网络产品中,出于成本考虑,不使用ATCA架构,而使用盒式架构。依靠网络处理器的处理能力,把控制和数据转发功能用软件来实现。
[0004]此技术硬件设计简单,因为机箱面板面积小,很难提供较多的外部接口。其设备内部也没有足够的空间,使其散热性能低、抗恶劣环境能力差,不适合在大型而密集的机房部署。
[0005]我国现有的ATCA架构的高性能网络数据处理平台(如:安全网关、入侵检测系统、安全审计系统),主要依靠网络处理器的强大性能,通过软件实现路由、交换、包过滤等功能,其内部集成的交换芯片仅用作简单的端口连接。
[0006]目前此技术必须依赖网络处理器的性能,而在许多测试中表明,带安全策略的网络数据处理平台处理64字节小包的能力远远低于线速,因此网络处理器的性能不足够强大到支持所有数据线速转发。现有技术还有很大的性能提升的空间。

【发明内容】

[0007]本发明的目的是为了克服现有技术的缺陷,提供一种高性能网络数据处理平台系统,该平台系统包括带Cavium处理器的业务板卡,X86管理板卡,和2插槽ATCA机箱,通过关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突,同时通过软硬件结合的方式和分布式的系统部署,依赖交换芯片足够强大的性能,把一部分软件工作分担给硬件,节省了网络数据处理器的不必要开销,增加了网络数据处理器的核心业务处理性能,具体为:
[0008]I)数据从后插卡的SFP+光接口输入,通过内部走线直连交换芯片;
[0009]本发明采用ATCA架构的机箱,PICMG标准规定每块ATCA板卡都必须提供后插卡接口,而业界内带Cavium网络数据处理器的多核业务板卡一般把业务网口设计在后插卡上,因此后插卡提供万兆光接口;在本发明使用的第三方硬件板卡中,外插卡的光接口直连交换芯片,使业务数据直接输入交换芯片;
[0010]2)通过交换芯片配置,使不同端口的数据流向指定的网络处理器端口 ;
[0011]交换芯片配置访问控制列表ACL重定向功能,使后插卡上输入的所有数据重定向到与网络数据处理器相连的端口输出,完成网络数据处理器上的数据输入,同时在交换芯片上划分VLAN,具体划分方案如下:后插卡上端口编号为I?4,网络处理器I上端口编号为11?14,创建VLAN编号为I?4,则端口 I和11是VLANl的untag成员、端口 2和12是VLAN2 的 untag 成员、端口 3 和 13 是 VLAN3 的 untag 成员、端口 4 和 14 是 VLAN4 的 untag成员;VLAN1?4创建VLAN虚接口 ;打开VLANl?4的VLAN路由功能;关闭11?14端口上的MAC地址学习功能;
[0012]3)网络处理器处理数据;
[0013]网络数据处理器根据产品设计来处理各种业务,网络数据处理器不修改数据帧的二层MAC地址,仅根据业务需求可能修改三层ip地址;
[0014]4)网络处理器将处理后的数据输出到原输入端口 ;
[0015]路由转发功能在交换芯片实现,因此网络数据处理器的程序不用作路由处理,网络数据处理器仅需要完成必须的业务处理,然后把数据从原输入端口输出;如前面步骤2)中提到,本发明中需要关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突;
[0016]5)交换芯片通过路由选择,指定输出端口 ;
[0017]因为后插卡端口与网络数据处理器端口在交换芯片上被视为一个逻辑的VLAN虚接口,当一个VLAN虚接口收到数据帧时,通过路由选择算法丢弃或找出正确的输出接口,此时找到的输出接口是逻辑的VLAN虚接口 ;
[0018]6)数据从后插卡正确的端口输出;
[0019]根据二层地址表,在VLAN虚接口内找到正确的物流端口把数据输出,至此完成一个数据帧的转发流程。
[0020]本发明技术方案带来的有益效果:
[0021]本发明技术方案通过关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突,而且通过软硬件结合的方式和分布式的系统部署,依赖交换芯片足够强大的性能,把一部分软件工作分担给硬件,节省了网络数据处理器的不必要开销,增加了网络数据处理器的核心业务处理性能。对比业界内的纯软件设计方案和较低的硬件利用率,本发明有必然的性能优势。这种性能增加满足了当下互联网高速发展的需求,并节省网络设备部署的资源和空间成本。
【专利附图】

【附图说明】
[0022]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0023]图1是本发明中业务板卡结构图;
[0024]图2是本发明中业务数据流示意图;
[0025]图3是本发明中业务板卡数据流示意图;
[0026]图4是本发明中业务板卡和管理板卡连接示意图。【具体实施方式】
[0027]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028]本发明利用基于ATCA架构的机箱和多核板卡,搭建高性能网络数据处理平台,充分发挥交换芯片和网络处理器的性能,提供一种网络数据在高性能板卡上的数据通路设计方案,通过关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突,达到更优的性能。
[0029]本发明使用电信级硬件平台的开放式标准架构——ATCA架构,该架构遵循PICMG3.X标准。此标准由PICMG (PCI工业计算机制造组织)制定。本发明使用第三方硬件厂商提供的、行业通用的多核网络数据处理板卡和X86管理板卡各一块,ATCA标准2插槽机箱一个。本发明重点在板卡上的数据通路和软件设计,因此硬件相关标准请参考PICMG3.X标准。
[0030]本发明的一种高性能网络数据处理平台系统使用的第三方硬件板卡有:①带Cavium处理器的业务板卡,②X86管理板卡,③2插槽ATCA机箱。其中带Cavium处理器的业务板卡结构如图1所示。
[0031]该平台系统的业务数据流向如图2所示:
[0032]业务数据流向:
[0033]I)数据从后插卡的SFP+光接口输入,通过内部走线直连交换芯片;
[0034]2)通过交换芯片配置,使不同端口的数据流向指定的网络处理器端口 ;
[0035]3)网络处理器处理数据;
[0036]4)网络处理器将处理后的数据输出到原输入端口 ;
[0037]5)交换芯片通过路由选择,指定输出端口;
[0038]6)数据从后插卡正确的端口输出。
[0039]数据转发原理:
[0040]业界大量测试、应用表明,交换芯片在处理交换、路由转发时能达到线速,即传输线路的最大速度。因此,本发明依赖交换芯片足够强大的路由转发性能,分担网络处理器速率远低于线速的路由转发功能,并提供可行的数据通路部署方案,使网络处理器有更多的性能去处理包过滤、地址转换、防病毒等业务处理功能。下面仔细阐述数据转发的具体流程:
[0041]I)数据从后插卡的SFP+光接口输入,通过内部走线直连交换芯片;
[0042]本发明采用ATCA架构的机箱,PICMG标准规定每块ATCA板卡都必须提供后插卡接口,而业界内带Cavium网络数据处理器的多核业务板卡一般把业务网口设计在后插卡上,因此后插卡提供万兆光接口。在本发明使用的第三方硬件板卡中,外插卡的光接口直连交换芯片,使业务数据直接输入交换芯片。
[0043]2)通过交换芯片配置,使不同端口的数据流向指定的网络处理器端口 ;
[0044]交换芯片配置ACL (访问控制列表)重定向功能,使后插卡上输入的所有数据重定向到与网络数据处理器相连的端口输出,完成网络数据处理器上的数据输入。同时在交换芯片上划分VLAN,具体划分方案如下:后插卡上端口编号为I?4,网络处理器I上端口编号为11?14,创建VLAN编号为I?4,则端口 I和11是VLANl的untag成员、端口 2和12是VLAN2的untag成员、端口 3和13是VLAN3的untag成员、端口 4和14是VLAN4的untag成员;VLAN1?4创建VLAN虚接口 ;打开VLANl?4的VLAN路由功能;关闭11?14端口上的MAC地址学习功能。值得注意的是,后插卡端口与网络数据处理器端口一一对应、同属一个VLAN,使得两个物理端口在逻辑上成为一个整体。在数据输入时,VLAN虚接口作为一个整体,在输入端口进行了二层地址学习。
[0045]3)网络处理器处理数据;
[0046]网络数据处理器可以根据产品设计来处理各种业务,本发明中实际研发出了万兆防火墙产品,因此网络数据处理器中完成防火墙业务处理,例如包过滤、网络地址转换、抗渗透攻击、防病毒、流量统计、数据安全审计等功能。值得一提的是,本发明核心在于网络数据处理器不修改数据帧的二层MAC地址,仅根据业务需求可能修改三层ip地址。
[0047]4)网络处理器将处理后的数据输出到原输入端口 ;
[0048]此处为本发明与其他厂商方案区别之处,因为路由转发功能在交换芯片实现,因此网络数据处理器的程序不用作路由处理,网络数据处理器仅需要完成必须的业务处理,然后把数据从原输入端口输出。如前面步骤2)中提到,本发明中需要关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突。
[0049]5)交换芯片通过路由选择,指定输出端口 ;
[0050]因为后插卡端口与网络数据处理器端口在交换芯片上被视为一个逻辑的VLAN虚接口,当一个VLAN虚接口收到数据帧时,通过路由选择算法丢弃或找出正确的输出接口,此时找到的输出接口是逻辑的VLAN虚接口。
[0051]6)数据从后插卡正确的端口输出。
[0052]根据二层地址表,在VLAN虚接口内找到正确的物流端口把数据输出,至此完成一个数据帧的转发流程。
[0053]在本发明中关于解决二层(MAC)地址学习冲突:
[0054]1、MAC地址冲突的产生
[0055]把板卡数据流简化为如图3所示,根据交换机二层学习、转发原理,数据帧在第一次输入交换芯片时(图3,①点),交换芯片对其源MAC地址进行学习,并把学习到的MAC地址、所在端口信息记录在交换芯片表项里,因此在一般方案中,MAC地址被记录在后插卡直接相连的端口。通过ACL配置,数据被重定向到与网络数据处理器相连的端口输出,经过网络数据处理器进行业务处理后返回源端口(图3,②点)。在未进行相关配置时,数据到达②点时进行MAC地址学习,但此时相关MAC地址已在①点时被学习,此时交换芯片在极短时间内收到来自不同端口、相同源MAC的数据包,因此造成MAC地址冲突,此时交换芯片会认为发生网络回环而丢弃数据包。
[0056]2、解决MAC地址冲突
[0057]MAC地址冲突的根本原因是相同源MAC地址的数据包在极短时间内从不同端口输入,有以下几种办法解决MAC地址冲突:
[0058]I)在网络数据处理器内通过软件方法修改数据包的源MAC地址,使之不发生冲突,但此方法使用软件操作会影响整体性能。[0059]2)改变网络数据处理器对交换芯片的输出端口,这种办法可以避免额外的软件处理,但改变后的输出端口与交换芯片后插板输入端口不在同一 VLAN,因此当设备进行三层转发时收到的目的MAC地址不是相应的VLAN虚接口地址,根据路由转发原理,当路由器收到目的MAC地址不是自身接口地址时丢弃数据包,因此无法实现路由转发。
[0060]3)本发明方案解决MAC地址冲突采用的方法为:在不改变网络数据处理器输出端口的前提下,使数据经过业务处理后从原路返回,通过关闭交换芯片与网络数据处理器相连的端口(图3,②点)的MAC地址学习功能,既能避免额外的软件操作,也使交换芯片收到带正确目的MAC地址的数据,从而实现硬件路由转发。
[0061]为了最大限度节约网络数据处理器的开销并发挥交换芯片足够强大的网络传输功能,本发明使用一个2槽位ATCA机箱,2个槽位分别插上带Cavium网络数据处理器的业务板卡和普通X86架构管理板卡。把数据转发、防火墙功能部署在业务板卡,把功能管理、功能配置值、用户界面等功能部署在X86架构的管理板卡上。两板卡之间的连接示意图如图4所示。
[0062]根据PICMG3.X标准,ATCA板卡必须提供统一的对外接口,其中背板接口包含千兆接口和万兆接口。如图4所示,业务板卡与管理板卡通过机框背板相连。本发明使用了千兆接口和万兆接口。
[0063]业务板卡交换芯片有连接背板接口的端口,因此对于业务板卡来说,无论通过背板还是口插卡接口连接,都可以视为一个外部节点,犹如网络上一台普通PC。因此,两卡的通讯配置如下:①业务板上的背板端口配置成路由模式,并配上ip地址,②X86管理板卡上的背板端口配置ip地址,③业务板卡上的Cavium数据处理器的网口配置ip地址,④相关静态路由配置,使Cavium处理器与X86处理器互相连通。
[0064]管理板卡选用世界上最通用的intel X86架构,因为X86架构拥有不计其数的专业软件,因此使用X86做管理板卡大大降低了硬件成本和开发成本。本发明在X86管理板卡上部署了 Java虚拟机、SQL数据库、交换芯片管理软件以及防火墙管理系统等软件。因为这些软件即便在低端X86处理器上运行也能流畅地工作,反之如果部署在Cavium网络数据处理器上则大大降低其业务处理性能,因此我们采用这种分布式设计。
[0065]如图4的连接方式下,在X86管理板卡通过web网页形式对整个网络数据处理平台进行管理。实现流程如下:
[0066]I)管理板卡作为web服务器,对外提供web页面;
[0067]2)用户在web页面上配置相关选项;
[0068]3)防火墙管理系统对命令进行封装并发往网络数据处理器的网卡的ip地址;
[0069]4)通过背板连接和交换芯片路由转发,封装的命令到达网络数据处理器;
[0070]5)网络数据处理器进行命令解析,并执行配置命令;
[0071]6)配置生效/失败,网络数据处理器把结构以网络传输形式告知X86管理板卡;
[0072]7)Web页面显示配置结果。
[0073]本发明主要是把路由转发功能和配置管理功能分别交给交换芯片和管理板卡处理。但从技术角度来说,路由转发功能和功能管理都可以通过软件编程在网络数据处理器中实现。在软件实现的方案中,交换芯片仅仅起端口连接功能而不发挥转发功能,各种应用服务器也可以全部部署在网络数据处理器上。但因Cavium网络数据处理器的硬件特性,其擅长处理网络数据而非一般应用软件,因此必然达不到软硬结合的性能。
[0074]以上对本发明实施例所提供的一种高性能网络数据处理平台系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种高性能网络数据处理平台系统,其特征在于,该平台系统包括带Cavium处理器的业务板卡,X86管理板卡,和2插槽ATCA机箱,通过关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突,同时通过软硬件结合的方式和分布式的系统部署,依赖交换芯片足够强大的性能,把一部分软件工作分担给硬件,节省了网络数据处理器的不必要开销,增加了网络数据处理器的核心业务处理性能,具体为: 1)数据从后插卡的SFP+光接口输入,通过内部走线直连交换芯片; 本发明采用ATCA架构的机箱,PICMG标准规定每块ATCA板卡都必须提供后插卡接口,而业界内带Cavium网络数据处理器的多核业务板卡一般把业务网口设计在后插卡上,因此后插卡提供万兆光接口 ;在本发明使用的第三方硬件板卡中,外插卡的光接口直连交换芯片,使业务数据直接输入交换芯片; 2)通过交换芯片配置,使不同端口的数据流向指定的网络处理器端口; 交换芯片配置访问控制列表ACL重定向功能,使后插卡上输入的所有数据重定向到与网络数据处理器相连的端口输出,完成网络数据处理器上的数据输入,同时在交换芯片上划分VLAN,具体划分方案如下:后插卡上端口编号为I~4,网络处理器I上端口编号为11~14,创建VLAN编号为I~4,则端口 I和11是VLANl的untag成员、端口 2和12是VLAN2 的 untag 成员、端口 3 和 13 是 VLAN3 的 untag 成员、端口 4 和 14 是 VLAN4 的 untag成员;VLAN1~4创建VLAN虚接口 ;打开VLANl~4的VLAN路由功能;关闭11~14端口上的MAC地址学习功能; 3)网络处理器处理数据; 网络数据处理器根据产品设计来处理各种业务,网络数据处理器不修改数据帧的二层MAC地址,仅根据业务需求可能修改三层ip地址; 4)网络处理器将处理后的数据输出到原输入端口; 路由转发功能在交换芯片实现,因此网络数据处理器的程序不用作路由处理,网络数据处理器仅需要完成必须的业务处理,然后把数据从原输入端口输出;如前面步骤2)中提到,本发明中需要关闭交换芯片与网络数据处理器的端口的二层地址学习功能,防止与后插卡端口地址学习冲突; 5)交换芯片通过路由选择,指定输出端口; 因为后插卡端口与网络数据处理器端口在交换芯片上被视为一个逻辑的VLAN虚接口,当一个VLAN虚接口收到数据帧时,通过路由选择算法丢弃或找出正确的输出接口,此时找到的输出接口是逻辑的VLAN虚接口 ; 6)数据从后插卡正确的端口输出; 根据二层地址表,在VLAN虚接口内找到正确的物流端口把数据输出,至此完成一个数据帧的转发流程。
2.根据权利要求1所述的系统,其特征在于,后插卡端口与网络数据处理器端口一一对应、同属一个VLAN,使得两个物理端口在逻辑上成为一个整体,在数据输入时,VLAN虚接口作为一个整体,在输入端口进行了二层地址学习。
3.根据权利要求1所述的系统,其特征在于,业务板卡交换芯片有连接背板接口的端口,因此对于业务板卡来说,无论通过背板还是后插卡接口连接,都视为一个外部节点,犹如网络上一台普通PC,因此,两卡的通讯配置如下:①业务板上的背板端口配置成路由模式,并配上ip地址,②X86管理板卡上的背板端口配置ip地址,③业务板卡上的Cavium网络数据处理器的网口配置ip地址,④相关静态路由配置,使Cavium处理器与X86处理器互相连通。
4.根据权利要求1或3所述的系统,其特征在于,本发明在X86管理板卡上部署了Java虚拟机、SQL数据库、交换芯片管理软件以及防火墙管理系统等软件,采用分布式设计。
5.根据权利要求4所述的系统,其特征在于,在X86管理板卡通过web网页形式对整个网络数据处理平台进行管理,实现流程如下: 1)管理板卡作为web服务器,对外提供web页面; 2)用户在web页面上配置相关选项; 3)防火墙管理系统对命令进行封装并发往网络数据处理器的网卡的ip地址; 4)通过背板连接和交换芯片路由转发,封装的命令到达网络数据处理器; 5)网络数据处理器进行命令解析,并执行配置命令; 6)配置生效/失败,网络数据处理器把结构以网络传输形式告知X86管理板卡; 7)Web页面显不配直结果。
6.根据权利要求1所述的系统,其特征在于,本发明是把路由转发功能和配置管理功能分别交给交换芯片和 管理板卡处理,但从技术角度来说,路由转发功能和功能管理都可以通过软件编程在网络数据处理器中实现,在软件实现的方案中,交换芯片仅仅起端口连接功能而不发挥转发功能,各种应用服务器也可以全部部署在网络数据处理器上。
【文档编号】H04L12/70GK103812768SQ201410038886
【公开日】2014年5月21日 申请日期:2014年1月26日 优先权日:2014年1月26日
【发明者】柯宗贵, 杨育斌, 肖祥益, 曾庆坚 申请人:蓝盾信息安全技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1