OpenFlow网络中实现QoS的方法、系统和相关设备的制作方法

文档序号:8004535阅读:305来源:国知局
OpenFlow网络中实现QoS的方法、系统和相关设备的制作方法
【专利摘要】本发明公开了一种OpenFlow网络中实现服务质量QoS的方法,包括:OpenFlow配置点根据QoS需求生成QoS配置信息,将QoS配置信息发送给OpenFlow交换机,并将QoS配置信息发送给OpenFlow控制器或供OpenFlow控制器查询相关QoS配置信息;OpenFlow交换机根据QoS配置信息生成多层QoS配置树模型;OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求的流表条目,并将携带报文分类标识的流表条目发送给OpenFlow交换机;OpenFlow交换机根据流表条目和所述多层QoS配置树模型执行多层QoS流量管理策略。本发明同时还公开了一种OpenFlow网络中实现QoS的系统和相关设备。采用本发明的技术方案,实现了多层QoS所要求的多层队列调度。
【专利说明】OpenFlow网络中实现QoS的方法、系统和相关设备

【技术领域】
[0001] 本发明涉及通信技术,具体涉及一种OpenFlow网络中实现QoS的方法、系统和相 关设备。

【背景技术】
[0002] 在当今的数据通信网络中,不管是局域网、城域网还是广域网,服务质量(QoS, Quality of Service)机制都是非常重要并且常用的。网络的QoS机制是指网络针对各种 业务应用的不同需求,为其提供不同的服务质量保证,如带宽、丢包率、延迟和延迟抖动等, 以实现同时承载数据、语音和视频等多种业务的综合网络。图1为现有技术中网络设备实 现QoS的业务流量处理流程示意图,如图1所示,现有技术中网络的QoS主要包括以下四个 步骤:一、流分类和流标记。流是一组具有相同特性的数据报文,流分类就是按照一定的流 划分规则(例如基于端口或基于报文的某些字段值)对进入网络的业务流量进行分类。流标 记就是给流分类后的业务报文设置网络内的服务等级和优先级标记,以实现不同业务流的 QoS区分。二、流量测量、着色和监管。该步骤就是在完成流分类和流标记之后,对业务流进 行速率测量(Metering),同时根据流量的到达速率、配置的保证通过速率(CIR,Committed Information Rate)和最大允许速率(PIR,Peak Information Rate)给输入的报文进行 着色和速率限制。具体来说,报文着色和速率限制通常会采用互联网工程任务组(IETF, Internet Engineering Task Force)的标准RFC2698所规定的双速率三色标记(TrTCM,Two rate Three Color Marker)算法,该算法将不超过CIR的报文标记为绿色,将超过CIR而不 超过PIR的报文标记为黄色,将超过PIR的报文标记为红色,再通过丢弃红色报文实现业务 流的速率限制。三、队列拥塞管理和调度。经过流量测量、着色和监管的业务流量会进入不 同等级的缓存队列,这个过程被称为排队(Queuing)。队列拥塞管理就是监控队列缓存,通 过尾丢弃(TD,Tail Drop)、随机早期探测(RED, Random Early Detection)或加权随机早 期探测(WRED,Weighted Random Early Detection)等报文丢弃方式(也被称为拥塞策略) 来预见并避免拥塞的发生。队列调度(Scheduling)就是从代表不同业务等级的缓存队列 中选择报文并将这些报文以特定的顺序放入输出队列中,即针对不同队列所缓存报文的出 队顺序进行调度,以最大程度避免拥塞和满足高优先级业务流量的出队,常用的队列调度 算法包括:严格优先级队列(SPQ,Strict Priority Queue)调度算法、加权公平队列(WFQ, Weighted Fair Queue)调度算法和差额加权轮询(DWRR,Deficit Weighted Round Robin) 调度算法等。四、流量整形和优先级重写。经过队列调度后的流量一般会通过漏桶机制实现 流量整形,流量整形与流量监管一样完成流量速率限制的功能,二者的区别在于流量整形 不会像流量监管一样对于超出限制速率的流量直接丢弃,而是会先将这些流量缓存起来, 并在合适的时候再将缓存的报文发送出去。这使得流量能保持一个比较均匀的速率,有助 于降低下游网络节点由于突发流量导致丢包的概率。在业务流量从出端口发送出去之前, 除了完成流量整形,还可以对报文的优先级进行重写,以影响下游网络节点的QoS处理。
[0003] 网络的QoS功能既可以用于实现单层QoS,也可以用于实现层次化QoS (HQoS, Hierarchical QoS)。单层QoS只能基于端口进行业务带宽控制和队列调度,无法实现同时 对不同用户及不同用户中不同服务等级业务进行流量管理,而层次化QoS则可以实现。图 2为现有技术中层次化QoS分层流量管理模型示意图,如图2所示,层次化QoS实现了端口 级、用户组级、用户级和业务级的四级流量管理,通过物理端口实现了按端口级别的第一级 调度;通过用户组实现了按用户组级别的第二级调度;通过用户实现了按用户级别的第三 级调度;通过每个用户的业务实现了按用户业务级别的第四级调度。层次化QoS通过分层 实现带宽控制和队列调度等QoS机制,可以在复杂的组网和分层的业务模型中,对每一层 的带宽分配进行精细控制,达到保证端到端业务QoS的目的。图3为现有技术中单层QoS 和层次化QoS调度机制对比示意图,如图3 (a)所示,单层QoS调度指的是整个QoS处理过 程只使用一个调度器(Scheduler),只能完成一层QoS调度。如图3 (b)所不,层次化QoS 调度指的是整个QoS处理过程使用多个调度器,可以完成多层QoS调度,例如图3 (b)中层 次化QoS使用了三个调度器,完成了两层调度。基于上述层次化QoS具备相对于单层QoS 的明显技术优势,在国际标准组织宽带论坛(BBF,Broadband Forum)于2011年7月发布的 TR-IOl (第二版)标准中,明确提出了要求网络设备支持层次化QoS的能力,而且目前已经 有越来越多的商用网络设备能够支持层次化QoS的能力。
[0004] 但是,根据目前OpenFlow交换机规范的规定,QoS功能中的流量测量、着色和监管 功能都可以在OpenFlow交换机报文处理流程的中间作为指令Instruction执行,但排队和 队列调度功能都只能在OpenFlow交换机报文处理流程的最后作为动作Action执行,这就 使得OpenFlow交换机只能实现基于端口的单层队列调度,无法实现多层QoS所要求的多层 队列调度。
[0005] 针对上述OpenFlow交换机无法实现多层QoS的问题,目前尚未有现有技术方案可 供参考。


【发明内容】

[0006] 有鉴于此,本发明的主要目的在于提供一种OpenFlow网络中实现QoS的方法、系 统和相关设备,能够实现多层QoS所要求的多层队列调度。
[0007] 为达到上述目的,本发明的技术方案是这样实现的:
[0008] 本发明提供了一种OpenFlow网络中实现服务质量QoS的方法,所述OpenFlow网 络中包括:〇penFlow配置点、OpenFlow交换机和OpenFlow控制器;所述方法包括:
[0009] OpenFlow配置点根据QoS策略生成QoS配置信息,将所述QoS配置信息发送给 OpenFlow交换机,并将所述QoS配置信息发送给OpenFlow控制器或供OpenFlow控制器查 询相关QoS配置信息;
[0010] 所述OpenFlow交换机根据所述QoS配置信息生成多层QoS配置树模型;
[0011] 所述OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求的流表条 目,并将携带报文分类标识的流表条目发送给所述OpenFlow交换机;
[0012] 所述OpenFlow交换机根据所述流表条目和所述多层QoS配置树模型执行多层QoS 流量管理策略。
[0013] 上述方案中,所述OpenFlow配置点根据QoS策略生成QoS配置信息,包括:
[0014] OpenFlow配置点根据OpenFlow控制器或应用层APP提交的QoS需求形成QOS策 略,为所述QoS策略分配流量管理资源并设置所述资源的挂接关系,根据所述资源挂接关 系生成QoS配置信息。
[0015] 上述方案中,所述OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需 求的流表条目,包括:
[0016] 所述OpenFlow控制器根据业务需求生成流表条目,将所述QoS配置信息提供给有 相应QoS策略需求的流表条目,并在所述流表条目的指令动作中设定关联的流队列标识。
[0017] 上述方案中,所述OpenFlow配置点根据QoS策略生成QoS配置信息之前,所述方 法还包括:
[0018] OpenFlow配置点与OpenFlow交换机建立链接后,通过OF-Config协议的 Get-config消息获取所述OpenFlow交换机的流量管理TM子模块的资源信息;
[0019] 所述TM子模块的资源信息包括以下信息至少之一:流队列数量、调度器数量。
[0020] 上述方案中,所述OpenFlow交换机根据所述QoS配置信息生成多层QoS配置树模 型,包括:
[0021] 所述OpenFlow交换机的TM子模块根据所述QoS配置信息生成多层QoS配置树模 型。
[0022] 上述方案中,所述OpenFlow交换机根据所述流表条目和所述多层QoS配置树模型 执行多层QoS流量管理策略,包括 :
[0023] OpenFlow交换机匹配输入报文与所述流表条目的报文分类标识,确定匹配成功 后,获取相应的流表条目中关联的流队列标识,根据所述流队列标识进入所述TM子模块按 照所述多层QoS配置树模型执行QoS策略,进行流量限速和/或流量调度和/或流量整形 和/或流量拥塞丢包操作,所述输入报文在TM子模块根据QoS策略处理后输出、或缓存、或 丢弃。
[0024] 本发明还提供了一种OpenFlow交换机,所述OpenFlow交换机包括:QoS配置接收 模块、QoS配置映射模块和QoS策略执行模块;其中,
[0025] 所述QoS配置接收模块,用于接收OpenFlow配置点发送的QoS配置信息,将所述 QoS配置信息发送给所述QoS配置映射模块;还用于接收OpenFlow控制器发送的携带报文 分类标识的流表条目;
[0026] 所述QoS配置映射模块,用于根据所述QoS配置信息在对应的QoS策略执行模块 上对应生成多层QoS配置树模型;
[0027] 所述QoS策略执行模块,用于根据所述QoS配置接收模块接收的携带报文分类标 识的流表条目和所述QoS配置映射模块生成的多层QoS配置树模型执行多层QoS流量管理 策略。
[0028] 上述方案中,所述QoS策略执行模块包括:流表匹配子模块、标识获取子模块和流 量管理TM子模块;其中,
[0029] 所述流表匹配子模块,用于匹配输入报文的报文分类标识与所述接收模块接收的 流表条目的报文分类标识;
[0030] 所述标识获取子模块,用于当所述流表匹配子模块匹配一致后,执行相应的流表 条目的指令动作,并从设置流队列标识的指令动作中获取关联的流队列标识,根据所述流 队列标识将报文从相应的流队列导入到流量管理子模块,所述流队列标识直接对应流量管 理子模块上的相应的预先生成的QoS配置树模型;
[0031] 所述流量管理子模块,用于根据所述QoS配置映射模块预先生成的多层QoS配置 树模型执行QoS策略,进行流量限速和/或流量调度和/或流量整形和/或流量拥塞丢包 操作,并决定所述输入报文从指定接口输出、或缓存、或丢弃。
[0032] 本发明还提供了一种OpenFlow配置点,所述OpenFlow配置点包括:生成模块和发 送模块;其中,
[0033] 所述生成模块,用于根据QoS策略生成QoS配置信息;
[0034] 所述发送模块,用于将所述生成模块生成的QoS配置信息发送给OpenFlow交换 机;用于将所述生成模块生成的QoS配置信息发送给OpenFlow控制器。
[0035] 上述方案中,所述OpenFlow配置点还包括获取模块,用于通过OF-Config协议的 Get-config消息获取所述OpenFlow交换机的流量管理TM子模块的资源信息;所述TM子 模块的资源信息包括以下信息至少之一:流队列数量、调度器数量。
[0036] 上述方案中,所述生成模块,具体用于根据OpenFlow控制器或应用层APP提交的 QoS需求形成QoS策略,为所述QoS策略分配流量管理资源并设置所述资源的挂接关系,根 据所述资源挂接关系生成QoS配置信息。
[0037] 本发明还提供了一种OpenFlow控制器,所述OpenFlow控制器包括:获取模块、流 表条目生成模块和发送模块;其中,
[0038] 所述获取模块,用于接收OpenFlow配置点发送的QoS配置信息,或向OpenFlow配 置点查询相关的QoS配置信息,将所述QoS配置信息发送给流表条目生成模块;
[0039] 所述流表条目生成模块,用于将所述QoS配置信息提供给有相应QoS策略需求的 流表条目并生成流表条目;
[0040] 所述发送模块,用于将所述流表条目生成模块生成的携带报文分类标识的流表条 目发送给OpenFlow交换机。
[0041] 上述方案中,所述流表条目生成模块,具体用于根据业务需求生成流表条目,将所 述QoS配置信息提供给有相应QoS策略需求的流表条目,并在所述流表条目的指令动作中 设定关联的流队列标识。
[0042] 本发明还提供了一种OpenFlow网络实现服务质量QoS的系统,所述系统包括本发 明所述的OpenFlow交换机、本发明所述的OpenFlow配置点和本发明所述的OpenFlow控制 器。
[0043] 本发明实施例提供的OpenFlow网络中实现QoS的方法、系统和相关设备, OpenFlow配置点根据QoS需求生成QoS配置信息,将所述QoS配置信息发送给OpenFlow交 换机,并将所述QoS配置信息发送给OpenFlow控制器或供OpenFlow控制器查询相关QoS 配置信息;所述OpenFlow交换机根据所述QoS配置信息生成多层QoS配置树模型;所述 OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求的流表条目,并将携带报 文分类标识的流表条目发送给所述OpenFlow交换机;所述OpenFlow交换机根据所述流表 条目和所述多层QoS配置树模型执行多层QoS流量管理策略。采用本发明的技术方案,通 过扩展现有的OF-Conf ig协议,将单层或多层QoS的配置信息写入TM子模块,生成相应的 单层或多层QoS配置树模型,实现了多层QoS所要求的多层队列调度;并且,将流表管道和 TM子模块分开实现,串联处理,避免了流表管道和TM子模块交织导致的高速总线带宽的消 耗。

【专利附图】

【附图说明】
[0044] 图1为现有技术中网络设备实现QoS的业务流量处理流程示意图;
[0045] 图2为现有技术中层次化QoS分层流量管理模型示意图;
[0046] 图3 (a)和图3 (b)为现有技术中单层QoS和层次化QoS调度机制对比示意图;
[0047] 图4为本发明实施例一的OpenFlow网络中实现QoS的方法流程示意图;
[0048] 图5为本发明实施例一的QoS配置树模型的示意图;
[0049] 图6为本发明实施例一的OpenFlow流表格式的示意图;
[0050] 图7为本发明实施例一的OpenFlow网络中实现QoS的系统组成结构示意图;
[0051] 图8为本发明实施例二的OpenFlow网络中实现多层QoS的应用场景的网络拓扑 示意图;
[0052] 图9为本发明实施例二的多层QoS应用的配置树模型的示意图;
[0053] 图10为本发明实施例三的多层QoS应用的配置树模型的示意图。

【具体实施方式】
[0054] 下面结合附图及具体实施例对本发明作进一步详细的说明。
[0055] 图4为本发明实施例一的OpenFlow网络中实现QoS的方法流程示意图,如图4所 示,包括以下步骤:
[0056] 步骤401 =OpenFlow配置点根据QoS策略生成QoS配置信息,将所述QoS配置信息 发送给OpenFlow交换机,并将所述QoS配置信息发送给OpenFlow控制器或供OpenFlow控 制器查询相关QoS配置信息。
[0057] 这里,所述OpenFlow配置点根据QoS策略生成QoS配置信息之前,所述方法还包 括:
[0058] OpenFlow配置点和OpenFlow交换机建链后,通过OF-Config协议的Get-config 消息获取所述OpenFlow交换机的流量管理(TM, Traffic Manage)模块的资源信息;
[0059] 所述TM子模块的资源信息包括但不限于:流队列数量、调度器数量。
[0060] 这里,所述OpenFlow配置点根据QoS策略生成QoS配置信息,包括:
[0061] OpenFlow配置点根据OpenFlow控制器或应用层(APP)提交的QoS需求形成QoS 策略,为所述QoS策略分配流量管理资源并设置所述资源的挂接关系,根据所述资源挂接 关系生成QoS配置信息。
[0062] 步骤402 :所述OpenFlow交换机根据所述QoS配置信息生成多层QoS配置树模型。
[0063] 这里,所述OpenFlow交换机内部的OpenFlow接口接收到所述QoS配置信息后,将 所述QoS配置信息发送至所述交换机内部下游的TM子模块,所述TM子模块根据所述QoS 配置信息生成QoS配置树模型。
[0064] 图5为本发明实施例一的QoS配置树模型的示意图,如图5所示,所述QoS配置 树模型中,汇聚的树枝节点以调度器号码(Scheduler ID)来识别,叶子节点以流队列号 码(Flow-Queue ID)来识别。多层QoS配置树模型在OF-Config协议中下发时表现为在 Scheduler ID下嵌套 Scheduler ID,并在 Scheduler ID下携带有所调度的Flow-Queue ID, 由此实现多层QoS功能。例如图5中所示的,Scheduler3的端口的总调度来保证当端口拥塞 时每个用户的带宽,Queue3挂接到Scheduler3的高优先级上;Schedulerl和Scheduler〗 分别挂接到Scheduler3的低优先级上,Queuel和Queue2分别挂接到Schedulerl的第一 队列和第二队列上,根据Queuel和Queue2的业务类型或设置分配Queuel和Queue2的相 关参数;Queue4和Queue5分别挂接到Scheduler〗的第一队列和第二队列上,根据Queue4 和Queue5的业务类型或设置分配Queue4和Queue5的相关参数。
[0065] 步骤403 :所述OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求 的流表条目,并将携带报文分类标识的流表条目发送给所述OpenFlow交换机。
[0066] 这里,所述OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求的流 表条目,包括:
[0067] 所述OpenFlow控制器根据特定的业务需求生成流表条目,将所述QoS配置信息 提供给有相应QoS策略需求的流表条目,并在所述流表条目的指令动作中设定关联的流 队列标识,所述流队列标识对应多层QoS配置树的指定叶子节点入口,具体的,在指令动作 (Action)中携带Flow-Queue ID,所述Flow-QueueID对应图5本发明实施例一的QoS配置 树模型的示意图中的的叶子节点。
[0068] 具体的,图6为本发明实施例一的OpenFlow流表格式的示意图,如图6所示,流 表中可以包含多个流表条目(Flow Table Entry),包括:匹配字段(MatchFields)、优先级 (Priorlity)、计数器(Counters)、指令(Instructions)、超时时限(Timeouts)、状态信息 (Cookie)等。其中,匹配字段可以是报文头中的任意字段,包括:地址字段、用户标识字段、 服务优先级字段、报文分类标识字段等。
[0069] 步骤404 :所述OpenFlow交换机根据所述流表条目和所述多层QoS配置树模型执 行多层QoS流量管理策略。
[0070] 这里,所述OpenFlow交换机根据所述流表条目和所述多层QoS配置树模型执行多 层QoS流量管理策略,包括 :
[0071] OpenFlow交换机匹配输入的报文与所述流表条目的报文分类标识,确定匹配成功 后,获取相应的流表条目中关联的流队列标识,根据所述流队列标识进入所述TM子模块按 照所述多层QoS配置树模型执行QoS策略,进行流量限速和/或流量调度和/或流量整形 和/或流量拥塞丢包操作,所述输入报文在TM子模块根据QoS策略处理后输出,或缓存,或 丢弃。
[0072] 具体的,进入OpenFlow交换机的报文,所述报文的报文分类标识与流表条目 的报文分类标识匹配成功后,执行后续的指令动作(Action),当所述指令动作中有Set Flow-Queue ID时,则根据设置的Flow-Queue ID,在TM子模块中执行多层QoS流量管理策 略,按所述多层QoS配置树模型的设置进行报文的输出;或是当发生拥塞时,根据调度器和 /或流队列的丢包策略,进行流量限速和/或流量调度和/或流量整形和/或流量拥塞丢包 操作,按优先级由低到高执行报文的丢弃,或缓存,或输出。
[0073] 基于上述方法,本发明还提供了一种OpenFlow网络中实现QoS的系统,图7为本 发明实施例一的OpenFlow网络中实现QoS的系统组成结构示意图,如图7所示,所述系统 包括:0penFlow交换机10、OpenFlow配置点20和OpenFlow控制器30 ;
[0074] 所述OpenFlow交换机10包括:QoS配置接收模块IUQoS配置映射模块12和QoS 策略执行模块13;其中,
[0075] 所述QoS配置接收模块11,用于接收OpenFlow配置点20发送的QoS配置信息, 将所述QoS配置信息发送给所述QoS配置映射模块12 ;还用于接收OpenFlow控制器30发 送的携带报文分类标识的流表条目;所述QoS配置接收模块11 一般是OF-Config协议和 OpenFlow协议的处理模块;
[0076] 所述QoS配置映射模块12,用于根据所述QoS配置信息在对应的QoS策略执行模 块13上对应生成多层QoS配置树模型;所述QoS配置映射模块12充当QoS配置接收模块 11和QoS策略执行模块13的适配层;
[0077] 所述QoS策略执行模块13,用于根据所述QoS配置接收模块11接收的携带报文分 类标识的流表条目和所述QoS配置映射模块12生成的多层QoS配置树模型执行多层QoS 流量管理策略。所述QoS策略执行模块13可以是专门的硬件模块和芯片。
[0078] 优选地,所述QoS策略执行模块13包括:流表匹配子模块131、标识获取子模块 132、TM子模块133 ;其中,
[0079] 所述流表匹配子模块131,用于匹配输入报文的报文分类标识与所述接收模块11 接收的流表条目的报文分类标识;
[0080] 所述标识获取子模块132,用于当所述流表匹配子模块131匹配一致后,执行相应 的流表条目的指令动作,并从设置流队列标识的指令动作中获取关联的流队列标识,根据 所述流队列标识将报文从相应的流队列导入到TM子模块133,所述流队列标识直接对应TM 子模块133上的预先生成的QoS配置树模型;
[0081] 所述TM子模块133,用于根据所述QoS配置映射模块12预先生成的多层QoS配置 树模型执行QoS策略,进行流量限速和/或流量调度和/或流量整形和/或流量拥塞丢包 操作,并决定所述输入报文从指定接口输出、或缓存、或丢弃。
[0082] 所述OpenFlow配置点20包括:生成模块21和发送模块22 ;其中,
[0083] 所述生成模块21,用于根据QoS策略生成QoS配置信息;
[0084] 所述发送模块22,用于将所述生成模块21生成的QoS配置信息发送给OpenFlow 交换机10 ;用于将所述生成模块21生成的QoS配置信息发送给OpenFlow控制器30。
[0085] 优选地,所述OpenFlow配置点20还包括获取模块23,用于通过OF-Conf ig协议的 Get-config消息获取所述OpenFlow交换机10的TM子模块133的资源信息;所述TM子模 块133的资源信息包括以下信息至少之一:流队列数量、调度器数量。
[0086] 优选地,所述生成模块21,具体用于根据OpenFlow控制器30或APP提交的需求形 成QoS策略,为所述QoS策略分配流量管理资源并设置所述资源的挂接关系,根据所述资源 挂接关系生成QoS配置信息。
[0087] 所述OpenFlow控制器30包括:获取模块31、流表条目生成模块32和发送模块33 ; 其中,
[0088] 所述获取模块31,用于接收OpenFlow配置点20发送的QoS配置信息,或向 OpenFlow配置点20查询相关的QoS配置信息,将所述QoS配置信息发送给流表条目生成模 块32 ;
[0089] 所述流表条目生成模块32,用于将所述QoS配置信息提供给有相应QoS策略需求 的流表条目并生成流表条目;
[0090] 所述发送模块33,用于将所述流表条目生成模块32生成的携带报文分类标识的 流表条目发送给OpenFlow交换机10。
[0091] 优选地,所述流表条目生成模块32,具体用于根据业务需求生成流表条目,将所述 QoS配置信息提供给有相应QoS策略需求的流表条目,并在所述流表条目的指令动作中设 定关联的流队列标识。
[0092] 下面以具体的实施例对本发明再作进一步详细的说明
[0093] 实施例一:
[0094] 图8为本发明实施例二的OpenFlow网络中实现多层QoS的应用场景的网络拓扑 示意图,如图8所示,接口 Intl和接口 Int2为输入端,用于与用户终端接入;接口 Int3为 输出端,接口带宽为1G。
[0095] 图9为本发明实施例二的多层QoS应用的配置树模型的示意图,结合图8和图9, 接口 Intl和接口 Int2总共接入四个用户,分别为:用户I (userl)、用户2 (user2)、用户 3 (user3)和用户4 (user4)。所述四个用户的QoS要求如下:
[0096] userl优先通过,最大带宽500M ;
[0097] user2保证速率300M,可以大于300M ;
[0098] user3保证速率100M,突发速率150M ;
[0099] user4保证速率100M,突发速率150M。
[0100] 本实施例中,OpenFlow网络实现QoS的方法包括如下步骤:
[0101] 步骤一 :0penFlow配置点和OpenFlow交换机建立链接后,通过OF-Config协议的 Get-config消息获取所述OpenFlow交换机的TM子模块的资源信息,所述TM子模块的资源 信息包括流队列数量、各种类型调度器数量等等。所述OpenFlow配置点获取所述TM子模 块的资源信息以便于后续生成QoS配置信息。
[0102] 步骤二:0penFlow配置点根据OpenFlow控制器或APP提交的上述四个用户的QoS 要求分配流量管理资源并设置所述资源的挂接关系,根据所述资源挂接关系生成QoS配置 信息,将所述配置信息分别发送给OpenFlow交换机和OpenFlow控制器。
[0103] 具体的,通过多层QoS实现上述要求,实现方式如下:
[0104] 1、在Int3下行配置多层QoS,以调度器Schedulerl的Int3端口的总调度来保证 当端口拥塞时可以保证每个用户的带宽,所述Schedulerl为SPQ类型。
[0105] 2、Userl 的 Flow-Queue 限速 500M,挂接到 Schedulerl 高优先级上。
[0106] 3、分配一个调度器Scheduler2挂接到Schedulerl低优先级上,所述Scheduler〗 为WFQ类型。
[0107] 4、User2的Flow-Queue的CIR参数配置为300M,挂接到Scheduler2第一个队列 上,权重参数设置为60%。
[0108] 5、分配一个调度器Scheduler3挂接到Scheduler〗第二个队列上,权重设置为 40% ;所述 Scheduler3 为公平队列(FQ,Fair Queuing)类型。
[0109] 6、User3的Flow-Queue的CIR参数配置为100M,PIR参数配置为150M,挂接到 Scheduler3的第一个队列上。
[0110] 7、User4的Flow-Queue的CIR参数配置为100M,PIR参数配置为150M,挂接到 Scheduler3的第二个队列上。
[0111] 步骤三,OpenFlow交换机接收到上述四个用户的QoS配置信息,在TM子模块上形 成QoS配置树模型。
[0112] 具体的,所述QoS配置树模型的可扩展标记语言(XML,Extensible MarkupLanguage)数据形式如下所示:

【权利要求】
1?一种OpenFlow网络中实现服务质量QoS的方法,其特征在于,所述OpenFlow网络中 包括:0penFlow配置点、OpenFlow交换机和OpenFlow控制器;所述方法包括: OpenFlow配置点根据QoS策略生成QoS配置信息,将所述QoS配置信息发送给 OpenFlow交换机,并将所述QoS配置信息发送给OpenFlow控制器或供OpenFlow控制器查 询相关QoS配置信息; 所述OpenFlow交换机根据所述QoS配置信息生成多层QoS配置树模型; 所述OpenFlow控制器将所述QoS配置信息提供给有相应QoS策略需求的流表条目,并 将携带报文分类标识的流表条目发送给所述OpenFlow交换机; 所述OpenFlow交换机根据所述流表条目和所述多层QoS配置树模型执行多层QoS流 量管理策略。
2. 根据权利要求1所述的方法,其特征在于,所述OpenFlow配置点根据QoS策略生成 QoS配置信息,包括: OpenFlow配置点根据OpenFlow控制器或应用层APP提交的QoS需求形成Q0S策略,为 所述QoS策略分配流量管理资源并设置所述资源的挂接关系,根据所述资源挂接关系生成 QoS配置信息。
3. 根据权利要求1所述的方法,其特征在于,所述OpenFlow控制器将所述QoS配置信 息提供给有相应QoS策略需求的流表条目,包括: 所述OpenFlow控制器根据业务需求生成流表条目,将所述QoS配置信息提供给有相应 QoS策略需求的流表条目,并在所述流表条目的指令动作中设定关联的流队列标识。
4. 根据权利要求1所述的方法,其特征在于,所述OpenFlow配置点根据QoS策略生成 QoS配置信息之前,所述方法还包括: OpenFlow配置点与OpenFlow交换机建立链接后,通过OF-Config协议的Get-config 消息获取所述OpenFlow交换机的流量管理TM子模块的资源信息; 所述TM子模块的资源信息包括以下信息至少之一:流队列数量、调度器数量。
5. 根据权利要求4所述的方法,其特征在于,所述OpenFlow交换机根据所述QoS配置 信息生成多层QoS配置树模型,包括: 所述OpenFlow交换机的TM子模块根据所述QoS配置信息生成多层QoS配置树模型。
6. 根据权利要求1至5任一项所述的方法,其特征在于,所述OpenFlow交换机根据所 述流表条目和所述多层QoS配置树模型执行多层QoS流量管理策略,包括: OpenFlow交换机匹配输入报文与所述流表条目的报文分类标识,确定匹配成功后,获 取相应的流表条目中关联的流队列标识,根据所述流队列标识进入所述TM子模块按照所 述多层QoS配置树模型执行QoS策略,进行流量限速和/或流量调度和/或流量整形和/或 流量拥塞丢包操作,所述输入报文在TM子模块根据QoS策略处理后输出、或缓存、或丢弃。 7?-种OpenFlow交换机,其特征在于,所述OpenFlow交换机包括:QoS配置接收模块、 QoS配置映射模块和QoS策略执行模块;其中, 所述QoS配置接收模块,用于接收OpenFlow配置点发送的QoS配置信息,将所述QoS 配置信息发送给所述QoS配置映射模块;还用于接收OpenFlow控制器发送的携带报文分类 标识的流表条目; 所述QoS配置映射模块,用于根据所述QoS配置信息在对应的QoS策略执行模块上对 应生成多层QoS配置树模型; 所述QoS策略执行模块,用于根据所述QoS配置接收模块接收的携带报文分类标识的 流表条目和所述QoS配置映射模块生成的多层QoS配置树模型执行多层QoS流量管理策 略。
8.根据权利要求7所述OpenFlow交换机,其特征在于,所述QoS策略执行模块包括: 流表匹配子模块、标识获取子模块和流量管理TM子模块;其中, 所述流表匹配子模块,用于匹配输入报文的报文分类标识与所述接收模块接收的流表 条目的报文分类标识; 所述标识获取子模块,用于当所述流表匹配子模块匹配一致后,执行相应的流表条目 的指令动作,并从设置流队列标识的指令动作中获取关联的流队列标识,根据所述流队列 标识将报文从相应的流队列导入到流量管理子模块,所述流队列标识直接对应流量管理子 模块上的相应的预先生成的QoS配置树模型; 所述流量管理子模块,用于根据所述QoS配置映射模块预先生成的多层QoS配置树模 型执行QoS策略,进行流量限速和/或流量调度和/或流量整形和/或流量拥塞丢包操作, 并决定所述输入报文从指定接口输出、或缓存、或丢弃。 9?一种OpenFlow配置点,其特征在于,所述OpenFlow配置点包括:生成模块和发送模 块;其中, 所述生成模块,用于根据QoS策略生成QoS配置信息; 所述发送模块,用于将所述生成模块生成的QoS配置信息发送给OpenFlow交换机;用 于将所述生成模块生成的QoS配置信息发送给OpenFlow控制器。
10. 根据权利要求9所述的OpenFlow配置点,其特征在于,所述OpenFlow配置点还包 括获取模块,用于通过〇F-Config协议的Get-config消息获取所述OpenFlow交换机的流 量管理TM子模块的资源信息;所述TM子模块的资源信息包括以下信息至少之一:流队列 数量、调度器数量。
11. 根据权利要求9所述的OpenFlow配置点,其特征在于,所述生成模块,具体用于根 据OpenFlow控制器或应用层APP提交的QoS需求形成QoS策略,为所述QoS策略分配流量 管理资源并设置所述资源的挂接关系,根据所述资源挂接关系生成QoS配置信息。 12?-种OpenFlow控制器,其特征在于,所述OpenFlow控制器包括:获取模块、流表条 目生成模块和发送模块;其中, 所述获取模块,用于接收OpenFlow配置点发送的QoS配置信息,或向OpenFlow配置点 查询相关的QoS配置信息,将所述QoS配置信息发送给流表条目生成模块; 所述流表条目生成模块,用于将所述QoS配置信息提供给有相应QoS策略需求的流表 条目并生成流表条目; 所述发送模块,用于将所述流表条目生成模块生成的携带报文分类标识的流表条目发 送给OpenFlow交换机。
13. 根据权利要求12所述的OpenFlow控制器,其特征在于,所述流表条目生成模块,具 体用于根据业务需求生成流表条目,将所述QoS配置信息提供给有相应QoS策略需求的流 表条目,并在所述流表条目的指令动作中设定关联的流队列标识。
14. 一种OpenFlow网络实现服务质量QoS的系统,其特征在于,所述系统包括权利要求 7或8所述的OpenFlow交换机、权利要求9至11任一项所述的OpenFlow配置点和权利要 求12或13所述的OpenFlow控制器。
【文档编号】H04L12/851GK104378309SQ201310359387
【公开日】2015年2月25日 申请日期:2013年8月16日 优先权日:2013年8月16日
【发明者】梁乾灯, 廖婷, 于波, 肖敏 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1