一种防止网络攻击的方法和网络设备的制作方法

文档序号:7929708阅读:200来源:国知局
专利名称:一种防止网络攻击的方法和网络设备的制作方法
技术领域
本发明涉及通信领域,特别涉及一种防止网络攻击的方法和网 络设备。
背景技术
随着因特网的迅速发展,网络攻击也日益频繁,攻击除了针对终 端设备也包括网络设备,例如针对路由器,交换机等,攻击者一般通 过在短时间内向其发送大量的需要其处理的伪造报文,导致系统忙于 处理这些报文,而使其他正常的任务处理受到影响以达到攻击的目 的。在严重的情况,这种攻击会导致系统资源耗尽,使设备宕机。
为了防止这类网络攻击,在网络设备上采用CAR ( Committed Access Rate,约定访问速率)进行限制是一种较常见的方法。CAR 是通信领域中经常采用的流量控制技术,通常在网络设备通过设置 CAR来控制报文以约定的速率进出,达到提供特定网络服务质量的 目的。
采用CAR进行流量的控制,能够有效的保护网络设备,网络上即 使出现了攻击报文,网络设备也仍然能够正常工作。但是,目前利用 CAR技术进行防攻击一般是对所有上送处理的报文进行统一的速率 限定,而不关心报文从哪里来、是什么类型的报文等等。如果来自某 一个端口的攻击报文流量过大,则即使采用了 CAR进行流量的控制, 来自其他端口正常上送的报文仍然可能会被挤掉。类似的,如果来自 某一种协议的攻击报文流量过大,那么即使采用了 CAR进行流量的 控制,来自其他协议正常上送的报文仍然可能会被挤掉。这两种情况都会导致合法用户的正常通信中断。

发明内容
有鉴于此,本发明的实施例提供了 一种防止网络攻击的方法和网 络设备,以改善现有技术中防止网络攻击效果。
一种防止网络攻击的方法,包括
为进入网络设备的每一种协议的报文预先设置至少两个约定访问
速率CAR速率通道和至少一个速率阈值;
根据通过所述网络设备的每一个端口的所述每一种协议的报文的 上送速率与所述预先为每一种协议的报文设置的速率阈值之间的关 系,选择相应的CAR速率通道上送所述每一种协议的报文。
一种防止网络攻击的网络设备,包括
设置模块,用于为进入所述网络设备的每一种协议的报文预先设 置至少两个CAR速率通道和至少一个速率阈值;
上送模块,用于根据通过所述网络设备的每一个端口的每一种协 议的报文的上送速率与所述设置模块预先为所述每一种协议的报文 设置的速率阈值之间的关系,选择相应的CAR速率通道上送所述每 一种协议报文。
在本发明的实施例中,通过为每种协议的报文设置多个CAR速率 通道,统计进入网络设备每一个端口的各种协议报文的速率,判断其 是否超过相应的阈值,设定进入网络设备的每一种协议的报文走不同 的CAR速率通道,能够有效解决目前网络设备对报文只使用一个 CAR进行统一速率限定,而可能出现合法用户的正常上送报文被攻 击报文4齐掉,导致通信中断的缺陷。


图1为本发明一个实施例中防止网络攻击的方法流程图; 图2为本发明另 一 实施例中防止网络攻击的方法流程6图3为本发明又一实施例中防止网络攻击的网络设备的结构图; 图4为本发明又一实施例中防止网络攻击的网络设备的结构图; 图5为本发明又一实施例中设置模块300的结构图; 图6为本发明又一实施例中统计模块320的结构图。
具体实施例方式
为使本发明实施例的目的、技术方案及优点更加清楚明白,以下 参照附图,对本发明的实施例作进一步地详细说明。
在本发明的实施例中,为进入网络设备每一种协议的报文预先设 置至少两个CAR速率通道,并且,也为每一种协议的报文预先设置 至少一个速率阈值;根据通过网络设备的每一个端口的每一种协议报 文的上送速率与预先为每一种协议报文设置的速率阈值之间的关系, 选择相应的CAR速率通道上送每一种协议报文。
在本发明的实施例中,CAR速率通道是指可以保证报文以不高于 指定CAR速率进行上送的数据通道。
一般情况下,为每一种协议的报文预先设置速率阈值时,会考虑 这一种协议的报文在网络中的正常流量值,例如,较常用的,就可以 预先设置速率阈值的值与该协议报文在网络中的正常流量值大致相 匹配,或者是稍大于该协议报文在网络中的正常流量值。
在本发明的一个实施例中,为进入网络设备的每一种协议报文预 先设置两个CAR速率通道,并且,还预先为每一种协议的报文设置 了一个速率阈值。如图1所示,本实施例中防止网络攻击的方法,包 括
100、统计通过网络i殳备每一个端口的每一种协议报文的上送速率。
其中,l艮文的上送速率,可以是单位时间内通过某一个端口上送 的报文个数,也可以是单位时间内通过某一个端口上送的报文字节 数。110、判断每一种协议报文的上送速率与预先为该种协议的报文设 置的速率阈值之间的关系。
120、当某一种协议报文的上送速率大于预先为这种协议的报文设 置的速率阈值,即某一种协议报文的上送速率超过了预先为其设置 的速率阈值,则设定这种协议的报文通过上送速率较低的CAR速率 通道上送。
130、当某一种协议^J:的上送速率小于或等于预先为这种协议的
报文设置的速率阈值,即某一种协议报文的上送速率没有超过预先 为其设置的速率阈值,则设定这种协议的报文通过上送速率较高的 CAR速率通道上送。
为便于理解,下面介绍一个具体的应用场景。
在本应用场景中,为进入网络设备的每一种协议的报文预先设置 两个CAR速率通道和一个速率阔值。如,为进入网络设备的ARP (Address Resolution Protocol,地址解析协议)报文预先设置两个 CAR速率通道,分别称为第一 CAR速率通道和第二 CAR速率通道, 其中第一 CAR速率通道允许的上送速率V1,比第二 CAR速率通道 允许的上送速率V2大。而预先为进入网络设备的ARP报文设置的 速率阈值为Vt,并且,V1>Vt>V2。当然,Vt与V2的大小关系可能 根据实际情况而有所不同,Vt也可以小于V2或者等于V2,本应用 场景仅以V1>Vt>V2为例进行说明。
统计通过网络设备的每一个端口的各种协议报文的上送速率。假 设网络设备只有端口 A和端口 B。则在本应用场景中,就是统计通过 网络设备的端口 A和端口 B的各种协议报文的上送速率。如,可以 对进入网络设备的报文进行解析,获取报文的输入端口号和协议类 型,知道了报文的输入端口号和协议类型,就能够知道是什么协议的 报文、通过哪一个端口上送的。本应用场景中,才艮据该输入端口号(A 或B)和协议类型(ARP),就能够分别得到通过端口 A的ARP报
8文的上送速率,和通过端口 B的ARP寺艮文的上送速率。 在本应用场景中,々支设经过统计知道
通过端口 A上送的ARP报文的速率超过了预设设置的速率阔值 Vt,则设定在端口 A上ARP报文通过第二CAR速率通道上送,即 通过端口 A上送的ARP报文的速率不超过V2。
通过端口 B上送的ARP报文的速率没有超过预设设置的速率阈 值Vt,则设定在端口 B上ARP报文通过第一CAR速率通道上送, 即通过端口 B上送的ARP报文的速率不超过V1 。
可见,通过端口 A的ARP报文的上送速率太大,超过了预先设 置的速率阈值,则认为端口 A可能遭到了 ARP报文的攻击,将对通 过端口 A的ARP报文的上送速率进行限制,使其通过第二 CAR速 率通道上送。这样,通过端口 B的ARP报文的上送速率就不会受到 影响,仍然能够正常上送。
在本发明的另 一个实施例中,为进入网络设备的每一种协议报文 预先设置三个CAR速率通道,并且,还预先为每一种协议的报文设 置了两个速率阈值。如图2所示,本实施例中防止网络攻击的方法, 包括;
200、统计通过网络设备每一个端口的每一种协议报文的上送速率。
其中,报文的上送速率,可以是单位时间内通过某一个端口上送 的报文个数,也可以是单位时间内通过某一个端口上送的报文字节 数。
210、判断每一种协议报文的上送速率与预先为该种协议的报文设 置的速率阈值之间的关系。
220、当某一种协议报文的上送速率小于或等于最小的速率阈值 时,设定这种协议的报文通过最高速率的CAR速率通道上送。
230、当某一种协议才艮文的上送速率大于最小的速率阈值、且小于或者等于最大的速率阈值时,设定这种协议的报文通过中间速率的 CAR速率通道上送。
240、当某一种协议报文的上送速率大于最大的速率阈值时,设定 这种协议的报文通过最低速率的CAR速率通道上送。
同样,为了^^于理解,下面介绍一个具体的应用场景。
在本应用场景中,为进入网络设备每一种协议的报文预先设置的 三个CAR速率通道。如为进入网络设备的OSPF (Open Shortest Path First,开放最短路径优先)报文预先设置三个CAR速率通道, 分别称为第三CAR速率通道、第四CAR速率通道和第五CAR速率 通道,其中,第四CAR速率通道允许的上送速率V4,比第三CAR 速率通道允许的上送速率V3小、但是比第五CAR速率通道允许的 上送速率V5大,即V3>V4>V5。而预先为进入网络设备的OSPF 报文设置的两个速率阈值分别为Vx和Vy,其中,V3>Vx>V4>Vy>V5。 当然,Vx与V4、 V5的大小关系可能根据实际情况而有所不同,但 是不影响本申请实施例的实现;类似的,Vy与V4、 V5的大小关系 也可能根据实际情况而有所不同,本应用场景仅以 V3>Vx>V4>Vy>V5为例进行说明。
统计通过网络设备的每一个端口的各种协议报文的上送速率。假 设网络设备只有端口 C、端口 D和端口 E。则在本应用场景中,就是 统计通过网络设备的端口 C、端口 D和端口 E的各种协议报文的上 送速率。如,同样也可以对进入网络设备的报文进行解析,获取报文 的输入端口号和协议类型,知道了报文的输入端口号和协议类型,就 能够知道是什么样的报文、从哪一个端口进入网络设备的;而根据该 输入端口号(C、 D或E)和协_汉类型(OSPF),就能够统计得到通 过端口 C的OSPF报文的上送速率、通过端口 D的OSPF报文的上 送速率、以及通过端口 E的OSPF报文的上送速率。
在本应用场景中,々i如经过统计知道通过端口 C上送的OSPF报文的速率小于Vy时,则在端口 C上, 设定OSPF报文通过第三CAR速率通道上送,即通过端口 C上送 的OSPF报文的速率不超过V3。
通过端口 D上送的OSPF报文的速率大于Vy、小于或等于Vx, 则在端口D上,设定OSPF报文通过第四CAR速率通道上送,即 通过端口 D上送的OSPF报文的速率不超过V4。
通过端口 E上送的OSPF报文的速率大于Vx,则在端口 E上, 设定OSPF报文通过第五CAR速率通道上送,即通过端口 E上送 的OSPF报文的速率不超过V5。
在本发明的实施例中,通过为每种协议的报文设置多个CAR速率 通道,统计进入网络设备每一个端口的各种协议报文的速率,判断其 是否超过相应的阈值,设定每一个端口进入的每一种协议的报文走不 同的CAR速率通道,能够有效解决目前网络设备对所有报文只使用 一个CAR进行统一速率限定,而可能出现合法用户的正常上送报文 被攻击报文挤掉,导致通信中断的缺陷。
可选的,在本发明的实施例中,可以是周期性的对通过某一个端 口的各种协议的报文的上送速率进行统计,也可以是根据实际的需求 随时启动对通过某一个端口的各种协议的报文的上送速率进行统计。 例如,可以是每个一段时间进行统计,也可以是根据网管的指令进行 统计。
可选的,在本发明的实施例中,对于初始进入的某一种、或某几 种协议的报文,可以分别设定其都通过某一个CAR速率通道上送, 具体来说,可以是速率较大的CAR速率通道,也可以是速率较小的 CAR速率通道。经过一段时间的统计之后,再根据实际的情况进行 CAR速率通道的调整。例如某些对于延时性能要求比较高的协议报 文,可以在初始时都^:定其通过速率较大的CAR速率通道上送。而 对于某些比较容易被攻击者利用的协议报文,像是本发明实施例中的
iiARP报文,就可以设定,初始的时候所有的ARP报文都通过第二 CAR速率通道上送。在经过速率的统计之后,若通过端口A上送的 ARP报文的速率没有超过预先设定的速率阈值,则可调整上送ARP 报文的CAR速率通道为第一 CAR速率通道;若通过端口 A上送的 ARP报文的速率超过了预先设定的速率阈值,则可以维持其现在的 第二CAR速率通道不变。
可选的,在本发明的实施例中,当通过某一个端口的某一种协议 的报文的上送速率超过了为其预先设置速率阈值中最大的那一个速 率阔值时,可以将进入该端口的该种协议的报文丟弃,或者,也可以 设置緩存队列,将进入该端口的该种协议的报文放入緩存队列中,以 便于后续进行攻击源的查找等相关处理。
可选的,在本发明的实施例中,为报文预先设置的CAR速率通道 和速率阈值都是可调整的,例如,当进入端口 A的各种报文总体流量 不是很大、且某一种协议的报文流量占比较大的比例时,则可以适当 调高这类协议的报文速率阈值和CAR速率通道,使这类报文的处理 效率能更高些。反之,当进入端口 A的各种报文总体流量开始增加时, 则可适当调低这类协议的报文速率阈值和CAR速率通道。当然,在 实际的应用中还可以根据具体的情况来进行调整,此处不做具体限 定。如某类协议的报文QoS (Quality of Service,服务质量)等级较 高,则可以调高这类报文的速率阈值和CAR速率通道。
可选的,在本发明实施例中,预先为报文设置的CAR速率通道是 可以随时增加或者删减的。例如,如果在具体的应用中,对l艮文的上 送进行控制管理的要求不高,则可以随时删掉一个CAR速率通道。 而如果在具体的应用中需要对报文的上送进行更为细致的控制管理, 则可以根据需求增加一个CAR速率通道。相应的,预先为报文设置 的速率阈值也是可以随时增加或者删减的。
可见,本实施例通过对CAR速率通道和速率阈值的灵活设置和选
12取,不仅能够有效解决目前网络设备对报文只使用一个CAR进行统
一速率限定,而可能出现合法用户的正常上送报文被攻击报文挤掉,
导致通信中断的缺陷;还能够提高报文的上送效率,对才艮文的上送进 行精细化控制管理。
在本发明的又一实施例中,如图3所示,提供了一种防止网络攻 击的网络设备,包括
设置模块300,用于为进入网络设备的每一种协议的报文预先设 置至少两个CAR速率通道和至少一个速率阈值;
上送模块310,用于根据通过网络设备的每一个端口的每一种协 议报文的上送速率与预先为每一种协议报文设置的速率阈值之间的 关系,选择相应的CAR速率通道上送每一种协议"R文。
进一步的,如图4所示,所述网络设备还包括
统计模 块320,用于统计进入该网络设备的每一个端口的每一种 协议报文的上送速率;
判断模块330,用于判断统计模块320得到的每一种协议报文的 上送速率与设置模块300预先为每一种协议报文设置的速率阔值之 间的关系。
进一步的,如图5所示,设置模块300具体包括
CAR设置子模块301,用于为进入网络设备的每一种协议报文预
先设置至少两个不同的CAR速率通道;
阈值设置子模块302,用于为进入网络设备的每一种协议报文预
先设置至少 一 个速率阈值。
进一步的,如图6所示,统计模块320具体包括
解析子模块321,用于解析进入该网络设备的报文,获取报文的
输入端口号和协议类型;
统计子模块322,用于根据解析子模块321得到的输入端口号和
协议类型,统计进入网络设备每一个端口的每一种协议报文的上送速率。
通过本实施例,如果攻击者发送的伪造某种协议报文从网络设备 的某个端口或者多个端口进入,网络设备会发现通过这个端口或这几 个端口的此种协议才艮文速率超过阈值,/人而令这个或这几个端口进入
的该种协议报文上送走速率比较低的CAR速率通道,这样即使攻击 报文流量较大,也只能影响从某个或几个端口进入的正常协议报文, 而无法影响其它端口进入的正常协议报文。
通过以上的实施方式的描述,本领域的普通技术人员可以清楚地 了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然 也可以通过硬件来实现。基于这样的理解,本发明的技术方案可以以 软件产品的形式体现出来,该计算机软件产品可以存储在存储介质 中,如ROM/RAM、石兹碟、光盘等,包括若干指令用以使得一台计算 机设备、或者服务器、或者其他网络设备执行本发明各个实施例或者 实施例的某些部分所述的方法。
以上仅为本发明的较佳实施例,并非用于限定本发明的保护范围。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
权利要求
1、一种防止网络攻击的方法,其特征在于,包括为进入网络设备的每一种协议的报文预先设置至少两个约定访问速率CAR速率通道和至少一个速率阈值;根据通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率与所述预先为每一种协议的报文设置的速率阈值之间的关系,选择相应的CAR速率通道上送所述每一种协议的报文。
2、 如权利要求1所述的方法,其特征在于,在所述根据通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率与所述预先为每一种协议的报文设置的速率阈值之间的关系,选择相应的CAR速率通道上送所述每一种协议的报文之前,所述方法还包括统计通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率;判断所述每一种协议的报文的上送速率与所述预先为每一种协议的报文设置的速率阈值之间的关系。
3、 如权利要求2所述的方法,其特征在于,所述统计通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率,包括解析进入所述网络设备的报文;获取所述进入所述网络设备的报文的输入端口号和协议类型;根据所述输入端口号和所述协议类型,统计得到通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率。
4、 如权利要求2或3所述的方法,其特征在于,所述统计通过所述网络设备的每一个端口的所述每一种协议的才艮文的上送速率,为周期性进行统计,或根据需求进行统计。
5、 如权利要求1或2或3所述的方法,其特征在于,所述方 法还包括为初始进入所述网络设备的至少 一种协议的报文,选择固定 的CAR速率通道上送。
6、 如权利要求1或2或3所述的方法,其特征在于,所述根 据通过所述网络设备的每一个端口的所述每一种协议的报文的上 送速率与所述预先为每一种协议的报文设置的速率阈值之间的关 系,选择相应的CAR速率通道上送所述每一种协议的报文,包括当通过所述网络设备的第 一端口的第 一协议报文的上送速率 超过预先为所述第 一协议报文设置的速率阈值中最大的速率阈值 时,丢弃进入所述第一端口的第一协议报文,或緩存进入所述第 一端口的第一协议报文。
7、 一种防止网络攻击的网络设备,其特征在于,包括 设置模块,用于为进入所述网络设备的每一种协议的报文预先设置至少两个CAR速率通道和至少一个速率阈值;上送模块,用于根据通过所述网络设备的每一个端口的每一 种协议的报文的上送速率与所述设置模块预先为所述每一种协议 的报文设置的速率阈值之间的关系,选择相应的CAR速率通道上 送所述每一种协议报文。
8、 如权利要求7所述的网络设备,其特征在于,所述网络设 备还包括统计模块,用于统计进入所述网络设备的每一个端口的每一 种协议的才艮文的上送速率;判断模块,用于判断所述统计模块得到的所述每一种协议的 报文的上送速率与所述设置模块预先为所述每一种协议的报文设 置的速率阈值之间的关系。
9、 如权利要求7或8所述的网络设备,其特征在于,所述设置模块包括CAR设置子模块,用于为进入所述网络设备的所述每一种协议的 报文预先设置所述至少两个不同的CAR速率通道;阈值设置子模块,用于为进入所述网络设备的所述每一种协 议的报文预先设置所述至少一个速率阈值。
10、 如权利要求9所述的网络设备,其特征在于,所述统计 模块包括解析子模块,用于解析进入所述网络设备的报文,获取所述 报文的输入端口号和协议类型;统计子模块,用于根据所述解析子模块得到的所述输入端口 号和所述协议类型,统计进入所述网络设备的每一个端口的所述 每一种协议报文的上送速率。
全文摘要
本发明涉及通信领域,公开了一种防止网络攻击的方法和网络设备,解决了现有技术中网络攻击效果不佳的问题。该方法为进入网络设备的每一种协议的报文预先设置至少两个约定访问速率CAR速率通道和至少一个速率阈值;根据通过所述网络设备的每一个端口的所述每一种协议的报文的上送速率与所述预先为每一种协议的报文设置的速率阈值之间的关系,选择相应的CAR速率通道上送所述每一种协议的报文。能够有效解决目前网络设备对报文只使用一个CAR进行统一速率限定,而可能出现合法用户的正常上送报文被攻击报文挤掉,导致通信中断的缺陷。本发明还公开了一种防止网络攻击的网络设备。
文档编号H04L29/06GK101478539SQ20081024222
公开日2009年7月8日 申请日期2008年12月31日 优先权日2008年12月31日
发明者勇 王 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1