CN106209677A - 基于Openstack的neutron实现网络QOS的方法 - Google Patents

基于Openstack的neutron实现网络QOS的方法 Download PDF

Info

Publication number
CN106209677A
CN106209677A CN201610559371.2A CN201610559371A CN106209677A CN 106209677 A CN106209677 A CN 106209677A CN 201610559371 A CN201610559371 A CN 201610559371A CN 106209677 A CN106209677 A CN 106209677A
Authority
CN
China
Prior art keywords
qos
network
virtual
neutron
interface
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
CN201610559371.2A
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.)
Shenzhen Y&D Electronics Information Co Ltd
Original Assignee
Shenzhen Y&D Electronics Information 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 Shenzhen Y&D Electronics Information Co Ltd filed Critical Shenzhen Y&D Electronics Information Co Ltd
Priority to CN201610559371.2A priority Critical patent/CN106209677A/zh
Publication of CN106209677A publication Critical patent/CN106209677A/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
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Landscapes

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

Abstract

本发明涉及一种基于Openstack的neutron实现网络QOS的方法,主要步骤包括:提供neutron客户端SDK与命令行工具,支持网络QOS规则的管理与维护;提供neutron服务端QOS插件,对QOS规则进行存储与下发;提供neutron的QOS代理实现QOS规则的设置,该发明可以针对虚拟机网络的接口流量进行QOS控制,也可以对虚拟的负载均衡、防火墙、路由器的接口进行QOS控制。该发明能实现对虚拟二层端口流量进行精细的控制,满足各种业务的网络要求。利用virsh命令的attach‑interface指令只能现在虚拟机的网络流量,对于虚拟网络设备的流量不能进行控制。

Description

基于Openstack的neutron实现网络QOS的方法
技术领域
本发明涉及一种基于Openstack的neutron实现网络QOS的方法,属于网络技术领域。
背景技术
Neutron分别提供了二层(L2)vSwitch交换和三层(L3)Router路由抽象的功能,对应于物理网络环境中的交换机和路由器实现。具体实现了如下功能:
Router:为租户提供路由、NAT等服务。
Network:对应于一个真实物理网络中的二层局域网(VLAN),从租户的的角度而言,是租户私有的。
Subnet:为网络中的三层概念,指定一段IPV4或IPV6地址并描述其相关的配置信息。它附加在一个二层Network上,指明属于这个network的虚拟机可使用的IP地址范围。
Neutron提供了一种插件式扩展机制,扩展网络虚拟化的功能。目前已支持防火墙、VPN、安全组、路由器、交换机等网络功能的虚拟化。但在提供网络服务质量上,需要扩展新的功能。
发明内容
本发明的目的在于提供一种基于Openstack的neutron实现网络QOS的方法,以便更好地实现网络QOS方法,改善使用效果,方便使用。
为了实现上述目的,本发明的技术方案如下。
一种基于Openstack的neutron实现网络QOS的方法,主要步骤包括:提供neutron客户端SDK与命令行工具,支持网络QOS规则的管理与维护;提供neutron服务端QOS插件,对QOS规则进行存储与下发;提供neutron的QOS代理实现QOS规则的设置,该发明可以针对虚拟机网络的接口流量进行QOS控制,也可以对虚拟的负载均衡、防火墙、路由器的接口进行QOS控制。
在虚拟的网络中,允许根据业务情况,为指定的网络通信提供更好的服务能力。在Neutron现有的功能中,并不能对虚拟网络进行QOS控制,在Neutron的框架下扩展对虚拟网络进行QOS控制,包括二层控制、三层控制。
Neutron主要支持的网络模式有扁平、vlan、gre模式,三种网络架构中,虚拟机的虚拟网卡通过linux桥接入到了openvswitch的br-int的桥上,路由器、防火墙、负载均衡器的虚拟接口直接接在了openvswitch的br-int桥上,通过在br-int桥上在虚拟接口相对应端口的QOS队列与规则,即可以实现网络的QOS控制;实现对虚拟二层端口流量进行精细的控制,满足各种业务的网络要求。
利用virsh命令的attach-interface指令只能现在虚拟机的网络流量,对于虚拟网络设备的流量不能进行控制。
该发明的有益效果在于:该发明能实现对虚拟二层端口流量进行精细的控制,满足各种业务的网络要求。利用virsh命令的attach-interface指令只能现在虚拟机的网络流量,对于虚拟网络设备的流量不能进行控制。
具体实施方式
下面结合实施例对本发明的具体实施方式进行描述,以便更好的理解本发明。
实施例
Neutron服务端扩展QOS的插件:
①扩展的Rest接口定义,增加QOS_RULE的资源定义:REST接口有post,put,get,delete四种方法,post为创建资源,put为修改某个资源,get为获取某个资源,delete为删除某个资源
②定义扩展的描述:扩展的描述从extensions.ExtensionDescriptor继承。需要实现get_name、get_description、get_namespace、get_updated、get_resources、get_plugin_interface、update_attributes_map、get_extended_resources共8个接口。
③实现插件接口的定义:
插件的接口QOSPluginBase必须从ServicePluginBase继承,get_plugin_name,get_plugin_type,get_plugin_description必须实现,为插件的基础信息。
必须为每个资源定义5个接口,分别为:
#list资源的接口
def get_qos_rules(self,context,filters=None,fields=None)
#显示单个资源的接口
def get_qos_rule(self,context,id,fields=None):
#create单个资源的接口
def create_qos_rule(self,context,data):
#update单个资源的接口
def update_qos_rule(self,context,id,data):
#delete单个资源的接口
def delete_qos_rule(self,context,id):
④定义QOS规则的数据库模型。
从model_base.BASEV2,models_v2.HasId,models_v2.HasTenant继承,QOS规则属性包括:网络ID,端口ID,最大流量值,最大突发流量值。
⑤实现QOS规则的数据库操作。
需要多重继承插件接口类QOSPluginBase、base_db.CommonDbMixin;
#查询qos_rules表获取所有的qos规则
def get_qos_rules(self,context,filters=None,fields=None)
#查询qos_rules,获取id值匹配的qos规则
def get_qos_rule(self,context,id,fields=None):
#保存qos规则到qos_rules表
def create_qos_rule(self,context,data):
#修改qos_rules表中的qos规则
def update_qos_rule(self,context,id,data):
#从qos_ruls表中删除指定id的qos规则
def delete_qos_rule(self,context,id):
⑥插件调度类的实现
QOS-Agent可以在不同的计算节点,网络节点上运行,插件调度类找到对应的QOS-Agent;根据Agent的主机名,获取需要的QOS规则信息。
调度类从agentschedulers_db.AgentSchedulerDbMixin继承
⑦发送给Agent的RPC封装实现
当服务端创建、删除、修改QOS规则时,需要将信息通过RPC方式发送到Qos-Agent。
⑧处理QOS-Agent消息封装实现:通过plugin的数据库接口根据qos-agent的主机名查询对应的qos规则。
增加QOS-Agent:
①实现Agent的管理类,管理QOS驱动器的加载,从periodic_task.PeriodicTasks继承,周期性上报Agent的状态;
②实现OVS的QOS驱动,通过配置队列,端口的QOS选项、流表规则完成网络QOS的控制。
Neutron客户端扩展SDK与命令行:
①SDK封装:
neutronclient\neutron\v2_0\增加目录:qos
添加qos的命令定义
neutronclient\neutron\v2_0\qos\qos_rule.py
创建的接口需要从neutronv20.CreateCommand继承
查询列表的接口需要从neutronv20.ListCommand继承
修改的接口需要从neutronv20.UpdateCommand继承
删除的接口需要从neutronv20.DeleteCommand继承
显示单条的接口需要从neutronv20.ShowCommand继承;
②命令行实现:
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (1)

1.一种基于Openstack的neutron实现网络QOS的方法,其特征在于:主要步骤包括:提供neutron客户端SDK与命令行工具,支持网络QOS规则的管理与维护;提供neutron服务端QOS插件,对QOS规则进行存储与下发;提供neutron的QOS代理实现QOS规则的设置,该发明可以针对虚拟机网络的接口流量进行QOS控制,也可以对虚拟的负载均衡、防火墙、路由器的接口进行QOS控制;
在虚拟的网络中,允许根据业务情况,为指定的网络通信提供更好的服务能力;在Neutron现有的功能中,并不能对虚拟网络进行QOS控制,在Neutron的框架下扩展对虚拟网络进行QOS控制,包括二层控制、三层控制;
Neutron主要支持的网络模式有扁平、vlan、gre模式,三种网络架构中,虚拟机的虚拟网卡通过linux桥接入到了openvswitch的br-int的桥上,路由器、防火墙、负载均衡器的虚拟接口直接接在了openvswitch的br-int桥上,通过在br-int桥上在虚拟接口相对应端口的QOS队列与规则,即可以实现网络的QOS控制;实现对虚拟二层端口流量进行精细的控制,满足各种业务的网络要求;
利用virsh命令的attach-interface指令只能现在虚拟机的网络流量,对于虚拟网络设备的流量不能进行控制。
CN201610559371.2A 2016-07-15 2016-07-15 基于Openstack的neutron实现网络QOS的方法 Pending CN106209677A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610559371.2A CN106209677A (zh) 2016-07-15 2016-07-15 基于Openstack的neutron实现网络QOS的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610559371.2A CN106209677A (zh) 2016-07-15 2016-07-15 基于Openstack的neutron实现网络QOS的方法

Publications (1)

Publication Number Publication Date
CN106209677A true CN106209677A (zh) 2016-12-07

Family

ID=57474963

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610559371.2A Pending CN106209677A (zh) 2016-07-15 2016-07-15 基于Openstack的neutron实现网络QOS的方法

Country Status (1)

Country Link
CN (1) CN106209677A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106953848A (zh) * 2017-02-28 2017-07-14 浙江工商大学 一种基于ForCES的软件定义网络实现方法
CN107547439A (zh) * 2017-09-08 2018-01-05 中国银联股份有限公司 一种网络流量控制方法和计算节点
CN108234271A (zh) * 2017-10-25 2018-06-29 国云科技股份有限公司 一种云平台业务网ip管理方法
CN109150609A (zh) * 2018-08-28 2019-01-04 郑州云海信息技术有限公司 一种openstack网络系统规范化命名的安全组配置方法
CN109842644A (zh) * 2017-11-27 2019-06-04 中国电信股份有限公司 参数扩展方法和系统、云计算管理平台组件和用户终端
CN110635932A (zh) * 2018-06-22 2019-12-31 复旦大学 一种基于OpenStack控制平面的虚拟网络性能的优化方法
CN112468458A (zh) * 2020-11-12 2021-03-09 鹏城实验室 一种基于neutron分层机制的调度方法
CN114697242A (zh) * 2022-03-21 2022-07-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
CN104092565A (zh) * 2014-06-24 2014-10-08 复旦大学 一种面向云数据中心的多租户策略驱动型软件定义网络方法
WO2015021248A1 (en) * 2013-08-09 2015-02-12 Nec Laboratories America, Inc. Hybrid network management
WO2016082184A1 (zh) * 2014-11-28 2016-06-02 华为技术有限公司 控制信令的传输方法及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015021248A1 (en) * 2013-08-09 2015-02-12 Nec Laboratories America, Inc. Hybrid network management
CN104092565A (zh) * 2014-06-24 2014-10-08 复旦大学 一种面向云数据中心的多租户策略驱动型软件定义网络方法
WO2016082184A1 (zh) * 2014-11-28 2016-06-02 华为技术有限公司 控制信令的传输方法及设备

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106953848A (zh) * 2017-02-28 2017-07-14 浙江工商大学 一种基于ForCES的软件定义网络实现方法
CN106953848B (zh) * 2017-02-28 2020-04-28 浙江工商大学 一种基于ForCES的软件定义网络实现方法
CN107547439A (zh) * 2017-09-08 2018-01-05 中国银联股份有限公司 一种网络流量控制方法和计算节点
CN107547439B (zh) * 2017-09-08 2021-01-05 中国银联股份有限公司 一种网络流量控制方法和计算节点
CN108234271A (zh) * 2017-10-25 2018-06-29 国云科技股份有限公司 一种云平台业务网ip管理方法
CN109842644A (zh) * 2017-11-27 2019-06-04 中国电信股份有限公司 参数扩展方法和系统、云计算管理平台组件和用户终端
CN109842644B (zh) * 2017-11-27 2021-11-19 中国电信股份有限公司 参数扩展方法和系统、云计算管理平台组件和用户终端
CN110635932B (zh) * 2018-06-22 2021-10-15 复旦大学 一种基于OpenStack控制平面的虚拟网络性能的优化方法
CN110635932A (zh) * 2018-06-22 2019-12-31 复旦大学 一种基于OpenStack控制平面的虚拟网络性能的优化方法
CN109150609A (zh) * 2018-08-28 2019-01-04 郑州云海信息技术有限公司 一种openstack网络系统规范化命名的安全组配置方法
CN109150609B (zh) * 2018-08-28 2021-06-15 郑州云海信息技术有限公司 一种openstack网络系统规范化命名的安全组配置方法
CN112468458A (zh) * 2020-11-12 2021-03-09 鹏城实验室 一种基于neutron分层机制的调度方法
CN114697242A (zh) * 2022-03-21 2022-07-01 浪潮云信息技术股份公司 一种政务云场景下客户虚拟网卡流量管理方法及系统
CN114884816A (zh) * 2022-06-17 2022-08-09 中国联合网络通信集团有限公司 数据包限速规则处理方法、装置、设备、存储介质
CN114884816B (zh) * 2022-06-17 2024-02-13 中国联合网络通信集团有限公司 数据包限速规则处理方法、装置、设备、存储介质

Similar Documents

Publication Publication Date Title
CN106209677A (zh) 基于Openstack的neutron实现网络QOS的方法
CN108989091B (zh) 基于Kubernetes网络的租户网络隔离方法、存储介质、电子设备
US9088503B2 (en) Multi-tenant information processing system, management server, and configuration management method
CN109743415B (zh) 一种公有云网络弹性ip实现方法及系统
US20180316543A1 (en) Apparatus and method for managing integrated platform of wired and mobile communication services
CN109040276B (zh) 一种构建云平台的方法、装置、计算机存储介质及终端
CN104639372B (zh) 基于sdn的覆盖网络和物理网络的关联方法及系统
US9294351B2 (en) Dynamic policy based interface configuration for virtualized environments
CN108809732B (zh) 一种软件定义城域网网络控制系统
EP2849064A1 (en) Method and apparatus for network virtualization
CN104584484A (zh) 提供基于策略的数据中心网络自动化的系统和方法
CN105900518A (zh) 用于移动网络功能虚拟化的系统及方法
An et al. Virtualization of cellular network EPC gateways based on a scalable SDN architecture
CN104811393B (zh) 组播报文复制处理方法、装置及开放流控制器
CN103548376A (zh) 通过openflow数据平面在云计算机中实现epc
CN111221619A (zh) 一种业务开通和编排的方法、装置及设备
CN103026660A (zh) 网络策略配置方法、管理设备以及网络管理中心设备
CN106953848B (zh) 一种基于ForCES的软件定义网络实现方法
CN104104534A (zh) 一种虚拟网络管理的实现方法和系统
CN106059915A (zh) 基于sdn控制器实现租户南北向流量限速的系统及方法
US10044562B2 (en) Automatic provisioning of LISP mobility networks when interconnecting DC fabrics
CN105915470A (zh) 一种基于Linux流量控制的弹性带宽配置方法
CN105162608A (zh) 基于软件定义网络的物理地址旁路认证方法及装置
KR20150094238A (ko) 종단 시스템의 라이프 사이클에 따라 가상 확장 랜의 세그먼트를 위한 멀티캐스팅 터널을 자동적으로 구성하는 가상 확장 랜 네트워크 시스템 및 그 동작 방법
CN109787938B (zh) 实现访问虚拟私有云的方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20161207