一种对用户进行限速的方法和装置的制作方法

文档序号:7888978阅读:166来源:国知局
专利名称:一种对用户进行限速的方法和装置的制作方法
技术领域
本发明涉及计算机网络数据通信技术领域,尤其涉及一种对用户进行限速的方法和装置。
背景技术
由于网络的不断发展,在以太网环境下,为了提高链路的通信能力,路由器设备需要将多个以太接口捆绑为一个接口,称为链路聚合接口。链路聚合接口的总带宽是各成员带宽之和,通过这种方式,可以增加接口的带宽。链路聚合接口可以提高链路的通信能力和节省IP地址。链路聚合接口将流量分散到不同的链路上,最后到达统一的目的地。这样可以避免流量都走同一条路径造成的流量阻塞,这就是所谓的逐包属性。对于路由器上接入一个链路聚合接口的多个物理接口,如果不对链路聚合接口接入的用户进行限速,那么接入到链路聚合接口上的所有用户都会共享链路聚合接口的带宽,导致用户之间互相抢占带宽,无法保证用户利益,而且容易造成安全隐患(如DOS攻击) 等。同时,在接入链路聚合接口的多个物理接口属于多个不同的接口板时,在逐包发流的环境下,如果不对跨板用户(接入链路聚合接口的用户)进行处理,会导致链路聚合接口的成员所在接口板上的各个网络处理器均处理与用户限速值一样大的流量,这样用户的出流量就会超过用户的限速值,导致用户限速不准确,而且用户的最大带宽为(网络处理器个数)*(用户限速值),导致为用户分配了超过应该提供给用户的实际带宽,因此,如何在链路聚合接口上对接入的用户进行限速成为了路由器设备开发商关心的问题之一。在现网中,路由器上会插入几种不同端口速率的接口板,对链路聚合接口在用户跨板上线时,需要根据链路聚合接口捆绑的物理端口的速率和端口数量来对每个用户设定限速值,这就涉及到跨板限速的问题,而当前路由器中并没有对用户进行跨板限速的管理。

发明内容
本发明要解决的技术问题是提供一种对用户进行限速的方法和装置,能够对链路聚合接口下的用户根据链路聚合接口捆绑的物理端口的速率和端口数量进行限速。为解决上述技术问题,本发明的一种对用户进行限速的方法,包括根据链路聚合接口绑定的接口成员所属的接口板的端口速率和所述接口板绑定在所述链路聚合接口下的端口的数目,确定所述链路聚合接口的总权重和各接口成员的权根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率;根据链路聚合接口的各接口成员的用户速率,在接口成员所属的接口板上按相应的用户速率对接口成员进行转发限速。进一步地,所述根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率,包括
所述链路聚合接口的各接口成员的用户速率为各接口成员的权重/总权重*用户的限速速率值。进一步地,还包括在确定所述链路聚合接口的总权重和各接口成员的权重前,获得所述链路聚合接口的各接口成员的信息,得到所述链路聚合接口绑定的接口成员所属的接口板的端口速率,并根据所述链路聚合接口绑定的接口成员,得到所述接口板绑定在所述链路聚合接口下的端口的数目。进一步地,还包括在获得所述链路聚合接口的各接口成员的信息后,为所述链路聚合接口建立成员双向链表,将所述链路聚合接口的各接口成员的信息记录到所述成员双向链表中,并在确定所述链路聚合接口的总权重和各接口成员的权重后,将所述总权重和各接口成员的权重记录到所述成员双向链表中。进一步地,所述成员双向链表以所述链路聚合接口的标识作为链表头,在链表头结点中记录所述总权重,链表结点以所述链路聚合接口各接口成员的端口标识为索弓I,记录接口成员的息和权重。进一步地,还包括在为链路聚合接口的各接口成员配置用户速率前,从所述链路聚合接口的接入用户的用户配置中获取配置数据,根据所述配置数据得到所述用户的限速速率值。进一步地,一种对用户进行限速的装置,包括用户速率处理模块,其中所述用户速率处理模块,用于根据链路聚合接口绑定的接口成员所属的接口板的端口速率和所述接口板绑定在所述链路聚合接口下的端口的数目,确定所述链路聚合接口的总权重和各接口成员的权重;根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率;根据链路聚合接口的各接口成员的用户速率,在接口成员所属的接口板上按相应的用户速率对接口成员进行转发限速。 进一步地,所述用户速率处理模块,具体用于按照各接口成员的权重/总权重*用户的限速速率值确定所述链路聚合接口的各接口成员的用户速率。进一步地,还包括配置管理模块,其中所述配置管理模块,用于获得所述链路聚合接口的各接口成员的信息,并从所述链路聚合接口的接入用户的用户配置中获取配置数据,根据所述配置数据得到所述用户的限速速率值;所述用户速率处理模块,具体用于根据所述链路聚合接口的接口成员的信息,得到所述链路聚合接口绑定的接口成员所属的接口板的端口速率,根据所述链路聚合接口绑定的接口成员,得到所述接口板绑定在所述链路聚合接口下的端口的数目。进一步地,还包括链路聚合接口成员管理模块,其中所述链路聚合接口成员管理模块,用于为所述链路聚合接口建立成员双向链表, 将所述链路聚合接口的各接口成员的信息记录到所述成员双向链表中;所述用户速率处理模块,还用于在确定所述链路聚合接口的总权重和各接口成员的权重后,将所述总权重和各接口成员的权重记录到所述成员双向链表中。
综上所述,本发明能够更精确的对跨板链路聚合接口接入的用户进行限速,并且可以对不同速率的端口进行权重处理,从而避免了对链路聚合接口每个成员不能均匀限速的问题。


图I为本实施方式的对用户进行限速的方法的流程图;图2为本实施方式的链路聚合接口的成员双向链表的结构示意图;图3为本实施方式的对用户进行限速的装置的架构图。
具体实施例方式下面结合附图对本实施方式的对用户进行限速的方法进行说明。如图I所示,对用户进行限速的方法,包括步骤101 :配置管理模块对链路聚合接口进行接口成员的绑定,得到该链路聚合接口下的各个接口成员的信息;本实施方式中绑定在链路聚合接口下接口成员属于多个不同的接口板,链路聚合接口可称为跨板链路聚合接口。接口成员的信息包括接口成员所属的接口板的信息和接口成员的接口信息。步骤102 :配置管理模块在用户上线后,从链路聚合接口的接入用户的用户配置中获取配置数据,根据配置数据得到用户的限速速率值;配置管理模块根据CIR(承诺访问速率)、PIR(峰值信息速率)、令牌桶大小 CBS (承诺突发尺寸)和PBS (峰值突发尺寸)等配置数据得到用户的限速速率值。步骤103 :链路聚合接口成员管理模块接收配置管理模块下发的跨板链路聚合接口的接口成员的信息,申请双向链表内存,建立成员双向链表,将链路聚合接口的接口成员的信息记录到唯一表示该链路聚合接口的成员双向链表中;如图2所示,为链路聚合接口成员管理模块建立的成员双向链表的结构,对链路聚合接口的接口成员进行分配挂接,使得该链路聚合接口进行接口成员挂接。 成员双向链表是以链路聚合接口的标识作为链表头,链表头结点中记录总权重, 链表结点以各个接口成员的端口标识为索引,记录接口成员的信息和权重,在下面的步骤中会将权重写入成员双向链表中。步骤104 :用户速率处理模块根据配置管理模块中的链路聚合接口的接口成员的信息,得到绑定的接口成员所属的接口板的端口速率;用户速率处理模块根据链路聚合接口的接口成员的信息中的接口成员所属的接口板的信息,获取到各接口板的端口速率。步骤105 :用户速率处理模块根据链路聚合接口绑定的接口成员,得到每个接口板绑定在链路聚合接口下的端口的数目;步骤106 :用户速率处理模块根据链路聚合接口绑定的接口成员所属的接口板的端口速率和每个接口板绑定在链路聚合接口下的端口的数目,计算链路聚合接口的总权重及各接口成员的权重,将总权重及各接口成员的权重写入成员双向链表;本实施方式中不对总权重及各接口成员的权重的计算方法进行具体限定,例如,绑定在链路聚合接口下的接口板的端口速率分别为IOG和1G,IOG接口板绑定在链路聚合接口下的端口的数目为3,IG接口板绑定在链路聚合接口下的端口的数目为2,总权重可以为10X3+1X2 = 32,IOG接口板的绑定在链路聚合接口下的端口的权重均为10,IG接口板的绑定在链路聚合接口下的端口的权重均为I。同样地,可以根据接口板的端口速率和接口板绑定在链路聚合接口下的端口的数目进行一些其他运输,确定总权重及各接口成员的权重。步骤107 :用户速率处理模块根据用户的限速速率值、总权重及接口成员的权重, 为链路聚合接口的各接口成员配置用户速率;用户速率处理模块包含各个接口板上的网络处理器,由接口板上的网络处理器为自身绑定在链路聚合接口下的端口配置限速值。例如,链路聚合接口下接入一个用户,限速速率值为32M,链路聚合接口下面绑定了两个不同的端口速率的接口板,分别为IG的接口板和IOG的接口板,在IG的接口板上绑定两个接口在这个链路聚合接口上,在IOG的接口板上绑定三个接口在这个链路聚合接口上,在链路聚合接口的总权重为32,IG接口板上的两个端口的权重均为1,IOG接口板上的三个端口的权重均为10的情况下,根据权重/总权重*用户的限速速率值,得到1G接口板的两个端口的用户速率为1M,IOG接口板的三个端口的用户速率为10M,1M*2+10M*3 = 32M, 也就是用户的限速速率值,达到了限速效果。步骤108 :用户速率处理模块根据链路聚合接口各接口成员的用户速率,在各个接口板上按相应用户速率进行转发限速;由各个接口板上的网络处理器根据自身绑定在链路聚合接口下的端口的用户速率对接口成员进行转发限速。在链路聚合接口的接口成员发生变化时,需要刷新链路聚合接口成员的信息,并对总权重、各接口成员的权重和各接口成员的用户速率进行重计算,再根据重新计算的各接口成员的用户速率对用户进行限速处理。如图3所示,本实施方式的对用户进行限速的装置,包括配置管理模块、链路聚合接口成员管理模块和用户速率处理模块,其中配置管理模块,用以配置链路聚合接口的标识,并对对链路聚合接口进行接口成员的绑定,得到该链路聚合接口下的各个接口成员的信息,在用户上线后,从链路聚合接口的接入用户的用户配置中获取配置数据,根据配置数据得到用户的限速速率值,将各个接口成员的信息下发给链路聚合接口成员管理模块和用户速率处理模块,将用户的限速速率值下发给用户速率处理模块。链路聚合接口成员管理模块,用以接收配置管理模块下发的链路聚合接口的接口成员的信息,申请双向链表内存,建立成员双向链表,将链路聚合接口的接口成员的信息记录到唯一表示该链路聚合接口的成员双向链表中。用户速率处理模块,用以根据配置管理模块中的链路聚合接口的接口成员的信息,得到绑定的接口成员所属的接口板的端口速率,根据链路聚合接口绑定的接口成员,得到每个接口板绑定在链路聚合接口下的端口的数目,根据链路聚合接口绑定的接口成员所属的接口板的端口速率和每个接口板绑定在链路聚合接口下的端口的数目,计算链路聚合接口的总权重及各接口成员的权重,将总权重及各接口成员的权重写入成员双向链表;并且,根据用户的限速速率值、总权重及接口成员的权重,为链路聚合接口的各接口成员配置用户速率,根据链路聚合接口各接口成员的用户速率,在各个接口板上按相应用户速率对接口成员进行转发限速。本实施方式中,根据接口成员的数量、接口成员所属接口板的端口速率以及跨板情况作为基数来均衡分配用户的流量,这样既提高了网络资源利用率,同时也避免了由于接口成员处理能力不同而导致的网络流量拥塞。本实施方式能够在路由器上的不同接口速率卡上,配置一个链路聚合接口,绑定接口板上的相关口进行用户的流量转发时,对链路聚合接口上的用户,配置相应的限速值,对用户进行转发限速。
权利要求
1.一种对用户进行限速的方法,其特征在于,包括根据链路聚合接口绑定的接口成员所属的接口板的端口速率和所述接口板绑定在所述链路聚合接口下的端口的数目,确定所述链路聚合接口的总权重和各接口成员的权重;根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率;根据链路聚合接口的各接口成员的用户速率,在接口成员所属的接口板上按相应的用户速率对接口成员进行转发限速。
2.如权利要求I所述的方法,其特征在于,所述根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率,包括所述链路聚合接口的各接口成员的用户速率为各接口成员的权重/总权重*用户的限速速率值。
3.如权利要求I所述的方法,其特征在于,还包括在确定所述链路聚合接口的总权重和各接口成员的权重前,获得所述链路聚合接口的各接口成员的信息,得到所述链路聚合接口绑定的接口成员所属的接口板的端口速率,并根据所述链路聚合接口绑定的接口成员,得到所述接口板绑定在所述链路聚合接口下的端口的数目。
4.如权利要求3所述的方法,其特征在于,还包括在获得所述链路聚合接口的各接口成员的信息后,为所述链路聚合接口建立成员双向链表,将所述链路聚合接口的各接口成员的信息记录到所述成员双向链表中,并在确定所述链路聚合接口的总权重和各接口成员的权重后,将所述总权重和各接口成员的权重记录到所述成员双向链表中。
5.如权利要求4所述的方法,其特征在于所述成员双向链表以所述链路聚合接口的标识作为链表头,在链表头结点中记录所述总权重,链表结点以所述链路聚合接口各接口成员的端口标识为索引,记录接口成员的信息和权重。
6.如权利要求I所述的方法,其特征在于,还包括在为链路聚合接口的各接口成员配置用户速率前,从所述链路聚合接口的接入用户的用户配置中获取配置数据,根据所述配置数据得到所述用户的限速速率值。
7.一种对用户进行限速的装置,其特征在于,包括用户速率处理模块,其中所述用户速率处理模块,用于根据链路聚合接口绑定的接口成员所属的接口板的端口速率和所述接口板绑定在所述链路聚合接口下的端口的数目,确定所述链路聚合接口的总权重和各接口成员的权重;根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率;根据链路聚合接口的各接口成员的用户速率,在接口成员所属的接口板上按相应的用户速率对接口成员进行转发限速。
8.如权利要求7所述的装置,其特征在于所述用户速率处理模块,具体用于按照各接口成员的权重/总权重*用户的限速速率值确定所述链路聚合接口的各接口成员的用户速率。
9.如权利要求7所述的装置,其特征在于,还包括配置管理模块,其中所述配置管理模块,用于获得所述链路聚合接口的各接口成员的信息,并从所述链路聚合接口的接入用户的用户配置中获取配置数据,根据所述配置数据得到所述用户的限速速率值;所述用户速率处理模块,具体用于根据所述链路聚合接口的接口成员的信息,得到所述链路聚合接口绑定的接口成员所属的接口板的端口速率,根据所述链路聚合接口绑定的接口成员,得到所述接口板绑定在所述链路聚合接口下的端口的数目。
10.如权利要求7所述的装置,其特征在于,还包括链路聚合接口成员管理模块,其中 所述链路聚合接口成员管理模块,用于为所述链路聚合接口建立成员双向链表,将所述链路聚合接口的各接口成员的信息记录到所述成员双向链表中;所述用户速率处理模块,还用于在确定所述链路聚合接口的总权重和各接口成员的权重后,将所述总权重和各接口成员的权重记录到所述成员双向链表中。
全文摘要
本发明公开了一种对用户进行限速的方法和装置,包括根据链路聚合接口绑定的接口成员所属的接口板的端口速率和所述接口板绑定在所述链路聚合接口下的端口的数目,确定所述链路聚合接口的总权重和各接口成员的权重;根据用户的限速速率值、所述链路聚合接口的总权重和各接口成员的权重为链路聚合接口的各接口成员配置用户速率;根据链路聚合接口的各接口成员的用户速率,在接口成员所属的接口板上按相应的用户速率对接口成员进行转发限速。本发明能够更精确的对跨板链路聚合接口接入的用户进行限速,并且可以对不同速率的端口进行权重处理,从而避免了对链路聚合接口每个成员不能均匀限速的问题。
文档编号H04L12/56GK102594671SQ201210027130
公开日2012年7月18日 申请日期2012年2月8日 优先权日2012年2月8日
发明者于波, 窦丹丹 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1