CN107370686A - 一种流量控制方法及装置 - Google Patents

一种流量控制方法及装置 Download PDF

Info

Publication number
CN107370686A
CN107370686A CN201710673181.8A CN201710673181A CN107370686A CN 107370686 A CN107370686 A CN 107370686A CN 201710673181 A CN201710673181 A CN 201710673181A CN 107370686 A CN107370686 A CN 107370686A
Authority
CN
China
Prior art keywords
flow rate
virtual machine
input flow
traffic management
rate transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710673181.8A
Other languages
English (en)
Inventor
张兆增
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710673181.8A priority Critical patent/CN107370686A/zh
Publication of CN107370686A publication Critical patent/CN107370686A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种流量控制方法及装置,上述方法包括以下步骤:创建虚拟机的输入流量传输控制策略及流量管理队列;根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。上述技术方案中,通过输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制,实现了对虚拟机下行流量的Qos管理。

Description

一种流量控制方法及装置
技术领域
本发明属于流量控制领域,尤其涉及一种流量控制方法及装置。
背景技术
随着云计算的应用越来越广泛及OpenStack(是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作)社区的活跃度不断上升,越来越多公司、组织基于有效利用资源考虑,开始搭建自己的OpenStack的环境,与此同时,人们对服务器中虚拟机的功能要求也越来越高。
在一个数据中心中的不同虚拟机由于其承载的业务不一样,所以可能对网络服务质量的需求也是有高有低,QoS(Quality of Service,服务质量)正是基于这种需求而产生的。
然而,OpenStack的网络管理组件Neutron只能对虚拟机上行流量的QoS进行管理,但是缺乏对于虚拟机的下行流量的QoS进行管理。
因此,迫切需要一种流量控制方案来解决上述技术问题。
发明内容
本发明提供一种流量控制方法及装置,以解决上述问题。
本发明实施例提供一种流量控制方法,包括以下步骤:创建虚拟机的输入流量传输控制策略及流量管理队列;
根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
本发明实施例还提供一种流量控制装置,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
创建虚拟机的输入流量传输控制策略及流量管理队列;
根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
本发明实施例提供的技术方案:创建虚拟机的输入流量传输控制策略及流量管理队列;根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
上述技术方案中,通过输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制,实现了对虚拟机下行流量的QoS管理。
本发明实施例提供的技术方案:根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
上述技术方案中,通过对未发送成功的数据包进行缓存,实现了对虚拟机下行流量的QoS管理。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1所示为本发明实施例1的流量控制方法流程图;
图2所示为本发明实施例2的流量控制方法流程图;
图3所示为本发明实施例3的流量控制装置结构图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1所示为本发明实施例1的流量控制方法流程图,包括以下步骤:
步骤101:创建虚拟机的输入流量传输控制策略及流量管理队列;
进一步地,所述输入流量传输控制策略为:设置最大传输速率。
进一步地,通过调用虚拟交换组件命令即OVS命令,创建虚拟机的输入流量传输控制策略及流量管理队列。
进一步地,通过解析网络管理组件命令即neutron命令,获得所述OVS命令并对所述OVS命令进行调用,创建虚拟机的输入流量传输控制策略及流量管理队列。
进一步地,将所述输入流量传输控制策略下发至所述虚拟机端口。
具体而言,虚拟机的输入流量是指虚拟机的下行流量。虚拟机上行流量是指从虚拟机自身来看,是虚拟机往外发出的流量,而从虚拟机的端口(port)角度来看,这是流量方向是由虚拟机是的应用到虚拟机的商品,所以对于端口来说是入方向的流量(ingresstraffic),下行流量与之相反,是出端口进入虚拟机的流量(egress traffic)。
在OVS的Interface表中,虚拟机上行流量限速功能是通过ingress_policing_rate和ingress_policing_burst两个字段完成的;Neutron中的实现是调用的OVS功能,对这两个字段进行修改,从而实现Neutron现有的QoS功能。
步骤102:根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
进一步地,根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:
若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
图2所示为本发明实施例2的流量控制方法流程图,如图2所示,一个主机Host内的虚拟机有两个方法,原生的OpenStack的Neutron只是实现了其网卡中对应的实线部分的QoS,而下行的虚拟流量并没有QoS功能。本发明实施例结合两者,实现了其双向的流量QoS功能。
首先,Neutron原生的QoS功能是作用于虚拟机的上行流量,实际上,其实现原理也是调用的OVS,实现了对ingress_policing_rate和ingress_polick_burst这两个字段进行速率限制,这个我们可以通过计算节点上“ovs-vsctl list interface”这个命令可以查看。其中ingress_policing_rate表示端口的最大的接收包的速率,ingress_polick_burst表示端口的突发流量大小,因为这个突发值其实是通过令牌桶实现的,所以它的值最小不能小于该虚拟机MTU(最大传送单元)值的大小。
其次,对于虚拟机的下行流量,也就是进入虚拟机的流量,我们通过对以下的OVS命令进行封装实现:
ovs-vsctl set port eth1 qos=@testqos--\
--id=@testqos create qos type=linux-htb queues=0=@testqueue--\
--id=@testqueue create queue other-config:max-rate=30000000。
在上述命令有两个功能,一是对eth1这个端口创建了一个qos,并把最大传输速率配置为30Mbps;二是创建了一个队列,并把它添加到了这个qos中,当虚拟机待发送的数据速率大于最大传输速率时,未发送成功的数据包会被缓存起来,队列就是用来缓存和调度数据包发送顺序的,用于实现出口流量(端口的出方向的流量即虚拟机入方向的流量,也就是虚拟机的下行流量)的控制。
将上述命令封装为neutron命令:
Neutron qos-download-bandwidth-limit-rule-create testqos testqueue--max-kbps 30000000
这条Neutron命令,是本发明实施例中实现的,其内部会调用上述OVS命令,以实现与上述的0VS命令同样的效果。
其中testqos表示创建的qos规则,类型为linux-htb,testuqueue表示创建一个testqueue的队列,其最大的速率为30Mbps。
综上所述,如果要给一个虚拟机配置QoS功能,主要分为以下步骤:
1)若是配置虚拟机上行链路的QoS,则进行步骤3);
2)若是配置虚拟机下行链路的QoS,则进行步骤4);
3)直接输入Neutron原生命令进行配置,此步骤实现了虚拟机的上行流量限速;
4)利用上述的封装好的Neutron命令,对虚拟机下行流量速率进行限制;
5)将虚拟机的虚拟网卡或整个网络与QoS策略关联并生效。
上述步骤的叙述中,所说的策略是指在Neutron命令中,创建出的一个policy,每个policy上可以关联一个或才多个规则(rule),Neutron中已经实现的limit-bandwitch-rule,是实现虚拟机上行流量限制的规则;上述本发明实施例中所提出的Neutron命令则是实现了qos-download-bandwidth-limit-rule这个规则;当关联这两种规则的QoS策略被应用到某虚拟机端口上时,这种虚拟机的此端口上下行流量都会被限制在规则所规定的范围内,从而实现虚拟机上行下流量QoS功能。
此策略也可以被应用于整个网络,这时,此网络中的所有的虚拟机端口都会被应用该策略,从而实现网络中的所有虚拟机的上下行流量QoS功能。
图3所示为本发明实施例3的流量控制装置结构图,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
创建虚拟机的输入流量传输控制策略及流量管理队列;
根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
进一步地,所述输入流量传输控制策略为:设置最大传输速率。
进一步地,根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:
若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
进一步地,通过调用虚拟交换组件命令即OVS命令,创建虚拟机的输入流量传输控制策略及流量管理队列。
进一步地,通过解析网络管理组件命令即neutron命令,获得所述OVS命令并对所述OVS命令进行调用,创建虚拟机的输入流量传输控制策略及流量管理队列。
本发明实施例提供的技术方案:创建虚拟机的输入流量传输控制策略及流量管理队列;根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
上述技术方案中,通过输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制,实现了对虚拟机下行流量的QoS管理。
本发明实施例提供的技术方案:根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
上述技术方案中,通过对未发送成功的数据包进行缓存,实现了对虚拟机下行流量的QoS管理。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种流量控制方法,其特征在于,包括以下步骤:
创建虚拟机的输入流量传输控制策略及流量管理队列;
根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
2.根据权利要求1所述的流量控制方法,其特征在于,所述输入流量传输控制策略为:设置最大传输速率。
3.根据权利要求2所述的流量控制方法,其特征在于,根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:
若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
4.根据权利要求1所述的流量控制方法,其特征在于,通过调用虚拟交换组件命令即OVS命令,创建虚拟机的输入流量传输控制策略及流量管理队列。
5.根据权利要求4所述的流量控制方法,其特征在于,通过解析网络管理组件命令即neutron命令,获得所述OVS命令并对所述OVS命令进行调用,创建虚拟机的输入流量传输控制策略及流量管理队列。
6.根据权利要求1所述的流量控制方法,其特征在于,将所述输入流量传输控制策略下发至所述虚拟机端口。
7.一种流量控制装置,其特征在于,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
创建虚拟机的输入流量传输控制策略及流量管理队列;
根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制。
8.根据权利要求7所述的流量控制装置,其特征在于,所述输入流量传输控制策略为:设置最大传输速率。
9.根据权利要求8所述的流量控制装置,其特征在于,根据所述输入流量传输控制策略,对所述流量管理队列中的数据包进行调度控制的过程为:
若所述虚拟机的输入流量传输速率大于所述最大传输速率,则对所述流量管理队列中的未发送成功的数据包进行缓存。
10.根据权利要求7所述的流量控制装置,其特征在于,通过调用虚拟交换组件命令即OVS命令,创建虚拟机的输入流量传输控制策略及流量管理队列。
11.根据权利要求10所述的流量控制装置,其特征在于,通过解析网络管理组件命令即neutron命令,获得所述OVS命令并对所述OVS命令进行调用,创建虚拟机的输入流量传输控制策略及流量管理队列。
CN201710673181.8A 2017-08-08 2017-08-08 一种流量控制方法及装置 Pending CN107370686A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710673181.8A CN107370686A (zh) 2017-08-08 2017-08-08 一种流量控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710673181.8A CN107370686A (zh) 2017-08-08 2017-08-08 一种流量控制方法及装置

Publications (1)

Publication Number Publication Date
CN107370686A true CN107370686A (zh) 2017-11-21

Family

ID=60309478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710673181.8A Pending CN107370686A (zh) 2017-08-08 2017-08-08 一种流量控制方法及装置

Country Status (1)

Country Link
CN (1) CN107370686A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740100A (zh) * 2019-10-22 2020-01-31 新华三信息安全技术有限公司 一种传输速率确定方法、装置、网络设备及存储介质
CN112165435A (zh) * 2020-09-29 2021-01-01 山东省计算中心(国家超级计算济南中心) 一种基于虚拟机网络服务质量的双向流量控制方法及系统
CN112887218A (zh) * 2020-12-22 2021-06-01 新华三技术有限公司 一种报文转发方法及装置
CN114884816A (zh) * 2022-06-17 2022-08-09 中国联合网络通信集团有限公司 数据包限速规则处理方法、装置、设备、存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103634235A (zh) * 2013-11-01 2014-03-12 国云科技股份有限公司 一种限定虚拟机网络接口速度的方法
CN105635035A (zh) * 2014-10-27 2016-06-01 青岛金讯网络工程有限公司 一种虚拟机流量监控方法
CN106911695A (zh) * 2017-02-28 2017-06-30 郑州云海信息技术有限公司 一种基于Fuel的OpenStack部署方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103634235A (zh) * 2013-11-01 2014-03-12 国云科技股份有限公司 一种限定虚拟机网络接口速度的方法
CN105635035A (zh) * 2014-10-27 2016-06-01 青岛金讯网络工程有限公司 一种虚拟机流量监控方法
CN106911695A (zh) * 2017-02-28 2017-06-30 郑州云海信息技术有限公司 一种基于Fuel的OpenStack部署方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CERTUSNET-SKY: "Open vSwitch之QoS的实现", 《HTTPS://WWW.SDNLAB.COM/19208.HTML》 *
MAGINE1989: "OpenvSwitch对虚拟机做QOS限速", 《HTTPS://WWW.JIANSHU.COM/P/C910B0C377B0》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740100A (zh) * 2019-10-22 2020-01-31 新华三信息安全技术有限公司 一种传输速率确定方法、装置、网络设备及存储介质
CN110740100B (zh) * 2019-10-22 2022-04-22 新华三信息安全技术有限公司 一种传输速率确定方法、装置、网络设备及存储介质
CN112165435A (zh) * 2020-09-29 2021-01-01 山东省计算中心(国家超级计算济南中心) 一种基于虚拟机网络服务质量的双向流量控制方法及系统
CN112887218A (zh) * 2020-12-22 2021-06-01 新华三技术有限公司 一种报文转发方法及装置
CN114884816A (zh) * 2022-06-17 2022-08-09 中国联合网络通信集团有限公司 数据包限速规则处理方法、装置、设备、存储介质
CN114884816B (zh) * 2022-06-17 2024-02-13 中国联合网络通信集团有限公司 数据包限速规则处理方法、装置、设备、存储介质

Similar Documents

Publication Publication Date Title
US10630601B2 (en) Controlling fair bandwidth allocation efficiently
CN107370686A (zh) 一种流量控制方法及装置
US8614951B2 (en) Guaranteed bandwidth sharing in a traffic shaping system
US7826352B2 (en) Meter-based hierarchical bandwidth sharing
EP2923479B1 (en) Method and apparatus for controlling utilization in a horizontally scaled software application
US6917591B2 (en) Methods, systems and computer program products for bandwidth allocation in a multiple access system
US8462802B2 (en) Hybrid weighted round robin (WRR) traffic scheduling
US7480240B2 (en) Service curve mapping
CN107733689A (zh) 基于优先级的动态加权轮询调度策略方法
US10225195B2 (en) Telecommunication systems and methods using dynamic shaping for allocating network bandwidth
CN108174397A (zh) 一种任务驱动的多网关协同方法
CN106453126A (zh) 一种虚拟机流量控制方法及装置
DE112017003501T5 (de) Scheduling von downstream-datenverkehr einer virtuellen ccap
CN101202701B (zh) 分组网络中为汇聚的可用比特率业务分配带宽的方法
CN109922003A (zh) 一种数据发送方法、系统及相关组件
CN112995058A (zh) 一种令牌的调整方法及装置
KR20120055947A (ko) 가입자 인지 플로우별 QoS 제공 방법 및 장치
CN105847172B (zh) 业务流量控制方法及装置
CN115242727B (zh) 用户请求处理方法、装置、设备和介质
Lee Correlated token bucket shapers for multiple traffic classes
CN107888540A (zh) 一种网络防攻击方法及网络设备
CN116760774B (zh) 一种数据处理方法、装置、电子设备及存储介质
EP3896928B1 (en) Dynamic bandwidth allocation method, device, and apparatus, and storage medium
EP3065502A1 (en) Access node device for managing upstream network traffic
Chrysos et al. Tandem queue weighted fair smooth scheduling

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171121