报文访问控制的方法、转发引擎装置和通信设备制造方法及图纸

技术编号:3501735 阅读:169 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种报文访问控制的方法,在本方法中,转发引擎设置第一带宽参数,根据报文类型判断所述报文是否需要转发,如果不需要转发,则根据所述报文的信息查询所述访问控制表,如果命中,则执行相应动作;否则,给所述报文应用第一带宽参数,上送至控制平面。同时,本发明专利技术还提供了一种报文转发引擎和通信设备,利用本发明专利技术提供的方法、报文转发引擎和通信设备,均可以同时兼顾精细控制和保证业务运行稳定,有效地提高设备的稳定性和整个网络的可用性。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种报文访问控制的方法、转发引擎和一种通信设备。
技术介绍
由于Internet网络流量越来越大,对数据通信网络设备的性能要求越来越高。纯软件转发的网络设备逐渐被淘汰,更多的设备采用硬件转发来提高性能。 相对于软件转发来说,硬件转发的灵活性较差,如果仅仅依靠硬件转发引擎,如ASIC(Application-Specific Integrated Circuit,特定用途集成电路)和NPU(Network Processing Unit,网络处理器)等,许多功能都将无法实现或很难实现。因此,一般的网络设备在提供硬件转发的同时,还提供CPU等用于完成转发引擎难以完成的功能,以兼顾性能和灵活性。在数据通信设备中,包含有称之为数据平面和控制平面的部分,前者主要包含硬件转发引擎和交换网、物理层接口等,用于完成大部分数据报文的转发;后者主要包含CPU及其周边设备(如内存等),用于完成设备的管理和控制、需要软件参与的数据报文(如路由协议报文、网管交互报文等)的处理等任务。 如图1所示的典型的集中式数据通信网络设备的结构和如图2所示的典型的分布式数据通信网络设备的结构,其中实线为数据报文的转发路径,虚线为控制报文/控制消息的通道。 一般情况下,网络设备收到的大部分数据报文都会在数据平面内部直接找到目的地并发送出去,但部分数据报文仍需要控制平面的参与,比如网络设备之间交互的协议报文(最常见的是路由协议报文);其他终端或设备发给本设备的报文(如网管发过来的配置请求等)和途经本设备,但需要特殊处理的报文(如IP报文,TTL(time to live,生存时间)超时报文等)。 这些数据报文在被转发引擎识别出来之后,通过转发引擎和CPU之间的通道(以下简称控制通道)上送给CPU进行处理,同样,CPU也会有一些报文通过该通道从转发引擎转发出去。需要说明的是,对图2所示的典型的分布式数据通信网络设备来说,控制平面不仅包括线路卡上的CPU,还包括控制卡上的CPU。因此,通道不仅包含线路卡上的转发引擎和CPU之间的通道,还包括线路卡和控制卡CPU之间的通道。 在这样的架构下,由于CPU自身处理能力和控制通道带宽的限制,网络设备很容易受到有意或无意的拒绝服务(Denial of Service,DOS)攻击(无意的攻击可能的来源有蠕虫病毒、网络风暴等),如果数据平面短时间内上送的流量过大,会造成控制通道拥塞,导致上送的部分报文丢包;如果上送流量过大,CPU忙于处理上送的某种报文,便会无暇进行其他处理。 上述这两种后果都可能造成设备或网络故障。如何防范此类攻击是网络设备必须要考虑的问题。 通常,转发引擎判断某个报文是否需要上送是基于报文内容的某些字段,比如目的IP地址、协议号、端口号等。但它判断出来需要上送的报文,对于控制平面来说,可能是没用的,也就是说,本来无需上送(将这种对控制平面无用的报文称为垃圾报文)。并且垃圾报文被上送的情况是普遍存在的,在上送报文总流量中占据了较大的比例。 出现这种情况的原因在于虽然网络设备支持众多功能,但在某个具体的应用场景中,可能仅仅使用了该设备的很小一部分功能,属于其他未用功能的报文上送控制平面后,经过一些处理,最终会发现报文无用而将其丢弃。但这些报文既占用了控制通道的带宽,又占用的CPU的处理时间。一旦这些报文流量过大,就可能造成其他正常报文无法上送或正常业务来不及处理,出现前述的DOS攻击结果。 在现有技术中,有一种做法是转发引擎将可能上送的报文进行分类,在每种报文上送前进行带宽限制,并且该带宽是可配置的。一旦发现某设备中某种报文上送流量较大,并且根据设备当前配置,该种报文对于当前业务来说是无用的,这时便可以通过更改带宽配置限制该种报文的上送,以避免出现DOS攻击。 但是,为了不影响正常业务,针对不同类别的报文设置的缺省带宽参数都比较大,以避免在使用该类报文对应的业务时出现问题。使用缺省参数处理上送报文,仍会出现垃圾报文占用较多控制通道带宽;并且,仅仅根据报文分类,就很难做到比如限制只有某个源地址发送过来的某种报文才上送这样的精细控制。 针对这一问题,现有技术的另一种做法就是手工配置访问控制列表(ACL,Access Control List),在转发引擎将报文上送控制通道前,查询设备配置的特定ACL规则,根据命中的规则对应的动作进行处理,可能将报文丢弃,也可能限制该类报文的带宽。其中比较常用的做法是在ACL中配置需要丢弃的报文信息,而这种情况下,需要设备维护人员对设备具体实现细节了解较多,配置成本高,且容易出错,往往会使得部分垃圾报文仍然被上送到CPU,仍旧难以有效解决垃圾报文过多占用控制通道带宽的问题,做不到精细控制;另一种作法便是在ACL中配置需要上送CPU处理的报文信息,未配置的报文则被丢弃,在这种情况下,由于需要手工配置,则对配置者要求较高,一些与业务实现有关的报文可能会被错误地配置,导致错误丢弃,使得业务运行不正常,而在新的业务建立或者连接建立的情况下,如果未事先配置ACL规则,则还需要再次配置ACL,影响了业务运行的效率。
技术实现思路
为了解决现有技术中在降低垃圾报文对设备控制平面造成的影响的情况下,不能同时兼顾精细控制和保证业务运行稳定的问题,本专利技术实施例的主要目的在于提供一种报文访问控制的方法、转发引擎和一种通信设备。 为达到上述目的,本专利技术实施例的技术方案是这样实现的本专利技术实施例公开了一种报文访问控制的方法,包括以下步骤 步骤A1转发引擎设置第一带宽参数,在报文到来时,根据报文的类型判断所述报文是否需要转发,如果不需要转发,则执行步骤A2;步骤A2根据所述报文的信息查询访问控制表,如果命中,则执行步骤A3,否则执行步骤A4;所述报文的信息包括源IP地址、目的IP地址、源端口、目的端口、协议号中的一个或者多个;步骤A3执行所述访问控制表中相应动作;步骤A4给所述报文应用所述第一带宽参数,上送至所述控制平面。 还公开了一种报文转发引擎,包括设置模块、存储模块、接收模块、转发判断模块、访问控制模块和处理模块,其中设置模块,用于设置第一带宽参数;存储模块,用于存储并更新访问控制表;接收模块,用于接收报文;转发判断模块,用于根据所述接收模块接收的所述报文的报文类型,判断是否需要转发;访问控制模块,当所述转发判断模块判断的结果为不需要转发时,用于根据所述接收模块接收的所述报文的信息,查询所述存储模块中存储的所述访问控制表规则,所述报文的信息包括源IP地址、目的IP地址、源端口、目的端口、协议号中的一个或者多个;处理模块,当所述访问控制模块的分析结果为命中所述访问控制表规则时,用于执行相应动作;否则,用于给所述接收模块接收的报文应用所述设置模块设置的第一带宽参数,上送至控制平面。 同时,本专利技术实施例还公开了一种通信设备,包括控制单元和数据单元,其中控制单元,用于配置访问控制表和处理报文;数据单元,用于设置第一带宽参数,在报文到来时,根据报文类型判断所述报文是否需要转发,如果不需要转发,则根据所述报文的信息查询所述控制单元配置并下发的访问控制表,如果命中,则执行相应动作;否则,给所述报文应用第一带宽参数,上送至所述控制本文档来自技高网
...

【技术保护点】
一种报文访问控制的方法,其特征在于,包括以下步骤:步骤A1:转发引擎设置第一带宽参数,在报文到来时,根据报文的类型判断所述报文是否需要转发,如果不需要转发,则执行步骤A2;步骤A2:根据所述报文的信息查询访问控制表,如果命中 ,则执行步骤A3,否则执行步骤A4;所述报文的信息包括源IP地址、目的IP地址、源端口、目的端口、协议号中的一个或者多个;步骤A3:执行所述访问控制表中相应动作;步骤A4:给所述报文应用所述第一带宽参数,上送至所述控 制平面。

【技术特征摘要】
1.一种报文访问控制的方法,其特征在于,包括以下步骤步骤A1转发引擎设置第一带宽参数,在报文到来时,根据报文的类型判断所述报文是否需要转发,如果不需要转发,则执行步骤A2;步骤A2根据所述报文的信息查询访问控制表,如果命中,则执行步骤A3,否则执行步骤A4;所述报文的信息包括源IP地址、目的IP地址、源端口、目的端口、协议号中的一个或者多个;步骤A3执行所述访问控制表中相应动作;步骤A4给所述报文应用所述第一带宽参数,上送至所述控制平面。2.如权利要求1所述的方法,其特征在于,步骤A2具体包括步骤A2判断是否存在访问控制表,如果存在,根据所述报文的信息查询所述访问控制表,如果命中,则执行步骤A3,如果未命中或者不存在所述访问控制表,则执行步骤A4。3.如权利要求1或2所述的方法,其特征在于,当所述动作为将所述报文上送至所述控制平面时,具体为为所述报文配置优先级参数,并根据所述优先级参数上送至所述控制平面。4.如权利要求1或2所述的方法,其特征在于,在步骤A4后进一步包括若所述报文与所述转发引擎所在的网络设备所配置的业务相关,或者所述报文为所述转发引擎所在的网络设备与第二网络设备或终端设备动态建立会话连接成功的报文时,则根据与所述业务或者会话相关的报文的信息,配置所述报文的访问控制规则,并对命中所述规则的所述报文应执行的动作进行规定,将所述访问控制规则和所述规定发送至所述转发引擎,更新所述访问控制表。5.如权利要求1所述的方法,其特征在于,在步骤A1中还进一步包括转发引擎设置第二带宽参数;当所述动作为将所述报文上送至所述控制平面时,具体包括所述报文应用第二带宽参数上送至控制平面。6.一种报文转发引擎,其特征在于,包括设置模块、存储模块、接收模块、转发判断模块、访问控制模块和处理模块,其中设置模块,用于设置第一带宽参数;存储模块,用于存储并更新访问控制表;接收模块,用于接收报文;转发判断模块,用于根据所述接收模块接收的所述报文的报文类型,判断是否需要转发;访问控制模块,当所述转发判断模块判断的结果为不需要转发时,用于根据所述接收模块接收的所述报文的信息,查询所述存储模块中存储的所述访问控制规则,所述报文的信息包括源IP地址、目的IP地址、源端口、目的端口、协议号中的一个或者多个;处理模块,当所述访问控制模块的分析结果为命中所述访问控制规则时,用于执行相应动作;否则,用于给所述接收模块接收的报文应用所述设置模块设置的第一带宽参数,上送至控制平面。7.如权利要求6所述的报文转发引擎,其特征在于,所述访问控制模块包括查询模块和判断模块,其中查询模块,当所述转发判断模块判断的结果为不需要转发时,用于查询所述存储模块中是否存储有所述访问控制表;判断模块,当所述查询模块的查询结果为存在所述访问控制表时,根据所述接收模块接收的所述报文的信息,查询所述存储模块中存储的所述访问控制规则;当所述查询模块的查询结果为不存在所述访问控制表时,所述处理模块还用于给所述接收模块接收的报文应用所述设置模块设置的第一带宽参数,上送至控制平面。8.如权利要求6或7所述的报文转发引擎,其特征在于,所述处理模块包括转发模块,在转发判断模块判断的结果为需要转发时,用于正常转发所述接收模块接收的所...

【专利技术属性】
技术研发人员:宋端智杨平安熊怡
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

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

1