CN116185552A - 一种内存带宽服务质量的控制方法、装置及系统 - Google Patents
一种内存带宽服务质量的控制方法、装置及系统 Download PDFInfo
- Publication number
- CN116185552A CN116185552A CN202111419537.8A CN202111419537A CN116185552A CN 116185552 A CN116185552 A CN 116185552A CN 202111419537 A CN202111419537 A CN 202111419537A CN 116185552 A CN116185552 A CN 116185552A
- Authority
- CN
- China
- Prior art keywords
- memory bandwidth
- nfvi
- node
- virtual machine
- memory
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种内存带宽服务质量的控制方法、装置及系统。在该方法中,基础设施管理节点接收第一创建请求,所述第一创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和内存带宽QoS信息;基础设施管理节点根据多个NFVI节点的内存带宽使用状态、需要占用的内存带宽大小和内存带宽QoS信息,从多个NFVI节点中选择目标NFVI节点,并向目标NFVI节点发送第二创建请求,第二创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和所述内存带宽QoS信息。上述方法使得创建后的虚拟机或应用实例的在内存带宽方面的需求能够得到满足,从而满足用户对时延的需求,提高用户体验。
Description
技术领域
本申请实施例涉及云计算技术领域,尤其涉及一种内存带宽服务质量的控制方法、装置及系统。
背景技术
随着虚拟化技术和云计算平台的广泛使用,应用服务趋向于在集群资源中部署运行,例如电信领域的网络功能虚拟化(network functions virtualisation,NFV)网元和边缘计算网络的第三方应用都可以以容器或者虚拟机形式运行在云计算平台上。
在集群资源中,多个中央处理器(central processing unit,CPU)核之间竞争内存带宽共享资源。随着内存带宽压力的增大,内存访问时延增加,尤其是内存带宽使用接近极限时,内存访问时延陡然上升,如图1所示。
随着5G的高可靠和低延迟通信(ultra-reliable and low latencycommunications,URLLC)场景的引入,包括5G转发网元和工业互联在内的行业应用场景对时延和抖动都提出了较高的要求。因此对于如何消减由于内存带宽资源竞争导致的时延恶化跳变,以及如何满足不同时延要求应用的集群共部署,成为业界需要迫切解决的问题。
发明内容
本申请实施例提供一种内存带宽服务质量的控制方法、装置及系统,用于满足不同应用对内存带宽资源的不同需求。
第一方面,本申请实施例提供一种内存带宽服务质量的控制方法,包括:基础设施管理节点接收第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括需要占用的内存带宽大小和内存带宽QoS信息;所述基础设施管理节点根据多个NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,所述第一NFVI节点为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NFVI节点;所述基础设施管理节点向所述第一NFVI节点发送第二创建请求,所述第二创建请求用于请求所述第一NFVI节点创建所述虚拟机或应用实例,所述第二创建请求包括所述需要占用的内存带宽大小和所述内存带宽QoS信息。
在上述内存带宽服务质量的控制方法中,基础设施管理节点能够根据各NFVI节点的内存带宽使用状态、待创建的虚拟机或应用实例所需占用的内存带宽大小以及对内存带宽QoS的要求,从云平台的多个NFVI节点中选择出能够满足QoS需求的第一NFVI节点,而选择出的第一NFVI节点根据待创建的虚拟机或应用实例所需占用的内存带宽大小以及对内存带宽QoS的要求,创建虚拟机或应用实例,使得创建后的虚拟机或应用实例的在内存带宽方面的需求能够得到满足,从而满足用户对应用时延的需求,提高用户体验。
在一种可能的实现方式中,所述方法还包括:所述基础设施管理节点向第二NFVI节点发送纳管请求,所述纳管请求用于将所述第二NFVI节点纳入所述基础设施管理节点所属的云平台进行管理,所述第二NFVI节点为所述多个NFVI节点中的任一节点;所述基础设施管理节点接收所述第二NFVI节点在纳入所述基础设施管理节点所属的云平台后、发送的所述第二NFVI节点的内存带宽使用状态。在该实现方式中,NFVI节点在纳入基础设施管理节点所属的云平台后,可以周期性或触发性向基础设施管理节点主动上报自身的内存带宽使用状态,从而便于基础设施管理节点及时获取NFVI节点的内存带宽使用状态,进而根据内存带宽使用状态选择满足QoS需求的NFVI节点。
在一种可能的实现方式中,每个所述NFVI节点的内存带宽使用状态包括每个所述NFVI节点包含的每个非统一内存访问架构NUMA的内存带宽使用状态。每个NFVI节点可以包括一个或多个NUMA,为了更加便于基础设施管理节点的管理,可以将每个NUMA的内存带宽使用状态上报给基础设施管理节点,使得基础设施管理节点能够根据每个NUMA的内存带宽使用状态选择能够满足QoS需求的NFVI节点。
在一种可能的实现方式中,所述NUMA的内存带宽使用状态可以但不限于包括以下信息中的一种或任意组合:当前内存带宽使用大小,当前内存带宽使用率,当前内存带宽使用率所属的等级,当前内存访问时延等级。
在一种可能的实现方式中,所述内存带宽QoS信息包括所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,对内存访问的时延要求;所述基础设施管理节点根据多个网络功能虚拟化基础设施NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,包括:所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,所述至少一个候选NFVI节点中的每个NFVI节点在创建所述虚拟机或应用实例时,能够满足创建的所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,能够满足对内存访问的时延要求;所述基础设施管理节点从所述至少一个候选NFVI节点中选择第一NFVI节点。在上述实现方式中,基础设施管理节点可以先根据需要占用的内存带宽大小和内存带宽QoS信息,过滤出能够满足虚拟机或应用实例对内存带宽QoS需求的NFVI节点,即候选NFVI节点,然后可以根据其他资源信息,如CPU、内存等资源信息,进一步选择出用于创建虚拟机或应用实例的第一NFVI节点,使得选取的用于创建虚拟机或应用实例的NFVI节点更为准确。
在一种可能的实现方式中,所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,包括:所述基础设施管理节点根据所述多个NFVI节点分别包含的每个NUMA的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点。每个NFVI节点可以包括一个或多个NUMA,基础设施管理节点可以根据每个NUMA的内存带宽使用状态选择能够满足QoS需求的NFVI节点。
在一种可能的实现方式中,所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,包括:所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,确定每个所述NFVI节点若创建所述虚拟机或应用实例后的时延;所述基础设施管理节点确定所述时延能够满足所述时延要求的至少一个NFVI节点为候选NFVI节点。若内存带宽QoS信息包括对内存访问的时延要求,那么基础设施管理节点需要估计各NFVI节点在创建虚拟机或应用实例后的内存带宽访问时延,从而筛选出满足时延要求的候选NFVI节点。
在一种可能的实现方式中,所述基础设施管理节点为虚拟化基础设施管理器VIM,所述第一创建请求和所述第二请求用于创建满足所述内存带宽QoS的虚拟机;或者,所述基础设施管理节点为容器基础设施服务管理器CISM,所述第一创建请求和所述第二请求用于创建满足所述内存带宽QoS的应用实例。本申请实施例提供的方法可以应用于虚拟机的创建流程中,也可以应用于应用实例的创建流程中。
第二方面,本申请实施例提供一种内存带宽服务质量的控制方法,包括:NFVI节点接收基础设施管理节点发送的第二创建请求,所述第二创建请求用于请求创建虚拟机或应用实例,所述第二创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和内存带宽QoS信息;所述NFVI节点根据所述NFVI节点中的每个非统一内存访问架构NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,所述目标NUMA为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NUMA;所述NFVI节点在所述目标NUMA中创建所述虚拟机或应用实例。
在一种可能的实现方式中,所述方法还包括:所述NFVI节点接收所述基础设施管理节点发送的纳管请求,所述纳管请求用于将所述NFVI节点纳入所述基础设施管理节点所属的云平台进行管理;所述NFVI节点在纳入所述基础设施管理节点所属的云平台后,向所述基础设施管理节点发送所述NFVI节点的内存带宽使用状态。
在一种可能的实现方式中,所述NFVI节点的内存带宽使用状态包括所述NFVI节点包含的每个NUMA的内存带宽使用状态。
在一种可能的实现方式中,所述NUMA的内存带宽使用状态包括以下信息中的一种或任意组合:当前内存带宽使用大小,当前内存带宽使用率,当前内存带宽使用率所属的等级,当前内存访问时延等级。
在一种可能的实现方式中,所述内存带宽QoS信息包括所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,对内存访问的时延要求;所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,包括:所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定出候选NUMA,所述候选NUMA在创建所述虚拟机或应用实例时,能够满足创建的所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,能够满足对内存访问的时延要求;所述NFVI节点从所述候选NUMA中选择目标NUMA。
在一种可能的实现方式中,所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定出候选NUMA,包括:所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定每个NUMA若创建所述虚拟机或应用实例后的时延;所述NFVI节点确定所述时延能够满足所述时延要求的NUMA为候选NUMA。
第三方面,本申请实施例提供一种内存带宽服务质量的控制方法,包括:编排节点接收创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;所述编排节点向网络功能管理节点发送所述创建信息,以使所述网络功能管理节点通过基础设施管理节点创建所述虚拟机或应用实例。
第四方面,本申请实施例提供一种内存带宽服务质量的控制方法,包括:网络功能管理节点接收编排节点发送的创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;所述网络功能管理节点向基础设施管理节点发送第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括所述内存带宽大小和内存带宽QoS信息。
在一种可能的实现方式中,所述基础设施管理节点为虚拟化基础设施管理器VIM,所述第一创建请求用于创建满足所述内存带宽QoS的虚拟机;或者,所述基础设施管理节点为容器基础设施服务管理器CISM,所述第一创建请求用于创建满足所述内存带宽QoS的应用实例。
第五方面,本申请实施例提供一种内存带宽服务质量的控制装置,包括用于执行如第一方面及第一方面任一实现方式所述方法的模块或单元。
第六方面,本申请实施例提供一种内存带宽服务质量的控制装置,包括用于执行如第二方面及第二方面任一实现方式所述方法的模块或单元。
第七方面,本申请实施例提供一种内存带宽服务质量的控制装置,包括用于执行如第三方面所述方法的模块或单元。
第八方面,本申请实施例提供一种内存带宽服务质量的控制装置,包括用于执行如第四方面及第四方面任一实现方式所述方法的模块或单元。
第九方面,本申请实施例提供一种内存带宽服务质量的控制设备,包括:处理器,以及分别与所述处理器耦合的存储器和通信接口;所述存储器,存储有指令或程序;所述通信接口,用于与其他设备进行通信;所述处理器,用于运行所述存储器内的指令或程序,通过所述通信接口执行如第一方面至第四方面及任一实现方式所述的方法。
第十方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面至第四方面及任一实现方式所述的方法。
上述第二方面至第十方面中任一方面中的任一可能实现方式可以实现的技术效果,请参照上述第一方面中相应实现方案可以达到的技术效果说明,重复之处不予论述。
附图说明
图1为本申请实施例提供的内存带宽使用状态与内存访问时延示意图;
图2为pod容器的资源定义示意图;
图3为本申请实施例提供的NFV架构示意图;
图4为本申请实施例提供的一种内存带宽服务质量的控制方法的流程示意图;
图5为本申请实施例提供的NFVI节点上报内存带宽使用状态的流程示意图;
图6为本申请实施例提供的内存带宽使用率等级示意图;
图7为本申请实施例提供的另一种内存带宽服务质量的控制方法的流程示意图;
图8为本申请实施例提供的又一种内存带宽服务质量的控制方法的流程示意图;
图9为本申请实施例提供的又一种内存带宽服务质量的控制方法的流程示意图;
图10为本申请实施例提供的一种内存带宽服务质量的控制装置的结构示意图;
图11为本申请实施例提供的一种内存带宽服务质量的控制设备的结构示意图。
具体实施方式
边缘计算裸机场景,例如欧洲电信标准化协会(european telecommunicationsstandards institute,ETSI)定义的NFV中的容器基础设施服务管理器(containerinfrastructure service manager,CISM)采用的标准可以为kubernetes(一种开源的容器编排系统),kubernetes可以构建容器的部署服务,pod是kubernetes的基本部署单位,一个pod由一组工作在同一节点的容器构成,如图2所示,pod中容器的资源定义可以包括CPU资源大小和内存资源大小等,但是,并不支持内存带宽相关的资源定义。
虚拟机云平台场景,以ESTI定义的NFV中的虚拟化基础设施管理器(virtualizedinfrastructure manager,VIM)为开源云计算管理平台(OpenStack)为例,OpenStack中将虚拟机(virtual machine,VM)作为一个最小的调度单位,如下图所示VM的资源定义包括了CPU和内存等等,与pod容器类似,VM的资源定义也可以包括CPU资源大小和内存大小等,但并不支持内存带宽相关的资源定义。
可见,目前业界现有的集群资源管理云平台,不论是以kubernetes为基础的容器平台、还是以OpenStack为基础的虚拟机平台还是其它基础设施平台,都不支持为上层应用提供内存带宽的资源定义及内存带宽时延服务质量(quality of service,QoS)的资源定义。且ETSI定义的NFV标准里也没有将内存带宽或内存访问时延作为一种可调度的资源进行相关定义,因此无法满足不同应用对内存带宽资源的不同需求。
有鉴于此,本申请实施例提供一种内存带宽服务质量的控制方法及装置,用于满足不同应用对内存带宽资源的不同需求,避免云平台中内存带宽资源竞争导致时延跳变而无法满足应用对时延的需求。
该方法可以应用于NFV架构中。NFV架构借助虚拟化互联网技术(internettechnology,IT),基于大型的共享硬件资源,将传统的通信技术(communicationtechnology,CT)业务重新部署到云平台上(如虚拟机平台,通过物理硬件虚拟而成,兼容CT和IT应用),通过广泛定义的(软件)接口使得网络可以执行程序化功能,从而提升网络部署的统一性、标准型、快捷性及灵活性。
图3示例性的提供了一种能够适用于本申请实施例的NFV架构图,如图所示,NFV架构可以包括:运营支撑系统/业务支撑系统(operation support system/businesssupport system,OSS/BSS),NFV管理和编制系统(NFV management and orchestrationsystem,NFV-MANO),NFV基础设施(NFV infrastructure,NFVI)节点,虚拟网络功能(virtualized network function,VNF),容器网络功能(container network function,CNF)等。
OSS/BSS主要面向电信服务运营商,提供综合的网络管理和业务运营功能,包括网络管理(例如故障监控、网络信息收集等)、计费管理以及客户服务管理等。
NFV-MANO是NFV架构的管理和控制层,提供了NFV架构的整体编排和管理,能够实现对VNF、CNF和NFVI的监控和管理,还可以线上接入OSS/BSS。具体的,NFV-MANO可以包括NFV编排器(NFV orchestrator,NFVO)、一个或多个VNF管理器(VNF manager,VNFM)、一个或多个CNF管理器(CNF manager,CNFM)、一个或多个VIM以及一个或多个CISM。
NFVO,负责管理和编排NFVI和软件资源,并可以与一个或多个VNFM/CNFM进行通信以实现与资源相关的请求,或者发送配置信息给VNFM/CNFM,从而通过VNFM/CNFM控制VNF/CNF,进而在NFVI上创建多个VM或pod。另外,NFVO还可以通过VNFM/CNFM收集VNF/CNF的状态信息,以及与VIM/CISM进行通信以实现资源分配,和/或,实现虚拟化硬件资源的配置信息和状态信息的预留和交换。
每个VNFM/CNFM可以用于管理一个或多个VNF/CNF,即负责VNF/CNF的生命周期管理和各种其他管理功能,例如初始化、更新、查询、和/或终止VNF/CNF。
VIM/CISM可以用于控制和管理VNF/CNF和NFVI的交互,分析NFVI的故障,收集NFVI的信息等。例如,VIM/CISM可以用于执行向VNF/CNF分配资源的操作。VNFM/CNFM和VIM/CISM可以互相通信以交换虚拟化硬件资源配置和状态信息。
VNF是至少一个网络功能的虚拟化,该网络功能可以是由物理网络设备提供的,其中,所述物理网络设备可以为所述NFV架构所能实现的网络或通信系统中的网络设备。VNF也可以由一个或多个虚拟网络功能组件(VNF component,VNFC)组成,VNFC可以为虚拟机或其他形式的虚拟容器。
NFVI是用来部署和执行VNF/CNF的一组资源,通过对计算、存储、网络等物理资源的虚拟化,实现对VNF/CNF所需各元素的物理承载。NFVI可以包括:由计算资源、存储资源、网络资源组成的硬件资源池,虚拟化层,以及由虚拟计算(例如虚拟机、容器)、虚拟存储和虚拟网络组成的虚拟资源层。
计算资源可以为专用的处理器或通用的用于提供处理和计算功能的处理器,如CPU;存储资源用于提供存储能力,例如,可以为硬盘、磁盘或网络附属存储(networkattached storage,NAS)等;网络资源可以是网关、交换机、路由器以及其他网络设备。
虚拟化层可以根据资源虚拟化技术,将硬件资源池中的硬件资源抽象为虚拟资源,从而实现将VNF/CNF和硬件资源所属的物理层解耦,以向VNF/CNF提供虚拟资源。
虚拟资源层可以将这些虚拟资源组成虚拟资源池,以灵活地向VNF/CNF提供资源。其中,虚拟计算、虚拟存储可以以虚拟机或其他虚拟容器的形式向VNF/CNF提供,例如一个或多个虚拟机组成一个VNF。虚拟化层通过抽象网络资源形成虚拟网络。虚拟网络,用于实现多个虚拟机之间,或多个承载VNF/CNF的其他类型的虚拟容器之间的通信。虚拟网络的创建可以通过虚拟局域网(vritual local area network,VLAN)、虚拟专用局域网业务(virtual private LAN service,VPLS)、虚拟可扩展局域网(virtual eXtensible localarea network,VxLAN)或通用路由封装网络虚拟化(nerwork virtualization usinggeneric routing encapsulation,NVGRE)等技术实现。
应当理解,图3仅为本申请实施例适用的NFV架构的一种示例,实际应用的NFV架构可以包括比图3更多或更少的节点/设备。
参见图4,为本申请实施例提供的一种内存带宽服务质量的控制方法的流程示意图,该方法实施例可以应用于图3所述的系统架构上。如图所示,该方法可以包括以下步骤:
步骤401、基础设施管理节点接收第一创建请求。
基础设施管理节点可以为能够对NFVI节点进行管理的节点,例如,可以是图3中的VIM、CISM等,下文会针对基础设施管理节点分别为VIM、CISM的情况进行具体说明。
上述第一创建请求用于请求创建虚拟机或应用实例。其中,应用实例可以是上述实施例中的pod,也可以是容器或其他业务服务等。具体的,上述第一创建请求中包含有待创建的虚拟机或应用实例所需占用的内存带宽大小和内存带宽QoS信息。
传统的资源定义中虽然包含有内存大小,但是没有定义内存带宽大小,而内存带宽大小影响着内存访问速度,因此,本申请实施例中的创建请求中包含有内存带宽大小,有利于保证创建的虚拟机或应用实例在访问内存时的速度,即有助于降低内存访问时延。
此外,传统的资源定义中也没有关于内存带宽QoS的指示。应当理解,理论的内存带宽与实际的内存带宽存在一定差距,尤其是在内存带宽实际使用接近最大内存带宽时,内存访问的时延将显著升高。因此,即使理论分配的内存带宽满足虚拟机或应用实例的需求,但考虑到实际应用的不同状况,实际的内存访问时延可能无法满足需求。故本申请实施例中在创建虚拟机或应用实例时,还可以在创建请求中增加内存带宽QoS信息,从而使得在满足理论内存带宽的同时,满足实际应用过程中的内存访问速度。
步骤402、基础设施管理节点根据多个NFVI节点的内存带宽使用状态、第一创建请求中包括的所需占用的内存带宽大小和内存带宽QoS信息,从多个NFVI节点中选择第一NFVI节点。
其中,第一NFVI节点为基础设施管理节点选择出的用于创建上述第一创建请求所请求创建的虚拟机或应用实例的NFVI节点,该第一NFVI节点在根据上述内存带宽大小创建虚拟机或应用实例后,能够使得创建的虚拟机或应用实例满足上述内存带宽QoS需求。
在云平台中,通常存在多个NFVI节点,每个NFVI节点均如前述图3所示实施例结构所述,包括硬件资源池、虚拟化层以及虚拟资源层,每个NFVI节点均可在自身中创建虚拟机或应用实例,创建的虚拟机或应用实例用于执行VNF和/或CNF的功能。基础设施管理节点根据上述步骤402选择出的NFVI节点,既能够满足创建的虚拟机或应用实例对内存带宽的要求,又能够满足对内存带宽QoS的要求。
步骤403、基础设施管理节点向选择出的第一NFVI节点发送第二创建请求。
该第二创建请求用于请求第一NFVI节点创建虚拟机或应用实例,且该第二创建请求中也包括上述内存带宽大小和内存带宽QoS信息,以实现第一NFVI节点可以根据上述内存带宽大小和内存带宽QoS信息,创建满足内存带宽QoS需求的虚拟机或应用实例。
步骤404、第一NFVI节点根据第二创建请求中包括的所需的内存带宽大小和内存带宽QoS信息创建虚拟机或应用实例。
第一NFVI节点创建虚拟机或应用实例的方式可参考现有的创建方式,本申请实施例对此不做限定。
在上述内存带宽服务质量的控制方法中,基础设施管理节点能够根据各NFVI节点的内存带宽使用状态、待创建的虚拟机或应用实例所需占用的内存带宽大小以及对内存带宽QoS的要求,从云平台的多个NFVI节点中选择出能够满足内存带宽大小和QoS需求的第一NFVI节点,而选择出的第一NFVI节点根据待创建的虚拟机或应用实例所需占用的内存带宽大小以及对内存带宽QoS的要求,进而创建虚拟机或应用实例,使得创建后的虚拟机或应用实例在内存带宽方面的需求能够得到满足,从而满足用户对应用时延的需求,提高用户体验。
一种实例中,若将上述内存带宽服务质量的控制方法应用于虚拟机的创建过程中,上述基础设施管理节点可以为VIM;相应的,上述基础设施管理节点接收到的第一创建请求可以是网络功能管理节点(例如VNFM)发送的,用于请求创建满足相应QoS需求的虚拟机,而基础设施管理节点向第一NFVI节点发送的第二创建请求,也相应的用于请求第一NFVI节点创建满足QoS需求的虚拟机;第一NFVI节点在上述步骤404中则创建相应的虚拟机。
具体的,网络功能管理节点可以是在接收到编排节点(例如NFVO)发送的创建信息后,向VIM发送第一创建请求。相应的,网络功能管理节点接收到的创建信息中也包括待创建的虚拟机需要占用的内存带宽大小和内存带宽QoS信息。例如,VNFM接收NFVO发送的软件包,该软件包中包含有需要创建的一个或多个虚拟机的信息,如内存带宽大小和内存带宽QoS信息,以及所需的环境资源等等;VNFM对该软件包进行解析,从而确定需要创建的每个虚拟机及每个虚拟机所需要的内存带宽大小和内存带宽QoS信息,然后向VIM发送用于创建虚拟机的第一创建请求。
示例性的,编排节点可以是在接收到用户输入的VNDF部署模板、环境资源等信息后,向VNFM发送上述第一创建信息。而VNDF部署模板较传统的VNDF部署模板可以增加请求创建的虚拟机所需的内存带宽大小和内存带宽QoS信息等,从而提供一种可以传递请求创建的虚拟机所需的内存带宽大小和内存带宽QoS信息的实现方式。
另一种实例中,若将上述内存带宽服务质量的控制方法应用于应用实例的创建过程中,上述基础设施管理节点可以为CISM;相应的,上述基础设施管理节点接收到的第一创建请求可以是网络功能管理节点(例如CNFM)发送的,用于请求创建满足相应QoS需求的应用实例,而基础设施管理节点向第一NFVI节点发送的第二创建请求,也相应的用于请求第一NFVI节点创建满足QoS需求的应用实例;第一NFVI节点在上述步骤404中则创建相应的应用实例。
具体的,网络功能管理节点可以是在接收到编排节点(例如NFVO)发送的创建信息后,向CISM发送第一创建请求。相应的,网络功能管理节点接收到的创建信息中也包括待创建的应用实例需要占用的内存带宽大小和内存带宽QoS信息。例如,CNFM接收NFVO发送的软件包,该软件包中包含有需要创建的一个或多个应用实例需要满足或占用的信息,该信息例如为应用实例需要占用的内存带宽大小和内存带宽QoS信息,以及所需的环境资源等等;CNFM对该软件包进行解析,从而确定需要创建的每个应用实例需要满足的内存带宽大小和内存带宽QoS信息,然后向CISM发送用于创建应用实例的第一创建请求。
示例性的,编排节点可以是在接收到用户输入的云应用程序的拓扑和编排规范(topology and orchestration specification for cloud application,TOSCA)部署模板、环境资源等信息后,向CNFM发送上述第一创建信息。而TOSCA部署模板较传统的TOSCA部署模板可以增加请求创建的应用实例所需的内存带宽大小和内存带宽QoS信息等,从而提供一种可以传递请求创建的应用实例所需的内存带宽大小和内存带宽QoS信息的实现方式。
在上述步骤402中,基础设施管理节点在选择第一NFVI节点时,需要根据各个NFVI节点的内存带宽使用状态进行选择,故基础设施管理节点可以及时获取各NFVI节点当前的内存带宽使用状态。
在一种可能的设计中,可以通过对现有纳管方式进行改进,实现基础设施管理节点能够及时获取各NFVI节点当前的内存带宽使用状态。例如,如图5所示,在将一个新的NFVI节点纳入云平台进行管理时,基础设施管理节点可以向该新NFVI节点发送纳管请求,以请求将该新NFVI节点纳入云平台进行管理。在新NFVI节点执行纳管流程的过程中,可以向基础设施管理节点上报静态内存带宽信息,如总内存带宽大小等,进一步的还可以包括新NFVI节点当前的内存带宽使用状态等信息。新NFVI节点在纳入该云平台后,即完成相应的纳管流程后,NFVI节点根据通信协议或基础设施管理节点的要求,周期性向基础设施管理节点发送动态内存带宽信息,即当前的内存带宽使用状态信息,或者,在满足触发条件时及时向基础设施管理节点发送自身的内存带宽使用状态,如内存带宽使用状态发生变化或变化满足预设条件时主动向基础设施管理节点上报当前的内存带宽使用状态;相应的,基础设施管理节点在接收到任意NFVI节点当前的内存带宽使用状态信息后,可以及时对自身存储的该NFVI节点的内存带宽状态信息进行更新。
在另一种可能的设计中,基础设施管理节点也可以根据需要向一个或多个NFVI节点发送订阅请求,以请求订阅NFVI节点的内存带宽使用状态;NFVI节点在接收到订阅请求后,可以周期性或满足条件触发性向基础设施管理节点上报自身的内存带宽使用状态。或者,基础设施管理节点也可以在接收到第一创建请求后,向各NFVI节点发送请求,以请求获取各NFVI节点当前的内存带宽使用状态。基础设施管理节点具体如何获取各个NFVI节点当前的内存带宽使用状态的方式,本申请不做具体限定。
具体的,NFVI节点的内存带宽使用状态可以包括以下信息中的一种或任意组合:当前内存带宽使用大小,当前内存带宽使用率,当前内存带宽使用率所属的等级,当前内存访问时延等级等。
其中,内存带宽使用率等级,即预先对内存带宽使用率进行区域划分,每个区域对应一个等级,NFVI节点根据当前内存带宽使用率确定该使用率所属区域对应的等级。例如,根据图6所示的内存带宽使用率与内存访问时延的关系示意图可以看出,当内存带宽使用率在0~40%之间时,内存访问时延可以较低,且时延趋近于一个常数;当内存带宽使用率在40%~80%之间时,内存访问时延比0~40%之间时有所上升,且随内存带宽使用率线性增加;而当内存带宽使用率在80%~100%之间时,内存访问时延随内存带宽使用率呈指数增长。在一个具体实施例中,可以将内存带宽使用率0~40%划分为一个区域,对应的等级为常数等级;将内存带宽使用率40%~80%划分为一个区域,对应的等级为线性等级;将内存带宽使用率80%~100%划分为一个区域,对应的等级为指数等级。因此,常数等级可以适用于对内存访问时延要求较高的虚拟机或应用实例,线性等级可以适用于对内存带宽访问时延有一定要求但要求并不严格的虚拟机或应用实例,而指示等级可以适用于对内存带宽访问时延无要求的虚拟机或应用实例。上述等级名称仅为举例,在实际应用时也可以采用“1、2、3”或其他标识用于等级的区分,本申请实施例对此不做限定。
应当理解,实际应用时的内存带宽最大值与理论的内存带宽最大值往往并不相等,通常实际内存带宽最大值为理论内存带宽最大值的75%~85%。理论内存带宽最大值=(内存频率*位宽/8)*内存通道实插数量。例如,一个CPU的单个非统一内存访问架构(non-uniformmemory access,NUMA)标配有4个本地双倍速率同步动态随机存储器(doubledata rate,DDR),每个DDR的内存频率为2933MHz,位宽为72bit,那么该NUMA的最大理论内存带宽为(2933*72/8)*4=105588MB/s≈103GB/s,则实际内存带宽最大值为103*75%≈77GB/s。以前述实施例中的等级划分为例,则常数等级对应的内存带宽负载上限为77*40%≈31GB/s,线性等级对应的内存带宽负载上限为77*80%≈62GB/s。若NFVI节点上报的为内存带宽使用大小,则基础设施管理节点可以根据内存带宽使用大小和其理论最大内存带宽确定当前的使用率或使用率等级;若NFVI节点上报的为内存带宽使用率,则基础设施管理节点可以根据使用率确定相应的等级。
此外,为了满足更加精细的QoS要求,还可以对等级进行更加细致的划分,例如,可以将内存带宽使用率等级划分为5个等级或更多的数量的等级,或者,还可以根据内存访问时延对本申请实施例对此不做限定。
上述区域划分是根据内存带宽使用率进行划分。在另一种实现方式中,也可以根据内存访问时延进行划分。例如,内存带宽使用率在0~30%之间时,其内存访问时延在90ns以内,则该区域对应的等级可以为90,使用率在30%~50%之间时其内存访问时延在100ns以内,则该区域对应的等级可以为100,使用率在50%~70%之间时其内存访问时延在110ns以内,则该区域对应的等级可以为110,使用率再增加时,则内存访问时延呈指数上升,适用于对内存访问时延无要求的虚拟机或应用实例,则对应的等级为无要求。
可选的,上述第一创建请求中的QoS信息,可以包括待创建的虚拟机或应用实例对内存带宽使用率的等级要求,和/或,对内存访问的时延要求。例如,若QoS信息中包括常数等级,则表明NFVI节点在创建虚拟机或应用实例后的内存带宽使用率等级应为常数等级;若QoS信息中包括线性等级,则表明NFVI节点在创建虚拟机或应用实例后的内存带宽使用率等级应为线性等级。又例如,若QoS信息中包括内存访问时延等级,该时延等级为100,则表明NFVI节点在创建虚拟机或应用实例后的内存带访问时延应在100ns以内。
相应的,基础设施管理节点在根据QoS信息选择第一NFVI节点时,可以根据各NFVI节点的内存带宽使用状态,从多个NFVI节点中确定出至少一个候选NFVI节点,确定出的候选NFVI节点中的每个节点,若根据所需的内存带宽大小创建虚拟机或应用实例,均能够满足虚拟机或应用实例对QoS的需求,如对内存带宽使用率的等级要,和/或,对内存访问的时延要求。然后,基础设施管理节点可以从确定出的至少一个候选NFVI节点中,进一步选择出用于创建虚拟机或应用实例的第一NFVI节点。具体的,基础设施管理节点可以再根据其他资源信息和/或选择策略,如利用Intel资源主管技术(resource director technology,RDT)或者ARM内存系统资源分区和监视(memory system resource partitioning andmonitoring,MPAM)能力,负载均衡策略等从候选NFVI节点中选择第一NFVI节点。
若第一创建请求中的QoS信息包括内存访问时延等级,那么基础设施管理节点在确定候选NFVI节点时,可以先确定每个NFVI节点若根据所需的内存带宽大小创建虚拟机或应用实例后的内存访问时延,并判断每个NFVI节点的内存访问时延是否满足第一创建请求中的内存访问时延等级要求,若满足则将其确定为候选NFVI节点。例如,QoS信息中内存访问时延等级为100,表示创建虚拟机或应用实例后的内存带访问时延应在100ns以内,那么基础设施管理节点根据各NFVI节点内存带宽使用状态以及待创建的虚拟机或应用实例所需占用的内存带宽大小,判断若创建虚拟机或应用实例后NFVI节点内存访问时延,例如可以根据如图1、图6所示的内存带宽使用率与内存访问时延之间的对应关系确定,从而确定创建虚拟机或应用实例后的内存访问时延是否满足QoS需求。
每个NFVI节点中可以包括一个或多个NUMA,前述实施例以包含一个NUMA进行举例说明。当NFVI节点包含多个NUMA时,NFVI节点向基础设施管理节点发送的内存带宽使用状态,可以包括每个NUMA的内存带宽使用状态。此外,NFVI节点还可以向基础设施管理节点发送其包含的NUMA的数量等信息,以方便基础设施管理节点进行管理。
当NFVI节点包含多个NUMA并向基础设施管理节点发送了每个NUMA的内存带宽使用状态时,那么基础设施管理节点在执行上述步骤402时,可以根据每个NUMA的内存带宽使用状态,以及第一创建请求中包含的需要占用的内存带宽大小和内存带宽QoS信息,选择第一NFVI节点。
具体的,基础设施管理节点可以根据每个NUMA的内存带宽使用状态,判断每个NUMA是否能够满足创建虚拟机或应用实例的QoS需求,若满足,则将满足需求的NUMA所在的NFVI节点作为候选NFVI节点。然后基础设施管理节点可以再根据其他资源信息,如利用Intel RDT或者ARM MPAM能力、负载均衡策略等从候选NFVI节点中选择第一NFVI节点。
在一种可能的实现方式中,基础设施管理节点虽然能够获取每个NUMA的内存带宽使用状态,并确定出能够满足QoS需求的NUMA,但基础设施管理节点可以仅将能够满足QoS需求的NUMA所在的NFVI节点作为候选NFVI节点,并从候选NFVI节点中选择出第一NFVI节点,但无需确定第一NFVI节点中的哪个NUMA为用于创建虚拟机或应用实例。第一NFVI节点在接收到基础设施管理节点发送的第二创建请求后,由第一NFVI节点根据第二创建请求中包含的所需占用的内存带宽大小和内存带宽QoS信息,再选择用于创建虚拟机或应用实例的目标NUMA,并在目标NUMA中创建虚拟机或应用实例。
具体的,第一NFVI节点可以根据每个NUMA的内存带宽使用状态、所需占用的内存带宽大小和内存带宽QoS信息,确定每个NUMA若根据所需占用的内存带宽大小创建虚拟机或应用实例后,是否能够满足相应的内存带宽QoS需求,并将能够满足QoS需求的NUMA当作候选NUMA;然后第一NFVI节点可以根据其他资源信息,例如Intel RDT或者ARM MPAM能力等资源,从候选NUMA中选择出目标NUMA,由选择出的目标NUMA来创建虚拟机或应用实例。
为了更加清楚理解本申请上述实施例中,下面结合图7至图9进行举例说明。
图7示例性的提供了一种利用本申请实施例提供的内存带宽服务质量的控制方法创建VM的流程。在执行图7所示流程之前,假设VIM已经与多个NFVI节点完成纳管流程,各NFVI节可以点周期性的向VIM上报自身包含的每个NUMA的内存带宽使用状态(图中未示出)。
如图7所示,创建VM的流程可以包括以下步骤:
步骤701、NFVO接收用户输入的软件包。该软件包中包括VNFD部署模板,该模板中包含有待创建的VM应用占用的内存带宽大小以及内存带宽QoS信息。
步骤702、NFVO向VNFM转发软件包。
步骤703、VNFM对软件包进行解析,确定待创建的VM,并向VIM发送第一创建请求。该第一创建请求中包括上述VM应用所需占用的内存带宽大小以及内存带宽QoS信息。
步骤704、VIM对第一创建请求进行解析,根据VM应用所需占用的内存带宽大小、内存带宽QoS信息以及各NFVI节点中的各NUMA的内存带宽使用状态,过滤出能够满足待创建的VM所需要的内存带宽大小和内存带宽QoS的NUMA所在的NFVI节点(即候选NFVI节点),再通过其他资源类型调度器从候选NFVI节点中选择第一NFVI节点。
步骤705、VIM向第一NFVI节点发送第二创建请求,该第二创建请求中也包含有上述VM应用所需占用的内存带宽大小以及内存带宽QoS信息。
步骤706、第一NFVI节点根据自身包含的各NUMA的内存带宽使用状态、待创建的VM应用所需占用的内存带宽大小以及内存带宽QoS信息,确定能够满足待创建的VM所需要的内存带宽大小和内存带宽QoS的候选NUMA,再根据Intel RDT或者ARM MPAM资源能力等从多个候选NUMA中选择出目标NUMA,并在目标NUMA中创建VM。
第一NFVI节点创建了VM后,其内存带宽使用状态可能会发生变化,第一NFVI节点待下次向VIM上报各NUMA的内存带宽使用状态时,可以根据创建VM后的内存带宽使用状态进行上报,以便于VIM及时了解各个NFVI节点的内存带宽使用状态。
图8示例性的提供了一种利用本申请实施例提供的内存带宽服务质量的控制方法创建pod的流程。在执行图8所示流程之前,假设CISM已经与多个NFVI节点完成纳管流程,各NFVI节点周期性的向CISM上报自身包含的每个NUMA的内存带宽使用状态(图中未示出)。
如图8所示,创建pod的流程可以包括以下步骤:
步骤801、NFVO接收用户输入的软件包。该软件包中包括TOSCA部署模板,该模板中包含有待创建的pod所需占用的内存带宽大小以及内存带宽QoS信息。
步骤802、NFVO向CNFM转发软件包。
步骤803、CNFM对软件包进行解析,确定待创建的pod,并向CISM发送第一创建请求。该第一创建请求中包括上述待创建的pod所需占用的内存带宽大小以及内存带宽QoS信息。
步骤804、CISM对第一创建请求进行解析,根据pod所需占用的内存带宽大小、内存带宽QoS信息以及各NFVI节点中的各NUMA的内存带宽使用状态,过滤出能够满足待创建的pod所需占用的内存带宽大小以及内存带宽QoS的NUMA所在的NFVI节点(即候选NFVI节点),再通过其他资源类型调度器从候选NFVI节点中选择第一NFVI节点。
步骤805、CISM向第一NFVI节点发送第二创建请求,该第二创建请求中也包含有上述待创建的pod所需占用的内存带宽大小以及内存带宽QoS信息。
步骤806、第一NFVI节点根据自身包含的各NUMA的内存带宽使用状态、pod占用的内存带宽大小以及内存带宽QoS信息,确定能够满足待创建的pod所需占用的内存带宽大小以及内存带宽QoS的候选NUMA,再根据Intel RDT或者ARM MPAM等能力资源从候选NUMA中选择目标NUMA,并在目标NUMA中创建pod。
第一NFVI节点创建了VM后,其内存带宽使用状态可能会发生变化,第一NFVI节点待下次向CISM上报各NUMA的内存带宽使用状态时,可以根据创建pod后的内存带宽使用状态进行上报,以便于CISM及时了解各个NFVI节点的内存带宽使用状态。
假设图7或图8所示的创建流程是为业务A创建VM或应用实例,所需占用的内存带宽为20GB/s,所需的内存带宽QoS信息指示内存带宽等级为常数等级。如图9所示,该云平台包括NFVI节点A和NFVI节点B,其中,NFVI节点A包含的NUMA0当前的内存带宽使用率等级为常数等级,NUMA1当前的内存带宽使用率等级为线性等级;NFVI节点B包含的NUMA0当前的内存带宽使用率等级为线性等级,NUMA1当前的内存带宽使用率等级为指数等级。基础设施管理节点(比如VIM或CISM)确定NFVI节点A中的NUMA0,在创建业务A的VM或应用实例后,其内存带宽使用率仍为常数等级,而NFVI节点A中的NUMA1以及NFVI节点B中的两个NUMA均无法满足业务A的VM或应用实例对内存带宽QoS的需求,故NFVI节点A为VIM或CISM选择出的第一NFVI节点,VIM或CISM可向NFVI节点A发送用于请求创建VM或应用实例的请求(即上述实施例中的第二创建请求)。NFVI节点A在接收到第二创建请求后,根据各NUMA的内存带宽使用状态,选择NUMA0为目标NUMA,并在NUMA0中创建业务A的VM或应用实例。
基于相同的技术构思,本申请实施例还提供一种内存带宽服务质量控制装置,用于实现上述方法实施例。图10为本申请实施例提供的内存带宽服务质量控制装置的示意图,如图所示,该装置可以包括处理模块1001和收发模块1002。处理模块1001用于实现该装置对数据的处理。收发模块1002用于接收其他装置发送的信息和/或向其他装置发送信息。应理解,本申请实施例中的处理模块1001可以由处理器或处理器相关电路组件(或者,称为处理电路)实现,收发模块1002可以由收发器或收发器相关电路组件实现。
示例性地,该装置可以是装置设备,也可以是应用于装置设备中的芯片或者其他具有上述通信装置设备功能的组合器件、部件等。
该装置可以是前述方法实施例中的基础设施管理节点、NFVI节点、编排节点或网络功能管理节点。
当该装置为基础设施管理节点时,收发模块1002用于接收第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括需要占用的内存带宽大小和内存带宽服务质量QoS信息;处理模块1001用于根据多个网络功能虚拟化基础设施NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,所述第一NFVI节点为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NFVI节点;收发模块1002还用于向所述第一NFVI节点发送第二创建请求,所述第二创建请求用于请求所述第一NFVI节点创建所述虚拟机或应用实例,所述第二创建请求包括所述需要占用的内存带宽大小和所述内存带宽QoS信息。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中基础设施管理节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
当该装置为NFVI节点时,收发模块1002用于接收基础设施管理节点发送的第二创建请求,所述第二创建请求用于请求创建虚拟机或应用实例,所述第二创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;处理模块1001用于根据所述NFVI节点中的每个非统一内存访问架构NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,所述目标NUMA为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NUMA,在所述目标NUMA中创建所述虚拟机或应用实例。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中NFVI节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
当该装置为编排节点时,收发模块1002用于在处理模块1001的控制下,接收创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;向网络功能管理节点发送所述创建信息,以使所述网络功能管理节点通过基础设施管理节点创建所述虚拟机或应用实例。
当该装置为网络功能管理节点时,收发模块1002用于在处理模块1001的控制下,接收编排节点发送的创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;向基础设施管理节点发送第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括所述内存带宽大小和内存带宽QoS信息。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中网络功能管理节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
基于相同的技术构思,本申请实施例还提供一种内存带宽服务质量控制设备,用于实现上述方法实施例。图11为本申请实施例提供的内存带宽服务质量控制设备的示意图,如图所示,该设备可以包括处理器1101、通信接口1102、存储器1103,进一步的,还可以包括总线1104。
其中,处理器1101、通信接口1102以及存储器1103可以通过总线1104相互连接;总线1104可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。上述总线1104可以分为地址总线、数据总线和控制总线等。为便于表示,图11中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
处理器1101可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。
通信接口1102,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
存储器1103可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。
该设备可以是前述方法实施例中的基础设施管理节点、NFVI节点、编排节点或网络功能管理节点。
当该设备为基础设施管理节点时,处理器1101用于通过通信接口1102接收第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括需要占用的内存带宽大小和内存带宽服务质量QoS信息;根据多个网络功能虚拟化基础设施NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,所述第一NFVI节点为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NFVI节点;通过通信接口1102向所述第一NFVI节点发送第二创建请求,所述第二创建请求用于请求所述第一NFVI节点创建所述虚拟机或应用实例,所述第二创建请求包括所述需要占用的内存带宽大小和所述内存带宽QoS信息。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中基础设施管理节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
当该设备为NFVI节点时,处理器1101用于通过通信接口1102接收基础设施管理节点发送的第二创建请求,所述第二创建请求用于请求创建虚拟机或应用实例,所述第二创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;根据所述NFVI节点中的每个非统一内存访问架构NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,所述目标NUMA为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NUMA,在所述目标NUMA中创建所述虚拟机或应用实例。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中NFVI节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
当该设备为编排节点时,处理器1101用于通过通信接口1102接收创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;通过通信接口1102向网络功能管理节点发送所述创建信息,以使所述网络功能管理节点通过基础设施管理节点创建所述虚拟机或应用实例。
当该设备为网络功能管理节点时,处理器1101用于通过通信接口1102接收编排节点发送的创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;通过通信接口1102向基础设施管理节点发送第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括所述内存带宽大小和内存带宽QoS信息。
此外,上述各个模块还可以用于支持上述方法实施例任一实现方式中网络功能管理节点所执行的其他过程。有益效果可参考前面的描述,此处不再赘述。
基于相同的技术构思,本申请实施例还提供一种内存带宽服务质量控制系统,该系统可以包括基础设施管理节点、NFVI节点、编排节点或网络功能管理节点,具体结构可参见上述图3所示的系统架构。其中,基础设施管理节点、NFVI节点、编排节点以及网络功能管理节点,可以用于执行上述方法实施例中各节点所执行的方法步骤,例如执行上述图4-图5、图7-图9所示方法实施例中各节点所执行的方法步骤。
本申请实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序包括用于执行上述方法实施例的指令,例如用于实现上述图4-图5、图7-图9所示方法实施例中各节点所执行的方法步骤的指令。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述方法实施例被执行,例如使得上述图4-图5、图7-图9所示方法实施例中各节点所执行的方法被执行。
本申请实施例的描述中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请中所涉及的多个,是指两个或两个以上。
另外,需要理解的是,在本申请的描述中,“第一”、“第二”、“第三”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序包括用于执行上述方法实施例的指令。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (24)
1.一种内存带宽服务质量的控制方法,其特征在于,所述方法包括:
基础设施管理节点接收第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括需要占用的内存带宽大小和内存带宽服务质量QoS信息;
所述基础设施管理节点根据多个网络功能虚拟化基础设施NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,所述第一NFVI节点为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NFVI节点;
所述基础设施管理节点向所述第一NFVI节点发送第二创建请求,所述第二创建请求用于请求所述第一NFVI节点创建所述虚拟机或应用实例,所述第二创建请求包括所述需要占用的内存带宽大小和所述内存带宽QoS信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述基础设施管理节点向第二NFVI节点发送纳管请求,所述纳管请求用于将所述第二NFVI节点纳入所述基础设施管理节点所属的云平台进行管理,所述第二NFVI节点为所述多个NFVI节点中的任一节点;
所述基础设施管理节点接收所述第二NFVI节点在纳入所述基础设施管理节点所属的云平台后、发送的所述第二NFVI节点的内存带宽使用状态。
3.根据权利要求1或2所述的方法,其特征在于,每个所述NFVI节点的内存带宽使用状态包括每个所述NFVI节点包含的每个非统一内存访问架构NUMA的内存带宽使用状态。
4.根据权利要求3所述的方法,其特征在于,所述NUMA的内存带宽使用状态包括以下信息中的一种或任意组合:
当前内存带宽使用大小,当前内存带宽使用率,当前内存带宽使用率所属的等级,当前内存访问时延等级。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述内存带宽QoS信息包括所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,对内存访问的时延要求;
所述基础设施管理节点根据多个网络功能虚拟化基础设施NFVI节点的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,从所述多个NFVI节点中选择第一NFVI节点,包括:
所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,所述至少一个候选NFVI节点中的每个NFVI节点在创建所述虚拟机或应用实例时,能够满足创建的所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,能够满足对内存访问的时延要求;
所述基础设施管理节点从所述至少一个候选NFVI节点中选择第一NFVI节点。
6.根据权利要求5所述的方法,其特征在于,所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,包括:
所述基础设施管理节点根据所述多个NFVI节点分别包含的每个NUMA的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点。
7.根据权利要求5所述的方法,其特征在于,所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,从所述多个NFVI节点中确定出至少一个候选NFVI节点,包括:
所述基础设施管理节点根据所述多个NFVI节点的内存带宽使用状态,确定每个所述NFVI节点若创建所述虚拟机或应用实例后的内存访问时延;
所述基础设施管理节点确定所述时延能够满足所述时延要求的至少一个NFVI节点为候选NFVI节点。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述基础设施管理节点为虚拟化基础设施管理器VIM,所述第一创建请求和所述第二请求用于创建满足所述内存带宽QoS的虚拟机;或者
所述基础设施管理节点为容器基础设施服务管理器CISM,所述第一创建请求和所述第二请求用于创建满足所述内存带宽QoS的应用实例。
9.一种内存带宽服务质量的控制方法,其特征在于,所述方法包括:
网络功能虚拟化基础设施NFVI节点接收基础设施管理节点发送的第二创建请求,所述第二创建请求用于请求创建虚拟机或应用实例,所述第二创建请求包括创建虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;
所述NFVI节点根据所述NFVI节点中的每个非统一内存访问架构NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,所述目标NUMA为根据所述内存带宽大小创建所述虚拟机或应用实例能够满足所述内存带宽QoS需求的NUMA;
所述NFVI节点在所述目标NUMA中创建所述虚拟机或应用实例。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述NFVI节点接收所述基础设施管理节点发送的纳管请求,所述纳管请求用于将所述NFVI节点纳入所述基础设施管理节点所属的云平台进行管理;
所述NFVI节点在纳入所述基础设施管理节点所属的云平台后,向所述基础设施管理节点发送所述NFVI节点的内存带宽使用状态。
11.根据权利要求10所述的方法,其特征在于,所述NFVI节点的内存带宽使用状态包括所述NFVI节点包含的每个NUMA的内存带宽使用状态。
12.根据权利要求11所述的方法,其特征在于,所述NUMA的内存带宽使用状态包括以下信息中的一种或任意组合:
当前内存带宽使用大小,当前内存带宽使用率,当前内存带宽使用率所属的等级,当前内存访问时延等级。
13.根据权利要求9-12任一项所述的方法,其特征在于,所述内存带宽QoS信息包括所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,对内存访问的时延要求;
所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态、所述需要占用的内存带宽大小和所述内存带宽QoS信息,确定目标NUMA,包括:
所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定出候选NUMA,所述候选NUMA在创建所述虚拟机或应用实例时,能够满足创建的所述虚拟机或应用实例对内存带宽使用率的等级要求,和/或,能够满足对内存访问的时延要求;
所述NFVI节点从所述候选NUMA中选择目标NUMA。
14.根据权利要求13所述的方法,其特征在于,所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定出候选NUMA,包括:
所述NFVI节点根据所述NFVI节点中的每个NUMA的内存带宽使用状态,确定每个NUMA若创建所述虚拟机或应用实例后的内存访问时延;
所述NFVI节点确定所述时延能够满足所述时延要求的NUMA为候选NUMA。
15.一种内存带宽服务质量的控制方法,其特征在于,所述方法包括:
编排节点接收创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;
所述编排节点向网络功能管理节点发送所述创建信息,以使所述网络功能管理节点通过基础设施管理节点创建所述虚拟机或应用实例。
16.一种内存带宽服务质量的控制方法,其特征在于,所述方法包括:
网络功能管理节点接收编排节点发送的创建信息,所述创建信息包含待创建的虚拟机或应用实例需要占用的内存带宽大小和内存带宽服务质量QoS信息;
所述网络功能管理节点向基础设施管理节点发送第一创建请求,所述第一创建请求用于创建虚拟机或应用实例,所述第一创建请求包括所述内存带宽大小和内存带宽QoS信息。
17.根据权利要求16所述的方法,其特征在于,所述基础设施管理节点为虚拟化基础设施管理器VIM,所述第一创建请求用于创建满足所述内存带宽QoS的虚拟机;或者
所述基础设施管理节点为容器基础设施服务管理器CISM,所述第一创建请求用于创建满足所述内存带宽QoS的应用实例。
18.一种内存带宽服务质量的控制装置,其特征在于,包括用于执行如权利要求1-8任一项所述的方法的模块或单元。
19.一种内存带宽服务质量的控制装置,其特征在于,包括用于执行如权利要求9-14任一项所述的方法的模块或单元。
20.一种内存带宽服务质量的控制装置,其特征在于,包括用于执行如权利要求15所述的方法的模块或单元。
21.一种内存带宽服务质量的控制装置,其特征在于,包括用于执行如权利要求16或17所述的方法的模块或单元。
22.一种内存带宽服务质量的控制系统,其特征在于,包括:如权利要求18所述的装置、如权利要求19所述的装置、如权利要求20所述的装置以及如权利要求21所述的装置。
23.一种内存带宽服务质量的控制设备,其特征在于,包括:处理器,以及分别与所述处理器耦合的存储器和通信接口;
所述存储器,存储有指令或程序;
所述通信接口,用于与其他设备进行通信;
所述处理器,用于运行所述存储器内的指令或程序,通过所述通信接口执行如权利要求1-17任一项所述的方法。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-17任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111419537.8A CN116185552A (zh) | 2021-11-26 | 2021-11-26 | 一种内存带宽服务质量的控制方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111419537.8A CN116185552A (zh) | 2021-11-26 | 2021-11-26 | 一种内存带宽服务质量的控制方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116185552A true CN116185552A (zh) | 2023-05-30 |
Family
ID=86450976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111419537.8A Pending CN116185552A (zh) | 2021-11-26 | 2021-11-26 | 一种内存带宽服务质量的控制方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116185552A (zh) |
-
2021
- 2021-11-26 CN CN202111419537.8A patent/CN116185552A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112153700B (zh) | 一种网络切片资源管理方法及设备 | |
EP3461087B1 (en) | Network-slice resource management method and apparatus | |
US20190230004A1 (en) | Network slice management method and management unit | |
US10827366B2 (en) | System and methods for monitoring performance of slices | |
CN108370341B (zh) | 资源配置方法、虚拟网络功能管理器和网元管理系统 | |
CN108293004B (zh) | 用于网络切片管理的系统和方法 | |
US10313887B2 (en) | System and method for provision and distribution of spectrum resources | |
CN110611926B (zh) | 一种告警的方法及装置 | |
US10735279B2 (en) | Networking service level agreements for computer datacenters | |
US10924966B2 (en) | Management method, management unit, and system | |
US11706088B2 (en) | Analyzing and configuring workload distribution in slice-based networks to optimize network performance | |
US10993127B2 (en) | Network slice instance management method, apparatus, and system | |
EP3713282A1 (en) | Management method, device and system for network service | |
CN110311798B (zh) | 一种管理虚拟资源的方法及装置 | |
CN112583615B (zh) | Vnf实例化方法、nfvo、vim、vnfm及系统 | |
JP7377965B2 (ja) | ネットワークリソース管理方法、システム、ネットワーク機器と可読記憶媒体 | |
WO2019109039A1 (en) | Priority based resource management in a network functions virtualization (nfv) environment | |
CN109964507A (zh) | 网络功能的管理方法、管理单元及系统 | |
WO2019047835A1 (zh) | 虚拟网络功能的实例化方法 | |
CN110795202B (zh) | 一种虚拟化集群资源管理系统的资源分配方法以及装置 | |
CN116185552A (zh) | 一种内存带宽服务质量的控制方法、装置及系统 | |
US20220376995A1 (en) | Method and apparatus for abstracting network resources in a mobile communications network | |
WO2018014351A1 (zh) | 一种资源配置方法及装置 | |
CN113098705B (zh) | 网络业务的生命周期管理的授权方法及装置 | |
CN113726651B (zh) | 一种路由管理方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |