CN118819873A - Virtual function management method, computer equipment, medium and system - Google Patents
Virtual function management method, computer equipment, medium and system Download PDFInfo
- Publication number
- CN118819873A CN118819873A CN202411318797.XA CN202411318797A CN118819873A CN 118819873 A CN118819873 A CN 118819873A CN 202411318797 A CN202411318797 A CN 202411318797A CN 118819873 A CN118819873 A CN 118819873A
- Authority
- CN
- China
- Prior art keywords
- virtual
- function
- functions
- physical
- physical function
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/45595—Network integration; Enabling network access in 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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
技术领域Technical Field
本申请涉及计算机技术领域,尤其涉及一种虚拟功能的管理方法、计算机设备、介质及系统。The present application relates to the field of computer technology, and in particular to a virtual function management method, computer equipment, medium and system.
背景技术Background Art
在云计算、大型数据中心等应用中,将输入输出资源虚拟化后分配给各个虚拟机。利用单根输入输出虚拟化(Single Root I/O Virtualization,SRIOV),将一个物理功能虚拟出多个虚拟功能,再将这些虚拟功能直通给虚拟机,从而降低时延和提高吞吐率。但是,对于同一个虚拟机的用户而言,可能需要多个网口或者多个存储盘,因此一个虚拟机可能直通多个虚拟功能,而这些虚拟功能之间可能没有关联关系,因此难以对整个虚拟机的多个虚拟功能进行整体管理。现有技术中,一种管理方式是对每个虚拟功能单独限速,但是这样导致带宽利用率低下,另一种管理方式是对虚拟机中网络子接口数量统一限制,但是这样要求每个虚拟功能按照统一限制或者均分网络子接口数量,也是导致资源利用率低下。In cloud computing, large data centers and other applications, input and output resources are virtualized and allocated to each virtual machine. Single Root I/O Virtualization (SRIOV) is used to virtualize multiple virtual functions from one physical function, and then these virtual functions are directly connected to the virtual machine, thereby reducing latency and improving throughput. However, for users of the same virtual machine, multiple network ports or multiple storage disks may be required, so a virtual machine may be directly connected to multiple virtual functions, and these virtual functions may not have a correlation relationship, so it is difficult to manage the multiple virtual functions of the entire virtual machine as a whole. In the prior art, one management method is to limit the speed of each virtual function separately, but this results in low bandwidth utilization. Another management method is to uniformly limit the number of network sub-interfaces in the virtual machine, but this requires each virtual function to follow a uniform limit or evenly divide the number of network sub-interfaces, which also results in low resource utilization.
为此,本申请提供了一种虚拟功能的管理方法、计算机设备、介质及系统,用于应对现有技术中的技术难题。To this end, the present application provides a virtual function management method, computer equipment, medium and system for addressing the technical difficulties in the prior art.
发明内容Summary of the invention
第一方面,本申请提供了一种虚拟功能的管理方法。所述管理方法包括:通过物理功能驱动,配置至少一个物理功能,以及,利用单根输入输出虚拟化,配置与所述至少一个物理功能之间存在第一对应关系的至少一个虚拟功能;通过虚拟功能驱动,加载所述至少一个虚拟功能中的一个或者多个虚拟功能,分配通用唯一标识给所加载的所述一个或者多个虚拟功能,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,并且,配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通;通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。In the first aspect, the present application provides a method for managing virtual functions. The management method includes: configuring at least one physical function through a physical function driver, and configuring at least one virtual function that has a first correspondence relationship with the at least one physical function by using a single-root input and output virtualization; loading one or more virtual functions in the at least one virtual function through a virtual function driver, assigning a universal unique identifier to the loaded one or more virtual functions, notifying the universal unique identifier of each of the one or more virtual functions to the physical function driver, and configuring at least one virtual machine that has a second correspondence relationship with the one or more virtual functions, and making the virtual function that satisfies the second correspondence directly connected to the virtual machine; managing the bandwidth configuration and the number of network sub-interfaces of each of the at least one virtual machine based on the universal unique identifier of each of the one or more virtual functions through the physical function driver.
通过本申请的第一方面,在构建第一对应关系和构建第二对应关系的基础上,分别确定了被配置的物理功能与被配置的虚拟功能之间的第一对应关系以及被加载的虚拟功能与虚拟机之间的第二对应关系,并且,对虚拟功能的加载过程进行了优化,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能;一方面保持了虚拟机与被加载的虚拟功能之间直通,另一方面,只有被虚拟功能驱动加载的虚拟功能,其通用唯一标识才会被通知到物理功能驱动,这意味着,只有实际上被利用的虚拟功能通道才会被纳入物理功能驱动的管理范围,因此有效地克服了对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量所导致的问题;并且,因为物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置;因为是通过物理功能驱动来提供额外的资源管理接口,而虚拟功能是通过单根输入输出虚拟化从物理功能虚拟化得到,所以通过物理功能驱动来管理虚拟机各自的带宽配置和网络子接口数量,不会影响数据面的直通,同时又保持了控制面的灵活性;实现了高带宽利用率和高资源利用率,以及可以灵活地应对虚拟机的虚拟功能资源管理方面的复杂性。Through the first aspect of the present application, on the basis of constructing the first corresponding relationship and constructing the second corresponding relationship, the first corresponding relationship between the configured physical function and the configured virtual function and the second corresponding relationship between the loaded virtual function and the virtual machine are respectively determined, and the loading process of the virtual function is optimized. The virtual function driver allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver, so that the physical function driver can use the universal unique identifier to distinguish each loaded virtual function; on the one hand, the direct connection between the virtual machine and the loaded virtual function is maintained, and on the other hand, only the universal unique identifier of the virtual function loaded by the virtual function driver will be notified to the physical function driver, which means that only the virtual function channel that is actually used will be included in the management scope of the physical function driver, so it is effective. The problem caused by setting the maximum data transmission rate or the maximum number of network sub-interfaces for each virtual function is overcome; and because the physical function driver can use the universal unique identifier to refine the virtual function corresponding to each physical function, that is, to finely manage the virtual functions loaded in the virtual functions corresponding to each physical function and assigned with the universal unique identifier, it can be flexibly and richly configured within the framework of the overall resource management strategy; because the additional resource management interface is provided by the physical function driver, and the virtual function is obtained from the physical function virtualization through a single input and output virtualization, the bandwidth configuration and the number of network sub-interfaces of each virtual machine are managed by the physical function driver, which will not affect the direct connection of the data plane, while maintaining the flexibility of the control plane; high bandwidth utilization and high resource utilization are achieved, and the complexity of virtual function resource management of virtual machines can be flexibly dealt with.
在本申请的第一方面的一种可能的实现方式中,所述管理方法还包括:通过所述虚拟功能驱动,移除所述至少一个虚拟功能中的第一虚拟功能,通知所述第一虚拟功能的通用唯一标识给所述物理功能驱动;通过所述物理功能驱动,基于所述第一虚拟功能的通用唯一标识,确定所述至少一个虚拟机中与所述第一虚拟功能之间满足所述第二对应关系的第一虚拟机,删除所述第一虚拟机的关联所述第一虚拟功能的带宽配置,以及,回收所述第一虚拟机的关联所述第一虚拟功能的已分配网络子接口。In a possible implementation of the first aspect of the present application, the management method also includes: removing the first virtual function among the at least one virtual function through the virtual function driver, and notifying the physical function driver of the universal unique identifier of the first virtual function; determining, through the physical function driver, based on the universal unique identifier of the first virtual function, the first virtual machine among the at least one virtual machine that satisfies the second correspondence relationship with the first virtual function, deleting the bandwidth configuration of the first virtual machine associated with the first virtual function, and reclaiming the allocated network sub-interface of the first virtual machine associated with the first virtual function.
在本申请的第一方面的一种可能的实现方式中,所述管理方法还包括:通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理来自所述一个或者多个虚拟功能的资源申请。In a possible implementation manner of the first aspect of the present application, the management method further includes: managing resource requests from the one or more virtual functions based on the respective universal unique identifiers of the one or more virtual functions through the physical function driver.
在本申请的第一方面的一种可能的实现方式中,所述物理功能驱动通过扩展网络接口配置命令从而实现:基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。In a possible implementation of the first aspect of the present application, the physical function driver extends the network interface configuration command to achieve: based on the universal unique identifier of each of the one or more virtual functions, manage the bandwidth configuration and the number of network sub-interfaces of each virtual machine.
在本申请的第一方面的一种可能的实现方式中,所述带宽配置包括下行最大带宽、上行最大带宽、源机器地址防欺诈检查。In a possible implementation manner of the first aspect of the present application, the bandwidth configuration includes a maximum downstream bandwidth, a maximum upstream bandwidth, and a source machine address anti-fraud check.
在本申请的第一方面的一种可能的实现方式中,所述物理功能驱动被部署在宿主机的内核态,所述虚拟功能驱动由系统模拟器提供,并且,所述系统模拟器被部署在所述宿主机的用户态,所述系统模拟器用于:解析所述一个或者多个虚拟功能各自的通用唯一标识从而确定与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,以及,通知与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识给所述物理功能驱动。In a possible implementation of the first aspect of the present application, the physical function driver is deployed in the kernel state of the host machine, the virtual function driver is provided by a system simulator, and the system simulator is deployed in the user state of the host machine, and the system simulator is used to: parse the respective universal unique identifiers of the one or more virtual functions to determine the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions, notify the physical function driver of the respective universal unique identifiers of the one or more virtual functions, and notify the physical function driver of the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions.
在本申请的第一方面的一种可能的实现方式中,与所述宿主机连接的硬件侧包括微处理器,所述微处理器用于提供组策略管理装置,所述组策略管理装置用于为所述至少一个物理功能提供组级别的物理功能的发送速率限速配置和设备规格配置,所述组级别的物理功能包括所述至少一个物理功能中的至少两个物理功能。In a possible implementation of the first aspect of the present application, the hardware side connected to the host machine includes a microprocessor, and the microprocessor is used to provide a group policy management device, and the group policy management device is used to provide a group-level physical function sending rate limit configuration and device specification configuration for the at least one physical function, and the group-level physical function includes at least two physical functions of the at least one physical function.
在本申请的第一方面的一种可能的实现方式中,所述组策略管理装置用于提供跨物理功能的硬件资源管理。In a possible implementation manner of the first aspect of the present application, the group policy management device is used to provide hardware resource management across physical functions.
在本申请的第一方面的一种可能的实现方式中,所述至少一个物理功能包括第一物理功能和第二物理功能,所述至少一个虚拟功能中的第一虚拟功能集合与所述第一物理功能之间满足所述第一对应关系,所述至少一个虚拟功能中的第二虚拟功能集合与所述第二物理功能之间满足所述第一对应关系,所述至少一个虚拟机中的第二虚拟机与所述第一虚拟功能集合之间满足所述第二对应关系,所述第二虚拟机与所述第二虚拟功能集合之间满足所述第二对应关系,所述管理方法还包括:通过组策略管理装置,对与所述第二虚拟机之间满足所述第二对应关系的虚拟功能,执行统一的发送速率限速配置和设备规格配置。In a possible implementation of the first aspect of the present application, the at least one physical function includes a first physical function and a second physical function, the first virtual function set in the at least one virtual function satisfies the first correspondence relationship with the first physical function, the second virtual function set in the at least one virtual function satisfies the first correspondence relationship with the second physical function, the second virtual machine in the at least one virtual machine satisfies the second correspondence relationship with the first virtual function set, and the second virtual machine satisfies the second correspondence relationship with the second virtual function set, and the management method further includes: through a group policy management device, for the virtual function that satisfies the second correspondence relationship with the second virtual machine, performing a unified sending rate limit configuration and device specification configuration.
在本申请的第一方面的一种可能的实现方式中,满足所述第一对应关系的物理功能和虚拟功能对应同一个以太面板口并且使用所述同一个以太面板口的带宽。In a possible implementation manner of the first aspect of the present application, the physical function and the virtual function that satisfy the first corresponding relationship correspond to the same Ethernet panel port and use the bandwidth of the same Ethernet panel port.
在本申请的第一方面的一种可能的实现方式中,所述第二虚拟机使用所述第一物理功能和所述第二物理功能各自对应的以太面板口的带宽。In a possible implementation manner of the first aspect of the present application, the second virtual machine uses the bandwidth of the Ethernet panel ports corresponding to the first physical function and the second physical function respectively.
第二方面,本申请实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。In a second aspect, an embodiment of the present application further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements a method according to any one of the implementation modes of any of the above aspects when executing the computer program.
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。In a third aspect, an embodiment of the present application further provides a computer-readable storage medium, which stores computer instructions. When the computer instructions are executed on a computer device, the computer device executes a method according to any one of the implementation methods of any of the above aspects.
第四方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。In a fourth aspect, an embodiment of the present application further provides a computer program product, which includes instructions stored on a computer-readable storage medium, and when the instructions are executed on a computer device, the computer device executes a method according to any one of the implementation methods of any of the above aspects.
第五方面,本申请实施例还提供了一种虚拟功能的管理系统。所述管理系统包括:物理功能驱动,用于:配置至少一个物理功能,以及,利用单根输入输出虚拟化,配置与所述至少一个物理功能之间存在第一对应关系的至少一个虚拟功能;虚拟功能驱动,用于:加载所述至少一个虚拟功能中的一个或者多个虚拟功能,分配通用唯一标识给所加载的所述一个或者多个虚拟功能,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,并且,配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通,其中,所述物理功能驱动还用于:基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。In the fifth aspect, the embodiment of the present application also provides a management system for virtual functions. The management system includes: a physical function driver, which is used to: configure at least one physical function, and, using single-root input and output virtualization, configure at least one virtual function that has a first correspondence relationship with the at least one physical function; a virtual function driver, which is used to: load one or more virtual functions in the at least one virtual function, assign a universal unique identifier to the loaded one or more virtual functions, notify the universal unique identifier of each of the one or more virtual functions to the physical function driver, and configure at least one virtual machine that has a second correspondence relationship with the one or more virtual functions, and enable the virtual function that satisfies the second correspondence relationship to be directly connected to the virtual machine, wherein the physical function driver is also used to: manage the bandwidth configuration and the number of network sub-interfaces of each of the at least one virtual machine based on the universal unique identifier of each of the one or more virtual functions.
通过本申请的第五方面,在构建第一对应关系和构建第二对应关系的基础上,分别确定了被配置的物理功能与被配置的虚拟功能之间的第一对应关系以及被加载的虚拟功能与虚拟机之间的第二对应关系,并且,对虚拟功能的加载过程进行了优化,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能;一方面保持了虚拟机与被加载的虚拟功能之间直通,另一方面,只有被虚拟功能驱动加载的虚拟功能,其通用唯一标识才会被通知到物理功能驱动,这意味着,只有实际上被利用的虚拟功能通道才会被纳入物理功能驱动的管理范围,因此有效地克服了对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量所导致的问题;并且,因为物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置;因为是通过物理功能驱动来提供额外的资源管理接口,而虚拟功能是通过单根输入输出虚拟化从物理功能虚拟化得到,所以通过物理功能驱动来管理虚拟机各自的带宽配置和网络子接口数量,不会影响数据面的直通,同时又保持了控制面的灵活性;实现了高带宽利用率和高资源利用率,以及可以灵活地应对虚拟机的虚拟功能资源管理方面的复杂性。Through the fifth aspect of the present application, on the basis of constructing the first corresponding relationship and constructing the second corresponding relationship, the first corresponding relationship between the configured physical function and the configured virtual function and the second corresponding relationship between the loaded virtual function and the virtual machine are respectively determined, and the loading process of the virtual function is optimized. The virtual function driver allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver, so that the physical function driver can use the universal unique identifier to distinguish each loaded virtual function; on the one hand, the direct connection between the virtual machine and the loaded virtual function is maintained, and on the other hand, only the virtual function loaded by the virtual function driver will have its universal unique identifier notified to the physical function driver, which means that only the virtual function channel that is actually used will be included in the management scope of the physical function driver, so it is effective. The problem caused by setting the maximum data transmission rate or the maximum number of network sub-interfaces for each virtual function is overcome; and because the physical function driver can use the universal unique identifier to refine the virtual function corresponding to each physical function, that is, to finely manage the virtual functions loaded in the virtual functions corresponding to each physical function and assigned with the universal unique identifier, it can be flexibly and richly configured within the framework of the overall resource management strategy; because the additional resource management interface is provided by the physical function driver, and the virtual function is obtained from the physical function virtualization through a single input and output virtualization, the bandwidth configuration and the number of network sub-interfaces of each virtual machine are managed by the physical function driver, which will not affect the direct connection of the data plane, while maintaining the flexibility of the control plane; high bandwidth utilization and high resource utilization are achieved, and the complexity of virtual function resource management of virtual machines can be flexibly dealt with.
在本申请的第五方面的一种可能的实现方式中,所述虚拟功能驱动还用于:移除所述至少一个虚拟功能中的第一虚拟功能,通知所述第一虚拟功能的通用唯一标识给所述物理功能驱动;所述物理功能驱动还用于:基于所述第一虚拟功能的通用唯一标识,确定所述至少一个虚拟机中与所述第一虚拟功能之间满足所述第二对应关系的第一虚拟机,删除所述第一虚拟机的关联所述第一虚拟功能的带宽配置,以及,回收所述第一虚拟机的关联所述第一虚拟功能的已分配网络子接口。In a possible implementation of the fifth aspect of the present application, the virtual function driver is also used to: remove the first virtual function among the at least one virtual function, and notify the physical function driver of the universal unique identifier of the first virtual function; the physical function driver is also used to: determine, based on the universal unique identifier of the first virtual function, the first virtual machine among the at least one virtual machine that satisfies the second correspondence relationship with the first virtual function, delete the bandwidth configuration of the first virtual machine associated with the first virtual function, and reclaim the allocated network sub-interface of the first virtual machine associated with the first virtual function.
在本申请的第五方面的一种可能的实现方式中,所述物理功能驱动被部署在宿主机的内核态,所述虚拟功能驱动由系统模拟器提供,并且,所述系统模拟器被部署在所述宿主机的用户态,所述系统模拟器用于:解析所述一个或者多个虚拟功能各自的通用唯一标识从而确定与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,以及,通知与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识给所述物理功能驱动。In a possible implementation of the fifth aspect of the present application, the physical function driver is deployed in the kernel state of the host machine, the virtual function driver is provided by a system simulator, and the system simulator is deployed in the user state of the host machine, and the system simulator is used to: parse the respective universal unique identifiers of the one or more virtual functions to determine the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions, notify the physical function driver of the respective universal unique identifiers of the one or more virtual functions, and notify the physical function driver of the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions.
在本申请的第五方面的一种可能的实现方式中,与所述宿主机连接的硬件侧包括微处理器,所述微处理器用于提供组策略管理装置,所述组策略管理装置用于为所述至少一个物理功能提供组级别的物理功能的发送速率限速配置和设备规格配置,所述组级别的物理功能包括所述至少一个物理功能中的至少两个物理功能。In a possible implementation of the fifth aspect of the present application, the hardware side connected to the host machine includes a microprocessor, and the microprocessor is used to provide a group policy management device, and the group policy management device is used to provide a group-level physical function sending rate limit configuration and device specification configuration for the at least one physical function, and the group-level physical function includes at least two physical functions of the at least one physical function.
在本申请的第五方面的一种可能的实现方式中,所述至少一个物理功能包括第一物理功能和第二物理功能,所述至少一个虚拟功能中的第一虚拟功能集合与所述第一物理功能之间满足所述第一对应关系,所述至少一个虚拟功能中的第二虚拟功能集合与所述第二物理功能之间满足所述第一对应关系,所述至少一个虚拟机中的第二虚拟机与所述第一虚拟功能集合之间满足所述第二对应关系,所述第二虚拟机与所述第二虚拟功能集合之间满足所述第二对应关系,所述管理系统还包括组策略管理装置,所述组策略管理装置用于:对与所述第二虚拟机之间满足所述第二对应关系的虚拟功能,执行统一的发送速率限速配置和设备规格配置。In a possible implementation of the fifth aspect of the present application, the at least one physical function includes a first physical function and a second physical function, the first virtual function set in the at least one virtual function satisfies the first correspondence relationship with the first physical function, the second virtual function set in the at least one virtual function satisfies the first correspondence relationship with the second physical function, the second virtual machine in the at least one virtual machine satisfies the second correspondence relationship with the first virtual function set, and the second virtual machine satisfies the second correspondence relationship with the second virtual function set, and the management system also includes a group policy management device, which is used to: for the virtual function that satisfies the second correspondence relationship with the second virtual machine, perform unified sending rate limit configuration and equipment specification configuration.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
图1为本申请实施例提供的一种虚拟功能的管理方法的流程示意图;FIG1 is a schematic diagram of a flow chart of a method for managing virtual functions provided in an embodiment of the present application;
图2为本申请实施例提供的一种虚拟功能的管理系统的示意图;FIG2 is a schematic diagram of a virtual function management system provided by an embodiment of the present application;
图3为本申请实施例提供的一种计算设备的结构示意图。FIG3 is a schematic diagram of the structure of a computing device provided in an embodiment of the present application.
具体实施方式DETAILED DESCRIPTION
下面将结合附图对本申请实施例作进一步地详细描述。The embodiments of the present application will be further described in detail below in conjunction with the accompanying drawings.
应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。It should be understood that, in the description of this application, "at least one" means one or more, and "a plurality of" means two or more. In addition, unless otherwise specified, the words "first", "second", etc. are only used for the purpose of distinguishing descriptions, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying an order.
图1为本申请实施例提供的一种虚拟功能的管理方法的流程示意图。如图1所示,所述管理方法包括以下步骤。Fig. 1 is a flow chart of a virtual function management method provided in an embodiment of the present application. As shown in Fig. 1, the management method includes the following steps.
步骤S110:通过物理功能驱动,配置至少一个物理功能,以及,利用单根输入输出虚拟化,配置与所述至少一个物理功能之间存在第一对应关系的至少一个虚拟功能。Step S110: configuring at least one physical function through a physical function driver, and configuring at least one virtual function having a first corresponding relationship with the at least one physical function by using single-root input and output virtualization.
步骤S120:通过虚拟功能驱动,加载所述至少一个虚拟功能中的一个或者多个虚拟功能,分配通用唯一标识给所加载的所述一个或者多个虚拟功能,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,并且,配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通。Step S120: Load one or more virtual functions among the at least one virtual function through the virtual function driver, assign a universal unique identifier to the loaded one or more virtual functions, notify the physical function driver of the universal unique identifiers of the one or more virtual functions, and configure at least one virtual machine that has a second corresponding relationship with the one or more virtual functions, and enable direct communication between the virtual functions that satisfy the second corresponding relationship and the virtual machines.
步骤S130:通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。Step S130: managing the bandwidth configuration and the number of network sub-interfaces of each of the at least one virtual machine based on the universal unique identifier of each of the one or more virtual functions through the physical function driver.
参阅图1,图1所示的虚拟功能的管理方法,可以应用于如云计算、大型数据中心等技术领域,可以用于如云游戏、短视频、网络功能虚拟化(Network FunctionVirtualization,NFV)等,这些技术领域和应用对于数据吞吐率和网络时延有较高的要求。为了实现用户定制化输入输出资源以及为了提高资源利用率,利用单根输入输出虚拟化(Single Root I/O Virtualization,SRIOV),将一个物理功能虚拟出多个虚拟功能,再将这些虚拟功能直通给虚拟机,如此可以提高虚拟功能的输入输出处理性能,从而降低时延和提高吞吐率。一个虚拟机可能与多个虚拟功能之间建立起直通关系,该虚拟机可以通过多个虚拟功能实现多个网口的报文收发,多个存储盘的数据读写,或者多个数据通道等,这样该虚拟机的用户可以在定制化输入输出资源方面有更高的灵活性和操作空间。但是,与同一个虚拟机之间建立起直通关系的多个虚拟功能,可能来自于同一个物理功能,也可能来自于不同的物理功能,因此,与同一个虚拟机之间建立起直通关系的多个虚拟功能之间的关联关系是难以预计的,这样就给管理整个虚拟机的虚拟功能资源带来了挑战。如果对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量,则不利于充分利用有限的带宽资源和接口资源,这样不利于云厂商管理虚拟机和用户使用虚拟机,而且如果每个虚拟按照单独限速方案来执行带宽限速,则意味着最大带宽是受到已启用的虚拟功能的数量的限制,只有当每个虚拟功能均参与到输入输出时才能利用所有带宽,这一点对于云厂商和用户都是不友好的。下面结合本申请具体实施例详细说明,图1所示的虚拟功能的管理方法,如何实现了高带宽利用率和高资源利用率,以及可以灵活地应对虚拟机的虚拟功能资源管理方面的复杂性。Referring to FIG. 1 , the virtual function management method shown in FIG. 1 can be applied to technical fields such as cloud computing and large data centers, and can be used for cloud games, short videos, network function virtualization (NFV), etc. These technical fields and applications have high requirements for data throughput and network latency. In order to realize user-customized input and output resources and to improve resource utilization, a single root input and output virtualization (SRIOV) is used to virtualize a physical function into multiple virtual functions, and then these virtual functions are directly connected to the virtual machine, so that the input and output processing performance of the virtual function can be improved, thereby reducing latency and improving throughput. A virtual machine may establish a direct connection relationship with multiple virtual functions. The virtual machine can realize the transmission and reception of messages of multiple network ports, the reading and writing of data of multiple storage disks, or multiple data channels through multiple virtual functions, so that the user of the virtual machine can have higher flexibility and operation space in terms of customized input and output resources. However, multiple virtual functions that establish a direct connection relationship with the same virtual machine may come from the same physical function or from different physical functions. Therefore, the association relationship between multiple virtual functions that establish a direct connection relationship with the same virtual machine is difficult to predict, which brings challenges to the management of the virtual function resources of the entire virtual machine. If the maximum data transmission rate or the maximum number of network sub-interfaces is set separately for each virtual function, it is not conducive to fully utilizing the limited bandwidth resources and interface resources, which is not conducive to cloud vendors managing virtual machines and users using virtual machines. Moreover, if each virtual performs bandwidth speed limiting according to a separate speed limiting scheme, it means that the maximum bandwidth is limited by the number of enabled virtual functions. Only when each virtual function participates in input and output can all bandwidth be utilized, which is unfriendly to both cloud vendors and users. The following is a detailed description of the virtual function management method shown in Figure 1 in conjunction with the specific embodiments of the present application, how to achieve high bandwidth utilization and high resource utilization, and how to flexibly cope with the complexity of virtual function resource management of virtual machines.
继续参阅图1,在步骤S110,通过物理功能驱动,配置至少一个物理功能,以及,利用单根输入输出虚拟化,配置与所述至少一个物理功能之间存在第一对应关系的至少一个虚拟功能。如此,实现了灵活配置输入输出资源,第一对应关系定义了所述至少一个物理功能与所述至少一个虚拟功能之间的对应关系,因此,通过解析第一对应关系,可以确定某个虚拟功能所对应的物理功能,或者,可以确定利用单根输入输出虚拟化将某个物理功能虚拟得到的对应的虚拟功能。然后,在步骤S120,通过虚拟功能驱动,加载所述至少一个虚拟功能中的一个或者多个虚拟功能,分配通用唯一标识给所加载的所述一个或者多个虚拟功能,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,并且,配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通。如此,在步骤S110构建的物理功能与虚拟功能之间的第一对应关系的基础上,在步骤S120,对虚拟功能的加载过程进行了优化。应当理解的是,加载所述至少一个虚拟功能中的一个或者多个虚拟功能,这意味着所述一个或者多个虚拟功能是被加载的虚拟功能也即实际上启用的虚拟功能,而没有被加载的虚拟功能则当前没有被启用。针对被加载的虚拟功能也即所述一个或者多个虚拟功能,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识(Universally Unique Identifier,UUID)给虚拟功能,因此每个被加载也即被启用的虚拟功能均被分配了通用唯一标识用于区分每个被加载的虚拟功能。虚拟功能驱动还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能。虚拟功能驱动还配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通。如此,实现了被加载的所述一个或者多个虚拟功能与虚拟机之间的直通,可以提高虚拟功能的输入输出处理性能,从而降低时延和提高吞吐率。第二对应关系定义了被加载的虚拟功能与虚拟机之间的对应关系,因此,通过解析第二对应关系,可以确定某个虚拟功能所对应(也即存在直通关系)的虚拟机,或者,可以确定某个虚拟机所对应的所有虚拟功能(也即存在直通关系)。Continuing to refer to FIG. 1, in step S110, at least one physical function is configured through a physical function driver, and at least one virtual function having a first corresponding relationship with the at least one physical function is configured using single-root input and output virtualization. In this way, flexible configuration of input and output resources is achieved, and the first corresponding relationship defines the corresponding relationship between the at least one physical function and the at least one virtual function. Therefore, by parsing the first corresponding relationship, the physical function corresponding to a certain virtual function can be determined, or the corresponding virtual function obtained by virtualizing a certain physical function using single-root input and output virtualization can be determined. Then, in step S120, one or more virtual functions in the at least one virtual function are loaded through a virtual function driver, a universal unique identifier is assigned to the loaded one or more virtual functions, and the universal unique identifier of each of the one or more virtual functions is notified to the physical function driver, and at least one virtual machine having a second corresponding relationship with the one or more virtual functions is configured, and the virtual function satisfying the second corresponding relationship is directly connected to the virtual machine. In this way, based on the first corresponding relationship between the physical function and the virtual function constructed in step S110, the loading process of the virtual function is optimized in step S120. It should be understood that loading one or more virtual functions in the at least one virtual function means that the one or more virtual functions are loaded virtual functions, that is, virtual functions that are actually enabled, while the virtual functions that are not loaded are not currently enabled. For the loaded virtual functions, that is, the one or more virtual functions, the virtual function driver assigns a universally unique identifier (UUID) to the virtual function when loading the virtual function, so each loaded, that is, enabled virtual function is assigned a universally unique identifier to distinguish each loaded virtual function. The virtual function driver also notifies the physical function driver of the universally unique identifier of the one or more virtual functions, so that the physical function driver can use the universally unique identifier to distinguish each loaded virtual function. The virtual function driver also configures at least one virtual machine that has a second corresponding relationship with the one or more virtual functions, and enables the virtual function that satisfies the second corresponding relationship to be directly connected to the virtual machine. In this way, the direct connection between the loaded one or more virtual functions and the virtual machine is achieved, which can improve the input and output processing performance of the virtual function, thereby reducing latency and improving throughput. The second correspondence defines the correspondence between the loaded virtual function and the virtual machine. Therefore, by parsing the second correspondence, the virtual machine corresponding to a certain virtual function (that is, there is a direct relationship) can be determined, or all virtual functions corresponding to a certain virtual machine (that is, there is a direct relationship) can be determined.
继续参阅图1,在步骤S110所构建的第一对应关系和在步骤S120所构建的第二对应关系的基础上,分别确定了被配置的物理功能与被配置的虚拟功能之间的第一对应关系以及被加载的虚拟功能与虚拟机之间的第二对应关系,并且,对虚拟功能的加载过程进行了优化,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能。然后,在步骤S130,通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。如此,在虚拟机与被加载的虚拟功能之间直通的基础上,对虚拟功能的加载过程进行了优化,虚拟功能驱动为每个被加载的虚拟功能分配通用唯一标识,这样物理功能驱动可以基于通用唯一标识来区分和管理与虚拟功能对应的被加载的虚拟功能,并且,物理功能驱动可以提供基于通用唯一标识的资源管理接口,例如,配置下行最大带宽,配置上行最大带宽,配置子接口数量,配置源物理地址防欺诈检查等,还可以通过通用唯一标识为虚拟机创建私有配置和私有配置文件还有子目录。因为是通过物理功能驱动来管理所述至少一个虚拟机各自的带宽配置和网络子接口数量,因此可以精细化到每个物理功能各自对应的虚拟功能,而利用所述一个或者多个虚拟功能各自的通用唯一标识,可以针对被加载的也即已被启用的虚拟功能进行如带宽限速和接口数量限制。因此,一方面保持了虚拟机与被加载的虚拟功能之间直通,另一方面,只有被虚拟功能驱动加载的虚拟功能,其通用唯一标识才会被通知到物理功能驱动,这意味着,只有实际上被利用的虚拟功能通道才会被纳入物理功能驱动的管理范围,因此有效地克服了对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量所导致的问题。并且,因为物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置,例如,配置下行最大带宽,配置上行最大带宽,配置子接口数量,配置源物理地址防欺诈检查等,还可以通过通用唯一标识为虚拟机创建私有配置和私有配置文件还有子目录,从而更好满足用户定制化需求。进一步地,因为是通过物理功能驱动来提供额外的资源管理接口,而虚拟功能是通过单根输入输出虚拟化从物理功能虚拟化得到,所以通过物理功能驱动来管理虚拟机各自的带宽配置和网络子接口数量,不会影响数据面的直通,同时又保持了控制面的灵活性。进一步地,图1所示的虚拟功能的管理方法,对虚拟功能的加载过程进行了优化,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能;如此,便于应用到既有的物理功能与虚拟功能的配置方案,并且,对内核态的物理功能驱动做出的改动幅度很小,可以通过扩展物理功能驱动网络接口配置命令(IP LINK),例如通过扩展命令行命令和增加参数化配置,不仅可以实现整体资源规划,也可以实现在定制化输入输出资源方面有更高的灵活性和操作空间。Continuing to refer to FIG. 1, based on the first correspondence relationship constructed in step S110 and the second correspondence relationship constructed in step S120, the first correspondence relationship between the configured physical function and the configured virtual function and the second correspondence relationship between the loaded virtual function and the virtual machine are determined respectively, and the loading process of the virtual function is optimized, the virtual function driver allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver, so that the physical function driver can use the universal unique identifier to distinguish each loaded virtual function. Then, in step S130, the bandwidth configuration and the number of network sub-interfaces of each of the at least one virtual machine are managed by the physical function driver based on the universal unique identifier of each of the one or more virtual functions. In this way, on the basis of direct communication between the virtual machine and the loaded virtual function, the loading process of the virtual function is optimized, and the virtual function driver assigns a universal unique identifier to each loaded virtual function, so that the physical function driver can distinguish and manage the loaded virtual functions corresponding to the virtual function based on the universal unique identifier, and the physical function driver can provide a resource management interface based on the universal unique identifier, for example, configuring the maximum downlink bandwidth, configuring the maximum uplink bandwidth, configuring the number of sub-interfaces, configuring the source physical address anti-fraud check, etc., and can also create private configurations and private configuration files and sub-directories for the virtual machine through the universal unique identifier. Because the bandwidth configuration and the number of network sub-interfaces of the at least one virtual machine are managed by the physical function driver, it can be refined to the virtual function corresponding to each physical function, and the universal unique identifier of the one or more virtual functions can be used to limit the bandwidth and the number of interfaces for the loaded virtual function, that is, the enabled virtual function. Therefore, on the one hand, direct communication between the virtual machine and the loaded virtual function is maintained, and on the other hand, only the virtual function loaded by the virtual function driver will be notified of its universal unique identifier to the physical function driver, which means that only the virtual function channel actually used will be included in the management scope of the physical function driver, thus effectively overcoming the problem caused by setting the maximum data transmission rate or the maximum number of network sub-interfaces for each virtual function separately. In addition, because the physical function driver can use the universal unique identifier to refine the virtual function corresponding to each physical function, that is, to finely manage the virtual functions loaded and assigned with the universal unique identifier in the virtual function corresponding to each physical function, it can be flexibly and richly configured within the framework of the overall resource management strategy, for example, configuring the maximum downlink bandwidth, configuring the maximum uplink bandwidth, configuring the number of sub-interfaces, configuring the source physical address anti-fraud check, etc., and can also create private configurations and private configuration files and sub-directories for the virtual machine through the universal unique identifier, so as to better meet the user's customization needs. Furthermore, because the additional resource management interface is provided by the physical function driver, and the virtual function is obtained from the physical function virtualization through a single input and output virtualization, the bandwidth configuration and the number of network sub-interfaces of each virtual machine are managed by the physical function driver, which will not affect the direct access of the data plane, while maintaining the flexibility of the control plane. Furthermore, the virtual function management method shown in FIG1 optimizes the loading process of the virtual function. The virtual function driver allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver, so that the physical function driver can use the universal unique identifier to distinguish each loaded virtual function; in this way, it is easy to apply to the existing configuration schemes of physical functions and virtual functions, and the changes made to the physical function driver in the kernel state are very small. By extending the physical function driver network interface configuration command (IP LINK), for example, by extending the command line command and adding parameterized configuration, not only the overall resource planning can be achieved, but also higher flexibility and operation space can be achieved in terms of customized input and output resources.
总之,图1所示的虚拟功能的管理方法,在构建第一对应关系和构建第二对应关系的基础上,分别确定了被配置的物理功能与被配置的虚拟功能之间的第一对应关系以及被加载的虚拟功能与虚拟机之间的第二对应关系,并且,对虚拟功能的加载过程进行了优化,虚拟功能驱动在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,这样物理功能驱动可以利用通用唯一标识来区分每个被加载的虚拟功能;一方面保持了虚拟机与被加载的虚拟功能之间直通,另一方面,只有被虚拟功能驱动加载的虚拟功能,其通用唯一标识才会被通知到物理功能驱动,这意味着,只有实际上被利用的虚拟功能通道才会被纳入物理功能驱动的管理范围,因此有效地克服了对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量所导致的问题;并且,因为物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置;因为是通过物理功能驱动来提供额外的资源管理接口,而虚拟功能是通过单根输入输出虚拟化从物理功能虚拟化得到,所以通过物理功能驱动来管理虚拟机各自的带宽配置和网络子接口数量,不会影响数据面的直通,同时又保持了控制面的灵活性;实现了高带宽利用率和高资源利用率,以及可以灵活地应对虚拟机的虚拟功能资源管理方面的复杂性。In summary, the virtual function management method shown in FIG1 determines the first correspondence between the configured physical function and the configured virtual function and the second correspondence between the loaded virtual function and the virtual machine, respectively, on the basis of constructing the first correspondence and constructing the second correspondence, and optimizes the loading process of the virtual function. The virtual function driver allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver, so that the physical function driver can use the universal unique identifier to distinguish each loaded virtual function; on the one hand, direct communication between the virtual machine and the loaded virtual function is maintained, and on the other hand, only the universal unique identifier of the virtual function loaded by the virtual function driver will be notified to the physical function driver, which means that only the virtual function channel that is actually used will be included in the management scope of the physical function driver. Therefore, the problem caused by setting the maximum data transmission rate or the maximum number of network sub-interfaces for each virtual function separately is effectively overcome; and, because the physical function driver can use the universal unique identifier to refine the virtual function corresponding to each physical function, that is, to finely manage the virtual functions loaded in the virtual functions corresponding to each physical function and assigned with the universal unique identifier, it is possible to perform flexible and rich configuration within the framework of the overall resource management strategy; because the additional resource management interface is provided by the physical function driver, and the virtual function is obtained from the physical function virtualization through a single input and output virtualization, the physical function driver is used to manage the bandwidth configuration and the number of network sub-interfaces of each virtual machine, which will not affect the direct connection of the data plane, while maintaining the flexibility of the control plane; high bandwidth utilization and high resource utilization are achieved, and the complexity of virtual function resource management of virtual machines can be flexibly dealt with.
在一种可能的实现方式中,所述管理方法还包括:通过所述虚拟功能驱动,移除所述至少一个虚拟功能中的第一虚拟功能,通知所述第一虚拟功能的通用唯一标识给所述物理功能驱动;通过所述物理功能驱动,基于所述第一虚拟功能的通用唯一标识,确定所述至少一个虚拟机中与所述第一虚拟功能之间满足所述第二对应关系的第一虚拟机,删除所述第一虚拟机的关联所述第一虚拟功能的带宽配置,以及,回收所述第一虚拟机的关联所述第一虚拟功能的已分配网络子接口。如此,物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置,提供了虚拟功能移除和相应的带宽配置删除以及已分配网络子接口的回收,有利于资源回收再利用和提高资源利用率。In a possible implementation, the management method further includes: removing the first virtual function in the at least one virtual function through the virtual function driver, notifying the first virtual function's universal unique identifier to the physical function driver; determining the first virtual machine in the at least one virtual machine that satisfies the second corresponding relationship with the first virtual function based on the universal unique identifier of the first virtual function through the physical function driver, deleting the bandwidth configuration of the first virtual function associated with the first virtual function, and reclaiming the allocated network sub-interface of the first virtual machine associated with the first virtual function. In this way, the physical function driver can use the universal unique identifier to refine the virtual functions corresponding to each physical function, that is, to manage the virtual functions loaded and assigned universal unique identifiers in the virtual functions corresponding to each physical function in a refined manner, so that flexible and rich configuration can be performed within the framework of the overall resource management strategy, providing virtual function removal and corresponding bandwidth configuration deletion and recovery of allocated network sub-interfaces, which is conducive to resource recycling and reuse and improving resource utilization.
在一种可能的实现方式中,所述管理方法还包括:通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理来自所述一个或者多个虚拟功能的资源申请。如此,物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置。In a possible implementation, the management method further includes: managing resource requests from the one or more virtual functions based on the universal unique identifiers of the one or more virtual functions through the physical function driver. In this way, the physical function driver can use the universal unique identifier to refine the virtual functions corresponding to each physical function, that is, to finely manage the virtual functions loaded and assigned universal unique identifiers in the virtual functions corresponding to each physical function, so that flexible and rich configurations can be performed within the framework of the overall resource management strategy.
在一种可能的实现方式中,所述物理功能驱动通过扩展网络接口配置命令从而实现:基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。如此,便于应用到既有的物理功能与虚拟功能的配置方案,并且,对内核态的物理功能驱动做出的改动幅度很小,可以通过扩展物理功能驱动网络接口配置命令(IP LINK),例如通过扩展命令行命令和增加参数化配置,不仅可以实现整体资源规划,也可以实现在定制化输入输出资源方面有更高的灵活性和操作空间。In a possible implementation, the physical function driver is implemented by extending the network interface configuration command to: manage the bandwidth configuration and the number of network sub-interfaces of the at least one virtual machine based on the universal unique identifier of the one or more virtual functions. In this way, it is easy to apply to the existing configuration schemes of physical functions and virtual functions, and the changes made to the physical function driver in the kernel state are very small. By extending the physical function driver network interface configuration command (IP LINK), for example, by extending the command line command and adding parameterized configuration, not only the overall resource planning can be achieved, but also higher flexibility and operating space can be achieved in terms of customized input and output resources.
在一种可能的实现方式中,所述带宽配置包括下行最大带宽、上行最大带宽、源机器地址防欺诈检查。如此,物理功能驱动可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置。In a possible implementation, the bandwidth configuration includes the maximum downstream bandwidth, the maximum upstream bandwidth, and the source machine address anti-fraud check. In this way, the physical function driver can use the universal unique identifier to refine the virtual functions corresponding to each physical function, that is, to finely manage the virtual functions loaded and assigned with the universal unique identifier in the virtual functions corresponding to each physical function, so that flexible and rich configuration can be performed within the framework of the overall resource management strategy.
在一种可能的实现方式中,所述物理功能驱动被部署在宿主机的内核态,所述虚拟功能驱动由系统模拟器提供,并且,所述系统模拟器被部署在所述宿主机的用户态,所述系统模拟器用于:解析所述一个或者多个虚拟功能各自的通用唯一标识从而确定与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动,以及,通知与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识给所述物理功能驱动。如此,可以适配各种虚拟化技术和产品,例如在云计算和云服务的应用中采用的开源的虚拟机监视器和模拟器,可用于模拟各种硬件平台。In a possible implementation, the physical function driver is deployed in the kernel state of the host machine, the virtual function driver is provided by the system simulator, and the system simulator is deployed in the user state of the host machine, and the system simulator is used to: parse the universal unique identifier of each of the one or more virtual functions to determine the bus device function identifier of the physical function that satisfies the first correspondence relationship between the one or more virtual functions, notify the physical function driver of the universal unique identifier of each of the one or more virtual functions, and notify the physical function driver of the bus device function identifier of the physical function that satisfies the first correspondence relationship between the one or more virtual functions. In this way, various virtualization technologies and products can be adapted, such as open source virtual machine monitors and simulators used in cloud computing and cloud service applications, which can be used to simulate various hardware platforms.
在一些实施例中,与所述宿主机连接的硬件侧包括微处理器,所述微处理器用于提供组策略管理装置,所述组策略管理装置用于为所述至少一个物理功能提供组级别的物理功能的发送速率限速配置和设备规格配置,所述组级别的物理功能包括所述至少一个物理功能中的至少两个物理功能。如此,在上述的通过所述物理功能驱动实现的管理基础上(通过所述物理功能驱动,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量),提供了额外的管理手段,因此,物理功能驱动维护自身虚拟功能与通用唯一标识的管理,在硬件侧增加了微处理器,例如微控制单元(Microcontroller Unit,MCU),这样可以支持多个物理功能各自对应的虚拟功能加入同一个虚拟机。如此,通过支持多个物理功能各自对应的虚拟功能加入同一个虚拟机,以及为这些虚拟功能的资源管理提供组策略管理装置,有助于充分利用硬件的输入输出带宽和提高系统可靠性,也有利于云厂商基于整个硬件资源来进行管理,而不受限于物理功能对硬件资源的划分。例如,以网卡为例,一个物理功能以及其对应的虚拟功能对应一个以太网面板口,通过支持多个物理功能各自对应的虚拟功能加入同一个虚拟机,可以使用多个以太网面板口的带宽,这样可以避免因为一个以太网面板口故障而导致整个虚拟机的流量中断。在一些实施例中,所述组策略管理装置用于提供跨物理功能的硬件资源管理。如此,有利于云厂商基于整个硬件资源来进行管理,而不受限于物理功能对硬件资源的划分。In some embodiments, the hardware side connected to the host includes a microprocessor, the microprocessor is used to provide a group policy management device, the group policy management device is used to provide a group-level physical function transmission rate limit configuration and device specification configuration for the at least one physical function, and the group-level physical function includes at least two physical functions of the at least one physical function. In this way, on the basis of the above-mentioned management implemented by the physical function driver (through the physical function driver, based on the universal unique identifier of each of the one or more virtual functions, the bandwidth configuration and the number of network sub-interfaces of each virtual machine are managed), an additional management means is provided. Therefore, the physical function driver maintains the management of its own virtual function and universal unique identifier, and a microprocessor, such as a microcontroller unit (MCU) is added to the hardware side, so that virtual functions corresponding to multiple physical functions can be supported to join the same virtual machine. In this way, by supporting virtual functions corresponding to multiple physical functions to join the same virtual machine and providing a group policy management device for resource management of these virtual functions, it is helpful to make full use of the input and output bandwidth of the hardware and improve system reliability, and it is also beneficial for cloud vendors to manage based on the entire hardware resources without being limited by the division of hardware resources by physical functions. For example, taking a network card as an example, a physical function and its corresponding virtual function correspond to an Ethernet panel port. By supporting virtual functions corresponding to multiple physical functions to join the same virtual machine, the bandwidth of multiple Ethernet panel ports can be used, which can avoid the interruption of the traffic of the entire virtual machine due to the failure of an Ethernet panel port. In some embodiments, the group policy management device is used to provide hardware resource management across physical functions. In this way, it is beneficial for cloud vendors to manage based on the entire hardware resources without being limited by the division of hardware resources by physical functions.
在一种可能的实现方式中,所述至少一个物理功能包括第一物理功能和第二物理功能,所述至少一个虚拟功能中的第一虚拟功能集合与所述第一物理功能之间满足所述第一对应关系,所述至少一个虚拟功能中的第二虚拟功能集合与所述第二物理功能之间满足所述第一对应关系,所述至少一个虚拟机中的第二虚拟机与所述第一虚拟功能集合之间满足所述第二对应关系,所述第二虚拟机与所述第二虚拟功能集合之间满足所述第二对应关系,所述管理方法还包括:通过组策略管理装置,对与所述第二虚拟机之间满足所述第二对应关系的虚拟功能,执行统一的发送速率限速配置和设备规格配置。如此,有利于云厂商基于整个硬件资源来进行管理,而不受限于物理功能对硬件资源的划分。In a possible implementation, the at least one physical function includes a first physical function and a second physical function, the first virtual function set in the at least one virtual function satisfies the first corresponding relationship with the first physical function, the second virtual function set in the at least one virtual function satisfies the first corresponding relationship with the second physical function, the second virtual machine in the at least one virtual machine satisfies the second corresponding relationship with the first virtual function set, and the second virtual machine satisfies the second corresponding relationship with the second virtual function set, and the management method further includes: performing unified transmission rate limit configuration and device specification configuration on the virtual function that satisfies the second corresponding relationship with the second virtual machine through a group policy management device. In this way, it is beneficial for cloud vendors to manage based on the entire hardware resources without being limited by the division of hardware resources by physical functions.
在一些实施例中,满足所述第一对应关系的物理功能和虚拟功能对应同一个以太面板口并且使用所述同一个以太面板口的带宽。在一些实施例中,所述第二虚拟机使用所述第一物理功能和所述第二物理功能各自对应的以太面板口的带宽。如此,通过支持多个物理功能各自对应的虚拟功能加入同一个虚拟机,以及为这些虚拟功能的资源管理提供组策略管理装置,有助于充分利用硬件的输入输出带宽和提高系统可靠性,可以使用多个以太网面板口的带宽,这样可以避免因为一个以太网面板口故障而导致整个虚拟机的流量中断。In some embodiments, the physical function and virtual function that satisfy the first corresponding relationship correspond to the same Ethernet panel port and use the bandwidth of the same Ethernet panel port. In some embodiments, the second virtual machine uses the bandwidth of the Ethernet panel port corresponding to the first physical function and the second physical function. In this way, by supporting virtual functions corresponding to multiple physical functions to join the same virtual machine and providing a group policy management device for resource management of these virtual functions, it is helpful to fully utilize the input and output bandwidth of the hardware and improve system reliability. The bandwidth of multiple Ethernet panel ports can be used, which can avoid the interruption of the traffic of the entire virtual machine due to the failure of one Ethernet panel port.
图2为本申请实施例提供的一种虚拟功能的管理系统的示意图。如图2所示,所述管理系统包括:物理功能驱动202,用于:配置至少一个物理功能,以及,利用单根输入输出虚拟化,配置与所述至少一个物理功能之间存在第一对应关系的至少一个虚拟功能;虚拟功能驱动204,用于:加载所述至少一个虚拟功能中的一个或者多个虚拟功能,分配通用唯一标识给所加载的所述一个或者多个虚拟功能,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动202,并且,配置与所述一个或者多个虚拟功能之间存在第二对应关系的至少一个虚拟机,以及使得满足所述第二对应关系的虚拟功能与虚拟机之间直通。其中,所述物理功能驱动202还用于:基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量。如图2所示,所述物理功能驱动202被部署在宿主机内核态250,所述虚拟功能驱动204由系统模拟器260提供,并且,所述系统模拟器260被部署在所述宿主机用户态252。所述系统模拟器260用于:解析所述一个或者多个虚拟功能各自的通用唯一标识从而确定与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识,通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动202,以及,通知与所述一个或者多个虚拟功能之间满足所述第一对应关系的物理功能的总线设备功能标识给所述物理功能驱动202。FIG2 is a schematic diagram of a management system for virtual functions provided by an embodiment of the present application. As shown in FIG2, the management system includes: a physical function driver 202, which is used to: configure at least one physical function, and, using single-root input and output virtualization, configure at least one virtual function that has a first correspondence relationship with the at least one physical function; a virtual function driver 204, which is used to: load one or more virtual functions in the at least one virtual function, assign a universal unique identifier to the loaded one or more virtual functions, notify the universal unique identifier of each of the one or more virtual functions to the physical function driver 202, and configure at least one virtual machine that has a second correspondence relationship with the one or more virtual functions, and make the virtual functions that meet the second correspondence relationship directly connected to the virtual machine. Among them, the physical function driver 202 is also used to: manage the bandwidth configuration and the number of network sub-interfaces of each of the at least one virtual machine based on the universal unique identifiers of each of the one or more virtual functions. As shown in FIG2, the physical function driver 202 is deployed in the kernel state 250 of the host machine, the virtual function driver 204 is provided by the system simulator 260, and the system simulator 260 is deployed in the user state 252 of the host machine. The system simulator 260 is used to: parse the respective universal unique identifiers of the one or more virtual functions to determine the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions, notify the physical function driver 202 of the respective universal unique identifiers of the one or more virtual functions, and notify the physical function driver 202 of the bus device function identifier of the physical function that satisfies the first corresponding relationship between the one or more virtual functions.
参阅图2,图2中示例性示出了至少一个物理功能和至少一个虚拟功能。第一对应关系定义了所述至少一个物理功能与所述至少一个虚拟功能之间的对应关系,因此,通过解析第一对应关系,可以确定某个虚拟功能所对应的物理功能,或者,可以确定利用单根输入输出虚拟化将某个物理功能虚拟得到的对应的虚拟功能。如图2所示,物理功能驱动202配置了物理功能A210和物理功能B220,还配置了物理功能A210的虚拟功能A212、物理功能A210的虚拟功能B214、物理功能B220的虚拟功能C222以及物理功能B220的虚拟功能D224。系统模拟器260可以是在云计算和云服务的应用中采用的开源的虚拟机监视器和模拟器(Quick EMUlator,QEMU),可用于模拟多个硬件平台。一个虚拟机可能与多个虚拟功能之间建立起直通关系,该虚拟机可以通过多个虚拟功能实现多个网口的报文收发,多个存储盘的数据读写,或者多个数据通道等,这样该虚拟机的用户可以在定制化输入输出资源方面有更高的灵活性和操作空间。但是,与同一个虚拟机之间建立起直通关系的多个虚拟功能,可能来自于同一个物理功能,也可能来自于不同的物理功能,因此,与同一个虚拟机之间建立起直通关系的多个虚拟功能之间的关联关系是难以预计的。例如,图2所示的物理功能A210的虚拟功能A212和物理功能B220的虚拟功能C222分别对应物理功能A210和物理功能B220,同一个虚拟机可能分别使用物理功能A210的虚拟功能A212和物理功能B220的虚拟功能C222来支持两个网口,或者用于支持两个存储盘的数据通道。因为物理功能驱动202可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置。Refer to FIG. 2, which exemplarily shows at least one physical function and at least one virtual function. The first correspondence defines the correspondence between the at least one physical function and the at least one virtual function. Therefore, by parsing the first correspondence, the physical function corresponding to a certain virtual function can be determined, or the corresponding virtual function obtained by virtualizing a certain physical function using single-root input and output virtualization can be determined. As shown in FIG. 2, the physical function driver 202 is configured with physical function A210 and physical function B220, and is also configured with virtual function A212 of physical function A210, virtual function B214 of physical function A210, virtual function C222 of physical function B220, and virtual function D224 of physical function B220. The system simulator 260 can be an open source virtual machine monitor and simulator (Quick EMUlator, QEMU) used in cloud computing and cloud service applications, which can be used to simulate multiple hardware platforms. A virtual machine may establish a direct connection relationship with multiple virtual functions. The virtual machine can use multiple virtual functions to send and receive messages on multiple network ports, read and write data on multiple storage disks, or multiple data channels, so that the user of the virtual machine can have higher flexibility and operating space in terms of customized input and output resources. However, multiple virtual functions that establish a direct connection relationship with the same virtual machine may come from the same physical function or from different physical functions. Therefore, the association relationship between multiple virtual functions that establish a direct connection relationship with the same virtual machine is difficult to predict. For example, the virtual function A212 of the physical function A210 and the virtual function C222 of the physical function B220 shown in Figure 2 correspond to the physical function A210 and the physical function B220 respectively. The same virtual machine may use the virtual function A212 of the physical function A210 and the virtual function C222 of the physical function B220 to support two network ports, or to support the data channels of two storage disks. Because the physical function driver 202 can use the universal unique identifier to refine the virtual functions corresponding to each physical function, that is, to finely manage the virtual functions loaded and assigned universal unique identifiers in the virtual functions corresponding to each physical function, flexible and rich configuration can be performed within the framework of the overall resource management strategy.
继续参阅图2,在一些实施例中,与所述宿主机连接的硬件侧254包括微处理器270,所述微处理器270用于提供组策略管理装置272,所述组策略管理装置272用于为所述至少一个物理功能提供组级别的物理功能的发送速率限速配置和设备规格配置,所述组级别的物理功能包括所述至少一个物理功能中的至少两个物理功能。如此,在上述的通过所述物理功能驱动202实现的管理基础上(通过所述物理功能驱动202,基于所述一个或者多个虚拟功能各自的通用唯一标识,管理所述至少一个虚拟机各自的带宽配置和网络子接口数量),提供了额外的管理手段,因此,物理功能驱动202维护自身虚拟功能与通用唯一标识的管理,在硬件侧254增加了微处理器270,例如微控制单元(Microcontroller Unit,MCU),这样可以支持多个物理功能各自对应的虚拟功能加入同一个虚拟机。如此,通过支持多个物理功能各自对应的虚拟功能加入同一个虚拟机,以及为这些虚拟功能的资源管理提供组策略管理装置272,有助于充分利用硬件的输入输出带宽和提高系统可靠性,也有利于云厂商基于整个硬件资源来进行管理,而不受限于物理功能对硬件资源的划分。例如,以网卡为例,一个物理功能以及其对应的虚拟功能对应一个以太网面板口,通过支持多个物理功能各自对应的虚拟功能加入同一个虚拟机,可以使用多个以太网面板口的带宽,这样可以避免因为一个以太网面板口故障而导致整个虚拟机的流量中断。Continuing to refer to FIG. 2, in some embodiments, the hardware side 254 connected to the host machine includes a microprocessor 270, the microprocessor 270 is used to provide a group policy management device 272, the group policy management device 272 is used to provide a group-level physical function transmission rate limit configuration and device specification configuration for the at least one physical function, and the group-level physical function includes at least two physical functions of the at least one physical function. In this way, on the basis of the above-mentioned management implemented by the physical function driver 202 (through the physical function driver 202, based on the universal unique identifier of each of the one or more virtual functions, the bandwidth configuration and the number of network sub-interfaces of each virtual machine are managed), an additional management means is provided, so that the physical function driver 202 maintains the management of its own virtual function and universal unique identifier, and a microprocessor 270, such as a microcontroller unit (MCU), is added to the hardware side 254, so that the virtual functions corresponding to multiple physical functions can be supported to join the same virtual machine. In this way, by supporting virtual functions corresponding to multiple physical functions to join the same virtual machine, and providing a group policy management device 272 for resource management of these virtual functions, it is helpful to fully utilize the input and output bandwidth of the hardware and improve system reliability, and it is also beneficial for cloud vendors to manage based on the entire hardware resources without being limited by the division of hardware resources by physical functions. For example, taking a network card as an example, a physical function and its corresponding virtual function correspond to an Ethernet panel port. By supporting virtual functions corresponding to multiple physical functions to join the same virtual machine, the bandwidth of multiple Ethernet panel ports can be used, which can avoid the interruption of the flow of the entire virtual machine due to the failure of an Ethernet panel port.
总之,图2所示的虚拟功能的管理系统,在构建第一对应关系和构建第二对应关系的基础上,分别确定了被配置的物理功能与被配置的虚拟功能之间的第一对应关系以及被加载的虚拟功能与虚拟机之间的第二对应关系,并且,对虚拟功能的加载过程进行了优化,虚拟功能驱动204在加载虚拟功能时分配了通用唯一标识,并且,还通知所述一个或者多个虚拟功能各自的通用唯一标识给所述物理功能驱动202,这样物理功能驱动202可以利用通用唯一标识来区分每个被加载的虚拟功能;一方面保持了虚拟机与被加载的虚拟功能之间直通,另一方面,只有被虚拟功能驱动204加载的虚拟功能,其通用唯一标识才会被通知到物理功能驱动202,这意味着,只有实际上被利用的虚拟功能通道才会被纳入物理功能驱动202的管理范围,因此有效地克服了对每个虚拟功能单独设定最大数据传输速率或者最大网络子接口数量所导致的问题;并且,因为物理功能驱动202可以利用通用唯一标识来精细化到每个物理功能各自对应的虚拟功能,也就是精细化地管理各个物理功能对应的虚拟功能中被加载且被分配了通用唯一标识的虚拟功能,因此可以在整体资源管理策略的框架内进行灵活丰富的配置;因为是通过物理功能驱动202来提供额外的资源管理接口,而虚拟功能是通过单根输入输出虚拟化从物理功能虚拟化得到,所以通过物理功能驱动202来管理虚拟机各自的带宽配置和网络子接口数量,不会影响数据面的直通,同时又保持了控制面的灵活性;实现了高带宽利用率和高资源利用率,以及可以灵活地应对虚拟机的虚拟功能资源管理方面的复杂性。In summary, the management system of the virtual function shown in FIG2 determines the first correspondence between the configured physical function and the configured virtual function and the second correspondence between the loaded virtual function and the virtual machine, respectively, on the basis of constructing the first correspondence and constructing the second correspondence, and optimizes the loading process of the virtual function. The virtual function driver 204 allocates a universal unique identifier when loading the virtual function, and also notifies the universal unique identifier of each of the one or more virtual functions to the physical function driver 202, so that the physical function driver 202 can use the universal unique identifier to distinguish each loaded virtual function; on the one hand, direct communication between the virtual machine and the loaded virtual function is maintained, and on the other hand, only the universal unique identifier of the virtual function loaded by the virtual function driver 204 will be notified to the physical function driver 202, which means that only the virtual function channel that is actually used will be included in the management of the physical function driver 202. The physical function driver 202 can utilize the universal unique identifier to refine the virtual functions corresponding to each physical function, that is, to manage the virtual functions loaded in the virtual functions corresponding to each physical function and assigned the universal unique identifier in a refined manner, so that flexible and rich configuration can be performed within the framework of the overall resource management strategy; because the additional resource management interface is provided by the physical function driver 202, and the virtual function is obtained from the physical function virtualization through a single input and output virtualization, the physical function driver 202 is used to manage the bandwidth configuration and the number of network sub-interfaces of each virtual machine, which will not affect the direct access of the data plane, while maintaining the flexibility of the control plane; high bandwidth utilization and high resource utilization are achieved, and the complexity of virtual function resource management of virtual machines can be flexibly dealt with.
参阅图2,在一种可能的实施方式中,所述虚拟功能驱动204还用于:移除所述至少一个虚拟功能中的第一虚拟功能,通知所述第一虚拟功能的通用唯一标识给所述物理功能驱动202;所述物理功能驱动202还用于:基于所述第一虚拟功能的通用唯一标识,确定所述至少一个虚拟机中与所述第一虚拟功能之间满足所述第二对应关系的第一虚拟机,删除所述第一虚拟机的关联所述第一虚拟功能的带宽配置,以及,回收所述第一虚拟机的关联所述第一虚拟功能的已分配网络子接口。如此,提供了虚拟功能移除和相应的带宽配置删除以及已分配网络子接口的回收,有利于资源回收再利用和提高资源利用率。Referring to FIG. 2 , in a possible implementation, the virtual function driver 204 is further used to: remove the first virtual function in the at least one virtual function, and notify the first virtual function's universal unique identifier to the physical function driver 202; the physical function driver 202 is further used to: determine the first virtual machine in the at least one virtual machine that satisfies the second corresponding relationship with the first virtual function based on the universal unique identifier of the first virtual function, delete the bandwidth configuration of the first virtual machine associated with the first virtual function, and reclaim the allocated network sub-interface of the first virtual machine associated with the first virtual function. In this way, virtual function removal and corresponding bandwidth configuration deletion and reclaim of allocated network sub-interfaces are provided, which is conducive to resource recycling and reuse and improving resource utilization.
在一种可能的实施方式中,所述至少一个物理功能包括第一物理功能和第二物理功能,所述至少一个虚拟功能中的第一虚拟功能集合与所述第一物理功能之间满足所述第一对应关系,所述至少一个虚拟功能中的第二虚拟功能集合与所述第二物理功能之间满足所述第一对应关系,所述至少一个虚拟机中的第二虚拟机与所述第一虚拟功能集合之间满足所述第二对应关系,所述第二虚拟机与所述第二虚拟功能集合之间满足所述第二对应关系,所述管理系统还包括组策略管理装置272,所述组策略管理装置272用于:对与所述第二虚拟机之间满足所述第二对应关系的虚拟功能,执行统一的发送速率限速配置和设备规格配置。如此,有利于云厂商基于整个硬件资源来进行管理,而不受限于物理功能对硬件资源的划分。In a possible implementation, the at least one physical function includes a first physical function and a second physical function, the first virtual function set in the at least one virtual function satisfies the first corresponding relationship with the first physical function, the second virtual function set in the at least one virtual function satisfies the first corresponding relationship with the second physical function, the second virtual machine in the at least one virtual machine satisfies the second corresponding relationship with the first virtual function set, and the second virtual machine satisfies the second corresponding relationship with the second virtual function set, and the management system further includes a group policy management device 272, and the group policy management device 272 is used to: perform unified transmission rate limit configuration and device specification configuration on the virtual function that satisfies the second corresponding relationship with the second virtual machine. In this way, it is beneficial for cloud vendors to manage based on the entire hardware resources without being limited by the division of hardware resources by physical functions.
图3是本申请实施例提供的一种计算设备的结构示意图,该计算设备300包括:一个或者多个处理器310、通信接口320以及存储器330。所述处理器310、通信接口320以及存储器330通过总线340相互连接。可选地,该计算设备300还可以包括输入/输出接口350,输入/输出接口350连接有输入/输出设备,用于接收用户设置的参数等。该计算设备300能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器310还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备300执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器310用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备300可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口320具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器310具体可用于为了实现这些装置、部件的功能所必须的处理功能等。3 is a schematic diagram of the structure of a computing device provided in an embodiment of the present application, and the computing device 300 includes: one or more processors 310, a communication interface 320 and a memory 330. The processor 310, the communication interface 320 and the memory 330 are interconnected via a bus 340. Optionally, the computing device 300 may also include an input/output interface 350, which is connected to an input/output device for receiving parameters set by a user, etc. The computing device 300 can be used to implement some or all of the functions of the device embodiment or system embodiment in the above-mentioned embodiment of the present application; the processor 310 can also be used to implement some or all of the operating steps of the method embodiment in the above-mentioned embodiment of the present application. For example, the specific implementation of the computing device 300 performing various operations can refer to the specific details in the above-mentioned embodiments, such as the processor 310 is used to perform some or all of the steps in the above-mentioned method embodiment or some or all of the operations in the above-mentioned method embodiment. For another example, in an embodiment of the present application, the computing device 300 may be used to implement part or all of the functions of one or more components in the above-mentioned apparatus embodiment. In addition, the communication interface 320 may be specifically used to perform the communication functions necessary to implement the functions of these apparatuses and components, and the processor 310 may be specifically used to perform the processing functions necessary to implement the functions of these apparatuses and components.
应当理解的是,图3的计算设备300可以包括一个或者多个处理器310,并且多个处理器310可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器310可以构成处理器序列或者处理器阵列,或者多个处理器310之间可以分成主处理器和辅助处理器,或者多个处理器310之间可以具有不同的架构如采用异构计算架构。另外,图3所示的计算设备300,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备300可以包括比图3所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。It should be understood that the computing device 300 of FIG. 3 may include one or more processors 310, and the multiple processors 310 may provide processing capabilities in a coordinated manner in a parallel connection mode, a serial connection mode, a serial-parallel connection mode, or an arbitrary connection mode, or the multiple processors 310 may constitute a processor sequence or a processor array, or the multiple processors 310 may be divided into a main processor and an auxiliary processor, or the multiple processors 310 may have different architectures such as a heterogeneous computing architecture. In addition, the computing device 300 shown in FIG. 3, the related structural description and functional description are exemplary and non-restrictive. In some exemplary embodiments, the computing device 300 may include more or fewer components than those shown in FIG. 3, or combine some components, or split some components, or have a different arrangement of components.
处理器310可以有多种具体实现形式,例如处理器310可以包括中央处理器(central processing unit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural-network processing unit,NPU)、张量处理器(tensor processingunit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器310还可以是单核处理器或多核处理器。处理器310可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器310也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口320可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(local interconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。The processor 310 may have a variety of specific implementation forms. For example, the processor 310 may include a central processing unit (CPU), a graphic processing unit (GPU), a neural-network processing unit (NPU), a tensor processing unit (TPU) or a data processing unit (DPU), etc., and the embodiment of the present application does not specifically limit it. The processor 310 may also be a single-core processor or a multi-core processor. The processor 310 may be a combination of a CPU and a hardware chip. The above-mentioned hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof. The above-mentioned PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL) or any combination thereof. The processor 310 may also be implemented using a logic device with built-in processing logic alone, such as an FPGA or a digital signal processor (DSP). The communication interface 320 may be a wired interface or a wireless interface for communicating with other modules or devices. The wired interface may be an Ethernet interface, a local interconnect network (LIN), etc., and the wireless interface may be a cellular network interface or a wireless local area network interface, etc.
存储器330可以是非易失性存储器,例如,只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器330也可以是易失性存储器,易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器330也可用于存储程序代码和数据,以便于处理器310调用存储器330中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备300可能包含相比于图3展示的更多或者更少的组件,或者有不同的组件配置方式。The memory 330 may be a non-volatile memory, such as a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The memory 330 may also be a volatile memory, which may be a random access memory (RAM) used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous DRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct rambus RAM (DR RAM). The memory 330 can also be used to store program codes and data, so that the processor 310 calls the program codes stored in the memory 330 to execute some or all of the operation steps in the above method embodiments, or to execute the corresponding functions in the above device embodiments. In addition, the computing device 300 may include more or fewer components than those shown in FIG. 3, or have different component configurations.
总线340可以是快捷外围部件互连标准(peripheral component interconnectexpress,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线340可以分为地址总线、数据总线、控制总线等。总线340除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The bus 340 may be a peripheral component interconnect express (PCIe) bus, or an extended industry standard architecture (EISA) bus, a unified bus (Ubus or UB), a compute express link (CXL), a cache coherent interconnect for accelerators (CCIX), etc. The bus 340 may be divided into an address bus, a data bus, a control bus, etc. In addition to the data bus, the bus 340 may also include a power bus, a control bus, and a status signal bus, etc. However, for the sake of clarity, FIG. 3 is represented by only one thick line, but it does not mean that there is only one bus or one type of bus.
本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述所描述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。The method and device provided in the embodiments of the present application are based on the same inventive concept. Since the principles of solving the problems in the methods and devices are similar, the embodiments, implementation methods, examples or implementation methods of the methods and devices can refer to each other, and the repeated parts will not be repeated. The embodiments of the present application also provide a system, which includes multiple computing devices, and the structure of each computing device can refer to the structure of the computing device described above. The functions or operations that can be implemented by the system can refer to the specific implementation steps in the above method embodiments and/or the specific functions described in the above device embodiments, which will not be repeated here.
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。The present application also provides a computer-readable storage medium, in which computer instructions are stored. When the computer instructions are executed on a computer device (such as one or more processors), the method steps in the above method embodiment can be implemented. The specific implementation of the processor of the computer-readable storage medium in executing the above method steps can refer to the specific operations described in the above method embodiment and/or the specific functions described in the above device embodiment, which will not be repeated here.
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。It should be understood by those skilled in the art that the embodiments of the present application may be provided as methods, systems, or computer program products. The present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. The embodiments of the present application may be implemented in whole or in part by software, hardware, firmware, or any other combination. When implemented using software, the above embodiments may be implemented in whole or in part in the form of a computer program product. The present application may take the form of a computer program product implemented on one or more computer-usable storage media containing computer-usable program codes. The computer program product includes one or more computer instructions. When the computer program instructions are loaded or executed on a computer, the process or function described in the embodiments of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. Computer-readable storage media can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that contains one or more available media. Available media can be magnetic media (such as floppy disks, hard disks, tapes), optical media, or semiconductor media. Semiconductor media can be solid-state hard disks, random access memory, flash memory, read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, or any other form of suitable storage media.
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。The present application is described with reference to the flowchart and/or block diagram of the method, device (system) and computer program product according to the embodiment of the present application. Each flow and/or box in the flow chart and/or block diagram, and the combination of the flow chart and/or box in the flow chart and/or block diagram can be realized by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for realizing the function specified in one flow chart or multiple flows and/or one box or multiple boxes of the block chart. These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device, which implements the function specified in one flow chart or multiple flows and/or one box or multiple boxes of the block diagram. These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. Obviously, those skilled in the art can make various changes and modifications to the embodiments of the present application without departing from the spirit and scope of the embodiments of the present application. The steps in the method of the embodiment of the present application can be adjusted in order, merged or deleted according to actual needs; the modules in the system of the embodiment of the present application can be divided, merged or deleted according to actual needs. If these modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalent technologies, the present application is also intended to include these modifications and variations.
Claims (18)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411318797.XA CN118819873B (en) | 2024-09-21 | 2024-09-21 | Virtual function management method, computer device, medium and system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411318797.XA CN118819873B (en) | 2024-09-21 | 2024-09-21 | Virtual function management method, computer device, medium and system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN118819873A true CN118819873A (en) | 2024-10-22 |
| CN118819873B CN118819873B (en) | 2024-11-22 |
Family
ID=93071630
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202411318797.XA Active CN118819873B (en) | 2024-09-21 | 2024-09-21 | Virtual function management method, computer device, medium and system |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118819873B (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119127094A (en) * | 2024-11-14 | 2024-12-13 | 苏州元脑智能科技有限公司 | Data access method, heterogeneous system, electronic device, medium and program product |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107005495A (en) * | 2017-01-20 | 2017-08-01 | 华为技术有限公司 | Method for forwarding data packets, network card, host device and computer system |
| US20180052701A1 (en) * | 2016-08-17 | 2018-02-22 | Red Hat Israel, Ltd. | Hot-plugging of virtual functions in a virtualized environment |
| CN110099014A (en) * | 2016-11-09 | 2019-08-06 | 华为技术有限公司 | The method and host of Message processing in cloud computing system |
-
2024
- 2024-09-21 CN CN202411318797.XA patent/CN118819873B/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20180052701A1 (en) * | 2016-08-17 | 2018-02-22 | Red Hat Israel, Ltd. | Hot-plugging of virtual functions in a virtualized environment |
| CN110099014A (en) * | 2016-11-09 | 2019-08-06 | 华为技术有限公司 | The method and host of Message processing in cloud computing system |
| CN107005495A (en) * | 2017-01-20 | 2017-08-01 | 华为技术有限公司 | Method for forwarding data packets, network card, host device and computer system |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119127094A (en) * | 2024-11-14 | 2024-12-13 | 苏州元脑智能科技有限公司 | Data access method, heterogeneous system, electronic device, medium and program product |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118819873B (en) | 2024-11-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10491517B2 (en) | Packet processing method in cloud computing system, host, and system | |
| US20220206969A1 (en) | Data forwarding chip and server | |
| US11336521B2 (en) | Acceleration resource scheduling method and apparatus, and acceleration system | |
| CN117170882B (en) | Resource allocation method and device, electronic equipment and storage medium | |
| CN115858102A (en) | Method for deploying virtual machine supporting virtualization hardware acceleration | |
| WO2013024375A1 (en) | Dynamic network adapter memory resizing and bounding for virtual function translation entry storage | |
| US9712436B2 (en) | Adaptive load balancing for bridged systems | |
| CN115858103B (en) | Method, device and medium for virtual machine hot migration of open stack architecture | |
| CN115934624B (en) | Method, equipment and medium for managing multi-host remote direct memory access network | |
| CN113127144B (en) | A processing method, device and storage medium | |
| WO2023173961A1 (en) | Memory allocation method and related product | |
| US20200174814A1 (en) | Systems and methods for upgrading hypervisor locally | |
| CN117519908B (en) | Virtual machine thermomigration method, computer equipment and medium | |
| CN106569874B (en) | Operation method of storage device and physical server | |
| CN118819873A (en) | Virtual function management method, computer equipment, medium and system | |
| CN118779066A (en) | Virtualized load balancing method, device, and terminal device for Proxmox VE | |
| CN111158905A (en) | Method and apparatus for adjusting resources | |
| CN118605964A (en) | Resource configuration method of intelligent network card, computer equipment and medium | |
| CN110704163A (en) | A server and its virtualized storage method and device | |
| CN119415450B (en) | Base address register resource management method, electronic equipment and medium | |
| US20170083466A1 (en) | Low latency efficient sharing of resources in multi-server ecosystems | |
| CN112491794A (en) | Port forwarding method, device and related equipment | |
| CN118760628A (en) | Address conversion method, computer equipment and medium | |
| CN119065792A (en) | Container virtualization method, device, equipment and storage medium based on edge computing | |
| WO2025007852A1 (en) | Virtual-instance deployment method and system based on cloud service |
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 |