一种分布式架构数据通信设备的消息保护系统及方法

文档序号:7924751阅读:264来源:国知局
专利名称:一种分布式架构数据通信设备的消息保护系统及方法
技术领域
本发明涉及分布式架构的数据通信设备,具体地说,是涉及一种分布式 架构数据通信设备的消息保护系统及方法。
背景技术
随着互联网的发展和壮大,各种各样的互联网设备相继出现。在网络的 汇聚层和核心层,为了緩解巨大业务量对设备性能的要求,分布式架构设备 的应用已经得到了普及。
如图1所示,分布式架构主要由系统主控单元110、若千业务处理单元 120、系统主控单元110和业务处理单元120之间及各业务处理单元120之间 的数据通道130组成,各业务处理单元120都能独立完成某种业务的处理, 而系统资源的统一调度管理由系统主控单元110完成,其中
系统主控单元110,负责管理和维护整个设备,并对系统资源进行统一 调度,对筒单网络管理协议(simple network management protocol,缩写为 SNMP)等协议的各种消息的最后处理及响应均是在这里完成的;
业务处理单元120,负责接收数据并根据数据内容进行诸如转发、上送 给业务处理单元中央处理器(CPU)或者丟弃等处理;
数据通道130:主要负责系统主控单元110和业务处理单元120以及各 业务处理单元120之间的消息、数据交换等,根据分布式系统设备不同而各 有区别,比如可以根据实际情况分为多个处理单元,如业务处理单元120之 间的数据交换可以由专门的交换单元来处理等等。
为了更好地管理网络中的各种设备,开发了各种各样的网络协议,如使 用网络时间协议(network time protocol,缩写为NTP)同步网络里各设备的 时间、使用SNMP实现网络设备的远程集中管理等等。
然而随着网络设备和网络协议的不断涌现,利用网络协议针对网络设备
的攻击也不断出现,如最常见的"拒绝月良务"(Denial of Service,缩写为DOS) 攻击(一种通过发送大量模拟协议报文来占用被攻击设备的CPU资源,使其 它正常业务受到影响甚至中断的方法)等等。针对这些攻击,网络釆取了一 些保护措施,如包限速功能,在业务处理单元上限制各种协议包上送CPU处 理的速度,从而达到保护CPU的目的。
针对集中式的设备,现阶段釆用的技术能比较有效地实现对CPU的保 护。但是在分布式环境中,各业务处理单元尽管得到了保护,但是从业务处 理单元CPU到系统主控单元CPU却没有任何保护措施,而是直接上送。存 在某些协议(如SNMP、 NTP等),在业务处理单元处理后需要上送给系统 主控单元进行进一步处理,在这个过程中,存在以下问题
因为各业务处理单元CPU只要判断是否为SNMP或者NTP等协议报文, 是则上送给系统主控单元CPU进一步处理,这样各业务处理单元CPU利用 率可能还很低,但是系统主控单元的CPU可能已经不堪重负。以SNMP协议 为例现在SNMP管理器(manager) —端常用的一种由很多个读取下一个请 求(GetNextRequest)消息组合而成的读取批量请求(GetBulkRequest)消息, 当GetBulkRequest中请求的管理对象在代理(agent)的管理信息库(MIB) 中不存在,系统主控单元仍然需要完整地检索整个MIB库后,才能确定需要 查找的MIB文件不存在。由于一个数据包内携带多个请求消息,这将导致主 控CPU利用率居高不下,甚至停止响应其它正常请求如telnet和console 口等。

发明内容
本发明所要解决的技术问题是在于需要提供一种分布式架构数据通信设 备的消息保护系统及相应的保护方法,以有效保护分布式架构数据通信设备 的CPU。
为了解决上述技术问题,本发明首先提供了一种分布式架构数据通信设 备的消息保护系统,包括转发模块、协议分析模块、内部服务质量模块、管 理才莫块及协议处理模块,其中
所述转发才莫块,位于所述分布式架构数据通信设备的业务处理单元上, 用于接收并上送需要CPU处理的待处理才艮文;
所述协议分析才莫块,与所述转发才莫块相连,用于对所述待处理才艮文进行 协议分析,获得所述待处理报文的协议类型;
所述管理才莫块,用于获取所迷系统主控单元CPU和緩存的利用率;
所述内部服务质量模块,与所述协议分析模块及管理模块相连,用于向 所述协议处理模块转发所述待处理报文,并根据所述系统主控单元CPU和緩 存的利用率,对所述待处理报文中需要系统主控单元CPU处理的报文进行服 务质量限速处理;及
所述协议处理模块,与所述内部服务质量模块相连,用于根据所述待处 理报文的协议类型,对所述待处理报文进行处理。
如上所述的系统中,所述转发才莫块,可以进一步与所述协议处理才莫块相 连,用于反馈所述协议处理模块处理所述待处理报文后的响应。
如上所述的系统中,所述内部服务质量模块,可以根据所述系统主控单 元CPU和緩存的利用率,利用服务质量的约定访问速率原理,对所述需要系 统主控单元CPU处理的报文进行服务质量限速处理。
进一步地,所述内部服务质量模块,可以根据所述系统主控单元CPU的 性能及所述数据通信设备可能面对的突发业务流对所述系统主控单元CPU占 用综合权衡后,设置承诺访问速率和顺从突发量的值,根据所述承诺访问速 率和顺从突发量的值,对所述需要系统主控单元CPU进行处理的报文进行服 务质量限速处理。
为了解决上述技术问题,本发明还提供了 一种分布式架构数据通信设备 的消息保护方法,包括步骤
分布式架构数据通信设备的业务处理单元收到报文之后,分析出需要 CPU处理的待处理才艮文;
对所述待处理报文进行协议分析,获得所述待处理报文的协议类型;
获得所述分布式架构数据通信设备的系统主控单元CPU和緩存的利用
率;
根据所述系统主控单元CPU和緩存的利用率,对所述待处理报文中需要 系统主控单元CPU处理的才艮文进行服务质量限速处理;及
根据所述待处理报文的协议类型,对所述待处理报文进行处理。
如上所述的方法中,所述待处理报文,可以包括广播包、协议包、目的 地址为设备本身、或者已经标识需要上送的报文。
进一步地,所述待处理净艮文可以包括简单网络管理协议报文或者网络时 间协议净艮文。
如上所述的方法中,可以根据所述系统主控单元CPU和緩存的利用率, 利用服务质量的约定访问速率原理,对所述需要系统主控单元CPU处理的报 文进行服务质量限速处理。
进一步地,可以根据所述系统主控单元CPU的性能及所述数据通信设备 可能面对的突发业务流对所述泉统主控单元CPU占用综合权衡后,设置承诺 访问速率和顺从突发量的值,根据所述承诺访问速率和顺从突发量的值,对 所述需要系统主控单元CPU处理的报文进行服务质量限速处理。
如上所述的方法中,对所述待处理报文进行处理时,可以进一步对所述 待处理才艮文进行正确性检查及版本匹配。
与现有技术相比,本发明提供了一种在分布式架构的设备中基于服务质 量(QOS)的消息保护机制,结合各业务处理单元上针对各种协议才艮文的限 速,从而控制各业务处理单元消息上送主控CPU的速率。对业务处理单元 CPU和主控CPU进行保护后,避免了因为消息的处理造成CPU的繁忙对其 它正常业务的影响。


图1为分布式架构的框架示意图。
图2为本发明系统实施例的组成示意图。
图3为本发明方法实施例的流程示意图。
具体实施例方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明 如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解 并据以实施。
图2示出了本发明基于内部服务质量(QOS)流控的消息保护系统一实 施例的组成意图,该系统实施例包括转发模块210、协议分析模块220、管 理模块230、内部QOS模块240及协议处理^t块250,其中
转发才莫块210,位于各业务处理单元上,用于接收并处理本业务处理单 元接收的报文。如果为能够正常转发的正确的报文,则查找转发表、路由表 后根据查询结果转发,丢弃错误的报文;如果报文为广播包、协议包,或者 报文的目的地址为设备本身,或者其它业务已经标识需要上送CPU处理的待 处理报文,则先上送给业务处理单元CPU进行处理;如果业务处理单元CPU 不能处理则进一步上送给系统主控单元CPU进行处理(如SNMP);
协议分析模块220,与转发才莫块210相连,用于对转发模块210上送的 待处理报文进行分析及预处理,分析该待处理报文的协议类型;如用户数据 报协议(UDP)端口号为161或162的报文,发送给协议处理模块250进行 SNMP协议的处理;协议分析模块220主要工作在各个业务处理单元上;
管理模块230,与内部QOS模块240相连,主要用于对系统主控单元CPU 和緩存进行监控管理,以便系统实时掌握系统主控单元CPU和緩存的利用率, 根据系统终端单元CPU和緩存的利用率,辅助内部QOS模块240完成对报 文的QOS限速处理;
内部QOS模块240,工作在各个业务处理单元CPU到系统主控单元CPU 之间,与协议分析模块220及管理模块230相连,主要用于根据管理模块230 获取的系统主控单元CPU和緩存的利用率,对需要上送给系统主控单元CPU 的报文进行QOS限速处理;在分布式架构中,协议分析才莫块220完成对报文 的分析后,如果是业务处理单元不能处理的协议报文,则需要进一步上送系 统主控单元CPU处理,通过该QOS模块230的限速作用,限制了从业务处 理单元CPU上送到系统主控单元CPU报文的速率;协议处理模块250,与内部QOS模块240相连,首先对报文进行正确性 检查及版本匹配,对于正确的待处理报文则进行相应处理,如果需要进行响 应,则产生相应响应发送给发送请求的设备,比如对于SNMP报文,完成 SNMP agent的任务,在正确性检查及版本匹配通过之后,根据SNMP manager 发送的SNMP请求(request)消息进行处理,并根据处理结果反馈SNMP响 应(response),通过转发模块210反馈给发送SNMP request消息的SNMP manager,或者主动向SNMP manager发送SNMP陷阱(trap )消息。
上述内容虽然以SNMP协议报文为例对本发明的技术方案进行说明,但 是本发明并不局限于SNMP协议的待处理报文,其应包括所有需要进行类似 处理的协议报文如NTP协议报文等等。
结合图1和图2,图3示出了本发明方法一实施例的流程图,该实施例 包括如下步骤
步骤310,业务处理单元120上的转发模块210从端口接收到报文之后, 对报文进行分析,如果为需要正常转发的报文则查找转发表、路由表,并根 据查找的转发结果和路由结果进行转发或丢弃,如果为需要进一步处理的报 文,如广播包、协议包,或者报文的目的地址为设备本身,或者其它业务已 经标识需要上送CPU处理的待处理报文,则经由协议分析模块220上送给业 务处理单元CPU进4于处理;
步骤320,协议分析模块220接收转发模块210转发的待处理报文后, 分析出待处理报文的协议类型,并根据预先定义好的处理方式对数据进行处 理(如以太网中可以4艮据目的MAC、 IP地址、源、目的端口号将不同的l艮文 发给不同的处理单元);比如协议分析模块220分析出转发模块210转发的 为UDP报文,且端口号为161和162时,则转发才莫块210转发的为SNMP协 议报文,需要经内部QOS模块240上送给协议处理模块250进行相应的处理; 对于业务处理单元CPU不能处理的报文,需要系统主控单元CPU进行处理, 此部分报文经由协议分析模块220转发给内部QOS模块240;
步骤330,内部QOS模块240利用QOS的约定访问速率(Committed Access Rate,缩写为CAR)原理对上送系统主控单元CPU的报文进行限速处理,可选用的一种限速方式比如根据CPU的性能及设备可能面对的突发业务 流对CPU占用综合权衡后设置承诺访问速率(Committed Information Rate, 缩写为CIR)和顺从突发量(或称令牌桶大小)(Conformed burst size,缩写 为CBS)的值,以SNMP协议报文为例,其操作方式为
步骤3a,设定一个CIR及CBS桶,并按CIR向CBS桶中放入令牌;同 时如果有SNMP协议报文经过,则CBS桶中令牌相应减少;具体每个报文对 应多少令牌可以根据实际情况进行设置;
步骤3b,当CBS桶中还有令牌时,内部QOS模块240将SNMP协议报 文直接上送给系统主控单元CPU;
步骤3c,当CBS桶中没有令牌时,内部QOS模块240调用管理模块230 检查当前系统主控单元CPU的利用率,当系统主控单元CPU的利用率较小 (小于某个预设的阀值M)时,内部QOS模块240可以通过向CBS桶中一 次性注入一定数量(T)的令牌,以保证SNMP协议包的正常上送,如果当 前系统主控单元CPU的利用率较高(大于等于阈值M),则调用管理才莫块 230查看当前系统主控单元的缓存,如果还有足够的缓存,则内部QOS模块 240将SNMP协议包缓存起来,等待CBS桶中有令牌时再上送给系统主控单 元CPU处理,如果系统主控单元緩存不足,则内部QOS模块240丟弃协议 报文;
步骤340,协议处理模块250接收到内部QOS模块240转发的待处理报 文后,对该报文进行合法性检查,如果检查失败则直接丢弃报文,如果合法 性检查通过,则根据待处理报文的协议类型对待处理报文进行处理,如果需 要则根据处理结果产生一个相应的响应(response),通过调用转发i^莫块210 发送给相应请求(request)的服务器。
本发明针对分布式架构系统,在各个业务处理单元和主控之间设置QOS 限速,緩解了多个业务处理单元同时上送给主控出现主控CPU繁忙从而影响 一些其它重要业务。本发明以SNMP为例,但并不局限于SNMP协议消息, 所有分布式系统中需要从业务处理单元上送主控的其它协议消息的限速处 理,都在前述本发明的思想范围内。
虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解
发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内 的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的 形式上及细节上作任何的修改与变化,^旦本发明的专利保护范围,仍须以所 附的权利要求书所界定的范围为准。
权利要求
1、一种分布式架构数据通信设备的消息保护系统,其特征在于,包括转发模块、协议分析模块、内部服务质量模块、管理模块及协议处理模块,其中所述转发模块,位于所述分布式架构数据通信设备的业务处理单元上,用于接收并上送需要CPU处理的待处理报文;所述协议分析模块,与所述转发模块相连,用于对所述待处理报文进行协议分析,获得所述待处理报文的协议类型;所述管理模块,用于获取所述系统主控单元CPU和缓存的利用率;所述内部服务质量模块,与所述协议分析模块及管理模块相连,用于向所述协议处理模块转发所述待处理报文,并根据所述系统主控单元CPU和缓存的利用率,对所述待处理报文中需要系统主控单元CPU处理的报文进行服务质量限速处理;及所述协议处理模块,与所述内部服务质量模块相连,用于根据所述待处理报文的协议类型,对所述待处理报文进行处理。
2、 如权利要求l所述的系统,其特征在于所述转发^f莫块,进一步与所述协议处理^^莫块相连,用于反馈所述协议处 理模块处理所述待处理净艮文后的响应。
3、 如权利要求l所述的系统,其特征在于所述内部服务质量模块,根据所述系统主控单元CPU和缓存的利用率, 利用服务质量的约定访问速率原理,对所述需要系统主控单元CPU处理的报 文进行服务质量限速处理。
4、 如权利要求2所述的系统,其特征在于所述内部服务质量模块,根据所述系统主控单元CPU的性能及所述数据 通信设备可能面对的突发业务流对所述系统主控单元CPU占用综合权衡后, 设置承诺访问速率和顺从突发量的值,根据所述承诺访问速率和顺从突发量 的值,对所述需要系统主控单元CPU进行处理的报文进行服务质量限速处理。
5、 一种分布式架构数据通信设备的消息保护方法,其特征在于,包括步骤分布式架构数据通信设备的业务处理单元收到报文之后,分析出需要 CPU处理的待处理报文;对所述待处理报文进行协议分析,获得所述待处理报文的协议类型;获得所述分布式架构数据通信设备的系统主控单元CPU和緩存的利用率;根据所述系统主控单元CPU和緩存的利用率,对所述待处理报文中需要 系统主控单元CPU处理的报文进行服务质量限速处理;及根据所述待处理报文的协议类型,对所述待处理报文进行处理。
6、 如权利要求5所述的方法,其特征在于所述待处理报文,包括广播包、协议包、目的地址为设备本身、或者已 经标识需要上送的报文。
7、 如权利要求6所述的方法,其特征在于所述待处理报文包括简单网络管理协议才艮文或者网络时间协"^i艮文。
8、 如权利要求5所述的方法,其特征在于根据所述系统主控单元CPU和緩存的利用率,利用服务质量的约定访问 速率原理,对所述需要系统主控单元CPU处理的报文进行服务质量限速处理。
9、 如权利要求8所述的方法,其特征在于根据所述系统主控单元CPU的性能及所述数据通信设备可能面对的突 发业务流对所述系统主控单元CPU占用综合权衡后,设置承诺访问速率和顺 从突发量的值,根椐所述承诺访问速率和顺从突发量的值,对所述需要系统 主控单元CPU处理的报文进行服务质量限速处理。
10、 如权利要求5所述的方法,其特征在于,对所述待处理报文进行处 理时,进一步对所述待处理才艮文进行正确性检查及版本匹配。
全文摘要
本发明公开了一种分布式架构数据通信设备的消息保护系统及方法,以有效保护分布式架构数据通信设备的CPU。该方法中,业务处理单元收到报文之后分析出需要CPU处理的待处理报文;对所述待处理报文进行协议分析,获得所述待处理报文的协议类型;获得系统主控单元CPU和缓存的利用率;根据所述系统主控单元CPU和缓存的利用率,对所述待处理报文中需要系统主控单元CPU处理的报文进行服务质量限速处理;根据所述待处理报文的协议类型,对所述待处理报文进行处理。本发明控制各业务处理单元消息上送主控CPU的速率,避免了因为消息的处理造成CPU的繁忙对其它正常业务的影响。
文档编号H04L12/56GK101355585SQ20081021058
公开日2009年1月28日 申请日期2008年9月2日 优先权日2008年9月2日
发明者刘宗颖 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1