CN106487590B - 一种基于虚拟网络实现批量虚拟机端口限速的方法 - Google Patents
一种基于虚拟网络实现批量虚拟机端口限速的方法 Download PDFInfo
- Publication number
- CN106487590B CN106487590B CN201610915330.2A CN201610915330A CN106487590B CN 106487590 B CN106487590 B CN 106487590B CN 201610915330 A CN201610915330 A CN 201610915330A CN 106487590 B CN106487590 B CN 106487590B
- Authority
- CN
- China
- Prior art keywords
- virtual
- port
- network
- virtual machine
- bandwidth
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及云计算技术领域,特别是一种基于虚拟网络实现批量虚拟机端口限速的方法。本发明首先基于云平台创建一个虚拟网络并同时为其创建一个虚拟子网,然后定义虚拟网络的带宽特性,接着在所述虚拟网络上创建批量端口并分配所述虚拟子网内IP,接着将所述端口绑定给虚拟机,最后根据端口所属虚拟网络的带宽特性进行端口限速。本发明实现对云平台上批量虚拟机的网络接口进行带宽限速,在单个虚拟机端口限速的基础上又增加一种基于虚拟网络的、批量的限速方法;可以用于虚拟机端口限速。
Description
技术领域
本发明涉及云计算技术领域,特别是一种基于虚拟网络实现批量虚拟机端口限速的方法。
背景技术
云计算的兴起,越来越多的用户开始选择使用云服务器资源,各云平台在提供带有网络接口的云服务器的同时,往往需要对其进行带宽限制,以实现云服务器网络带宽的合理限制,避免出现一台云服务器占用了整个物理网卡实际带宽总量的现象。常见的云服务器网卡带宽限制的方法有:方法一是创建云服务器网络端口时就逐个对该端口进行带宽设置;方法二则是程序固定或者通过新增配置文件配置项的方式固定一个带宽初始值,虚拟机网络端口被创建时默认设置此值。
上述两种方法都可以实现虚拟机网络端口带宽限制,但存在如下问题:
1、方法一无法实现虚拟机网络端口带宽限制的批量设置,当云平台所管理的网络端口非常多时,逐个端口进行设置效率低下;
2、方法二虽然可以批量设置云平台虚拟机网络端口带宽限制,但是不灵活,并且云平台所有的网络端口带宽设置初始值都一样,不能满足一些个性化的业务需求。
发明内容
本发明解决的技术问题在于提出了一种基于虚拟网络实现批量虚拟机端口限速的方法,避免了需要对云平台大量端口逐个进行带宽限制设置的问题。
本发明解决上述技术问题的技术方案是:
所述的方法包括如下步骤:
步骤1:创建一个虚拟网络并同时为其创建一个虚拟子网;
步骤2:定义虚拟网络的带宽特性;
步骤3:在所述虚拟网络上创建端口并分配所述虚拟子网内IP;
步骤4:将端口绑定给虚拟机;
步骤5:根据端口所属虚拟网络的带宽特性进行端口限速;
所述的步骤5具体包括:
判断端口本身是否包括带宽限制特性;
如果有则按端口本身的带宽特性进行限速;
如果没有则继续判断端口所述网络是否有带宽限制特性;
如果有则根据端口所属网络的带宽特性进行限速;
如果没有则不限速。
所述的虚拟网络是一个供虚拟机使用的网络,该网络里面可以动态创建和销毁无限多个虚拟端口;
所述的虚拟子网是虚拟网络里面的一个IP段,该IP段用以为所述虚拟端口分配具体的IP地址;所述的虚拟端口则是虚拟机所使用的网卡接口对应的逻辑表示。
所述的定义虚拟网络的带宽特性是指为虚拟网络对象增加上行带宽和下行带宽的特征值;所述的特征值是带宽的速度最大值。
所述的将端口绑定给虚拟机是指为虚拟机添加网卡,网卡的特征来源于端口。
所述的批量虚拟机端口限速是指一次可以对多个虚拟机网络端口进行带宽定义,而无需逐个限制。
本发明方案的有益效果如下:
1、本发明提供一种基于虚拟网络实现批量虚拟机端口限速的方法,避免了需要对云平台大量端口逐个进行带宽限制设置所引起的效率低下,管理不方便等问题。
2、本发明的方法比较灵活,可以根据不同的业务需求创建不同带宽特性的虚拟网络,实现批量的修改多个端口的带宽限制值,避免了通过程序固定或者通过新增配置文件配置项的方式导致云平台上所有的端口固定一个带宽初始值问题。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的流程图;
图2为本发明实施例在具体端口限速时的实现流程图。
具体实施方式
请参见图1为本发明实施例所提供的一种基于虚拟网络实现批量虚拟机端口限速的方法流程图,图2位本发明实施例在具体端口限速时的实现流程。下面分别对其各个流程具体实现进行描述。
首先基于云平台创建一个虚拟网络并同时为其创建一个虚拟子网。
虚拟网络和虚拟子网都分别是一个ORM对象,其中虚拟网络对象中包括了最重要的ingress属性和outgress属性,分别代表着该虚拟网络对应端口上的入口带宽限制值和出口带宽限制值;其中的虚拟子网对象则包括了最重要的network_id属性和cidr属性,分别代码这该虚拟子网所述的虚拟网络和虚拟子网本身的子网段。
另外,我们根据上述虚拟网络和虚拟子网的ORM对象特征,创建一个命名空间并在命名空间中启动一个dnsmasq进程,已提供网络dhcp服务。
然后定义虚拟网络的带宽特性。即为上述虚拟网络ORM对象的ingress属性和outgress属性赋值,具体的可以是:
ingress:10Mbps outgress:10Mbps
则是分别限制了该虚拟网络上所有端口的入口带宽和出口带宽分别为10Mps。
接着在所述虚拟网络上创建批量端口并分配所述虚拟子网内IP。
在虚拟网络上创建虚拟端口,端口ORM对象重要特征属性为id和network_id,id代码虚拟端口本身的ID,network_id则代表该端口所属虚拟网络。另外端口对象本身也具有ingress属性和outgress属性代表其自身带宽限制,且优先级高于所属网络的带宽限制。
接着将所述端口绑定给虚拟机,这里以虚拟机通过linux bridge桥接到ovs桥为例进行说明。
(1)创建虚拟机使用的linux bridge和veth pair。
(2)准备虚拟机使用的libvirt配置文件,必须保证uuid为上述虚拟端口的divice_id;保证<target dev=’tap19e74fc8-aa’/>tap后面的11个字符为虚拟端口id的前11个字符。
(3)将veth peer的两端分别接入到linux bridge和ovs桥br-int上。
最后根据端口所属虚拟网络的带宽特性进行端口限速。
虚拟机所在节点服务通过RPC通信拿到上述虚拟网络和虚拟端口的带宽限制信息ingress和outgress,并按如下流程进行端口限速:
判断虚拟机的虚拟机端口本身是否包括带宽限制属性值;
如果有则按端口本身的带宽属性值进行限速;
如果没有则继续判断端口所述网络是否有带宽限属性值;
如果有则根据端口所属网络的带宽属性值进行限速;
如果没有则不限速。
具体的可以通过如下命令来实现:
1、限制虚拟机端口(qvo4577af09-7b)的下行速度为10Mbps
ovs-vsctl set port qvo4577af09-7b qos=@newqos----id=@newqos createqos type=linux-htb queues=0=@q0----id=@q0 create queue other-config:max-rate=10000000
其中:
qvo4577af09-7b:虚拟机对应的ovs桥(br-int)上的port
min-rate:最小带宽速度,单位bps
max-rate:最大带宽速度,单位bps
2、增加虚拟机上行速度最大为1024Kbps,最大值浮动125kbps
ovs-vsctl set interface qvo4577af09-7b ingress_policing_rate=1024
ovs-vsctl set interface qvo4577af09-7b ingress_policing_burst=125
以上描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出实质性创造所获得的方案,都属于本发明保护的范围。
Claims (7)
1.一种基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的方法包括如下步骤:
步骤1:创建一个虚拟网络并同时为其创建一个虚拟子网;
步骤2:定义虚拟网络的带宽限制特性;
步骤3:在所述虚拟网络上创建端口并分配所述虚拟子网内IP;
步骤4:将端口绑定给虚拟机;
步骤5:根据端口所属虚拟网络的带宽限制特性进行端口限速;
所述的步骤5具体包括:
判断端口本身是否包括带宽限制特性;
如果有则按端口本身的带宽限制特性进行限速;
如果没有则继续判断端口所属网络是否有带宽限制特性;
如果有则根据端口所属网络的带宽限制特性进行限速;
如果没有则不限速。
2.根据权利要求1所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的虚拟网络是一个供虚拟机使用的网络,该网络里面可以动态创建和销毁无限多个虚拟端口;
所述的虚拟子网是虚拟网络里面的一个IP段,该IP段用以为所述虚拟端口分配具体的IP地址;所述的虚拟端口则是虚拟机所使用的网卡接口对应的逻辑表示。
3.根据权利要求1所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的定义虚拟网络的带宽限制特性是指为虚拟网络对象增加上行带宽和下行带宽的特征值;所述的特征值是带宽的速度最大值。
4.根据权利要求2所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的定义虚拟网络的带宽限制特性是指为虚拟网络对象增加上行带宽和下行带宽的特征值;所述的特征值是带宽的速度最大值。
5.根据权利要求1至4任一项所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的将端口绑定给虚拟机是指为虚拟机添加网卡,网卡的特征来源于端口。
6.根据权利要求1至4任一项所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的批量虚拟机端口限速是指一次可以对多个虚拟机端口进行带宽定义,而无需逐个限制。
7.根据权利要求5所述的基于虚拟网络实现批量虚拟机端口限速的方法,其特征在于,所述的批量虚拟机端口限速是指一次可以对多个虚拟机端口进行带宽定义,而无需逐个限制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610915330.2A CN106487590B (zh) | 2016-10-20 | 2016-10-20 | 一种基于虚拟网络实现批量虚拟机端口限速的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610915330.2A CN106487590B (zh) | 2016-10-20 | 2016-10-20 | 一种基于虚拟网络实现批量虚拟机端口限速的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106487590A CN106487590A (zh) | 2017-03-08 |
CN106487590B true CN106487590B (zh) | 2019-05-21 |
Family
ID=58270984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610915330.2A Active CN106487590B (zh) | 2016-10-20 | 2016-10-20 | 一种基于虚拟网络实现批量虚拟机端口限速的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106487590B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107864061A (zh) * | 2017-11-15 | 2018-03-30 | 北京易讯通信息技术股份有限公司 | 一种在私有云中虚拟机端口限速和镜像的方法 |
CN108920249B (zh) * | 2018-05-08 | 2021-10-08 | 广东睿江云计算股份有限公司 | 一种基于多主机多虚拟机系统的限速方法 |
CN108881069B (zh) * | 2018-06-26 | 2019-10-18 | 新华三云计算技术有限公司 | 多播流量的转发方法、装置和服务器 |
CN111065118A (zh) * | 2019-12-12 | 2020-04-24 | 西安冉科信息技术有限公司 | 一种移动终端网络速度控制方法 |
CN112187660A (zh) * | 2020-08-31 | 2021-01-05 | 浪潮云信息技术股份公司 | 一种用于云平台容器网络的租户流量限制方法及系统 |
CN117978389B (zh) * | 2024-04-01 | 2024-06-07 | 北京邮电大学 | 一种基于物联网设备动态信息的随机数种子生成方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101834804B (zh) * | 2010-05-27 | 2015-01-28 | 中兴通讯股份有限公司 | 一种实现虚拟专用网流量限速的方法及装置 |
GB2481255A (en) * | 2010-06-18 | 2011-12-21 | Skype Ltd | Dynamically adapting network bandwidth limitations for applications on a device based on current transmission conditions |
CN102088404B (zh) * | 2010-12-10 | 2012-12-05 | 北京世纪互联宽带数据中心有限公司 | 一种Xen虚拟机网卡限速的方法 |
CN105471765B (zh) * | 2015-12-22 | 2019-12-10 | 国云科技股份有限公司 | 一种云平台的虚拟机外网带宽限制方法 |
CN105915387B (zh) * | 2016-05-31 | 2019-04-30 | 新浪网技术(中国)有限公司 | 一种IaaS云平台下云主机的外网带宽限速方法、装置及系统 |
-
2016
- 2016-10-20 CN CN201610915330.2A patent/CN106487590B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106487590A (zh) | 2017-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106487590B (zh) | 一种基于虚拟网络实现批量虚拟机端口限速的方法 | |
CN113315700B (zh) | 算力资源调度方法、装置和存储介质 | |
CN112187545B (zh) | 一种网络切片的部署方法及装置 | |
CN106412628B (zh) | 一种带宽调整方法及相关设备 | |
Popa et al. | FairCloud: Sharing the network in cloud computing | |
Schaffrath et al. | Optimizing long-lived cloudnets with migrations | |
Guo et al. | Falloc: Fair network bandwidth allocation in IaaS datacenters via a bargaining game approach | |
EP2225851B1 (en) | Improved resource allocation plan in a network | |
WO2020004380A1 (ja) | 割当装置、システム、タスク割当方法及びプログラム | |
CN108848038B (zh) | 基于令牌桶的流量管理方法和令牌桶节点 | |
JP2017533509A (ja) | リソース管理方法、ホストおよびエンドポイント | |
Li et al. | Cost-minimizing bandwidth guarantee for inter-datacenter traffic | |
CN106982238B (zh) | 一种分配网络路径资源的方法、策略控制中心以及主机 | |
EP4037270A1 (en) | Service traffic adjusting method and apparatus | |
US20150004928A1 (en) | Group data plan quota allocation for mobile devices | |
CN103181123A (zh) | 减少预留流的最大等待时间 | |
CN107872405A (zh) | 分布式带宽分配和调节 | |
RU2664400C2 (ru) | Способ и устройство ограничения скорости для очереди иерархического качества обслуживания и компьютерный носитель данных | |
CN113973342A (zh) | 流量控制方法、装置、电子设备及存储介质 | |
Yuan et al. | Virtual network function scheduling via multilayer encoding genetic algorithm with distributed bandwidth allocation | |
CN110958184B (zh) | 带宽调节方法及装置 | |
CN110190988B (zh) | 一种业务部署方法及装置 | |
CN102546441B (zh) | 一种报文分流方法和网络设备 | |
CN111970149A (zh) | 一种基于硬件防火墙qos的共享带宽实现方法 | |
CN104301255B (zh) | 一种光网络多用户带宽公平分配的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Applicant after: G-Cloud Technology Co., Ltd. Address before: 523808 No. 14 Building, Songke Garden, Songshan Lake Science and Technology Industrial Park, Dongguan City, Guangdong Province Applicant before: G-Cloud Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |