专利名称:动态用户优先级管理的方法
技术领域:
本发明涉及一种动态用户优先级管理的方法,该方法可根据用户的应用请求优先级顺序和用户的优先级顺序,动态分配和回收交换机的接口带宽,可保证全网端到端的QoS-Quality of Service(服务质量)。
背景技术:
对于网络上越来越多的数据、语音和视频等应用,网络需要根据不同应用的自身特点保证重要应用的优先传送。这种处理方式类似于人脑对于大量事件的处理过程,会根据事件的重要和紧急程度加以区分、排队,优先处理最重要、最紧急的事件。如图1所示,目前小区驻地网采用的中心交换设备主要是支持网管功能的三层交换机,为了实现用户优先级的管理,通常边缘交换机采用支持应用级QoS(服务质量)的交换机,这种方式可以根据应用业务来区分数据流,支持802.1P和DifferServ优先级标记方式,在网络发生拥塞时可以保证关键业务和应用数据的优先传输。当某个网络端口出现拥塞的时候,基于第二层交换的优先级管理就可以发生作用。IEEE 802.1P协议中定义了8个优先级(从0到7)。交换机根据数据流优先级的不同,进行数据流排队。由基于硬件的ASIC(Application Specific Integrated Circuit)集成电路首先对入口的数据流进行线速的数据包分类,之后根据用户定制的策略将不同应用的数据包划分成不同的优先等级,并为其打上不同的802.1P或DifferServ标记,然后将不同优先级的数据送到不同的硬件优先级队列中进行处理。
新一代的桌面智能交换机能识别IP数据包第四层(TCP/UDP层)及以下的信息,既可以识别至少80个字节的包头长度,又可根据TCP/UDP端口号来区分数据包的应用类型,从而可实现应用级的访问控制或QoS保证。
数据包的二层IEEE802.1P字段或三层IP TOS字段可以用于区分数据包本身的优先级,但对于桌面层交换机,由于直接连接最终用户,目前大多数用户网卡的驱动程序还不支持IEEE802.1P或IP TOS标记类型,因此大多数用户发过来的数据包中不含有这两种优先级标记;另外,对于QoS保证要有全局的概念,某个用户认为重要的应用未必真正是重要的,因此即使用户发过来的数据包中含有IEEE802.1P或IP TOS优先级标记,也不能以此为准,还是需要按照整个网络统一的QoS策略来执行。
整个网络统一的QoS策略需要网络中所有交换机来遵照执行,智能二层桌面交换机能识别应用流,并将其QoS策略映射到全网的DiffServ信令,从而实现端到端的QoS,并为其提供相应的服务。
例如当用户的QoS策略是要保证数据库应用的优先传送时,桌面交换机的处理过程如下(1)流分类及标记根据用户定义的策略来区分数据包,可以基于四层及四层以下的信息,如果识别出是数据库应用,则定义为高优先级,可在数据包802.1P或IP TOS字段加以标记,以便于网络中其它交换机来识别,便于实现全网统一的QoS策略。
(2)流控制基于在交换机上定义的策略可以允许数据包通过或被禁止,以及可以对数据包进行带宽控制等策略控制。
(3)流排队交换机每端口支持4/8个优先级队列,根据第(1)步流分类及标记的结果,将高优先级数据包放在高优先级队列,例如数据库应用数据包被放在高优先级队列当中,其它应用数据包按照其优先级高低依次放在不同的优先级队列当中。
(4)流调度交换机通常支持两种队列调度方式WFQ和PQ,WFQ是加权公平队列调度方式,即轮流处理不同优先级队列当中的数据,保证每个队列当中的数据都能够被处理到;PQ是严格优先级队列调度方式,该调度方式是保证关键应用的优先处理,只要高优先级队列当中有数据,交换机就会一直处理该队列,直到该队列变空,才依次处理其它队列。用户如果要求必须保证数据库应用的服务质量,则可以采取PQ调度方式。
桌面交换机处理完的数据包被发送到网络当中的其它交换机上,其它交换机可以根据数据包当中的IEEE802.1P或IP TOS标记来加以区分其优先级。重复完成上述的(2)、(3)、(4)步过程,这样就可以实现全网端到端的应用级QoS策略。
由于一般的宽带运营商的规模较小,资金实力、技术力量和维护人员不足,所以可能采用更为简单的方式实现全网的QoS策略。这种管理一般以Web页面的形式提供了界面友好的终端用户自助业务。通过终端用户自助,由用户本人管理自己的账号及相关属性信息,定制申请的网络服务,这样既减轻了宽带运营商的工作量和人力成本,又体现了个性化,可以“按需分配”网络资源,优化网络使用。
比如,用户可以根据需要修改自己的网络带宽和QoS优先级策略(不同的网络带宽和QoS优先级对应不同的费率),如1)上网浏览时可以设置较低的网络带宽和QoS优先级;
2)下载文件时可以设置较高的网络带宽,较低的QoS优先级;3)打网络电话时可以设置较低的网络带宽,较高的QoS优先级;4)VOD点播时可以设置较高的网络带宽和QoS优先级。
以上的方法虽然可以保证全网端到端的QoS,但显然存在弊端。为了能够识别IP数据包第四层(TCP/UDP层)及以下的信息,必须要求交换机的处理芯片有强大的运算功能,无形中增加了网络设备的成本。众所周知,相同级别的不同品牌交换机在没有QoS管理的情况下往往并没有多少速度差异,但是在打开QoS管理功能后速度差异就变得非常明显。首先,看QoS管理是通过软件方式实现还是通过硬件方式实现,硬件方式基本可以维持线速上的QoS管理,但价格高昂;软件方式就要使网络性能大大降低,其结果经常是得不偿失。如果让用户自动去设置需要的带宽,无疑增加了用户的负担,不应当把用户作为全网QoS策略的一环。
目前为止没有一种方法能同时兼顾到用户优先级和应用优先级。同时带宽管理的方法仍然处于不断完善之中,目前主要有两种带宽管理方法RSVP和Peak Bandwidth。RSVP为特定应用、IP地址或端口设置了相应的最低速率或最低带宽占用率,从而预留了相应的资源。由于预留了带宽,可以充分保证关键应用或关键用户的网络响应时间,但是在这些特定应用或用户不工作时会造成网络骨干带宽在特定时间的部分带宽闲置,从而增加了高峰时间碰撞和拥塞的机会。随后出现的Peak Bandwidth定义了特定应用、IP地址或端口的最高速率、最大带宽占用率,可以针对低速度的目标网络端口进行优化,避免给速率转换环节造成拥塞和数据包丢失,但是无法保证在数据传输高峰时间的正常响应。
发明内容
为了克服上述现有技术的缺点,本发明的目的是提供一种动态用户优先级管理的方法,该方法可根据用户提出的应用,通过用户主机、应用服务器、网管软件、网管交换机四者之间的相互通讯机制和优先级判断程序,能够动态的分配和回收网络带宽资源,同时保证用户的优先级顺序。
为实现上述目的,本发明采用以下技术方案一种动态用户优先级管理的方法,在网管工作站上的简单网络管理协议网络管理软件中嵌入一个分析配置程序,负责提供对外接口,分析用户优先级的配置策略,对配置信息进行存储,并向交换机发出控制包;该程序由接口控制单元、控制引擎、优先级策略分析和对外接口所组成;在交换机的操作系统中嵌入一个执行程序,该执行程序负责接收网管工作站发出的控制包,并对该控制包进行分析,自动调用相应的简单网络管理协议的控制程序;所述接口控制单元负责控制整个系统的调度运行,从控制引擎、优先级策略分析和对外接口收集系统信息,并对其发送相应的控制命令,还可以通过内部的消息传递与网络管理的其它模块交换消息;所述控制引擎负责进行策略处理,接收控制系统发来的控制消息;所述对外接口用来提供对外的接口,以使其它系统可以利用本系统作一些上层开发;按如下步骤进行动态用户优先级管理1)终端用户向应用服务器提出应用请求;2)由应用服务器通过调用网管工作站上的简单网络管理协议网络管理软件的对外接口部分通知网管软件,告知网管软件目前用户正在使用网络资源,网管软件则根据用户的实际应用请求,通过优先级策略分析确定应该分配给该用户的网络带宽资源;3)通过发送控制消息通知交换机给该用户分配相应的网络带宽资源;4)用户使用完资源后,应用服务器通过调用网管工作站上的简单网络管理协议网络管理软件的对外接口部分通知网管软件该用户的应用请求已经结束,请求回收网络带宽资源;5)网管软件通过发送控制消息通知交换机回收已经分配给该用户的网络带宽资源。
所述控制引擎包括策略存储,用于将用户的优先级策略信息进行结构化存储;策略查询,用于根据需求查询应该提供的服务类别,区分用户优先级;策略分析,负责在收到应用服务器请求时确定需要操作的对象;策略执行,负责根据分析结果,对操作对象发出控制命令,以使其响应操作。
所述优先级策略分析采用用户级QoS、应用级QoS、用户级QoS和应用级QoS相结合三种方式之一。
由于本发明采用了以上的技术方案,故有以下优点1)自动分配和回收网络资源,保证网络的最大利用率。
2)用户和应用两种优先级判断,同时兼顾用户优先级和应用优先级。最大可能性的保证网络端到端的QoS策略。
3)减小用户在边缘交换机上的资金投入,同时减轻了边缘交换机的工作量。边缘交换机可以采用支持网管功能和步进带宽调整的交换机即可以实现以上描述的功能。
4)应用广泛,不仅可以用于驻地网用户优先级管理,同时可以应用于其它承载敏感或特殊应用数据流的网络中去。
图1为现有支持用户优先级的驻地网小区的网络系统结构示意2为本发明的系统组成框3为本发明的处理流程图具体实施方式
动态用户优先级管理的方法可以动态的分配和回收网络交换机的带宽资源,同时可以根据请求服务的用户优先等级分配和回收网络交换机的带宽资源。
用户一旦对应用服务器提出应用请求,应用交换机立即将用户请求的服务类型、用户所在位置信息通过网管软件提供的接口传送给网管软件所在的网管工作站,网管软件通过分析,制定出网络带宽分配的方案,向用户连接的网络交换机发出提高该用户接入的带宽的命令,网络交换机根据网管软件下达的命令,动态的提高该用户接入的带宽。当应用服务器检测出用户已经停止使用应用服务器所提供的应用时,立即将该用户所在位置信息通过网管软件提供的接口传送给网管软件所在的网管工作站,网管软件向用户连接的网络交换机发出降低该用户接入的带宽的命令,网络交换机根据网管软件下达的命令,动态的降低该用户接入的带宽,网络带宽资源被实时有效的回收。在网络比较繁忙的状态下,如果两个用户所请求的服务相同,则考虑用户的优先级,保证处于高优先级的用户可以优先享受到网络带宽资源。
实现动态用户优先级管理有三个要素要考虑,它们是优先级策略、操作对象和操作方法,下面分别进行说明(一)优先级策略这是本发明需要解决的核心问题,管理员在网管软件上设置各种优先级的处理方法,由系统提供相应的配置接口(用户界面),管理员只需要根据网络服务应用的优先级进行设置即可,可以根据应用类型来设定优先级,例如可以将IP语音数据流的优先级设为最高,因为IP语音对于延迟比较敏感,这样可以保证其优先传输;另外也可以根据用户MAC地址/IP地址/VLAN标识,将某些重要用户的优先级设为最高,保证其无延迟地访问网络。也可以将应用优先级和用户优先级综合考虑来制订优先级策略。通过该优先级策略网络管理功能可以很方便地实现全网QoS策略的布置和实施。
这些策略的合理制定是整网实现QoS的重要依据和保障。这些策略将被存储在网管工作站上,便于网管软件随时的进行查询。应用类型的种类可以根据网内所能提供的应用种类进行相应的设置。
(二)操作对象进行网络交换机带宽控制时,需要定位到特定的交换机的特定接口。我们操作的对象包含中心交换机和边缘交换机。
(三)操作方法采用集中--分布的命令方式,向操作对象发出命令包(命令包是标准的SNMP的command类型包),操作对象中的嵌入式软件对命令进行接收、分析并执行。
本发明使用的硬件环境是由应用服务器、网管工作站、交换机和终端用户所组成的局域网。
本发明由两部分组成,一部分是运行在网管工作站上的分析配置程序,该分析配置程序嵌入在网管工作站上的SNMP网络管理软件中;另一部分是运行在交换机上的执行程序,该执行程序嵌入在交换机的操作系统中。
分析配置程序的任务是1)提供用户界面,收集配置信息;2)存储,分析配置信息;3)使管理员的配置生效,有事件发生时分析并向交换机发出相应的控制包;4)提供上层应用接口,接受由应用服务器发送的应用服务请求消息。执行程序的任务是1)接收网管工作站发送的控制包;2)分析控制包,自动调用相应的SNMP的控制程序。
如图2所示,运行在网管工作站上的配置程序由接口控制单元、控制引擎、优先级策略分析和对外接口所组成。
接口控制单元负责控制整个系统的调度运行,从控制引擎、触发条件和对外接口收集系统信息,并对其发送相应的控制命令。还可以通过内部的消息传递与网络管理的其它模块交换消息。
控制引擎负责进行策略处理,接收控制系统发来的控制消息。主要由以下几个部分组成1)策略存储对收集的策略信息进行结构化存储。存储信息保存在ACCESS数据库中。数据库对所有配置进行记录,记录信息由两张表组成,第一张表为应用优先级表,具体包括应用类别,需要使用的带宽资源;第二张表为用户优先级表,具体包括用户使用IP地址、MAC地址、连接的交换机的IP地址、连接的端口号、优先级等级以及策略所需的参数。
2)策略查询当收到应用服务器的请求后,根据应用服务器发送过来的信息,在数据库中查找相应的优先级。
3)策略分析当收到应用服务器的请求后,进行数据分析,确定需要操作的对象。如应用服务器发过来一个某用户需要进行VOD点播的消息,则进行数据库检索,查看该应用被配置的优先级策略,再查看当时的网络状况,以决定如何进行优先级配置策略。
4)策略执行根据分析结果,对操作对象发出控制命令,以使其响应操作。控制命令被分析后,根据SNMP的命令要求,打成SNMP的command包的格式,发送到控制实体(交换机)。
该系统的优先级策略分析可以根据需要采用以下三种方式之一1)用户级QoS以用户的优先级作为判断条件,决定交换机的网络资源分配策略;2)应用级QoS以用户请求的应用服务的优先级作为判断条件,决定交换机的网络资源分配策略;3)用户级QoS和应用级QoS相结合综合考虑用户的优先级和用户请求的应用服务的优先级,以决定交换机的网络资源分配策略。
对外接口主要用来提供对外的接口,应用服务器可以通过对外接口和网管软件进行通讯,同时其它系统可以利用本系统作一些上层开发,如可以开发相应的优先级配置系统。
如图3所示,本实施例所采用的优先级策略分析方式是用户级QoS和应用级QoS两者的结合。当应用服务器判断出有用户请求服务时(如用户要求下载服务),应用服务器通过网管软件的接口,将用户请求的相关信息发送到网管软件,策略分析部分根据用户请求的相关信息对数据库中的存储信息进行检索,查看这个用户请求被配置的设置信息、操作端口和用户所在交换机的资源使用状况,如果资源能够满足,则构造一个SNMP的command包,发给给对应的交换机,以驱动其执行相应的操作,交换机收到命令后,将相应的接口带宽提高或降低,并向网管工作站返回成功的消息。如果资源不能满足,首先检索该用户提出的应用的优先级,将该用户提出的应用的优先级与网络上正在运行的应用的优先级进行比较,若该用户提出的应用的优先级较低,则查询其用户优先级并与网络上的用户比较用户优先级,若提出请求的用户优先级低,则告知该用户其应用请求被取消;若提出请求的用户优先级高,则降低其它低级用户的网络使用带宽,以使该用户提出的应用能够得到满足,如降低其它低级用户接口带宽后的资源能满足,交换机嵌入系统发出指令以提高该用户的接口带宽,并向网管工作站返回成功的消息,当数据流通过后,再降低该用户的接口带宽;若还是不能满足,则通知该用户请求应用服务失败。若该用户提出的应用优先级较高,则向交换机嵌入系统发出降低其它低级应用接口带宽的指令,如降低其它低级应用接口带宽后的资源能满足,交换机嵌入系统发出提高该用户接口带宽的指令以提高该用户的接口带宽,并向网管工作站返回成功的消息,当数据流通过后,再降低该用户的接口带宽;如果降低其它低级应用接口带宽后的资源仍不能满足,则检索其用户优先级,将其用户优先级与网络上用户的优先级进行比较,若提出请求的用户优先级较低,则告诉该用户请求应用服务失败;若提出请求的用户优先级较高,则降低其它低级用户的网络使用带宽,以使该用户提出的应用能够得到满足;若还是不能满足,则通知该用户请求应用服务失败。
下面举例说明假设A用户向应用服务器提出了需要进行VOD点播的请求,应用服务器立即通过网管软件提供的接口向网管软件发出A用户需要进行VOD服务的请求。网管软件接收到此信息,立即通过策略查询,在用户优先级表中找到A用户的相关信息用户名UserA;该用户的优先级是1;该用户所连接的边缘交换机的IP地址是192.168.88.22;接口号是5;该用户的IP地址是192.168.12.35;该用户的MAC地址是12345678。
策略存储系统将这些资料形成一条控制记录存储在数据库中。该记录的相关字段为UserNameuserA
UserRights1DevIP192.168.88.22CtrlPort5UserIP192.168.12.35UserMAC12345678并且同时查找应用优先级表,找出该应用所需的网络资源信息应用类型VOD应用优先级2所需带宽2000Bps策略存储系统将这些资料形成一条控制记录存储在数据库中。该记录的相关字段为AppTypeVODAppRights2AppBandWidth2000此时策略分析,首先查询用户所在交换机的资源使用状况,查看资源是否够用,如果不够,则找出正在使用资源的用户优先级较小且应用优先级也较小的用户,通过策略执行机构相应减小他们的带宽,直到能够满足A用户的需求;如果够用,则通过策略执行机构将A用户接入端口带宽动态增大到2000Bps,保证A用户的所请求的服务得到满足。如果A用户的用户优先级比较低,同时又无法满足A用户的要求,则通知A用户请求此服务失败。
当A用户一旦使用完资源,则由策略执行机构将A用户的带宽相应减小,将A用户占用的资源释放出来。
策略执行根据所需操作的网络交换机的IP地址、需要操作的端口、需要操作的内容(提高或降低该端口的网络带宽),按照SNMP的规范,打成Command类型的数据包,发出。
控制执行这部分由交换机中的SNMP代理来执行。解析命令包,并执行相应的操作(提高或降低该端口的网络带宽)。
以上所述仅为本发明的较佳实施例,本发明的保护范围并不局限于此。任何基于本发明技术方案上的等效变换均属于本发明的保护范围之内。
权利要求
1.一种动态用户优先级管理的方法,其特征在于在网管工作站上的简单网络管理协议网络管理软件中嵌入一个分析配置程序,负责提供对外接口,分析用户优先级的配置策略,对配置信息进行存储,并向交换机发出控制包;该程序由接口控制单元、控制引擎、优先级策略分析和对外接口所组成;在交换机的操作系统中嵌入一个执行程序,该执行程序负责接收网管工作站发出的控制包,并对该控制包进行分析,自动调用相应的简单网络管理协议的控制程序;所述接口控制单元负责控制整个系统的调度运行,从控制引擎、优先级策略分析和对外接口收集系统信息,并对其发送相应的控制命令,还可以通过内部的消息传递与网络管理的其它模块交换消息;所述控制引擎负责进行策略处理,接收控制系统发来的控制消息;所述对外接口用来提供对外的接口,以使其它系统可以利用本系统作一些上层开发;按如下步骤进行动态用户优先级管理1) 终端用户向应用服务器提出应用请求;2) 由应用服务器通过调用网管工作站上的简单网络管理协议网络管理软件的对外接口部分通知网管软件,告知网管软件目前用户正在使用网络资源,网管软件则根据用户的实际应用请求,通过优先级策略分析确定应该分配给该用户的网络带宽资源;3) 通过发送控制消息通知交换机给该用户分配相应的网络带宽资源;4) 用户使用完资源后,应用服务器通过调用网管工作站上的简单网络管理协议网络管理软件的对外接口部分通知网管软件该用户的应用请求已经结束,请求回收网络带宽资源;5) 网管软件通过发送控制消息通知交换机回收已经分配给该用户的网络带宽资源。
2.如权利要求1所述的动态用户优先级管理的方法,其特征在于所述控制引擎包括策略存储,用于将用户的优先级策略信息进行结构化存储;策略查询,用于根据需求查询应该提供的服务类别,区分用户优先级;策略分析,负责在收到应用服务器请求时确定需要操作的对象;策略执行,负责根据分析结果,对操作对象发出控制命令,以使其响应操作。
3.如权利要求1所述的动态用户优先级管理的方法,其特征在于所述优先级策略分析采用用户级QoS、应用级QoS、用户级QoS和应用级QoS相结合三种方式之一。
全文摘要
本发明公开了一种动态用户优先级管理的方法,该方法在网管工作站上的简单网络管理协议网络管理软件中嵌入一个分析配置程序,该程序可提供对外接口,分析用户优先级的配置策略,对配置信息进行存储,并向交换机发出控制包,在交换机的操作系统中嵌入一个执行程序,该执行程序负责接收网管工作站发出的控制包,并对该控制包进行分析,自动调用相应的简单网络管理协议的控制程序。运用该方法可根据用户提出的应用,通过用户主机、应用服务器、网管软件、网管交换机四者之间的相互通讯机制和优先级判断程序,能够动态的分配和回收网络带宽资源,同时保证用户的优先级顺序。
文档编号G06F9/44GK1527538SQ0310513
公开日2004年9月8日 申请日期2003年3月5日 优先权日2003年3月5日
发明者孔增, 孔 增 申请人:北京全向科技有限公司