Method and device for creating resource pool, readable storage medium and chip
By creating a device resource pool in the first functional network element of the data center, the problem of inconsistent resource management in the diverse computing architecture of peer-to-peer interconnection is solved, and resource utilization is improved.
Patent Information
- Application Number
- CN202510127492.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-27
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2045-01-27
AI Technical Summary
The current data center lacks a unified resource management solution in the peer-to-peer interconnected diversified computing architecture, resulting in a low resource utilization rate.
By receiving a message to create a device resource pool in the first functional network element, and creating a device resource pool based on the message, it realizes unified management and pooling of resources in the peer-to-peer interconnected diversified computing architecture.
The utilization rate of resources is improved, so that resources in the peer-to-peer interconnected diversified computing architecture can be fully utilized.
Smart Images

Figure CN120050175A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technologies, and in particular, to a method, apparatus, readable storage medium, and chip for creating a resource pool. Background Art
[0002] Current data centers usually take the CPU as the core and manage hardware resources in a hierarchical and graded manner. Existing standard specifications mainly manage this type of architecture. In a peer-to-peer interconnected heterogeneous computing architecture, a unified high-speed interconnect bus connects multiple computing resources. However, the current standard specifications lack a solution for unified management of resources in the peer-to-peer interconnected heterogeneous computing architecture, and cannot make full use of resources, resulting in low resource utilization. Summary of the Invention
[0003] To solve the above technical problems, embodiments of this application provide a method, apparatus, readable storage medium, and chip for creating a resource pool, which can uniformly manage resources in a peer-to-peer interconnected heterogeneous computing architecture and improve resource utilization.
[0004] In a first aspect, a method for creating a resource pool is provided. This method can be executed by a first functional network element, or by components of the first functional network element, such as a processor, chip, or chip system of the first functional network element, or can also be implemented by a logic module or software that can implement all or part of the functions of the first functional network element. Hereinafter, an example will be given where this method is executed by the first functional network element. The method for creating a resource pool includes: after the first functional network element receives a message for creating a device resource pool, a device resource pool is created based on at least one device in the device resource pool indicated in the message, and the created device resource pool includes the resources of each device. In this way, the first functional network element can manage the resources in the peer-to-peer interconnected heterogeneous computing architecture in a device resource pooling manner based on the method provided by the embodiments of this application, so that the resources in the peer-to-peer interconnected heterogeneous computing architecture can be uniformly managed and resource utilization can be improved.
[0005] As an example, the device in the device resource pool is a DPU, the device resource is DPU resource, and the first functional entity is a VIM or a PIM. In this way, the VIM and PIM can pool and manage the DPU resources in the form of a resource pool, improving the utilization rate of the DPU resources.
[0006] In a possible implementation, the first message can indicate the device resource pool to be created and the devices included in the device resource pool through the identifier of the device resource pool and the identifiers of at least one device in the device resource pool.
[0007] In a possible implementation, the first message may further indicate the resource allocation mode of the device resource pool; the resource allocation mode of the device resource pool includes: the device resource pool sharing mode or the device resource pool exclusive mode. Among them, the device resource pool sharing mode indicates that the resources in the device resource pool are allowed to be shared by multiple functional entities, and the device resource pool exclusive mode indicates that the resources in the device resource pool are allowed to be exclusively used by one functional entity. In this way, the first functional entity records the resource allocation method of the DPU resource pool when creating the DPU resource pool, and then allocates the corresponding DPU resource pool to the container cluster or the virtual network function (VNF) instance according to the required resource allocation method of the container cluster or the VNF instance when allocating DPU resources to them subsequently.
[0008] In a possible implementation, when the device is a DPU device, the resources in the DPU device include at least two of the following: computing resources, storage resources, or network service resources.
[0009] In a possible implementation, after receiving the message for creating a device resource pool group, the first functional network element creates a device resource pool group based on at least one device resource pool indicated in the message, and the created device resource pool group includes the resources of each device resource pool. In this way, the first functional network element can manage the DPU resource pool group based on the method provided in the embodiments of the present application, so that the DPU resources in the DPU resource pool group can be uniformly managed, and the utilization rate of the DPU resources in the DPU resource pool group is improved.
[0010] In a possible implementation, the second message indicates the device resource pool group to be created through the identifier of the device resource pool group. Optionally, the second message may also indicate the device resource pools in the device resource pool group through the identifiers of at least two device resource pools, or the second message indicates the device resource pools in the device resource pool group through the identifiers of the devices in at least two device resource pools.
[0011] In a possible implementation, the second message is further used to indicate the resource allocation mode of the device resource pool group; the resource allocation mode of the device resource pool group includes: the device resource pool group sharing mode or the device resource pool group exclusive mode. Among them, the device resource pool group sharing mode indicates that the resources in the device resource pool group are allowed to be shared by multiple functional entities, and the device resource pool group exclusive mode indicates that the resources in the device resource pool group are allowed to be exclusively used by one functional entity. In this way, the first functional entity records the resource allocation method of the DPU resource pool group when creating the DPU resource pool group, and then allocates the corresponding DPU resource pool group to the container cluster or the VNF instance according to the required resource allocation method of the container cluster or the VNF instance when allocating DPU resources to them subsequently.
[0012] In a possible implementation, before creating a device resource pool or a device resource pool group, the first functional entity may first obtain a third message for indicating the resources of at least one device, and then create a device resource pool or a device resource pool group according to the resources of the at least one device. Optionally, the third message is further used to indicate that the resources of the at least one device support the establishment of a device resource pool. In this way, the first functional entity can create a device resource pool based on the resources that support the establishment of a device resource pool.
[0013] In a possible implementation, after creating a device resource pool or a device resource pool group, if the first functional entity receives a message for creating a virtualized entity cluster, it establishes a binding relationship between the first virtualized entity cluster and the first device resource pool based on the first device resource pool allocated for the first virtualized entity cluster, and determines the resources in the first device resource pool as the available resources for the first virtualized entity cluster. In this way, when the first virtualized entity cluster needs to use resources subsequently, it can use the resources in the first device resource pool.
[0014] In a possible implementation, only a part of the resources (denoted as the first resources) in the first device resource pool may be allocated for the first virtualized entity cluster, and the message for creating a virtualized entity cluster may further indicate the first resources. In this way, the first functional entity can record the available resources of the first virtualized entity cluster as the first resources in the first device resource pool. In this way, different resources can be allocated for different virtualized entity clusters, so as to achieve logical isolation of each virtualized entity cluster.
[0015] In a possible implementation, when allocating a device resource pool for a virtualized entity cluster, the device resource pool can be allocated for the virtualized entity cluster based on the resource allocation mode required by the virtualized entity cluster and the resource allocation modes of each device resource pool. For example, when the resource allocation mode required by the virtualized entity cluster is the shared mode, a device resource pool in the shared mode is allocated for the virtualized entity cluster. When the resource allocation mode required by the virtualized entity cluster is the exclusive mode, a device resource pool in the exclusive mode is allocated for the virtualized entity cluster.
[0016] In a possible implementation, if the first functional entity receives a fifth message for creating a VNF instance, it establishes a corresponding relationship between the VNF instance and the resources in the device resource pool based on the resources allocated for the VNF instance indicated by the fifth message. In this way, the VNF instance can use the resources allocated for it in the device resource pool subsequently.
[0017] In a possible implementation, the VNF instance can be deployed in the above-mentioned first virtualized entity cluster. At this time, the resources allocated for the VNF instance are the resources in the resources allocated for the first virtualized entity cluster mentioned above.
[0018] In a possible implementation, when a VNF instance includes multiple services and the multiple services are respectively deployed in different virtualized entities, the fifth message may further indicate the third resources allocated for each virtualized entity. In this way, the first functional entity can determine that the third resources allocated for each of the above virtualized entities are the available resources of the VNF instance, and the services in the VNF instance can use the third resources in the virtualized entities where they are deployed during operation.
[0019] In a possible implementation, if the first functional entity receives a sixth message for creating a virtualized entity, it establishes a binding relationship between the first virtualized entity and the third resources according to the third resources allocated for the first virtualized entity indicated by the sixth message. This can enable the first virtualized entity to use the resources allocated for it in the device resource pool subsequently.
[0020] In a possible implementation, the first virtualized entity may be an entity in the above first virtualized entity cluster. At this time, the resources allocated for the first virtualized entity are the resources in the resources allocated for the first virtualized entity cluster.
[0021] In a possible implementation, the first virtualized entity may be a virtualized entity in a VNF instance. At this time, the resources allocated for the first virtualized entity are the resources in the resources allocated for the VNF instance.
[0022] In a second aspect, a method for creating a resource pool is provided. This method can be executed by a network function virtualization management entity, or by components of the network function virtualization management entity, such as the processor, chip, or chip system of the network function virtualization management entity, or can also be implemented by a logic module or software that can implement all or part of the functions of the network function virtualization management entity. Hereinafter, an example in which this method is executed by the network function virtualization management entity will be described. The method for creating a resource pool includes: The network function virtualization management entity calls a first functional entity to create a device resource pool. During the process that the network function virtualization management entity calls the first functional entity to create a device resource pool, the network function virtualization management entity sends a device resource pool creation message to the first functional entity, and this message may indicate at least one device in the device resource pool, so that the first functional entity creates a device resource pool including the resources of the at least one device.
[0023] In a possible implementation, the network function virtualization management entity may also call a first functional entity to create a device resource pool group. During the process of the network function virtualization management entity calling the first functional entity to create a device resource pool group, the network function virtualization management entity sends a device resource pool group creation message to the first functional entity, and this message may indicate at least one device resource pool in the device resource pool group, so that the first functional entity creates a device resource pool group including the resources of the at least one device resource pool.
[0024] In a possible implementation, the network function virtualization management entity may also call a first functional entity to create a first virtualized entity cluster. The network function virtualization management entity may indicate to the first functional entity the device resource pool or device resource pool group allocated to the first virtualized entity cluster, so as to allocate a corresponding device resource pool for it when creating the first virtualized entity cluster.
[0025] In a third aspect, a method for creating a resource pool is provided. This method may be executed by a network function virtualization infrastructure entity, or by components of the network function virtualization infrastructure entity, such as a processor, a chip, or a chip system of the network function virtualization infrastructure entity, or may also be implemented by a logic module or software that can implement all or part of the functions of the network function virtualization infrastructure entity. Hereinafter, an example in which this method is executed by the network function virtualization infrastructure entity will be used for description. The method for creating a resource pool includes: the network function virtualization infrastructure entity sends the device resources of at least one device to the first functional entity. In this way, the first functional entity can create a device resource pool based on the device resources of the at least one device.
[0026] In a fourth aspect, a method for creating a resource pool is provided. This method may be executed by a VNF management entity, or by components of the VNF management entity, such as a processor, a chip, or a chip system of the VNF management entity, or may also be implemented by a logic module or software that can implement all or part of the functions of the VNF management entity. Hereinafter, an example in which this method is executed by the VNF management entity will be used for description. The method for creating a resource pool includes: the VNF management entity determines in which virtualized entities to deploy VNF instances, and allocates resources for these virtualized entities to execute the services in the VNF instances. In this way, after creating the VNF instances subsequently, the services in the VNF instances can be executed based on the resources of the virtualized entities where the VNF instances are deployed.
[0027] Among them, the descriptions of the device resource pool, the device resource pool group, the first virtualized entity cluster, the first virtualized entity, the VNF instance, etc. may refer to the first aspect above, and the present application will not elaborate on this.
[0028] In a fifth aspect, a device for creating a resource pool is provided to implement the various methods described above. The device for creating a resource pool may be the first functional entity in the first aspect above, or a device including the first functional entity above, or a device included in the first functional entity above, such as a chip. Alternatively, the device for creating a resource pool may be the network function virtualization management entity in the second aspect above, or a device including the network function virtualization management entity above, or a device included in the network function virtualization management entity above, such as a chip. Alternatively, the device for creating a resource pool may be the network function virtualization infrastructure entity in the third aspect above, or a device including the network function virtualization infrastructure entity above, or a device included in the network function virtualization infrastructure entity above, such as a chip. Alternatively, the device for creating a resource pool may be the VNF management entity in the fourth aspect above, or a device including the VNF management entity above, or a device included in the VNF management entity above, such as a chip. The device for creating a resource pool includes corresponding modules, units, or means for implementing the above methods. The modules, units, or means may be implemented by hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the above functions.
[0029] In some possible designs, the device for creating a resource pool may include a processing module and a transceiver module. The transceiver module, which may also be referred to as a transceiver unit, is used to implement the sending and / or receiving functions in any of the above aspects and any possible implementation manners thereof. The transceiver module may be composed of a transceiver circuit, a transceiver, a transceiver, or a communication interface. The processing module may be used to implement the processing functions in any of the above aspects and any possible implementation manners thereof.
[0030] In some possible designs, the transceiver module includes a sending module and a receiving module, which are respectively used to implement the sending and receiving functions in any of the above aspects and any possible implementation manners thereof.
[0031] In a sixth aspect, a device for creating a resource pool is provided, including: at least one processor; the processor is configured to execute computer programs or instructions stored in a memory, so that the device for creating a resource pool executes the method in any of the above aspects. The memory may be coupled to the processor, or may be independent of the processor. The device for creating a resource pool may be the first functional entity in the first aspect above, or a device including the first functional entity above, or a device included in the first functional entity above, such as a chip. Alternatively, the device for creating a resource pool may be the network function virtualization management entity in the second aspect above, or a device including the network function virtualization management entity above, or a device included in the network function virtualization management entity above, such as a chip. Alternatively, the device for creating a resource pool may be the network function virtualization infrastructure entity in the third aspect above, or a device including the network function virtualization infrastructure entity above, or a device included in the network function virtualization infrastructure entity above, such as a chip. Alternatively, the device for creating a resource pool may be the VNF management entity in the fourth aspect above, or a device including the VNF management entity above, or a device included in the VNF management entity above, such as a chip.
[0032] In some possible designs, the device for creating a resource pool includes a memory, which is configured to store necessary program instructions and data.
[0033] In a possible implementation, the processor includes a logic circuit and an input interface and / or an output interface. Among them, the output interface is configured to perform the sending action in the corresponding method, and the input interface is configured to perform the receiving action in the corresponding method.
[0034] In a possible implementation, the device for creating a resource pool further includes a communication interface and a communication bus, and the processor, the memory and the communication interface are connected through the communication bus. The communication interface is configured to perform the sending and receiving actions in the corresponding method. The communication interface may also be referred to as a transceiver. Optionally, the communication interface includes a transmitter and a receiver. In this case, the transmitter is configured to perform the sending action in the corresponding method, and the receiver is configured to perform the receiving action in the corresponding method.
[0035] In some possible designs, the device for creating a resource pool may be a chip or a chip system. Among them, when the device for creating a resource pool is a chip system, it may be composed of chips, or may include chips and other discrete devices. When the device for creating a resource pool is a chip, the above-mentioned sending action / function may be understood as output, and the above-mentioned receiving action / function may be understood as input.
[0036] In a seventh aspect, a chip is provided, the chip includes a processor, which is configured to implement the functions involved in any of the above aspects or any of its implementations.
[0037] In some possible designs, the chip includes a memory for storing necessary program instructions and data.
[0038] In an eighth aspect, a computer-readable storage medium is provided, in which a computer program or instruction is stored. When it runs on a device for creating a resource pool, the device for creating a resource pool can execute the method according to any one of the above aspects or any of its implementation manners.
[0039] In a ninth aspect, a computer program product containing instructions is provided. When it runs on a device for creating a resource pool, the device for creating a resource pool can execute the method according to any one of the above aspects or any of its implementation manners.
[0040] For the technical effects brought by any implementation manner in the second aspect to the ninth aspect, reference may be made to the technical effects brought by the corresponding implementation manner in the first aspect, which will not be elaborated here.
[0041] It should be noted that, for any possible implementation manner of any one of the above aspects, under the premise that the solutions do not conflict, they can be combined. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] Figure 1 It is a schematic diagram of the architecture of an NFV;
[0043] Figure 2 It is a schematic comparison diagram of a basic network card, a first-generation intelligent network card, and a DPU intelligent network card;
[0044] Figure 3 It is a schematic comparison diagram of a current server stacking architecture and a peer-to-peer interconnected heterogeneous computing architecture;
[0045] Figure 4 It is a schematic diagram of the system architecture of a communication system;
[0046] Figure 5 It is a schematic diagram of the structure of a device for creating a resource pool;
[0047] Figure 6 It is a schematic flowchart of a method for creating a resource pool;
[0048] Figure 7 It is a schematic flowchart of another method for creating a resource pool;
[0049] Figure 8 It is a schematic flowchart of another method for creating a resource pool;
[0050] Figure 9 It is a schematic diagram of creating a DPU resource pool and a DPU resource pool group based on DPU hardware resources;
[0051] Figure 10 It is a schematic flow chart of yet another method for creating a resource pool;
[0052] Figure 11 It is a schematic flow chart of yet another method for creating a resource pool;
[0053] Figure 12 It is a schematic flow chart of yet another method for creating a resource pool;
[0054] Figure 13 It is a schematic flow chart of yet another method for creating a resource pool;
[0055] Figure 14 It is a schematic flow chart of yet another method for creating a resource pool;
[0056] Figure 15 It is a schematic structural diagram of yet another device for creating a resource pool. Detailed implementation manners
[0057] To facilitate understanding of the technical solutions of the embodiments of the present application, a brief introduction to the related technologies of the present application is first given as follows.
[0058] 1. Network Function Virtualization (NFV)
[0059] NFV refers to a technology that implements network functions (such as routing, firewall, and load balancing) that need to be implemented on dedicated hardware devices (such as dedicated routers and firewall hardware) in a software manner. For example, currently, multiple software with different functions can be carried by general-purpose hardware such as x86 and virtualization technologies to implement different functions. In this way, the cost of equipment can be reduced by carrying software with multiple functions on the same hardware device.
[0060] NFV technology has the characteristics of software and hardware decoupling, computing virtualization, storage virtualization, and / or network virtualization. Among them, software and hardware decoupling is also called hierarchical decoupling. For example, through the virtualization of computing resources, storage resources, and / or network resources, the upper-layer NFV software is decoupled from the lower-layer general-purpose hardware. Computing virtualization refers to the virtualization of the access and management of computing resources, providing a standard input / output interface for computing resources; through computing virtualization, multiple virtual machines can be virtualized and run on a physical machine, thereby improving the utilization rate of computer hardware resources; the above-mentioned computing resources include but are not limited to: central processing unit (CPU) resources, memory resources. Storage virtualization refers to the virtualization of storage resources of different storage devices, shielding the differences in the capabilities and interface protocols of storage devices, and converting various storage resources into uniformly managed storage resources. Network virtualization refers to providing layer-2 network functions for virtual machines on a physical machine through a virtual switch, realizing internal network interconnection and external network access of virtual machines.
[0061] As Figure 1 shown, it is a schematic diagram of the architecture of NFV provided by an embodiment of the present application. As Figure 1 shown, the NFV system architecture includes: network function virtualization infrastructure (NFVI), virtualized infrastructure manager (VIM), physical infrastructure management (PIM), container infrastructure service management (CISM), data plane of the container cluster (container infrastructure service, CIS), VNF management module (virtual network function manager, VNFM), container cluster life cycle management (CIS cluster management, CCM), and network functions virtualisation orchestrator (NFVO), virtual machine (Virtual Machine, VM), and a guest operating system (guest OS) is deployed in the VM.
[0062] Among them, NFVI includes the hardware and software required by the NFV system and can provide a running environment for VNF. Combining Figure 1, the NFVI includes a hardware layer and a virtualization layer. Among them, the hardware layer includes hardware devices that provide computing resource capabilities, network resource capabilities, and / or storage resource capabilities. The virtualization layer is used to virtualize hardware resources to form virtual resources. For example, virtualize the computing resources of the hardware into virtual computing resources, virtualize the storage resources of the hardware into virtual storage resources, and virtualize the network resources of the hardware into virtual network resources. Optionally, the process of virtualizing hardware resources can be implemented by a hypervisor.
[0063] The VIM can implement functions such as resource discovery, management and allocation of virtual resources, and fault handling, and is usually set up in the infrastructure site. The VIM can comprehensively manage the virtualization infrastructure and provide stable and reliable virtual resources for the VNF.
[0064] The PIM is used to manage underlying physical computing, network, storage and other hardware resources, and provide guarantee and management of physical resources for the virtualization layer and the VNF.
[0065] The CISM can implement functions such as resource discovery, management and scheduling of container objects, and is usually also set up in the infrastructure site. The CISM can provide infrastructure-level management support for containerized VNFs.
[0066] The CIS is the part in the container cluster that actually bears the business operation. It cooperates with the CISM to implement the running environment of the containerized VNF, and can run corresponding services in a virtualization environment (also called a virtual machine) or physical hardware (also called a bare machine).
[0067] The VNFM is used to manage the life cycle (instantiation, configuration, shutdown, etc.) of the VNF. For example, operations such as instantiation, configuration, and shutdown of the VNF.
[0068] The CCM is used to manage the life cycle of the container cluster; for example, it can implement the distribution of the container cluster management plane and the container cluster data plane.
[0069] The NFVO is used to orchestrate and manage the NFV architecture. For example, it realizes the deployment, configuration, management, and coordination of the VNF.
[0070] The operations support system (OSS) and the business support system (BSS) are used for the business operation and management of telecom operators. For example, they implement various functions such as customer management, billing, order processing, and network management, and are the core management systems of telecom operators.
[0071] The element management system (EMS) is used to manage network devices or VNF instances, such as managing the performance, faults, and configurations of network devices or VNF instances.
[0072] 2. DPU
[0073] The DPU is a processor designed for data centers. The DPU can offload infrastructure functions such as networking, storage, and security from the CPU for dedicated acceleration processing, thereby releasing the resources of the CPU and improving the performance and efficiency of the entire data center.
[0074] Such as Figure 2 shown, it is a comparison schematic diagram of a basic network card, a first-generation intelligent network card, and a DPU intelligent network card.
[0075] Among them, the basic network card includes: a peripheral component interconnect express (PCIe) bus, a host interface, a network interface, and a network port, which can provide a basic capacity of 2x10G bandwidth and has weak hardware offloading capabilities. The basic network card supports checksum, large receive offload (LRO) / large send offload (LSO), supports single root I / O virtualization (SRIOV), and supports limited multi-queuing.
[0076] The first-generation intelligent network card includes: a PCIe bus, a host interface, a network interface, and a network port, and can also integrate network lossless requirements. The first-generation intelligent network card has rich hardware offloading capabilities, including Match-Action flow table type service offloading capabilities (OVS Fastpath offloading), Virtio hardware acceleration, Remote Direct Memory Access (RDMA) over Converged Ethernet (RoCE), RoCEv2, NVMe over Transmission Control Protocol (NVMe over TCP), NVMe over RoCEv2, as well as lossless network capabilities (such as Priority Flow Control (PFC), Explicit Congestion Notification (ECN), Enhanced Transmission Selection (ETS)) and security-related data plane offloading.
[0077] The DPU includes: a PCIe bus, a host interface, a network interface, a network port, as well as a hardware offloading part, Arm, Intel, and RISC-V. The DPU has more abundant hardware offloading capabilities, such as flow table type service offloading capabilities (Open vSwitch (OVS) full offloading), Virtio hardware acceleration, RoCE, RoCEv2, NVMe over TCP, NVMe over RoCEv2, Virtio-blk, NVMe of with Target, data compression and decompression, lossless network capabilities (PFC, ECN, ETS, etc.), PCIe Root Complex / Endpoint, and full offloading of security-related functions (data plane + control plane).
[0078] 3. Peer-to-peer interconnected heterogeneous computing architecture
[0079] Current data centers usually use the CPU as the core to hierarchically and categorically manage hardware resources, and existing standard specifications mainly manage this type of architecture. In the peer-to-peer interconnected heterogeneous computing architecture, a unified high-speed interconnect bus is used to connect various computing resources. However, there is no solution in the current standard specifications for unified management of resources in the peer-to-peer interconnected heterogeneous computing architecture, and resources cannot be fully utilized, resulting in low resource utilization. As Figure 3 shown, it is a comparison schematic diagram of the current server stacking architecture and the peer-to-peer interconnected heterogeneous computing architecture.
[0080] Among them, the current server stacking architecture includes: computing nodes, network nodes, and storage nodes. Among them, the computing nodes include a Graphics Processing Unit (GPU), a solid state disk (SSD), a CPU, a network card, and memory, which are connected through a PCIe bus; Exemplarily, the SSD, GPU, network card, and memory are all connected to the CPU through PCIe. The storage nodes include a network card, an SSD, a CPU, and memory, which are connected through a PCIe bus; Exemplarily, the SSD, network card, and inner layer are all connected to the CPU through PCIe. The computing nodes and the storage nodes are connected through an Ethernet network and network nodes.
[0081] In the peer-to-peer interconnected heterogeneous computing architecture, the overall architecture is a super point of delivery (Super POD) (also known as a super-large-scale computing cluster). The super-large-scale computing cluster includes: a heterogeneous computing pool, a memory pool, a cache pool, and a unified high-speed interconnect bus network. Among them, the heterogeneous computing pool includes multiple processors such as CPUs, NPUs, GPUs, and xPUs. These processors are connected through a unified interconnect bus to form a heterogeneous computing pool, which can better support different types of computing tasks and improve computing efficiency and flexibility. The memory pool includes multiple MEMs (memories), which are connected through a unified interconnect bus to form a memory pool to achieve efficient utilization of memory resources. The cache pool includes SCM (storage-class memory), which is connected through a unified interconnect bus to form a cache pool to provide a high-speed cache for the system and improve data access speed. The storage pool includes multiple storage devices such as SSDs, HDDs (mechanical hard disks), and optical storage, which are connected through a unified interconnect bus to form a storage pool to achieve the collaborative work of different storage media and meet different data storage requirements. The unified high-speed interconnect bus network is used to connect the heterogeneous computing pool, the memory pool, the cache pool, and the storage pool to achieve high-speed and efficient interconnectivity between various components and improve the performance and scalability of the entire system.
[0082] However, the current standard specifications lack a solution for unified management of resources in the peer-to-peer interconnected heterogeneous computing architecture, and cannot fully utilize resources, resulting in low resource utilization. For example, the relevant specifications or standards do not support multi-cluster physical isolation in the peer-to-peer interconnected heterogeneous computing architecture, and cannot enhance isolation reliability; the relevant specifications or standards do not support multi-cluster logical isolation in the peer-to-peer interconnected heterogeneous computing architecture, and it is difficult to improve the resource utilization rate of resources in the peer-to-peer interconnected heterogeneous computing architecture; the relevant specifications or standards do not support the location affinity deployment of VNFs in the peer-to-peer interconnected heterogeneous computing architecture. For example, it is impossible to achieve non-cross-frame use of resources in the peer-to-peer interconnected heterogeneous computing architecture for VNFs, and it is difficult to achieve the best latency performance.
[0083] The above has described in detail the technologies involved in this application.
[0084] As described above, current data centers usually take the CPU as the core and manage hardware resources in a hierarchical and classified manner. Existing standard specifications mainly manage this type of architecture. In a peer-to-peer interconnected heterogeneous computing architecture, a unified high-speed interconnect bus connects multiple computing resources. However, there is a lack of a solution for unified management of resources in the peer-to-peer interconnected heterogeneous computing architecture in current standard specifications, which cannot fully utilize resources, resulting in low resource utilization and inability to guarantee. Therefore, how to uniformly manage resources in the peer-to-peer interconnected heterogeneous computing architecture and improve resource utilization has become an urgent technical problem to be solved.
[0085] To solve the above technical problem, this application provides a method for creating a resource pool. After the first functional network element receives a message for creating a device resource pool, it creates a device resource pool based on at least one device in the device resource pool indicated in the message. The created device resource pool includes the resources of each device. In this way, the first functional network element can manage the resources in the peer-to-peer interconnected heterogeneous computing architecture in a device resource pooling manner based on the method provided in the embodiments of this application, so that the resources in the peer-to-peer interconnected heterogeneous computing architecture can be uniformly managed and resource utilization can be improved.
[0086] The following will give a specific elaboration of the solution provided in the embodiments of this application. Among them, before introducing the embodiments of this application, the following points are explained first.
[0087] In the description of this application, unless otherwise specified, " / " means that the objects associated before and after are in an "or" relationship. For example, A / B can represent A or B; "and / or" in this application is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. Among them, A and B can be singular or plural.
[0088] In the description of this application, A sending a message to B can be understood as A sending a message to B through one or more network elements.
[0089] In the description of this application, unless otherwise specified, "multiple" means two or more than two. "At least one (item)" or its similar expression means any combination of these items, including any combination of single item (item) or plural items (items). For example, at least one (item) of a, b, and (or) c can represent: a, b, c, a - b, a - c, b - c, or a - b - c, where a, b, and c can be single or multiple.
[0090] In addition, for the convenience of clearly describing the technical solutions of the embodiments of the present application, in the embodiments of the present application, terms such as "first" and "second" are used to distinguish identical or similar items with basically the same functions and roles. Those skilled in the art can understand that terms such as "first" and "second" do not limit the quantity and execution order, and "first", "second", etc. do not necessarily mean different.
[0091] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner for easy understanding.
[0092] It can be understood that the "embodiments" mentioned throughout the specification mean that specific features, structures, or characteristics related to the embodiments are included in at least one embodiment of the present application. Therefore, the various embodiments throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics can be combined in one or more embodiments in any suitable manner. It can be understood that in the various embodiments of the present application, the magnitudes of the sequence numbers of the various processes do not mean the order of execution, and the execution order of the various processes should be determined according to their functions and internal logics, and should not constitute any limitation to the implementation process of the embodiments of the present application.
[0093] It can be understood that in the present application, "when..." and "if" both refer to corresponding processing under certain objective circumstances, and do not limit time, nor require a judgment action during implementation, nor mean the existence of other limitations.
[0094] It can be understood that some optional features in the embodiments of the present application can, in some scenarios, be implemented independently without relying on other features, such as the current solution they are based on, to solve corresponding technical problems and achieve corresponding effects. In some scenarios, they can also be combined with other features according to requirements. Correspondingly, the devices given in the embodiments of the present application can also implement these features or functions accordingly, which will not be elaborated here.
[0095] In this application, unless otherwise specified, the same or similar parts between various embodiments can be referred to each other. In each embodiment of this application, as well as in each implementation manner / implementation method / realization method in each embodiment, if there is no special specification and logical conflict, the terms and / or descriptions between different embodiments, as well as between each implementation manner / implementation method / realization method in each embodiment, are consistent and can be cited mutually. The technical features in different embodiments, as well as in each implementation manner / implementation method / realization method in each embodiment, can be combined to form new embodiments, implementation manners, implementation methods, or realization methods according to their inherent logical relationships. The implementation manners of this application described below do not constitute a limitation on the protection scope of this application.
[0096] The method for creating a resource pool provided by an embodiment of this application can be applied to a communication system as shown in Figure 4 shown, as Figure 4 shown, the communication system includes a first functional entity 401 and a network function virtualization orchestrator 402. Among them, the network function virtualization orchestrator 402 is used to call the interface of the first functional entity to create a device resource pool. Among them, the device resource pool includes a device resource pool identifier, device information in the device resource pool, etc., and this application does not make any limitations on this. The first functional entity creates a device resource pool based on the call of the network function virtualization orchestrator 402. Optionally, the network function virtualization orchestrator 402 can also call the first functional entity to create a device pool group, and the device pool group includes a primary device resource pool and a standby device resource pool. Optionally, the first functional entity can be a VIM and / or a PIM, and this application does not make any limitations on this.
[0097] In some embodiments, as Figure 4 shown, the communication system further includes an NFV infrastructure layer 403, and the NFV infrastructure layer 403 is used to report the hardware information of device resources to the first functional entity, such as device labels, device types, topological location information, quantity, core capabilities (such as computing resources, CPU cores / memory, network bandwidth / VF quantity, storage IOPS / VF quantity). Among them, the device type includes a new pooling type, which is used to indicate that the resources of this device can be used for the management of pooled resources, and after the resources of this device are pooled, they can be exclusively occupied by a cluster or shared by multiple clusters.
[0098] In still other embodiments, as Figure 4 shown, the communication system further includes a container cluster lifecycle management 404 and a container infrastructure service management 405. The container cluster lifecycle management 404, the container infrastructure service management 405, the network function virtualization orchestrator 402, and the first functional entity can interact with each other for container cluster management of device resource pooling to create a container cluster and allocate available resources for the container cluster from the device resource pool.
[0099] In some other embodiments, such as Figure 4 shown, the communication system further includes a VNF management module 406. The VNF management module 406 can interact with the container infrastructure service management 405 and the first functional entity to perform VNF instantiation management for device resource pooling, so as to create a VNF instance and allocate available resources for the VNF instance from the device resource pool.
[0100] The technical solution of the embodiment of the present application can be used in various communication systems. The communication system can be a third generation partnership project (3GPP) communication system, for example, a fourth generation (4G) system such as a long term evolution (LTE) system, a fifth generation (5G) system such as a new radio (NR) system, a system of hybrid networking of LTE and 5G, a communication and sensing integrated system, a non-terrestrial network (NTN), a device-to-device (D2D) communication system, a vehicle to everything (V2X) communication system, a machine-type communication (MTC) system, an internet of things (IoT) system, or other future communication systems. The communication system can also be a non-3GPP communication system, without limitation.
[0101] Among them, the above-mentioned communication systems applicable to the present application are only examples, and the communication systems applicable to the present application are not limited thereto. The communication system provided by the present application does not impose any limitation on the solution of the present application. It is uniformly stated here and will not be repeated hereinafter.
[0102] In a possible implementation manner, Figure 5 is a schematic diagram of the composition of a device 500 for creating a resource pool provided by an embodiment of the present application. Figure 4 The network element entities or devices shown can all adopt Figure 5 the composition structure shown, or include Figure 5 the components shown; or, Figure 4 the components (such as chips) in the network element entities or devices shown can all adopt Figure 5 the composition structure shown, or include Figure 5 the components shown. It can be understood that the device 500 for creating a resource pool includes means in the necessary forms such as modules, units, elements, circuits, or interfaces, which are appropriately configured together to execute the present solution.
[0103] As shown Figure 5 in FIG. 500, the apparatus for creating a resource pool includes one or more processors 501, which are used to implement the processing and determination processes executed by each device in the following embodiments. The processor 501 can be a general-purpose processor or a dedicated processor, etc. For example, it can be a baseband processor or a central processing unit. The baseband processor can be used to process communication protocols and communication data, and the central processing unit can be used to control the apparatus for creating a resource pool (such as a RAN node, a terminal, or a chip, etc.), execute software programs, and process the data of software programs.
[0104] Optionally, in one design, the processor 501 may include a program 503 (sometimes also referred to as code or instructions), and the program 503 can be run on the processor 501, so that the apparatus 500 for creating a resource pool executes the methods described in the following embodiments.
[0105] Optionally, the apparatus 500 for creating a resource pool may include one or more memories 502, on which there is a program 504 (sometimes also referred to as code or instructions), and the program 504 can be run on the processor 501, so that the apparatus 500 for creating a resource pool executes the methods described in the following method embodiments.
[0106] Optionally, the processor 501 and / or the memory 502 may include AI modules 507 and 508, and the above AI modules are used to implement AI-related functions. The above AI modules can be implemented in a software, hardware, or software-hardware combination manner. For example, the AI module may include a Radio Access Network Intelligence Controller (RIC) module. For example, the AI module can be a near-real-time RIC or a non-real-time RIC.
[0107] Optionally, data may also be stored in the processor 501 and / or the memory 502. The processor and the memory can be provided separately or integrated together.
[0108] Optionally, the apparatus 500 for creating a resource pool may further include a transceiver 505, which is used to implement the transceiver processes executed by each device in the following embodiments. The processor 501 is sometimes also referred to as a processing unit and controls the apparatus for creating a resource pool (such as a RAN node or a terminal). The transceiver 505 is sometimes also referred to as a transceiver unit, a transceiver, a transceiver circuit, or a transceiver, etc., and the apparatus 500 for creating a resource pool may further include an antenna 506.
[0109] It should be noted that Figure 5The constituent structure shown does not constitute a limitation on the device for creating a resource pool. Except Figure 5 for the components shown, the device for creating a resource pool may include more or fewer components than those shown, or combine certain components, or have different component arrangements.
[0110] In the embodiments of the present application, the chip system may be composed of chips, or may include chips and other discrete devices.
[0111] In addition, actions, terms, etc. involved among the embodiments of the present application can be referred to each other without limitation. In the embodiments of the present application, the message names or parameter names in the messages for interaction between various devices are only examples, and other names can also be adopted in specific implementations without limitation.
[0112] Next, in combination with Figures 1 to 5 , the method for creating a resource pool provided by the embodiments of the present application will be described.
[0113] It should be noted that in the following embodiments of the present application, the message names, parameter names, or information names, etc. between various network elements are only examples, and other names can also be used in other embodiments. The method for creating a resource pool provided by the present application does not make specific limitations thereto.
[0114] It can be understood that in the embodiments of the present application, various network elements may execute some or all of the steps in the embodiments of the present application. These steps or operations are only examples, and the embodiments of the present application may also execute other operations or various deformations of the operations. In addition, the various steps may be executed in different orders presented in the embodiments of the present application, and it is possible not to execute all the operations in the embodiments of the present application.
[0115] It can be understood that in the present application, various network elements are taken as examples of the execution subjects of the interaction schematic, but the present application does not limit the execution subjects of the interaction schematic. For example, the methods executed by network elements in the present application can also be executed by modules applied to the network elements (such as chips, chip systems, or processors), and can also be implemented by logical nodes, logical modules, or software that can implement all or part of the functions of network elements. The embodiments of the present application do not make specific limitations thereto.
[0116] Next, the functions and actions executed by each device in the communication system provided by the embodiments of the present application will be introduced. As Figure 6 shown, the method for creating a resource pool includes the following steps:
[0117] Step 601, the network function virtualization orchestrator sends a first message to the first functional entity. Correspondingly, the first functional entity receives the first message.
[0118] Among them, the first message is used to indicate at least one device in the device resource pool to be created; each device in the at least one device includes resources for different types of services in the communication network. Optionally, the at least one device is a device in a peer-to-peer interconnected heterogeneous computing architecture.
[0119] As an example, the at least one device is a DPU, or the at least one device can be a memory device, a neural network processing unit (NPU) device, a GPU device, etc., which include resources for different types of services in the communication network. This application does not make any limitations in this regard. The following mainly takes the at least one device being a DPU as an example for illustration.
[0120] In some embodiments, the first message includes: an identifier of the device resource pool, identifiers of at least one device. In addition, the first message can also be used to indicate the resource allocation mode of the device resource pool. Optionally, the resource allocation mode of the device resource pool includes: a device resource pool sharing mode or a device resource pool exclusive mode, where the device resource pool sharing mode indicates that the resources in the device resource pool are allowed to be shared by multiple functional entities, and the device resource pool exclusive mode indicates that the resources in the device resource pool are allowed to be exclusively used by one functional entity.
[0121] In other words, the first message can indicate the device resource pool to be created and the devices included in the device resource pool through the identifier of the device resource pool and the identifiers of at least one device in the device resource pool. In addition, the first message can also indicate the resource allocation mode of the device resource pool. Taking the DPU as an example, when the first functional entity creates a DPU resource pool, it records the resource allocation method of the DPU resource pool, and then allocates the corresponding DPU resource pool to the container cluster or virtual network function (VNF) instance according to the resource allocation method required by the container cluster or VNF instance when allocating DPU resources subsequently.
[0122] Optionally, the resources for different types of services in the communication network include at least two of the following: computing resources, storage resources, or network service resources. In other words, the resources of the device include at least two of computing resources, storage resources, or network service resources.
[0123] Step 602: The first functional entity creates a device resource pool based on the first message.
[0124] Among them, the device resource pool includes the resources of each device.
[0125] In some embodiments, the process of creating a device resource pool by a first functional entity includes: the first functional entity records the devices and device resources in the device resource pool, and virtualizes the above-mentioned device resources to complete the creation of the device resource pool.
[0126] Taking at least one device as a DPU as an example, the process of creating a device resource pool in step 601 and step 602 can be implemented as follows: the network function virtualization orchestrator queries the DPU device information from the first functional entity in advance, and determines the DPU resource pool to be created based on the DPU device information. For example, the network function virtualization orchestrator calls the interface in the first functional entity for querying DPU devices to query the DPU device information. The network function virtualization orchestrator calls the interface in the first functional entity for creating a DPU resource pool based on the DPU device information to create a DPU resource pool. For example, the network function virtualization orchestrator sends a first message to the first functional entity, indicating the relevant information of the created DPU resource pool.
[0127] When the first message includes the identifier of the device resource pool, the identifiers of at least one device, and / or the resource allocation mode of the device resource pool, the network function virtualization orchestrator indicates the identifier of the DPU resource pool, the list of DPUs included in the DPU resource pool, and / or the allocation mode of the DPU resource pool to the first functional entity. The first functional entity records the DPU devices, DPU resources, and / or the allocation mode of the DPU resource pool in the DPU resource pool, and virtualizes the above-mentioned DPU resources to complete the creation of the DPU resource pool.
[0128] In some embodiments, after the first functional entity creates a device resource pool, it records the information of the created device resource pool (such as the device resource pool identifier, the devices in the device resource pool, the resources of each device, the allocation model of the device resource pool) in the database, and sends the information of the created device resource pool to the network function virtualization orchestrator. The network function virtualization orchestrator also records the information of the device resource pool in its own database.
[0129] In the embodiments of the present application, after the first functional network element receives the message for creating a device resource pool, it creates a device resource pool based on at least one device indicated in the message, and the created device resource pool includes the resources of each device. In this way, the first functional network element can manage the pooling of device resources based on the method provided in the embodiments of the present application, so that the resources of at least one device in the device resource pool can be uniformly managed, and the utilization rate of the device resources in the device resource pool is improved.
[0130] When the devices in the device resource pool are DPU devices and the resources are DPU resources, the first functional network element can manage DPU resource pooling based on the method provided in the embodiments of the present application, so that the resources of at least one DPU in the DPU resource pool can be uniformly managed, improving the utilization rate of DPU resources in the DPU resource pool.
[0131] In the embodiments of the present application, after receiving the message for creating a device resource pool, the first functional network element creates a device resource pool based on at least one device in the device resource pool indicated in the message, and the created device resource pool includes the resources of each device. In this way, the first functional network element can manage the resources in the peer-to-peer interconnected heterogeneous computing architecture in the form of device resource pooling based on the method provided in the embodiments of the present application, so that the resources in the peer-to-peer interconnected heterogeneous computing architecture can be uniformly managed, improving the resource utilization rate.
[0132] As Figure 7 shown, it is a method for creating a device resource pool group provided by the embodiments of the present application. As Figure 7 shown, the method includes:
[0133] Step 701, the network function virtualization orchestrator sends a second message to the first functional entity. Correspondingly, the first functional entity receives the second message.
[0134] Among them, the second message is used to indicate at least two device resource pools in the device resource pool group to be created.
[0135] In some embodiments, the second message includes the identifier of the device resource pool group. Optionally, the second message includes the identifiers of at least two device resource pools, or the identifiers of the devices in at least two device resource pools. In other words, the network function virtualization orchestrator can indicate the device resource pools in the device resource pool group to the first functional entity through the identifiers of the device resource pools, so that the first functional entity creates a device resource pool group based on the device resource pools in the device resource pool group. Or, the network function virtualization orchestrator can indicate the devices in the device resource pool group to the first functional entity through the identifiers of the devices in the device resource pools, so that the first functional entity creates a device resource pool group based on the devices in the device resource pool group.
[0136] In a possible implementation, the second message is further used to indicate the resource allocation mode of the device resource pool group. Optionally, the resource allocation mode of the device resource pool group includes: the device resource pool group sharing mode or the device resource pool group exclusive mode. Among them, the device resource pool group sharing mode indicates that the resources in the device resource pool group are allowed to be shared by multiple functional entities, and the device resource pool group exclusive mode indicates that the resources in the device resource pool group are allowed to be exclusively used by one functional entity. Taking the device as a DPU device as an example, the first functional entity records the resource allocation method of the DPU resource pool group when creating the DPU resource pool group, and then allocates the corresponding DPU resource pool group for the container cluster or VNF instance according to the resource allocation method required by the container cluster or VNF instance when allocating DPU resources for the container cluster or VNF instance subsequently.
[0137] Step 702, the first functional entity creates a device resource pool group based on the second message.
[0138] Among them, the device resource pool group includes the resources in at least two device resource pools.
[0139] Taking at least one device as a DPU as an example, the process of creating a device resource pool group in the above steps 701 and 702 can be implemented as follows: The network function virtualization orchestrator can query the DPU device information from the first functional entity in advance and determine the DPU resource pool group to be created based on the DPU device information. For example, the network function virtualization orchestrator calls the interface in the first functional entity for querying the DPU device to query the DPU device information. The network function virtualization orchestrator calls the interface in the first functional entity for creating the DPU resource pool group based on the DPU device information to create the DPU resource pool group. For example, the network function virtualization orchestrator sends a first message to the first functional entity to indicate the relevant information of the created DPU resource pool group.
[0140] When the first message includes the identifier of the device resource pool group, the identifiers of at least one device resource pool (or the identifiers of the devices in the device resource pool), and / or the resource allocation mode of the device resource pool, the network function virtualization orchestrator indicates the identifier of the DPU resource pool group, the list of device resource pools included in the DPU resource pool group, and / or the allocation mode of the DPU resource pool to the first functional entity. The first functional entity records the device resource pools, DPU resources, and / or the allocation mode of the DPU resource pool in the DPU resource pool, and virtualizes the above DPU resources to complete the creation of the DPU resource pool group.
[0141] In the embodiment of the present application, after the first functional network element receives the message for creating a device resource pool group, it creates a device resource pool group based on at least one device resource pool in the device resource pool group indicated in the message. The created device resource pool group includes the resources of each device resource pool. In this way, when at least one device is a DPU, the first functional network element can manage the DPU resource pool group based on the method provided in the embodiment of the present application, so that the DPU resources in the DPU resource pool group can be uniformly managed, and the utilization rate of the DPU resources in the DPU resource pool group can be improved. After creating the device resource pool group, if a subsequent VNF instance, or a container cluster, etc. is bound to the created device resource pool group, load balancing and high reliability can be achieved through the binding of the device resource pool group. For example, if a VNF instance is bound to a device resource pool group, when allocating resources for the VNF instance, resources can be evenly allocated to the VNF instance from multiple resource pools of the device resource pool group, thereby achieving load balancing. When the VNF instance uses the resources in the device resource pool group, if a device resource pool fails, the VNF instance can be switched to another device resource pool, thereby achieving high reliability. It should be noted that similar effects can also be achieved for a container cluster and a device resource pool group, which will not be elaborated in this application.
[0142] In some embodiments, in combination with Figure 6 , as Figure 8 shown, before creating the device resource pool based on the first message in step 602 above, the first functional entity may pre-obtain the resources of each device, and this process may be specifically implemented through the following step 801.
[0143] Step 801: The NFV infrastructure layer sends a third message to the first functional entity. Correspondingly, the first functional entity receives the third message from the NFV infrastructure layer.
[0144] Among them, the third message is used to indicate the resources of at least one device.
[0145] In a possible implementation, the third message is further used to indicate that the resources of at least one device support the establishment of a device resource pool. In this way, the first functional entity can create a device resource pool based on the device resources that support the establishment of the device resource pool. Thus, it is ensured that the resources in the device resource pool are all available resources.
[0146] In some embodiments, the first functional entity may manage DPU devices through a cloud platform. For example, the first functional entity may deploy proxy nodes in each DPU device through the cloud platform to manage each DPU device through the proxy nodes. When the first functional entity needs to obtain the resource information of each DPU device, it may send an indication message to the proxy node to instruct the proxy node to report the resource information of the corresponding DPU device. The proxy node sends a third message to the first functional entity based on the indication of the first functional entity to indicate the resource information of the DPU device.
[0147] As an example, the resource information of the DPU device includes at least one of the following: device annotation, device type, topological location information, quantity, core capabilities (such as computing resources, CPU cores / memory, network bandwidth / virtual function (VF) quantity, storage input / output operations per second (IOPS) / VF quantity). The device type includes a new pooling type, which is used to indicate that the resources of the device can be used for the management of pooled resources. After the resources of the device are pooled, they can be exclusive to a cluster or shared by multiple clusters.
[0148] As an example, Figure 9 The figure shows a schematic diagram of creating a DPU resource pool and a DPU resource pool group based on DPU hardware resources provided by an embodiment of the present application. As Figure 9 shown, DPU#11, DPU#12, DPU#13, DPU#14, DPU#15, and DPU#16 are deployed in rack #1. DPU#21, DPU#22, DPU#23, DPU#24, DPU#25, and DPU#26 are deployed in rack #2. The DPU in rack #1 and rack #2 are physically isolated.
[0149] When creating a DPU resource pool, DPU#11 and DPU#21 are used as a resource pool, denoted as DPU resource pool #1; DPU#12 and DPU#22 are used as a resource pool, denoted as DPU resource pool #2; DPU#13 and DPU#23 are used as a resource pool, denoted as DPU resource pool #3; DPU#14 and DPU#24 are used as a resource pool, denoted as DPU resource pool #4; DPU#15 is used as a resource pool, denoted as DPU resource pool #5; DPU#16 is used as a resource pool, denoted as DPU resource pool #6.
[0150] When creating a DPU resource pool group, DPU resource pool #1 and DPU resource pool #2 are taken as a DPU resource pool group, denoted as DPU resource pool group #1; DPU resource pool #3 and DPU resource pool #4 are taken as a DPU resource pool group, denoted as DPU resource pool group #2; DPU resource pool #5 and DPU resource pool #6 are taken as a DPU resource pool group, denoted as DPU resource pool group #3.
[0151] When deploying a container cluster (such as a K8S cluster), container cluster #1 can be bound to DPU resource pool group #1, and container cluster #1 uses the DPU resources in DPU resource pool group #1. Container clusters #2 and #3 are bound to DPU resource pool group #2, and container clusters #2 and #3 use the DPU resources in DPU resource pool group #2. Since container cluster #1 is bound to a different DPU resource pool group from container clusters #2 and #3, container cluster #1 is physically isolated from container clusters #2 and #3, which can enhance the isolation reliability of container cluster #1. Although both container clusters #2 and #3 are bound to DPU resource pool group #2, when allocating DPU resources for container clusters #2 and #3, different DPU resources can be allocated to them, thus achieving logical isolation between container clusters #2 and #3 and improving the utilization rate of DPU resources.
[0152] When deploying VNF instances, VNF instance #1 is bound to DPU resource pool group #1, and VNF instance #2 is bound to DPU resource pool group #3. Since the DPU resource pool group bound by VNF instance #1 is different from the DPU resource pool group bound by VNF instance #2, VNF instance #1 and VNF instance #2 are physically isolated. And VNF #2 is bound to DPU resource pool group #3, and the DPUs in DPU resource pool group #3 are DPUs in the same rack, so VNF #2 can achieve physically affinity deployment. Binding VNF instances to pool groups can also achieve load balancing and high reliability of VNF instances. For example, if VNF instance #1 is bound to DPU resource pool group #1, resources from DPU resource pool #1 and DPU resource pool #2 can be evenly allocated to VNF instance #1 to achieve load balancing. When VNF instance #1 is bound to DPU resource pool group #1, in the case of a failure of one DPU resource pool, resources can be provided for VNF instance #1 through the other DPU resource pool. For example, in the case of a failure of DPU resource pool #1, resources from DPU resource pool #2 are used to provide resources for VNF instance #1, thus achieving high reliability. It should be noted that similar effects can also be achieved for container clusters and DPU resource pool groups, which will not be elaborated in this application.
[0153] The above combination Figure 9An exemplary illustration of the architectures of the resource pools and resource pool groups created in the embodiments of the present application is provided. It can be seen from Figure 9 that after creating the resource pools and resource pool groups, the container clusters and / or VNF instances can be bound to the DPU resource pools or DPU resource pool groups, so that the container clusters and / or VNF instances can use the resources in the bound DPU resource pools or DPU resource pool groups.
[0154] It should be noted that the binding of the container clusters and / or VNF instances in the embodiments of the present application to the DPU resource pools or DPU resource pool groups can also be understood as allocating the DPU resource pools or DPU resource pool groups to the container clusters and / or VNF instances, or the DPU resource pools or DPU resource pool groups corresponding to the container clusters and / or VNF instances. The present application does not limit this.
[0155] Next, in combination with Figure 6 , as Figure 10 shown, the process of resource management for the virtualized entity clusters based on the device resource pools provided in the embodiments of the present application is described. As Figure 10 shown, this process includes:
[0156] Step 1001, the network function virtualization orchestrator sends a fourth message to the first functional entity. Correspondingly, the first functional entity receives the fourth message from the network function virtualization orchestrator.
[0157] Among them, the fourth message is used to indicate the first device resource pool allocated for the first virtualized entity cluster; the first virtualized entity cluster is used to provide services in the communication network.
[0158] As an example, the virtualized entity cluster in the embodiments of the present application can be a container cluster, such as a K8S container cluster, or other clusters that use DPU resources. The present application does not limit this. In the embodiments of the present application, the virtualized entity cluster is taken as an example of a container cluster for description.
[0159] When the first virtualized entity cluster is a container cluster, the first functional entity determines the DPU resource pool (or DPU resource pool group) bound to the container cluster based on the fourth message, and determines whether the container cluster shares the DPU resource pool or exclusively occupies the DPU resource pool. When the container cluster uses DPU resources subsequently, the first functional entity can allocate the DPU resources in the DPU resource pool bound to the container cluster for the container cluster to use.
[0160] Optionally, the fourth message is further used to indicate the first resources allocated to the first virtualized entity cluster in the first device resource pool. In other words, the fourth message can also indicate which resources in the DPU resource pool are allocated to the container cluster. When the container cluster uses the DPU resources subsequently, the container cluster can use the first resources allocated to the container cluster in the DPU resource pool bound to it.
[0161] In some embodiments, when the resource allocation mode of the device resource pool is the device resource pool sharing mode, the fourth message is further used to indicate that the first virtualized entity cluster shares the resources in the first device resource pool with other virtualized entity clusters. In other words, when the container cluster can share the DPU resource pool with other container clusters, the network function virtualization orchestrator binds a DPU resource pool that supports the sharing mode to the container cluster, and indicates the DPU resource pool bound to the container cluster to the first functional entity through the fourth indication information.
[0162] In a possible implementation, when the resource allocation mode of the device resource pool is the device resource pool exclusive mode, the fourth message is further used to indicate that the first virtualized entity cluster exclusively occupies the resources in the first device resource pool. In other words, when the container cluster needs to exclusively occupy the DPU resource pool, the network function virtualization orchestrator binds a DPU resource pool that supports the exclusive mode to the container cluster, and indicates the DPU resource pool bound to the container cluster to the first functional entity through the fourth indication information.
[0163] Step 1002: The first functional entity determines that the resources in the first device resource pool are available resources for the first virtualized entity cluster.
[0164] In a possible implementation, when the first functional entity provides resources for the first virtualized entity cluster, it provides resources for the first virtualized entity cluster from the first device resource pool for the first virtualized entity cluster to use.
[0165] In some embodiments, combined with Figure 11 , taking the first virtualized entity cluster as a container cluster for resource pooling of the DPU device as an example, the process of container cluster management based on the DPU resource pool is described. As Figure 11 shown, this process includes:
[0166] Step 1101: The network function virtualization orchestrator sends a container cluster creation message to the container cluster lifecycle management. Correspondingly, the container cluster lifecycle management receives the container cluster creation message from the network function virtualization orchestrator.
[0167] In a possible implementation, the network function virtualization orchestrator determines the first DPU resource pool to which the first container cluster needs to be bound based on the resource requirements of the first container cluster and the available DPU resources in each DPU resource pool. In addition, the network function virtualization orchestrator determines the allocation policy for the first DPU resource pool bound by the first container cluster, that is, whether the first container cluster exclusively occupies the first DPU resource pool or shares the first DPU resource pool. The network function virtualization orchestrator determines the share of DPU resources in the first DPU resource pool that the first container cluster needs to occupy, such as the share of network resources (such as occupied bandwidth or VF) that the first container cluster needs to occupy, the share of storage resources (such as required IOPS) that the first container cluster needs to occupy, and the share of computing resources (such as the share of Agent resources, CPU, and memory) that the first container cluster needs to occupy. After that, the network function virtualization orchestrator sends a container cluster creation message to the container cluster lifecycle management, instructing the container cluster lifecycle management to create the first container cluster based on the above information such as the resource requirements and resource shares of the first container cluster.
[0168] Step 1102: The container cluster lifecycle management creates the first container cluster.
[0169] The container cluster lifecycle management creates the first container cluster and installs the container infrastructure service management. The container infrastructure service management records the relevant information about the first container cluster binding to the first DPU resource pool, such as the allocation policy for the first container cluster to use the first DPU resource pool and the resource shares allocated to the first container cluster in the first DPU resource pool.
[0170] It should be noted that the network function virtualization orchestrator can also update the DPU resource pool bound by the first container cluster. For example, when the resource requirements of the first container cluster change, or the DPU resource pool bound by the first container cluster cannot continue to provide DPU resources for the first container cluster, the network function virtualization orchestrator reallocates the DPU resource pool for the first container cluster and sends the update information about the reallocated DPU resource pool for the container cluster to the container cluster lifecycle management. The container cluster lifecycle management updates the relevant information about the DPU resource pool bound by the first container cluster recorded in the container infrastructure service management based on this update information.
[0171] Step 1103: The container cluster lifecycle management sends the DPU resource pool information bound by the first container cluster to the container infrastructure service management. Correspondingly, the container infrastructure service management receives the DPU resource pool information bound by the first container cluster from the container cluster lifecycle management.
[0172] Among them, the container infrastructure service management is the service management used to manage the above-mentioned first container cluster.
[0173] In some embodiments, the container infrastructure service management records information such as the DPU resource pool information of the first container cluster and the resource allocation policy of the DPU resource pool. Alternatively, the container infrastructure service management records information such as the DPU resource pool group information of the first container cluster and the resource allocation policy of the DPU resource pool group.
[0174] Step 1104: The network function virtualization orchestrator sends the DPU resource information of the first container to the first functional entity. Correspondingly, the first functional entity receives the DPU resource information of the first container cluster from the network function virtualization orchestrator.
[0175] The DPU resource information of the first container cluster includes, but is not limited to, at least one of the following: information on the DPU resource pool or DPU resource pool group bound to the first container cluster, the share of DPU resources allocated to the first container cluster, and the container infrastructure service management to which the first container cluster belongs.
[0176] Step 1105: The first functional entity records the DPU resource information of the first container cluster.
[0177] After that, the first container cluster can use the DPU resources in its bound DPU resource pool. Optionally, the first functional entity also records the container infrastructure service management to which the first container cluster belongs.
[0178] Optionally, in the case where the network function virtualization orchestrator updates the DPU resource pool bound to the first container cluster, the network function virtualization orchestrator can also directly send the updated information on the DPU resource pool bound to the first container cluster to the first functional entity. The first functional entity updates the information on the DPU resource pool bound to the first container cluster based on this message.
[0179] It should be noted that in the embodiments of the present application, multiple container clusters can be created based on the above steps 1101 to 1105. The present application does not make any limitations in this regard.
[0180] In a scenario where the DPU resource pools used by multiple container clusters need physical isolation, the allocation mode of the DPU pools bound to each container cluster can be set to the exclusive mode, and each container cluster exclusively occupies the DPU resource pool. If a new container binds to a DPU resource pool that has been exclusively occupied by a container cluster during the subsequent process of creating a container, an error indicating that the container cluster binds to the DPU resource pool incorrectly is prompted to avoid duplicate binding of the DPU resource pool, thereby achieving physical isolation of each container cluster, and each container cluster uses an independent DPU resource pool.
[0181] In scenarios where logical isolation is required for using DPU resource pools in multiple container clusters, the allocation mode of the DPU pools bound to each container cluster can be set to the shared mode. Multiple container clusters can share a DPU resource pool, and different resources on the DPU resource pool can be logically allocated to different containers through system management methods and allocation policies (for example, multiple container clusters use different resources in the DPU resource pool respectively, or use the resources in the DPU resource pool at different time periods), so as to logically distinguish and isolate the DPU resources used by different container clusters, achieve the effect of logical isolation, and improve the utilization rate of the resources of the DPU pool.
[0182] Next, in conjunction with Figure 6 , as Figure 12 shown, the process of resource management for VNF instances based on a device resource pool provided by an embodiment of the present application will be described. As Figure 12 shown, this process includes:
[0183] Step 1201, the container infrastructure service management sends a fifth message to the first functional entity. Correspondingly, the first functional entity receives the fifth message from the container infrastructure service management.
[0184] Among them, the fifth message is used to indicate the second resource allocated for the VNF instance.
[0185] In some embodiments, if the first functional entity receives the fifth message for creating a VNF instance, it establishes a correspondence between the VNF instance and the resources in the device resource pool based on the resources allocated for the VNF instance indicated by the fifth message. This can enable the VNF instance to use the resources allocated for it in the device resource pool subsequently.
[0186] In a possible implementation manner, the VNF instance is a VNF instance in the first virtualized entity cluster, and the second resource is a resource in the first resource. In other words, the VNF instance can be deployed in the above-mentioned first virtualized entity cluster. At this time, the resources allocated for the VNF instance are the resources in the resources allocated for the first virtualized entity cluster as described above.
[0187] In a possible implementation, the VNF instance includes multiple first virtualized entities, and the fifth message is used to indicate the third resources allocated to each first virtualized entity. In this case, the first functional entity determines that the available resources of the VNF instance include the third resources allocated to each first virtualized entity. In other words, when the VNF instance includes multiple services and the multiple services are respectively deployed in different virtualized entities, the fifth message can also respectively indicate the third resources allocated to each virtualized entity. In this way, the first functional entity can determine that the third resources allocated to each of the above virtualized entities are the available resources of the VNF instance, and the services in the VNF instance can use the third resources in the virtualized entities where they are deployed during operation.
[0188] In some embodiments, in combination with Figure 6 , such as Figure 13 shown, an embodiment of the present application also provides a method for container management based on DPU pooling. The method includes:
[0189] Step 1301, the container infrastructure service management sends a sixth message to the first functional entity. Correspondingly, the first functional entity receives the sixth message from the container infrastructure service management.
[0190] Wherein, the sixth message is used to indicate the third resources allocated to the first virtualized entity.
[0191] In some embodiments, if the first functional entity receives the sixth message for creating a virtualized entity, it establishes a binding relationship between the first virtualized entity and the third resources according to the third resources allocated to the first virtualized entity indicated by the sixth message. This can enable the first virtualized entity to use the resources allocated to it in the device resource pool subsequently.
[0192] Optionally, the first virtualized entity is an entity in the first virtualized entity cluster, and the third resources are resources in the first resources. In other words, the first virtualized entity can be an entity in the above first virtualized entity cluster. At this time, the resources allocated to the first virtualized entity are the resources in the resources allocated to the above first virtualized entity cluster.
[0193] Optionally, the first virtualized entity is a virtualized entity in the VNF instance, and the sixth message is also used to indicate that the third resources are the available resources of the VNF instance. When the VNF instance includes multiple services and the multiple services are respectively deployed in different virtualized entities, the fifth message can also respectively indicate the third resources allocated to each virtualized entity. In this way, the first functional entity can determine that the third resources allocated to each of the above virtualized entities are the available resources of the VNF instance, and the services in the VNF instance can use the third resources in the virtualized entities where they are deployed during operation.
[0194] In some embodiments, if the first functional entity receives the sixth message for creating a virtualized entity, it establishes a binding relationship between the first virtualized entity and the third resource according to the third resource allocated for the first virtualized entity indicated by the sixth message. This enables the first virtualized entity to subsequently use the resources allocated for it in the device resource pool. The first virtualized entity may be an entity in the above-mentioned first virtualized entity cluster. In this case, the resources allocated for the first virtualized entity are the resources in the resources allocated for the first virtualized entity cluster. The first virtualized entity may be a virtualized entity in a VNF instance. In this case, the resources allocated for the first virtualized entity are the resources in the resources allocated for the VNF instance.
[0195] In some embodiments, in combination with Figure 14 , taking the resource pooling of DPU devices as an example, the process of VNF instantiation management based on the DPU resource pool is described as follows. As Figure 14 shown, this process includes:
[0196] Step 1401: The VNF management module sends a container creation message to the container infrastructure service management. Correspondingly, the container infrastructure service management receives the container creation message from the VNF management module.
[0197] Among them, the container creation message is used to indicate the creation of container network and storage information. Optionally, the container creation message carries information about the DPU resource pool corresponding to the container to be created. For example, which network resources or storage resources in the DPU resource pool the container needs to use. If the container creation message does not carry information about the DPU resource pool corresponding to the created container, the container infrastructure service management can also allocate DPU resources for the container based on the DPU resource pool bound to the container cluster to which the container belongs.
[0198] Step 1402: The container infrastructure service management sends a DPU resource indication message of the container to the first functional entity. Correspondingly, the first functional entity receives the DPU resource indication message of the container from the container infrastructure service management.
[0199] Among them, the DPU resource indication message of the container is used to indicate the DPU resources allocated for the container.
[0200] Step 1403: The first functional entity records the DPU resources allocated for the container.
[0201] Optionally, the first functional entity records the correspondence between the container network, storage and the DPU resource pool. Subsequently, the first functional entity can allocate DPU resources for the container based on this correspondence.
[0202] Step 1404: The VNF management module sends a VNF instance creation message to the container infrastructure service management. Correspondingly, the container infrastructure service management receives the VNF instance creation message from the VNF management module.
[0203] Among them, the VNF instance creation message is used to indicate the creation of a VNF instance. Optionally, the VNF instance creation message is also used to indicate the DPU resource pool information corresponding to the VNF instance.
[0204] Optionally, the VNF instance creation message includes the DPU resource pool information of one or more services (or microservices) in the VNF instance.
[0205] Step 1405: The container infrastructure service management creates a Pod based on the VNF instance creation message.
[0206] Among them, the Pod is used to deploy the services in the VNF instance.
[0207] In some embodiments, during the process of the container infrastructure service management creating a Pod based on the VNF instance creation message, if the DPU resource pool group information of the service corresponding to the Pod is indicated in the VNF instance creation message, the indicated DPU resource pool group is assigned to the Pod. Optionally, the container infrastructure service management may assign the DPU resource pool group to the Pod based on the primary and standby pool multi-instance N-way deployment method, and the present application does not limit this.
[0208] In some embodiments, the container infrastructure service management determines the correspondence between the network and storage devices assigned to the Pod, the network where the storage devices are located, and the DPU resource pool (or DPU resource pool group).
[0209] If the container infrastructure service management determines that the network and storage devices assigned to the Pod correspond to a DPU resource pool, the container network and container storage are assigned to the Pod from the corresponding DPU resource pool.
[0210] If the container infrastructure service management determines that the network and storage devices assigned to the Pod correspond to a DPU resource pool group, the container network and container storage are respectively assigned to the Pod from the primary DPU resource pool and the standby DPU resource pool of the corresponding DPU resource pool group, and resources are provided for the Pod as a logical device.
[0211] Step 1406: The container infrastructure service management sends the DPU resource information of the Pod to the first functional entity. Correspondingly, the first functional entity receives the DPU resource information of the Pod from the container infrastructure service management.
[0212] Step 1407: The first functional entity allocates DPU resources for the Pod based on the DPU resource information of the Pod.
[0213] It should be noted that in the embodiments of the present application, the binding of the container cluster (or VNF instance, container, Pod, etc.) to the DPU resource pool can also be correspondingly implemented as binding to a DPU resource pool group, which will not be elaborated herein.
[0214] The above mainly introduces the solution provided by the embodiments of the present application from the perspective of the interaction between network elements. Correspondingly, the embodiments of the present application also provide an apparatus for creating a resource pool, which is used to implement the above various methods. The apparatus for creating a resource pool can be the first functional entity in the above method embodiments, or an apparatus including the above first functional entity, or a component available for the first functional entity; the apparatus for creating a resource pool can be the network function virtualization management entity in the above method embodiments, or an apparatus including the above network function virtualization management entity, or a component available for the network function virtualization management entity; the apparatus for creating a resource pool can be the network function virtualization management entity in the above method embodiments, or an apparatus including the above network function virtualization management entity, or a component available for the network function virtualization management entity; the apparatus for creating a resource pool can be the network function virtualization infrastructure entity in the above method embodiments, or an apparatus including the above network function virtualization infrastructure entity, or a component available for the network function virtualization infrastructure entity; the apparatus for creating a resource pool can be the VNF management entity in the above method embodiments, or an apparatus including the above VNF management entity, or a component available for the VNF management entity. It can be understood that in order to implement the above functions, the apparatus for creating a resource pool includes the corresponding hardware structure and / or software module for executing each function. Those skilled in the art should easily realize that, combining the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0215] The embodiments of the present application can divide the apparatus for creating a resource pool into functional modules according to the above method embodiments. For example, each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of a software functional module. It should be understood that the division of modules in the embodiments of the present application is illustrative, only a logical function division, and there can be other division methods in actual implementation.
[0216] For example, Figure 15Schematic diagram of an apparatus 1500 for creating a resource pool provided by an embodiment of the present application. The apparatus for creating a resource pool includes a transceiver module 1510. Optionally, it includes a processing module 1520. The transceiver module 1510, also referred to as a transceiver unit, is used to implement transceiver functions. For example, it can be a transceiver circuit, a transceiver, a transceiver, or a communication interface.
[0217] Taking the apparatus 1500 for creating a resource pool as the first functional entity in the above method embodiment, or a device including the above first functional entity, or a component applicable to the first functional entity as an example, then: The transceiver module 1510 is used to receive a first message, and the first message is used to indicate at least one device in the device resource pool to be created; each device in the at least one device includes resources for different types of services in a communication network; the processing module 1520 is used to create a device resource pool based on the first message, where the device resource pool includes the resources of each device.
[0218] In a possible implementation manner, the first message includes: an identifier of the device resource pool, and identifiers of at least one device.
[0219] In a possible implementation manner, the first message is further used to indicate a resource allocation mode of the device resource pool.
[0220] In a possible implementation manner, the resource allocation mode of the device resource pool includes: a device resource pool sharing mode or a device resource pool exclusive mode, where the device resource pool sharing mode indicates that the resources in the device resource pool are allowed to be shared and used by multiple functional entities, and the device resource pool exclusive mode indicates that the resources in the device resource pool are allowed to be exclusively used by one functional entity.
[0221] In a possible implementation manner, the resources for different types of services in a communication network include at least two of the following: computing resources, storage resources, or network service resources.
[0222] In a possible implementation manner, the transceiver module 1510 is further used to receive a second message, where the second message is used to indicate at least two device resource pools in a device resource pool group to be created; the processing module 1520 is further used to create a device resource pool group based on the second message, and the device resource pool group includes the resources of at least two device resource pools.
[0223] In a possible implementation manner, the second message includes an identifier of the device resource pool group.
[0224] In a possible implementation manner, the second message includes identifiers of at least two device resource pools, or identifiers of devices in at least two device resource pools.
[0225] In a possible implementation manner, the second message is further used to indicate a resource allocation mode of the device resource pool group.
[0226] In a possible implementation, the resource allocation mode of the device resource pool group includes: the device resource pool group sharing mode or the device resource pool group exclusive mode. Among them, the device resource pool group sharing mode indicates that the resources in the device resource pool group are allowed to be shared by multiple functional entities, and the device resource pool group exclusive mode indicates that the resources in the device resource pool group are allowed to be exclusively used by one functional entity.
[0227] In a possible implementation, the transceiver module 1510 is further configured to receive a third message, where the third message is used to indicate the resources of at least one device.
[0228] In a possible implementation, the third message is further used to indicate that the resources of at least one device support establishing a device resource pool.
[0229] In a possible implementation, the transceiver module 1510 is further configured to obtain a fourth message, where the fourth message is used to indicate a first device resource pool allocated to a first virtualized entity cluster; the first virtualized entity cluster is used to provide services in a communication network; the processing module 1520 is further configured to determine that the resources in the first device resource pool are available resources for the first virtualized entity cluster.
[0230] In a possible implementation, the fourth message is further used to indicate a first resource allocated to the first virtualized entity cluster in the first device resource pool.
[0231] In a possible implementation, when the resource allocation mode of the device resource pool is the device resource pool group sharing mode, the fourth message is further used to indicate that the first virtualized entity cluster shares the resources in the first device resource pool with other virtualized entity clusters.
[0232] In a possible implementation, when the resource allocation mode of the device resource pool is the device resource pool group exclusive mode, the fourth message is further used to indicate that the first virtualized entity cluster exclusively occupies the resources in the first device resource pool.
[0233] In a possible implementation, the transceiver module 1510 is further configured to obtain a fifth message, where the fifth message is used to indicate a second resource allocated to a VNF instance.
[0234] In a possible implementation, the VNF instance is a VNF instance in the first virtualized entity cluster, and the second resource is a resource in the first resource.
[0235] In a possible implementation, the VNF instance includes multiple first virtualized entities, the fifth message is used to indicate a third resource allocated to each first virtualized entity; the processing module 1520 is further configured to determine that the available resources of the VNF instance include the third resources allocated to each first virtualized entity.
[0236] Taking the device 1500 for creating a resource pool as the network function virtualization management entity in the above method embodiment, or a device including the above network function virtualization management entity, or a component available for the network function virtualization management entity as an example, then: a transceiver module 1510, configured to send a first message, where the first message is used to indicate at least one device in the device resource pool to be created; each device in the at least one device includes resources for different types of services in a communication network.
[0237] In a possible implementation, the transceiver module 1510 is further configured to send a second message, where the second message is used to indicate at least two device resource pools in the device resource pool group to be created.
[0238] In a possible implementation, a processing module 1520 is configured to create a first virtualized entity cluster; the first virtualized entity cluster is used to provide services in a communication network; and a first device resource pool is allocated to the first virtualized entity cluster.
[0239] Taking the device 1500 for creating a resource pool as the network function virtualization infrastructure entity in the above method embodiment, or a device including the above network function virtualization infrastructure entity, or a component available for the network function virtualization infrastructure entity as an example, the transceiver module 1510 is configured to send a third message, where the third message is used to indicate the resources of at least one device in the device resource pool to be created.
[0240] Taking the device 1500 for creating a resource pool as the VNF management entity in the above method embodiment, or a device including the above VNF management, or a component available for VNF management as an example, the processing module 1520 is configured to determine a first virtualized entity for deploying a VNF instance; the first virtualized entity is an entity in the first virtualized entity cluster, and the first virtualized entity cluster is used to provide services in a communication network; and a second resource is allocated to the first virtualized entity, where the second resource is a resource in a first resource, and the first resource is the resource allocated to the VNF instance.
[0241] Wherein, all relevant contents of each step involved in the above method embodiment can be cited in the function descriptions of the corresponding functional modules, and will not be elaborated herein. Optionally, the device 1500 for creating a resource pool may further include a storage module 1530, and the storage module 1530 may be used to store instructions and / or data, and the processing module 1520 may read the instructions and / or data in the storage module 1530.
[0242] In an embodiment of the present application, the apparatus 1500 for creating a resource pool is presented in a form where each functional module is divided in an integrated manner. Here, a "module" may refer to an application specific integrated circuit (ASIC), a circuit, a processor and a memory that execute one or more software or firmware programs, an integrated logic circuit, and / or other devices that can provide the above functions. In a simple embodiment, those skilled in the art can conceive that the apparatus for creating a resource pool can be in the form of Figure 5 the apparatus 500 for creating a resource pool shown.
[0243] Specifically, Figure 15 the functions / implementation processes of the transceiver module 1510 and the processing module 1520 in Figure 5 can be implemented by the processor 501 in the apparatus 500 for creating a resource pool shown in Figure 15 calling computer-executable instructions stored in the memory 502. Or, Figure 5 the functions / implementation processes of the processing module 1520 in Figure 15 can be implemented by the processor 501 in the apparatus 500 for creating a resource pool shown in Figure 5 calling computer-executable instructions stored in the memory 502, and
[0244] the functions / implementation processes of the transceiver module 1510 in
[0245] Since the apparatus for creating a resource pool provided in the embodiment of the present application can execute the above method for creating a resource pool, the technical effects that can be obtained thereby can refer to the above method embodiment and will not be elaborated herein.
[0246] When the above modules or units are implemented in hardware, the hardware can be any one or any combination of a central processing unit (CPU), a microprocessor, a digital signal processing (DSP) chip, a microcontroller unit (MCU), an artificial intelligence processor, an ASIC, an SoC, an FPGA, a PLD, a dedicated digital circuit, a hardware accelerator, or a non-integrated discrete device, which can run the necessary software or execute the above method flow without relying on software.
[0247] Optionally, an embodiment of the present application further provides a device for creating a resource pool (for example, the device for creating a resource pool can be a chip or a chip system). The device for creating a resource pool includes a processor for implementing the method in any of the above method embodiments. In a possible design, the device for creating a resource pool further includes a memory. The memory is used to store necessary program instructions and data, and the processor can call the program code stored in the memory to instruct the device for creating a resource pool to execute the method in any of the above method embodiments. Of course, the memory may not be in the device for creating a resource pool. When the device for creating a resource pool is a chip system, it can be composed of chips or can include chips and other discrete devices, and the embodiments of the present application do not make specific limitations on this.
[0248] Optionally, an embodiment of the present application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program or instruction. When it runs on the device for creating a resource pool, it enables the device for creating a resource pool to execute the method described in any of the above method embodiments or any of its implementation manners.
[0249] Optionally, an embodiment of the present application further provides a communication system. The communication system includes the network device described in the above method embodiment and the terminal described in the above method embodiment.
[0250] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions according to the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that includes one or more media integrated therein. The available medium can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)), etc.
[0251] Although the present application has been described in connection with various embodiments, however, in the process of implementing the claimed present application, those skilled in the art can understand and implement other variations of the disclosed embodiments by viewing the drawings, the disclosure content, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions recited in the claims. Certain measures are recited in mutually different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0252] Although the present application has been described in connection with specific features and their embodiments, it is obvious that various modifications and combinations can be made without departing from the scope of the present application. Accordingly, the present specification and the drawings are merely exemplary illustrations of the present application defined by the appended claims, and are for any and all modifications, variations, combinations, or equivalents covered by the scope of the present application. Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalent technologies, the present application also intends to include these changes and modifications therein.
Claims
1. A method for creating a resource pool, characterized in that: Applicable to the first functional entity, comprising: Receiving a first message, wherein the first message is used to indicate at least one device in a device resource pool to be created; each device in the at least one device includes resources for different types of services in a communication network; Based on the first message, the device resource pool is created, wherein the device resource pool includes resources of each device.
2. The method according to claim 1, characterized in that The first message includes: an identifier of the device resource pool and an identifier of the at least one device.
3. The method according to claim 1 or 2, characterized in that: The first message is also used to indicate a resource allocation mode of the device resource pool.
4. The method according to claim 3, characterized in that: The resource allocation mode of the device resource pool includes: a device resource pool sharing mode or a device resource pool exclusive mode, wherein the device resource pool sharing mode indicates that the resources in the device resource pool are allowed to be shared by multiple functional entities, and the device resource pool exclusive mode indicates that the resources in the device resource pool are allowed to be exclusively used by one functional entity.
5. The method according to any one of claims 1 to 4, characterized in that: The resources used for different types of services in the communication network include at least two of the following: computing resources, storage resources, or network service resources.
6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: receiving a second message, wherein the second message is used to indicate at least two device resource pools in the device resource pool group to be created; The device resource pool group is created based on the second message, and the device resource pool group includes resources in the at least two device resource pools.
7. The method according to claim 6, characterized in that The second message includes an identifier of the device resource pool group.
8. The method according to claim 6 or 7, characterized in that: The second message includes identifiers of the at least two device resource pools or identifiers of devices in the at least two device resource pools.
9. The method according to any one of claims 6 to 8, characterized in that: The second message is further used to indicate a resource allocation mode of the device resource pool group.
10. The method according to claim 9, characterized in that The resource allocation mode of the device resource pool group includes: a device resource pool group sharing mode or a device resource pool group exclusive mode, wherein the device resource pool group sharing mode indicates that the resources in the device resource pool group are allowed to be shared by multiple functional entities, and the device resource pool group exclusive mode indicates that the resources in the device resource pool group are allowed to be exclusively used by one functional entity.
11. The method according to any one of claims 1 to 10, characterized in that: Before creating the device resource pool based on the first message, the method further includes: A third message is received, where the third message is used to indicate resources of the at least one device.
12. The method according to claim 11, characterized in that The third message is further used to indicate that resources of the at least one device support establishing a device resource pool.
13. The method according to any one of claims 4 to 12, characterized in that: The method further comprises: Acquire a fourth message, where the fourth message is used to indicate a first device resource pool allocated to a first virtualization entity cluster; the first virtualization entity cluster is used to provide a service in the communication network; Determine that resources in the first device resource pool are available resources of the first virtualization entity cluster.
14. The method according to claim 13, characterized in that The fourth message is further used to indicate a first resource in the first device resource pool allocated to the first virtualization entity cluster.
15. The method according to claim 13 or 14, characterized in that In a case where the resource allocation mode of the device resource pool is a device resource pool sharing mode, the fourth message is further used to instruct the first virtualization entity cluster to share resources in the first device resource pool with other virtualization entity clusters.
16. The method according to claim 13 or 14, characterized in that In a case where the resource allocation mode of the device resource pool is a device resource pool exclusive mode, the fourth message is further used to instruct the first virtualization entity cluster to exclusively occupy resources in the first device resource pool.
17. The method according to claim 14, characterized in that The method further comprises: Obtain a fifth message, wherein the fifth message is used to indicate a second resource allocated to the virtual network function VNF instance.
18. The method according to claim 17, characterized in that The VNF instance is a VNF instance in the first virtualization entity cluster, and the second resource is a resource in the first resource.
19. The method according to claim 17 or 18, characterized in that The VNF instance includes multiple first virtualization entities, and the fifth message is used to indicate the third resource allocated to each of the first virtualization entities; the method also includes: Determining the available resources of the VNF instance includes a third resource allocated to each of the first virtualization entities.
20. A method for creating a resource pool, characterized in that: Applicable to network function virtualization management entities, including: A first message is sent, where the first message is used to indicate at least one device in a device resource pool to be created; each device in the at least one device includes resources for different types of services in a communication network.
21. The method according to claim 20, characterized in that include: A second message is sent, where the second message is used to indicate at least two device resource pools in the device resource pool group to be created.
22. The method according to claim 20 or 21, characterized in that The method further comprises: Creating a first virtualized entity cluster; the first virtualized entity cluster is used to provide services in a communication network; A first device resource pool is allocated to the first virtualization entity cluster.
23. A method for creating a resource pool, characterized in that: Applicable to network function virtualization infrastructure entities, including: A third message is sent, where the third message is used to indicate resources of at least one device in the device resource pool to be created.
24. A method for creating a resource pool, characterized in that: Applicable to virtual network function VNF management entities, including: Determine a first virtualization entity for deploying a VNF instance; the first virtualization entity is an entity in a first virtualization entity cluster, and the first virtualization entity cluster is used to provide services in a communication network; Allocate a second resource to the first virtualization entity, where the second resource is a resource in the first resource, and the first resource is a resource allocated to the VNF instance.
25. A device for creating a resource pool, characterized in that: include: A functional unit for executing the method as claimed in any one of claims 1 to 24; wherein the actions performed by the functional unit are implemented by hardware or by hardware executing corresponding software implementations.
26. A device for creating a resource pool, characterized in that: include: processor; The processor is connected to a memory, the memory is used to store computer-executable instructions, and the processor executes the computer-executable instructions stored in the memory so that the device for creating a resource pool implements the method described in any one of claims 1-24.
27. A computer-readable storage medium, characterized in that: The method comprises instructions, which, when executed on a computer, cause the computer to execute the method according to any one of claims 1 to 24.
28. A chip, characterized in that: The chip includes a processor; the processor is connected to a memory, the memory is used to store computer-executable instructions, and the processor executes the computer-executable instructions stored in the memory so that the device for creating a resource pool implements the method described in any one of claims 1-24.
29. A computer program product comprising instructions, characterized in that When it runs on a device for creating a resource pool, the device for creating a resource pool implements the method as described in any one of claims 1-24.
Citation Information
Patent Citations
Assignment of resources in virtual machine pools
CN104040526A
Resource pool allocation method and device
CN108024283A
Resource pool management method and apparatus, resource pool control unit, and communication device
CN110809760A
Resource pool configuration method, resource pool use method, resource pool configuration equipment and terminal
CN110958691A
Virtual instance deployment method and system based on cloud service
CN119248462A
Cited By
Method and apparatus for creating resource pool, readable storage medium, and chip
WO2026158019A1