CN116560803A - 基于sr-iov的资源管理方法及相关装置 - Google Patents
基于sr-iov的资源管理方法及相关装置 Download PDFInfo
- Publication number
- CN116560803A CN116560803A CN202310823859.1A CN202310823859A CN116560803A CN 116560803 A CN116560803 A CN 116560803A CN 202310823859 A CN202310823859 A CN 202310823859A CN 116560803 A CN116560803 A CN 116560803A
- Authority
- CN
- China
- Prior art keywords
- virtual function
- field
- virtual
- enabling
- target service
- 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000006870 function Effects 0.000 claims description 332
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008859 change Effects 0.000 abstract description 24
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000004075 alteration Effects 0.000 description 4
- 230000005012 migration Effects 0.000 description 4
- 238000013508 migration Methods 0.000 description 4
- 230000003863 physical function Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/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/45579—I/O management, e.g. providing access to device drivers or storage
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Stored Programmes (AREA)
Abstract
本申请公开了一种基于SR‑IOV的资源管理方法及相关装置,该方法包括:在目标业务上线时,获取PCIE SR‑IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。采用本申请可以提升业务变更效率。
Description
技术领域
本申请涉及通信技术领域或者互联网技术领域,具体涉及一种基于SR-IOV的资源管理方法及相关装置。
背景技术
目前,在云计算中,云厂商会将输入输出(input/output,IO)资源虚拟化,并将这些IO资源分配给虚拟机(virtual machine,VM)。很多应用(包括网络功能虚拟化(networkfunctions virtualization,NFV)、云游戏、短视频)对于IO的吞吐、时延有极高的要求。基于单根虚拟化(single root I/O virtualization,SR-IOV)技术,将一个物理功能(physical function,PF)虚拟出多个虚拟功能(virtual function,VF),并将这些VF直通给VM,这些VF的IO不需要虚拟机监控器(virtual machine monitor,VMM)处理,可以极大提高VF的IO处理性能,并降低虚拟CPU(vCPU)占用率,但是,在业务变更时,需要迁走相关的业务,且迁移要求需要冗余的资源,而且迁移过程涉及业务的重新部署,时间长,容易出错,因此,如何提升业务变更效率的问题亟待解决。
发明内容
本申请提供了一种基于SR-IOV的资源管理方法及相关装置,可以提升业务变更效率。
第一方面,本申请提供一种基于SR-IOV的资源管理方法,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所述方法包括:
在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
第二方面,本申请提供了一种基于SR-IOV的资源管理装置,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所述装置包括:第一获取单元、第二获取单元和使能单元,其中,
所述第一获取单元,用于在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
所述第二获取单元,用于从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
所述使能单元,用于根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
第三方面,本申请提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请第一方面中的步骤的指令。
第四方面,本申请提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请第一方面中所描述的部分或全部步骤。
第五方面,本申请提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请,具备如下有益效果:
可以看出,本申请中所描述的基于SR-IOV的资源管理方法及相关装置,应用于电子设备,电子设备应用于基于SR-IOV的资源管理系统,该系统包括电子设备以及k个PCIE设备,k为正整数,在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段,从扩展功能信息中获取与目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,第二虚拟功能索引字段为第一虚拟功能索引字段的部分或者全部字段,第二虚拟功能使能字段为第一虚拟功能使能字段的部分或者全部字段,根据第二虚拟功能索引字段和第二虚拟功能使能字段使能相应的虚拟功能执行目标业务,从而,在业务上线时,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源,进而,保证业务变更效率。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种用于实施基于SR-IOV的资源管理方法的基于SR-IOV的资源管理系统的架构示意图;
图2是本申请提供的一种SR-IOV技术的原理示意图;
图3是本申请提供的一种基于SR-IOV的资源管理方法的流程示意图;
图4是本申请提供的一种电子设备的结构示意图;
图5是本申请提供的一种基于SR-IOV的资源管理装置的功能单元组成框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
具体实现中,本申请所涉及到的电子设备可以包括但不仅限于:智能网卡、数据处理器(data processing unit,DPU)、主机(HOST)、服务器、高速串行计算机扩展总线标准(peripheral component interconnect express,PCIE)设备。
相关技术中,请参阅图1,图1是本申请提供的一种用于实施基于SR-IOV的资源管理方法的基于SR-IOV的资源管理系统的架构示意图,如图所示,本基于SR-IOV的资源管理系统应用于主机(HOST),该系统可以包括:硬件模块和软件模块。硬件模块可以包括上层硬件(UP),如upstream、硬件层(HW)等等,在此不做限定,软件模块可以包括ECPU Emulator,硬件层可以包括网卡,如DPU网卡。基于SR-IOV的资源管理系统可以包括电子设备以及k个PCIE设备,k为正整数,ECPU Emulator用于模拟PCIE拓扑结构,例如,可以包括A1、第一交换机、B1、第二交换机、A2、B2、其中,A1、A2、B1、B2为PCIE设备。
进一步的,如图2所示,针对SR-IOV技术,可以将一个PF虚拟出多个虚拟功能,例如,一个PCIE设备,则可以将其物理功能虚拟出第一虚拟功能、第二虚拟功能、第三虚拟功能、...、第n虚拟功能,并将这些虚拟功能直通给虚拟机(第一虚拟机、第二虚拟机、第三虚拟机、...、第n虚拟机),这些虚拟功能的IO不需要虚拟机监控器处理。
进一步的,相关技术中的SR-IOV技术,要修改PF使能VF的数量,需要先去使能当前PF的所有VF,接着再配置新的VF数量,这种机制,有两个弊端,对于云厂商使用非常不方便,具体弊端如下:去使能PF的所有VF,会导致使用该PF虚拟出的VF业务中断。重新使能VF后,VM需要重启,IO才能恢复;部分VF上的业务下线后,这些VF不能撤销,硬件资源没有办法及时回收。从而,在业务变更,需要迁走相关的业务。迁移要求需要冗余的资源,而且迁移过程涉及业务的重新部署,时间长,容易出错。
为了解决相关技术中的缺陷,本申请提供了一种基于SR-IOV的资源管理方法,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,其可以包括如下步骤:
在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
本申请中,硬件通过扩展功能信息(Capability Version字段),声明自己支持基于相关业务的VF的能力;驱动软件识别Capability Version字段,提供相应的VF的接口,从而,在业务上线时,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源,进而,保证业务变更效率。
下面对本申请进行详细介绍。
请参阅图3,图3是本申请提供的一种基于SR-IOV的资源管理方法的流程示意图,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,如图所示,本基于SR-IOV的资源管理方法包括:
S301、在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段。
本申请中,目标业务可以预先设置或者系统默认。具体实现中,在VM上线时,目标业务可以通过VF直通给VM,来提供网络和存储功能。
本申请中,PCIE SR-IOV的扩展功能信息也即是PCIE SR-IOV ExtendedCapability,具体实现中,在目标业务上线时,则可以获取PCIE SR-IOV的扩展功能信息,该扩展功能信息可以包括第一虚拟功能索引字段(VF_ID_Seclect)和第一虚拟功能使能字段(VF_ID_Enable),第一虚拟功能索引字段可以包括目标业务所需的虚拟功能的标识信息,而第一虚拟功能使能字段则可以用于使能相应的虚拟功能,即利用虚拟功能的标识信息调用相应的虚拟功能使能字段使能相应的虚拟功能。
本申请中,第一虚拟功能索引字段可以为空闲虚拟功能对应的索引字段,即虚拟功能的标识信息,相应的,第一虚拟功能使能字段可以为空闲虚拟功能对应的使能字段。
本申请中,电子设备可以应用于基于SR-IOV的资源管理系统,该系统包括电子设备以及k个PCIE设备,k为正整数,可以基于PCIE总线建立电子设备以及k个PCIE设备之间的通信连接。具体实现中,可以将PCIE设备的PF虚拟成多个VF。
S302、从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段。
具体实现中,由于扩展功能信息可能包括各种业务的虚拟功能索引字段和虚拟功能使能字段,则可以从扩展功能信息中获取与目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,第二虚拟功能索引字段为第一虚拟功能索引字段的部分或者全部字段,第二虚拟功能使能字段为第一虚拟功能使能字段的部分或者全部字段。
S303、根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
本申请中,则可以通过第二虚拟功能索引字段选择相应的虚拟功能的使能字段,即第二虚拟功能使能字段,将第二虚拟功能使能字段写1,使能相应的虚拟功能执行目标业务。
本申请中,业务动态发放,不影响已上线业务;业务变更不需要服务器冗余资源。
可选的,上述步骤S303,根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务,可以包括如下步骤:
31、根据所述第二虚拟功能索引字段确定至少一个虚拟功能标识;
32、将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写1;
33、通过驱动软件使能所述至少一个虚拟功能标识对应的虚拟功能执行所述目标业务。
本申请中,可以根据第二虚拟功能索引字段确定至少一个虚拟功能标识(VF_ID),再将至少一个虚拟功能标识中的每一虚拟功能标识对应的第二虚拟功能使能字段进行写1,通过驱动软件使能至少一个虚拟功能标识对应的虚拟功能执行目标业务,即在业务上线时,基于VF_ID来使能,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源。
可选的,还可以包括如下步骤:
统计所述目标业务使能的虚拟功能的第一数量;根据所述第一数量更新已使能的虚拟功能的数量。
具体实现中,则可以统计目标业务使能的虚拟功能的第一数量,再根据第一数量更新已使能的虚拟功能的数量,即新的已使能的虚拟功能的数量=第一数量+已使能的虚拟功能的数量,从而,可以提升虚拟功能资源管理能力。
可选的,还可以包括如下步骤:
在所述目标业务下线时,撤销所述目标业务对应的虚拟功能。
本申请中,则可以在目标业务下线时,撤销目标业务对应的虚拟功能,即在业务下线时,基于VF_ID去使能,业务变更不影响已经部署VF的业务,不需要迁移走业务;业务变更不需要冗余的服务器资源。
可选的,上述步骤撤销所述目标业务对应的虚拟功能,可以包括如下步骤:
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写0;通过所述驱动软件撤销所述目标业务对应的虚拟功能。
本申请中,可以将至少一个虚拟功能标识中的每一虚拟功能标识对应的第二虚拟功能使能字段进行写0,再通过驱动软件撤销目标业务对应的虚拟功能,即在业务下线时,基于VF_ID去使能,业务变更不影响已经部署VF的业务,不需要迁移走业务;业务变更不需要冗余的服务器资源。
本申请中,业务动态撤销,不影响已上线业务;业务变更不需要服务器冗余资源;业务下线时,对应VF上的硬件资源可以及时回收。
可选的,还可以包括如下步骤:
统计撤销所述目标业务使能的虚拟功能的第二数量;根据所述第二数量更新已使能的虚拟功能的数量。
具体实现中,则可以统计撤销目标业务使能的虚拟功能的第二数量,根据第二数量更新已使能的虚拟功能的数量,即新的已使能的虚拟功能的数量=已使能的虚拟功能的数量-第二数量,从而,可以提升虚拟功能资源管理能力。
本申请中,通过扩展PCIE SR-IOV Extended Capability,在业务上线和下线时,基于VF_ID来使能与去使能;业务变更不影响已经部署VF的业务,不需要迁移走业务;业务变更不需要冗余的服务器资源。即本申请中,通过PCIE SR-IOV Extended Capability,由驱动软件与硬件协同,基于VF_ID来使能与去使能VF,来实现VF灵活管理。
可选的,还可以包括如下步骤:
获取所述扩展功能信息的第一版本号;确定所述k个PCIE设备对应的版本号,得到k个第二版本号;选取所述k个第二版本号中与所述第一版本号相同的目标第二版本号;确定与所述目标第二版本号对应的w个PCIE设备,w为小于或等于k的正整数;根据所述w个PCIE设备确定所述第一虚拟功能索引字段和所述第一虚拟功能使能字段。
本申请中,可以获取扩展功能信息的第一版本号,确定k个PCIE设备对应的版本号,得到k个第二版本号,选取k个第二版本号中与第一版本号相同的目标第二版本号,即具体实现中,需要保证电子设备与PCIE设备之间的扩展功能信息的版本号一致,从而,保证来使能或者去使能顺利执行,确定与目标第二版本号对应的w个PCIE设备,w为小于或等于k的正整数,根据w个PCIE设备确定第一虚拟功能索引字段和第一虚拟功能使能字段,即可以将与电子设备的扩展功能信息的第一版本号一致的PCIE设备的物理功能转化为对应的虚拟功能,从而,保证在业务上线和下线时,基于VF_ID来使能与去使能;业务变更不影响已经部署VF的业务,不需要迁移走业务;业务变更不需要冗余的服务器资源。
举例说明下,以电子设备为云厂商(云服务器)为例,本申请中,可以通过修改Capability Version为2,区分于老版本的Capability,最后,新增两个字段VF_ID_Seclect、VF_ID_Enable,具体名称可以以PCI组织通过的为准。硬件按照第一步扩展后的Capabitliy实施SR-IOV;驱动软件在扫描时,判断Capability Version为2,增加基于VF_ID管理SR-IOV的管理接口。以Linux为例,在/sys/bus/pci/devices/xxxx:xx:xx.x/路径下(xxxx:xx:xx.x参数分别PCIE device的domain、bus_id、device_id、function_id)新增基于VF_ID的sysfs文件vf_id_seclect、vf_id_enable;云厂商在业务上线时,找到第一个可用的VF(通过遍历写vf_id_seclect文件,然后读vf_id_enable文件,判断返回值为0,即可认为当前VF_ID可用);接着,往vf_id_enable文件写1,通知驱动软件,要使能当前VF_ID对应的VF;驱动软件通过VF_ID_Seclect、VF_ID_Enable字段通知硬件使能当前VF,接着,通过写NumVFs字段,通知硬件使能VF的数量加1;
进一步的,云厂商在业务下线时,撤销当前VF(通过写vf_id_seclect文件为当前VF_ID,然后往vf_id_enable文件写0,通知驱动软件撤销当前VF);驱动软件通过VF_ID_Seclect、VF_ID_Enable字段通知硬件要撤销当前VF,接着,通过写NumVFs字段,通知硬件使能VF的数量减1。
可以看出,本申请中所描述的基于SR-IOV的资源管理方法,应用于电子设备,电子设备应用于基于SR-IOV的资源管理系统,该系统包括电子设备以及k个PCIE设备,k为正整数,在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段,从扩展功能信息中获取与目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,第二虚拟功能索引字段为第一虚拟功能索引字段的部分或者全部字段,第二虚拟功能使能字段为第一虚拟功能使能字段的部分或者全部字段,根据第二虚拟功能索引字段和第二虚拟功能使能字段使能相应的虚拟功能执行目标业务,从而,在业务上线时,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源,进而,保证业务变更效率。
与上述实施例一致地,请参阅图4,图4是本申请提供的一种电子设备的结构示意图,如图所示,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所该电子设备包括处理器、存储器、通信接口以及一个或多个程序,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,本申请中,上述程序包括用于执行以下步骤的指令:
在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
可选的,在所述根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务方面,上述程序包括用于执行以下步骤的指令:
根据所述第二虚拟功能索引字段确定至少一个虚拟功能标识;
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写1;
通过驱动软件使能所述至少一个虚拟功能标识对应的虚拟功能执行所述目标业务。
可选的,上述程序还包括用于执行以下步骤的指令:
统计所述目标业务使能的虚拟功能的第一数量;
根据所述第一数量更新已使能的虚拟功能的数量。
可选的,上述程序还包括用于执行以下步骤的指令:
在所述目标业务下线时,撤销所述目标业务对应的虚拟功能。
可选的,在所述撤销所述目标业务对应的虚拟功能方面,上述程序包括用于执行以下步骤的指令:
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写0;
通过所述驱动软件撤销所述目标业务对应的虚拟功能。
可选的,上述程序还包括用于执行以下步骤的指令:
统计撤销所述目标业务使能的虚拟功能的第二数量;
根据所述第二数量更新已使能的虚拟功能的数量。
可选的,上述程序还包括用于执行以下步骤的指令:
获取所述扩展功能信息的第一版本号;
确定所述k个PCIE设备对应的版本号,得到k个第二版本号;
选取所述k个第二版本号中与所述第一版本号相同的目标第二版本号;
确定与所述目标第二版本号对应的w个PCIE设备,w为小于或等于k的正整数;
根据所述w个PCIE设备确定所述第一虚拟功能索引字段和所述第一虚拟功能使能字段。
可以看出,本申请中所描述的电子设备,该电子设备应用于基于SR-IOV的资源管理系统,该系统包括电子设备以及k个PCIE设备,k为正整数,在目标业务上线时,获取PCIESR-IOV的扩展功能信息,扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段,从扩展功能信息中获取与目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,第二虚拟功能索引字段为第一虚拟功能索引字段的部分或者全部字段,第二虚拟功能使能字段为第一虚拟功能使能字段的部分或者全部字段,根据第二虚拟功能索引字段和第二虚拟功能使能字段使能相应的虚拟功能执行目标业务,从而,在业务上线时,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源,进而,保证业务变更效率。
图5是本申请中所涉及的一种基于SR-IOV的资源管理装置500的功能单元组成框图。该基于SR-IOV的资源管理装置500应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所述装置500包括:第一获取单元501、第二获取单元502和使能单元503,其中,
所述第一获取单元501,用于在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
所述第二获取单元502,用于从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
所述使能单元503,用于根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
可选的,在所述根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务方面,所述使能单元503具体用于:
根据所述第二虚拟功能索引字段确定至少一个虚拟功能标识;
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写1;
通过驱动软件使能所述至少一个虚拟功能标识对应的虚拟功能执行所述目标业务。
可选的,所述装置500还具体用于:
统计所述目标业务使能的虚拟功能的第一数量;
根据所述第一数量更新已使能的虚拟功能的数量。
可选的,所述装置500还具体用于:
在所述目标业务下线时,撤销所述目标业务对应的虚拟功能。
可选的,在所述撤销所述目标业务对应的虚拟功能方面,所述装置500具体用于:
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写0;
通过所述驱动软件撤销所述目标业务对应的虚拟功能。
可选的,所述装置500还具体用于:
统计撤销所述目标业务使能的虚拟功能的第二数量;
根据所述第二数量更新已使能的虚拟功能的数量。
可选的,所述装置500还具体用于:
获取所述扩展功能信息的第一版本号;
确定所述k个PCIE设备对应的版本号,得到k个第二版本号;
选取所述k个第二版本号中与所述第一版本号相同的目标第二版本号;
确定与所述目标第二版本号对应的w个PCIE设备,w为小于或等于k的正整数;
根据所述w个PCIE设备确定所述第一虚拟功能索引字段和所述第一虚拟功能使能字段。
可以看出,本申请中所描述的基于SR-IOV的资源管理装置,应用于电子设备,电子设备应用于基于SR-IOV的资源管理系统,该系统包括电子设备以及k个PCIE设备,k为正整数,在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段,从扩展功能信息中获取与目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,第二虚拟功能索引字段为第一虚拟功能索引字段的部分或者全部字段,第二虚拟功能使能字段为第一虚拟功能使能字段的部分或者全部字段,根据第二虚拟功能索引字段和第二虚拟功能使能字段使能相应的虚拟功能执行目标业务,从而,在业务上线时,业务变更不影响已经部署VF的业务,不需要迁移走业务,业务变更不需要冗余的服务器资源,进而,保证业务变更效率。
可以理解的是,本实施例的基于SR-IOV的资源管理装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory ,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种基于SR-IOV的资源管理方法,其特征在于,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所述方法包括:
在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务,包括:
根据所述第二虚拟功能索引字段确定至少一个虚拟功能标识;
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写1;
通过驱动软件使能所述至少一个虚拟功能标识对应的虚拟功能执行所述目标业务。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
统计所述目标业务使能的虚拟功能的第一数量;
根据所述第一数量更新已使能的虚拟功能的数量。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述目标业务下线时,撤销所述目标业务对应的虚拟功能。
5.根据权利要求4所述的方法,其特征在于,所述撤销所述目标业务对应的虚拟功能,包括:
将所述至少一个虚拟功能标识中的每一虚拟功能标识对应的所述第二虚拟功能使能字段进行写0;
通过所述驱动软件撤销所述目标业务对应的虚拟功能。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
统计撤销所述目标业务使能的虚拟功能的第二数量;
根据所述第二数量更新已使能的虚拟功能的数量。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
获取所述扩展功能信息的第一版本号;
确定所述k个PCIE设备对应的版本号,得到k个第二版本号;
选取所述k个第二版本号中与所述第一版本号相同的目标第二版本号;
确定与所述目标第二版本号对应的w个PCIE设备,w为小于或等于k的正整数;
根据所述w个PCIE设备确定所述第一虚拟功能索引字段和所述第一虚拟功能使能字段。
8.一种基于SR-IOV的资源管理装置,其特征在于,应用于电子设备,所述电子设备应用于基于SR-IOV的资源管理系统,该系统包括所述电子设备以及k个PCIE设备,k为正整数,所述装置包括:第一获取单元、第二获取单元和使能单元,其中,
所述第一获取单元,用于在目标业务上线时,获取PCIE SR-IOV的扩展功能信息,所述扩展功能信息包括第一虚拟功能索引字段和第一虚拟功能使能字段;
所述第二获取单元,用于从所述扩展功能信息中获取与所述目标业务对应的第二虚拟功能索引字段和第二虚拟功能使能字段,所述第二虚拟功能索引字段为所述第一虚拟功能索引字段的部分或者全部字段,所述第二虚拟功能使能字段为所述第一虚拟功能使能字段的部分或者全部字段;
所述使能单元,用于根据所述第二虚拟功能索引字段和所述第二虚拟功能使能字段使能相应的虚拟功能执行所述目标业务。
9.一种电子设备,其特征在于,包括处理器、存储器,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310823859.1A CN116560803B (zh) | 2023-07-06 | 2023-07-06 | 基于sr-iov的资源管理方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310823859.1A CN116560803B (zh) | 2023-07-06 | 2023-07-06 | 基于sr-iov的资源管理方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116560803A true CN116560803A (zh) | 2023-08-08 |
CN116560803B CN116560803B (zh) | 2023-10-20 |
Family
ID=87495062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310823859.1A Active CN116560803B (zh) | 2023-07-06 | 2023-07-06 | 基于sr-iov的资源管理方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116560803B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117707709A (zh) * | 2024-02-05 | 2024-03-15 | 珠海星云智联科技有限公司 | Sr-iov配置使能控制方法及相关装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160188513A1 (en) * | 2014-12-27 | 2016-06-30 | Intel Corporation | Intelligent Network Fabric to Connect Multiple Computer Nodes with One or More SR-IOV Devices |
US20160246635A1 (en) * | 2015-02-25 | 2016-08-25 | Red Hat Israel, Ltd. | Dynamic management of virtual functions on sr-iov capable hypervisors |
US20160292007A1 (en) * | 2015-03-31 | 2016-10-06 | Kabushiki Kaisha Toshiba | Apparatus and method of managing shared resources in achieving io virtualization in a storage device |
CN106886429A (zh) * | 2015-12-16 | 2017-06-23 | 华为技术有限公司 | 一种加载驱动程序的方法和服务器 |
US20170269952A1 (en) * | 2016-03-15 | 2017-09-21 | International Business Machines Corporation | Dynamic altering of sriov virtual function (vf) resources including dma windows without bringing down the vf |
CN113961301A (zh) * | 2020-07-01 | 2022-01-21 | 中移(苏州)软件技术有限公司 | 虚拟网卡绑定、解绑的方法及装置、计算节点及存储介质 |
CN115934624A (zh) * | 2023-03-14 | 2023-04-07 | 珠海星云智联科技有限公司 | 多主机远程直接内存访问网络管理的方法、设备及介质 |
-
2023
- 2023-07-06 CN CN202310823859.1A patent/CN116560803B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160188513A1 (en) * | 2014-12-27 | 2016-06-30 | Intel Corporation | Intelligent Network Fabric to Connect Multiple Computer Nodes with One or More SR-IOV Devices |
US20160246635A1 (en) * | 2015-02-25 | 2016-08-25 | Red Hat Israel, Ltd. | Dynamic management of virtual functions on sr-iov capable hypervisors |
US20160292007A1 (en) * | 2015-03-31 | 2016-10-06 | Kabushiki Kaisha Toshiba | Apparatus and method of managing shared resources in achieving io virtualization in a storage device |
CN106886429A (zh) * | 2015-12-16 | 2017-06-23 | 华为技术有限公司 | 一种加载驱动程序的方法和服务器 |
US20170269952A1 (en) * | 2016-03-15 | 2017-09-21 | International Business Machines Corporation | Dynamic altering of sriov virtual function (vf) resources including dma windows without bringing down the vf |
CN113961301A (zh) * | 2020-07-01 | 2022-01-21 | 中移(苏州)软件技术有限公司 | 虚拟网卡绑定、解绑的方法及装置、计算节点及存储介质 |
CN115934624A (zh) * | 2023-03-14 | 2023-04-07 | 珠海星云智联科技有限公司 | 多主机远程直接内存访问网络管理的方法、设备及介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117707709A (zh) * | 2024-02-05 | 2024-03-15 | 珠海星云智联科技有限公司 | Sr-iov配置使能控制方法及相关装置 |
CN117707709B (zh) * | 2024-02-05 | 2024-05-17 | 珠海星云智联科技有限公司 | Sr-iov配置使能控制方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116560803B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9697024B2 (en) | Interrupt management method, and computer implementing the interrupt management method | |
US10474488B2 (en) | Configuration of a cluster of hosts in virtualized computing environments | |
US9413683B2 (en) | Managing resources in a distributed system using dynamic clusters | |
US8281303B2 (en) | Dynamic ejection of virtual devices on ejection request from virtual device resource object within the virtual firmware to virtual resource driver executing in virtual machine | |
US9854036B2 (en) | Method for migrating memory data of virtual machine, and related apparatus and cluster system | |
EP2879053A1 (en) | Virtual machine memory data migration method, related apparatus, and cluster system | |
CN107491340B (zh) | 跨物理机的巨型虚拟机实现方法 | |
CN106777394B (zh) | 一种集群文件系统 | |
CN116560803B (zh) | 基于sr-iov的资源管理方法及相关装置 | |
US20190377612A1 (en) | VCPU Thread Scheduling Method and Apparatus | |
CN110990110A (zh) | 一种基于Sriov网卡的虚拟机创建方法及装置 | |
CN112328365A (zh) | 一种虚拟机迁移方法、装置、设备及存储介质 | |
CN115988217A (zh) | 一种虚拟化视频编解码系统、电子设备和存储介质 | |
CN115988218A (zh) | 一种虚拟化视频编解码系统、电子设备和存储介质 | |
CN114443211A (zh) | 虚拟机热迁移方法、设备及存储介质 | |
CN111078353A (zh) | 存储设备的操作方法及物理服务器 | |
CN117519908B (zh) | 一种虚拟机热迁移方法、计算机设备及介质 | |
US10102024B2 (en) | System and methods to create virtual machines with affinity rules and services asymmetry | |
CN113703913B (zh) | 设备测试方法及装置 | |
CN113014667B (zh) | 一种机架式服务器的配置方法、装置、设备及存储介质 | |
CN115150268A (zh) | Kubernetes集群的网络配置方法、装置、及电子设备 | |
US10877771B2 (en) | Virtual machine booting using disk metadata | |
CN109002347B (zh) | 一种虚拟机内存分配方法、装置及系统 | |
US11409551B2 (en) | Emulating VPID correctly for a nested hypervisor | |
CN114115703A (zh) | 裸金属服务器在线迁移方法以及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |