基于软件定义网络下面向不同流的带宽控制方法

文档序号:7797696阅读:446来源:国知局
基于软件定义网络下面向不同流的带宽控制方法
【专利摘要】本发明公开了一种基于软件定义网络(Software-defined?networking,SDN)面向不同类型流的带宽控制方法。该方法识别不同类型的流并提供智能的带宽分配方案,克服了传统方法控制复杂和反应慢的问题。在SDN架构下,通过控制器实现全网的带宽控制,实现过程简单、高效,有效地提高了带宽利用率并智能提供差异化带宽分配,应用于SDN网络中面向不同类型流的带宽控制。
【专利说明】基于软件定义网络下面向不同流的带宽控制方法
【技术领域】
[0001]本发明属于网络服务质量(Quality of Service, QoS)领域,具体涉及一种基于软件定义网络(Software-defined networking, SDN)面向不同类型流的带宽控制方法。
【背景技术】
[0002]随着信息技术的发展,互联网网上用户和业务流量都在不断增长,人们对网络有着各种不同的需求,网络电话、网络视频、P2P下载、游戏等新型网络应用很受大家欢迎。在传统的IP网络中,所有的报文都被无区别的等同对待,每个转发设备对所有的报文均采用先入先出(FIFO)的策略进行处理,它尽最大的努力(Best-Effort)将报文送到目的地。这就造成了网络中语音、视频、点到点下载流量、游戏数据占用了大量带宽,用户的重要业务可能无法正常完成,比如网上银行,电子邮件,在线课程等。区分不同的应用流,并为其分配不同的带宽,以此来提高用户服务质量,在有限带宽下保证高优先级任务的完成。
[0003]目前各大通讯设备厂商对不同流的带宽控制都有一定研究,但主要集中在对P2P流量的控制。部分厂商在IPv4、IPv6、二层以太网中对流量进行分类和标记,将数据报文划分为多个优先级或多个服务类,这类设备一般控制比较复杂且价格昂贵。当前带宽控制方法有如下特点:大多数带宽控制设备一般装配在出口网关,不能进行全网的控制;设备的控制策略一般需要手工设置,不能根据具体情况来动态调整。
[0004]OpenFlow实现了数据层和控制层的分离,其中OpenFlow交换机进行数据层的转发,而Controller实现了控制层的功能。Controller通过OpenFlow协议这个标准接口对OpenFlow交换机中的流表进行控制,从而实现对整个网络进行集中控制。流表由很多个流表项组成,每个流表项就是一个转发规则。进入交换机的数据包通过查询流表来获得转发的目的端口。流表项由头域、计数器和操作组成;其中头域是个十元组,是流表项的标识;计数器用来计数流表项的统计数据;操作标明了与该流表项匹配的数据包应该执行的操作。

【发明内容】

[0005]本发明目的在于提供一种基于软件定义网络面向不同类型流的带宽控制方法,通过控制器来识别不同的流,并为其设定优先级进而制定带宽控制策略。控制策略会下达到相关的交换机,交换机通过流表和meter表来实施控制策略。在流发生改变时,控制策略会随之动态变化并部署到交换机中,这个过程由控制器完成,无需人工干预。
[0006]为解决现有方法中的问题,本发明提供的技术方案是:
[0007]—种基于SDN面向不同类型流的带宽控制方法,其中软件定义网络SDN是由支持openflow协议的交换机在SDN架构下搭建而成,其中设置控制器用于识别不同流并制定带宽分配策略,其特征在于所述方法包括以下步骤:
[0008](I)用户申请入网阶段:
[0009]1.1)管理员根据用户提供的需求信息为用户设定相应等级,并将用户信息添加到控制器中;
[0010]1.2)控制器根据用户的等级及其需求信息制定与用户相应的基础带宽控制策略,并将基础带宽控制策略配置到相关的交换机中;
[0011](2)用户业务请求阶段:
[0012]2.1)用户主机向交换机发送业务请求,如果业务请求所需的带宽小于基础带宽控制策略中设置的阈值,则控制器通知交换机按照一般网络请求分配带宽进行数据转发;如果业务请求所需的带宽大于等于基础带宽控制策略中设置的阈值,则按照步骤2.2)进行带览控制;
[0013]2.2)与用户业务请求连接的交换机将用户的数据包发送到控制器,控制器对数据包进行分析,判断用户业务请求的类型,并根据用户等级及需求制定带宽动态控制策略,然后把带宽动态策略配置到相关交换机;交换机按照控制器提供的带宽动态策略进行分配带宽,然后进行数据转发。[0014]优选的技术方案是:所述方法中所述基础带宽控制策略中设置threshold和maxBandwidth两个字段,其中threshold表示阀值,当业务请求带宽超过该值时,交换机会把数据包发送到控制器,由控制器识别不同应用的类别进行带宽分配调整控制;maxBandwidth表示最大带宽,为根据用户级别设定的最大可用带宽;将基础带宽控制策略配置到相应的交换机中时,基础带宽控制策略中threshold和maxBandwidth两个字段设定到交换机中的计量表(Meter Table)中,并指定其速率下数据被处理的方式。
[0015]优选的技术方案是:所述方法步骤2.2)中与用户业务请求连接的交换机将用户的数据包发送到控制器后,控制器需要进行数据包的识别,其中数据包的识别是通过对数据包的解析,匹配其包头域来判断所对应的数据包;控制器在一定时间内识别到多个数据包,然后根据此前的用户信息对各个数据包分配不同的优先级及带宽,并下达到相关交换机。
[0016]优选的技术方案是:所述方法步骤2.2)中带宽动态控制策略中带宽计算公式如下:
【权利要求】
1.一种基于SDN面向不同类型流的带宽控制方法,其中软件定义网络SDN是由支持openflow协议的交换机在SDN架构下搭建而成,其中设置控制器用于识别不同流并制定带宽分配策略,其特征在于所述方法包括以下步骤: (1)用户申请入网阶段: 1.1)管理员根据用户提供的需求信息为用户设定相应等级,并将用户信息添加到控制器中; 1.2)控制器根据用户的等级及其需求信息制定与用户相应的基础带宽控制策略,并将基础带宽控制策略配置到相关的交换机中; (2)用户业务请求阶段: 2.1)用户主机向交换机发送业务请求,如果业务请求所需的带宽小于基础带宽控制策略中设置的阈值,则控制器通知交换机按照一般网络请求分配带宽进行数据转发;如果业务请求所需的带宽大于等于基础带宽控制策略中设置的阈值,则按照步骤2.2)进行带宽控制; 2.2)与用户业务请求连接的交换机将用户的数据包发送到控制器,控制器对数据包进行分析,判断用户业务请求的类型,并根据用户等级及需求制定带宽动态控制策略,然后把带宽策略配置到相关交换机;交换机按照控制器提供的带宽策略进行分配带宽,然后进行数据转发。
2.根据权利要求1所述的带宽控制方法,其特征在于所述方法中所述基础带宽控制策略中设置threshold和maxBandwidth两个字段,其中threshold表示阀值,当业务请求带宽超过该值时,交换机会把数据包发送到控制器,由控制器识别不同应用的类别进行带宽分配调整控制;maXBandwidth表示最大带宽,为根据用户级别设定的最大可用带宽;将基础带宽控制策略配置到相应的交换机中时,基础带宽控制策略中threshold和maxBandwidth两个字段设定到交换机中的计量表(Meter Table)中,并指定其速率下数据被处理的方式。
3.根据权利要求1所述的带宽控制方法,其特征在于所述方法步骤2.2)中与用户业务请求连接的交换机将用户的数据包发送到控制器后,控制器需要进行数据包的识别,其中数据包的识别是通过对数据包的解析,匹配其包头域来判断所对应的数据包;控制器在一定时间内识别到多个数据包,然后根据此前的用户信息对各个数据包分配不同的优先级及带宽,并下达到相关交换机。
4.根据权利要求1所述的带宽控制方法,其特征在于所述方法步骤2.2)中带宽动态控制策略中带宽计算公式如下:
bandwidthi = p (maxBandwidth — allocation) x (I — left); 其中bandwidthi表示某应用流分到的带宽值,pi表示某应用流的优先级,η表示控制器识别出流的数量,maxBandwidth表示用户申请到的最大带宽,allocation表示已分配出去的带宽,left表示预留带宽占可用带宽比重。
5.根据权利要求1所述的带宽控制方法,其特征在于所述方法步骤2.2)中交换机根据不同数据包进行动态带宽分配方法为: I)交换机为数据包所对应的流表项分配一个Meter表项,包括Meter识别器、Meter计量带、Meter计数器字段,由计量器测量和控制与它相连的所有数据流的速率; 2)Meter计量带设置有数据包类型、速率、计数器类别、特殊指令字段,指定了数据包所适用的速率和数据被处理方式; 3)控制器制定流表项及Meter表项的内容,并将流表项及Meter表项的内容配置到相应的交换机中。
【文档编号】H04L12/851GK103841044SQ201410069026
【公开日】2014年6月4日 申请日期:2014年2月27日 优先权日:2014年2月27日
【发明者】黄刘生, 牛庆功, 徐宏力, 孙文君, 张鑫 申请人:中国科学技术大学苏州研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1