CN113282410B - Resource allocation method and device - Google Patents

Resource allocation method and device Download PDF

Info

Publication number
CN113282410B
CN113282410B CN202110528161.8A CN202110528161A CN113282410B CN 113282410 B CN113282410 B CN 113282410B CN 202110528161 A CN202110528161 A CN 202110528161A CN 113282410 B CN113282410 B CN 113282410B
Authority
CN
China
Prior art keywords
resource
hardware
network element
user plane
target user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110528161.8A
Other languages
Chinese (zh)
Other versions
CN113282410A (en
Inventor
陈婉珺
马泽芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202110528161.8A priority Critical patent/CN113282410B/en
Publication of CN113282410A publication Critical patent/CN113282410A/en
Application granted granted Critical
Publication of CN113282410B publication Critical patent/CN113282410B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Abstract

The application discloses a resource allocation method and a resource allocation device, which relate to the technical field of communication and are used for flexibly allocating resources of UPF and external equipment. The resource allocation apparatus includes a hardware resource pool including a plurality of types of hardware, the method comprising: the resource allocation device receives first allocation information, wherein the first allocation information is used for indicating a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a device in a hardware resource pool; the resource allocation device acquires the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource; the resource allocation device adjusts the first allocation information according to the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource. The embodiment of the application is applied to a UPF data processing process.

Description

Resource allocation method and device
Technical Field
The present disclosure relates to the field of data processing technologies, and in particular, to a method and an apparatus for resource allocation.
Background
The user plane function network elements (user plane function, UPF) are used as 5G core network key network elements and carry important functions of user data processing and forwarding. With the commercial promotion of 5G, the application requirements of 4K/8K high definition video, cloud game, remote driving, industrial control and other enhanced mobile broadband (enhance mobile broadband, embb)/high-reliability low-delay communication (ultra reliable lowlatency communication, URLLC) are also becoming urgent, and they put requirements on ultra-low delay and ultra-large bandwidth on the network. These performance requirements are closely related to the UPF, which is required to provide efficient data processing and forwarding.
As the number of user terminals increases, the UPF load increases. In order to relieve the load of the UPF, the load of the UPF may be shared by external devices (such as an application specific integrated circuit (application specific integrated circuit, ASIC) chip or smart card, etc.). However, how to reasonably use the resources of the UPF and the external device is a problem to be solved.
Disclosure of Invention
The application provides a resource configuration method and device, which are used for flexibly configuring UPF and resources of external equipment.
In order to achieve the above purpose, the present application uses the following technical scheme:
in a first aspect, a resource allocation method is provided, applied to a resource allocation device, where the resource allocation device includes a hardware resource pool, and the hardware resource pool includes multiple types of hardware, and the method includes: the resource allocation device receives first allocation information, wherein the first allocation information is used for indicating a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a device in a hardware resource pool; the resource allocation device acquires the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource; the resource allocation device adjusts the first allocation information according to the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource.
Based on the technical solution of the first aspect, after receiving the configuration information from the user, the resource configuration device may adjust the configuration information based on the resource usage rate of the UPF and the hardware usage rate in the hardware resource pool, so that the adjusted hardware may reasonably use the resources of the external device (such as the hardware resource pool) under the condition that the function of the UPF may be shared.
In a second aspect, a resource allocation apparatus is provided, the resource allocation apparatus including a hardware resource pool including a plurality of types of hardware, the resource allocation apparatus further including a communication unit and a processing unit;
the communication unit is used for receiving first configuration information, wherein the first configuration information is used for indicating a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a resource of a hardware resource pool;
the communication unit is also used for acquiring the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource;
and the processing unit is used for adjusting the first configuration information according to the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource.
In a third aspect, there is provided a computer readable storage medium having instructions stored therein which, when executed, implement a method as in the first aspect.
In a fourth aspect, there is provided a computer program product comprising computer instructions which, when run on resource allocation means, cause the detection means to perform a resource allocation method as described in the first aspect and any one of its possible design forms (or implementation forms).
In a fifth aspect, there is provided a chip comprising at least one processor and a communication interface, the communication interface being coupled to the at least one processor, the at least one processor being for executing a computer program or instructions to carry out the method of the first aspect.
In a sixth aspect, there is provided a communication apparatus comprising: a processor, a memory, and a communication interface; wherein the communication interface is used for the communication of the communication device and other equipment or network; the memory is configured to store one or more programs, the one or more programs comprising computer-executable instructions that, when executed by the communication device, cause the communication device to perform the method of the first aspect.
The communication device or the computer readable storage medium or the computer program product or the chip are used for executing the corresponding method provided above, and therefore, the advantages achieved by the communication device or the computer readable storage medium or the computer program product or the chip can refer to the advantages of the corresponding scheme in the corresponding method provided above, and are not repeated herein.
Drawings
Fig. 1 is a schematic diagram of a switch-based UPF architecture according to an embodiment of the present application;
fig. 2 is a schematic architecture diagram of a server-based UPF according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a resource allocation system according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a communication device 400 according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a resource allocation method according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a communication device 60 according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
It should be noted that, in the embodiments of the present application, words such as "exemplary" or "such as" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
In order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, the terms "first", "second", and the like are used to distinguish the same item or similar items having substantially the same function and effect, and those skilled in the art will understand that the terms "first", "second", and the like are not limited in number and execution order.
To relieve the pressure of the UPF, the 5G core network may share the functions of the UPF through external devices. Such as switch-based UPF architectures and server-based UPF architectures. Among these, the switch-based UPF architecture mainly shares some of the functions of the UPF through application specific integrated circuit (application specific integrated circuit, ASIC) chips. The server-based UPF architecture primarily shares some of the UPF functionality through an intelligent network card, such as a Field programmable gate array (Field-Programmable Gate Array, FPGA).
In an example, as shown in fig. 1, a schematic diagram of a switch-based UPF architecture is provided in an embodiment of the present application. The switch-based architecture may include a UPF, LINUX-based operating system, X86 CPU and ARMCPU, and an ASIC chip disposed at the bottom layer.
The LINUX-based operating system may be used to develop software-implemented UPF-based interface session management functions, among other things. The ASIC chip may be used to implement the actual routing exchanges and packet forwarding in the UPF. For example, the UPF may call an X86 CPU or ARM CPU to implement the UPF's maintenance of the external N4 interface and management functions of the user session. For more complex deep packet inspection (deep packet inspection, DPI) functions, X86 CPU or ARM CPU is also required to perform DPI parsing of the data packet to obtain source internet protocol (internet protocol, IP) address information and destination IP address information of the data packet. And then, the source IP address information and the destination IP address information of the data packet are issued to the ASIC chip. The ASIC chip can forward the data packet according to the source IP address information and the destination IP address information of the data packet.
Based on UPF of switch structure, ASIC chip set at bottom layer possesses strong forwarding capability, and high cost performance. Particularly in the case of mass production, the cost performance advantage of ASIC chips is more pronounced. However, the CPU capabilities of the switch-based UPF architecture itself are also weak, and some complex functions are difficult to implement for UPF. For example, for some services with shorter single service flow and need to perform DPI analysis, the CPU based on the UPF of the switch cannot well meet the requirements because the ratio of DPI analysis of the data packet is higher.
In addition, ASIC chips have poor programmable capabilities, and the capabilities of UPFs are continually expanding as networks evolve. For example, the UPF may be converged with a virtual broadband access server (virtual band access server, vBAS) in a fixed network, a firewall, or with other partial edge computing capabilities, assuming a variety of functions such as graphics rendering, sensitive field statistics, redirection, etc. However, an ASIC chip is a chip that is designed with design use in mind, i.e., the function of the ASIC chip is determined at the time of initial design. It is then relatively difficult to add or extend additional new functionality to the ASIC chip. Therefore, the subsequent upgrading and evolution of UPF based on ASIC chip is very difficult, new chip is redeveloped, and the cost is high.
In yet another example, as shown in fig. 2, a schematic diagram of a server-based architecture is provided in an embodiment of the present application. The server-based UPF architecture may include a UPF, LINUX OS-based operating system, a server provided with an X86 central processing unit (Central Processing Unit/Processor, CPU) or ARM CPU, and a smart network card.
Wherein, a server provided with an X86 CPU or ARM CPU can be used for realizing a UPF session management function and a dpi function. However, the UPF is used as the only core network element of the 5G user plane, and the processing needs to perform management and maintenance of the user session and DPI connection and disconnection of the data packet, and also needs a great data packet forwarding processing capability. There may be a considerable number of data packets, and the UPF may forward according to simple basic information such as source IP address information and destination IP address information, without performing complex analysis such as DPI detection. If each data packet is forwarded by the CPU, the load of the CPU is greatly increased, and the performance of the equipment is affected.
At present, most of UPFs based on a server are provided with intelligent network cards, and the mainstream intelligent network cards are realized based on FPGA. There are of course also intelligent network cards based on an ASIC or FPGA in combination with an ASIC. Through the intelligent network cards, the UPF unloads the datagrams which do not need to be subjected to complex analysis onto the intelligent network cards for quick forwarding, so that on one hand, the forwarding efficiency of the UPF is improved, and meanwhile, the load of a CPU is reduced.
Although the programmable capability of the FPGA is strong, the subsequent expansion of the UPF function is convenient. However, when the chip is designed at the beginning, the functions of sharing UPF are fewer, the hardware waste caused by the subsequent programming is unavoidable, and the cost of the FPGA is usually higher than that of the similar ASIC, so that the cost is higher.
In view of this, the present application provides a hardware resource pool based configuration system (which may also be referred to as a resource configuration device, hereinafter referred to as a resource configuration device for convenience of description). As shown in FIG. 3, the resource configuration system may include a plurality of UPFs (e.g., UPFs 1 through UPFn in the figure), an operating system, a pool of hardware resources, and a UPF hardware configuration system.
Wherein, a plurality of UPFs can access the operating system through an API interface. Each UPF of the plurality of UPFs may call a hardware resource of the hardware resource pool for sharing some of the functions of the UPF.
Wherein the operating system may be used to provide an operating environment for hardware in the hardware resource pool. The operating system may be a LINUX OS operating system, or may be other operating systems, without limitation.
For example, the hardware resources of the hardware resource pool may include different types of hardware such as CPUs, graphics processors (Graphics Processing Unit, GPUs), ASIC chips, and the like. The number of hardware of each type may be plural. Each hardware resource may process data for multiple UPFs. Multiple pieces of hardware of the same type may have different sequence numbers.
It should be noted that, in the embodiment of the present application, the UPF invoking the hardware resource of the hardware resource pool may refer to that the UPF processes the data of the user plane by using the resource in the hardware resource pool. Such as packet forwarding, DPI detection, etc.
Wherein the UPF hardware configuration system may be used to allocate resources for each UPF. For example, resources in a pool of hardware resources are allocated.
In one example, a UPF hardware configuration system may include a user configuration unit, a hardware decision unit, and a hardware management unit.
The user configuration unit may be configured to receive configuration information input by a user and perform resource configuration according to the configuration information of the user. The configuration information may be used to indicate the type and number of hardware resources in the hardware resource pool.
The hardware decision unit may be configured to determine, according to configuration information input by a user and a hardware state in the hardware resource pool, a hardware resource configuration policy configured for UPF finally. The hardware resource allocation policy may be specifically referred to the following description of the embodiment of fig. 5, which is not repeated.
For example, the hardware decision unit may also comprise one or more memory units. The one or more memory units may be used to store configuration information entered by a user and a hardware state of a hardware resource pool. The hardware decision unit may further comprise a calculation unit. The computing unit may be configured to determine a hardware resource policy that is ultimately configured for the UPF according to the configuration information input by the user and the hardware state of the hardware resource pool.
The hardware management unit may be configured to load an application program corresponding to the hardware and network element information of the UPF according to a hardware resource policy configured for the UPF finally, so that the hardware may execute a function of the UPF, or the UPF may use the hardware to perform data processing.
Wherein, the application program corresponding to the hardware can be used for UPF to call the hardware. That is, the hardware after loading the application may be directly called by the UPF.
The network element information of the UPF may be used to indicate that a correspondence between the UPF and hardware is established. The network element information of the UPF may include an identification of the UPF, a communication carrier to which the UPF belongs, and the like.
For example, when the hardware management unit configures the GPU for the UPF1, the hardware management unit needs to download and install an application program corresponding to the GPU and configure network element information of the UPF1 for the GPU based on the operating system. Thus, the hardware management unit can establish the corresponding relation between the GPU and the UPF1 under the condition of loading the application program corresponding to the GPU and the network element information of the UPF1, so that the UPF1 uses the GPU to process data. For example, data processing such as video encoding and decoding, deep learning, and scientific calculation may be performed.
It should be noted that, in the embodiment of the present application, after a plurality of pieces of hardware in the hardware resource pool are installed, the resource management system needs to load the driver of the hardware after receiving the registration request of the hardware, so as to activate the hardware. After loading the driver, one piece of hardware in the hardware resource pool can only share the function of the same UPF.
Based on the system of fig. 3, the embodiment of the application further provides a resource allocation method, which is applied to the resource allocation device, and the method comprises the following steps: the resource allocation device receives first allocation information input by a user and acquires the resource utilization rate of UPF and the hardware utilization rate of a hardware resource pool; the resource allocation device adjusts the first allocation information according to the resource utilization rate of the UPF and the hardware utilization rate of the hardware resource pool. The adjusted first configuration information may be used to indicate hardware resources in a pool of hardware resources configured for the UPF. Thus, after receiving the configuration information from the user, the resource configuration device can adjust the configuration information based on the resource utilization rate of the UPF and the hardware utilization rate in the hardware resource pool, so that the adjusted hardware can reasonably use the resources of the external device (such as the hardware resource pool) under the condition that the function of the UPF can be shared.
As shown in fig. 4, the embodiment of the present application further provides a communication apparatus 400. The communication device 400 may be a chip or a system on a chip in a resource allocation device. As shown in fig. 4, the communication apparatus 400 includes a processor 401, a communication interface 402, and a communication line 403.
Further, the communication device 400 may also include a memory 404. The processor 401, the memory 404, and the communication interface 402 may be connected by a communication line 403.
Processor 401 is, among other things, a CPU, general purpose processor network processor (network processor, NP), digital signal processor (digital signal processing, DSP), microprocessor, microcontroller, programmable logic device (programmable logic device, PLD), or any combination thereof. The processor 401 may also be any other device having a processing function, such as a circuit, a device, or a software module, without limitation.
A communication interface 302 for communicating with other devices or other communication networks. The other communication network may be an ethernet, a radio access network (radio access network, RAN), a wireless local area network (wireless local area networks, WLAN), etc. The communication interface 402 may be a module, a circuit, a communication interface, or any device capable of enabling communication.
Communication line 403 for transmitting information between the components included in communication device 400.
Memory 404 for storing instructions. Wherein the instructions may be computer programs.
The memory 404 may be, but is not limited to, a read-only memory (ROM) or other type of static storage device capable of storing static information and/or instructions, a random access memory (random access memory, RAM) or other type of dynamic storage device capable of storing information and/or instructions, an EEPROM, a CD-ROM (compact disc read-only memory) or other optical disk storage, an optical disk storage (including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage device, etc.
It is noted that the memory 404 may exist separately from the processor 401 or may be integrated with the processor 401. Memory 404 may be used to store instructions or program code or some data, etc. The memory 404 may be located within the communication device 400 or may be located outside the communication device 400, without limitation. The processor 401 is configured to execute instructions stored in the memory 404, so as to implement a method for determining antenna parameters provided in the following embodiments of the present application.
In one example, processor 401 may include one or more CPUs, such as CPU0 and CPU1 in fig. 4.
As an alternative implementation, the communication apparatus 400 includes a plurality of processors, for example, the processor 407 may be included in addition to the processor 401 in fig. 4.
As an alternative implementation, the communication apparatus 400 further comprises an output device 405 and an input device 406. Illustratively, the input device 406 is a keyboard, mouse, microphone, or joystick device, and the output device 405 is a display screen, speaker (spaker), or the like.
It should be noted that the communication apparatus 400 may be a desktop computer, a portable computer, a web server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system, or a device having a similar structure as in fig. 3. Furthermore, the constituent structure shown in fig. 3 does not constitute a limitation of the terminal device, and the terminal device may include more or less components than those shown in fig. 3, or may combine some components, or may be arranged in different components, in addition to those shown in fig. 3.
In the embodiment of the application, the chip system may be formed by a chip, and may also include a chip and other discrete devices.
The resource allocation method provided by the embodiment of the application is described in detail below with reference to the accompanying drawings.
As shown in fig. 5, a method for configuring resources according to an embodiment of the present application may include:
step 501, the resource allocation device receives the first allocation information.
The resource allocation device may be the resource allocation device of fig. 3, or may have the structure of fig. 4, or may have a partial structure of fig. 4. For example, the resource allocation means may have the hardware resource pool of fig. 3.
The first configuration information may be used to indicate a first hardware resource configured by a user for a target UPF. For example, the first configuration information may include network element information of the target UPF, an identification (e.g., CPU, GPU) of a plurality of hardware resources configured for the target UPF, and a corresponding number. The plurality of hardware resources may be hardware resources in a hardware resource pool. The target UPF may be any of the UPFs in FIG. 3, for example, UPF1 or UPFn, without limitation.
It should be noted that the hardware resource in the first configuration information refers to hardware that can be called. That is, the hardware resource in the first configuration information is a hardware resource to which the driver has been loaded. In addition, if the hardware resource included in the first configuration information does not exist in the hardware resource pool, the resource configuration device may output a notification message for notifying the newly added hardware resource, so that the communication carrier may newly add hardware for the hardware resource pool. Or if the hardware resources included in the first configuration information in the hardware resource pool are in an idle state, the resource configuration device may load the application program of the hardware in the first configuration information. The resource configuration information may be an application program in which a plurality of hardware are stored in advance. Alternatively, the resource configuration information may be obtained from other devices, such as a core network element, or a network download, without limitation.
In one possible implementation, the resource allocation device may store hardware resource information that may be invoked by multiple UPFs. Such as the serial number of the hardware. For example, the hardware resource information that the plurality of UPFs can invoke may be stored in the form of a table or array. Therefore, the resource allocation device can quickly and accurately determine the corresponding hardware resource information according to the UPF.
In one example, the first configuration information may be formed as UPFn-A-X. Where "UPFn" represents a target UPF, "A" represents a hardware name, and "X" represents a serial number of the hardware. For example, the first configuration information includes UPF1-CPU-1, UPF1-GPU-2, UPF1-GPU-3, and then the hardware resources configured for UPF1 by the first configuration information are CPU with serial number 1, and GPU with serial numbers 2 and 3. That is, the first configuration information includes 1 CPU and 2 GPUs.
In one possible implementation, the user may input the first configuration information through an input device of the UPF hardware configuration system. For example, the user may input the first configuration information through the user configuration unit. Correspondingly, the resource allocation device receives first allocation information from the UPF hardware allocation system.
Step 502, the resource allocation device obtains the resource usage rate of the target UPF and the usage rate of the first hardware resource.
The resource usage rate of the target UPF refers to the hardware resource usage rate of the target UPF. For example, the hardware resources of the target UPF may refer to the CPU of the target UPF itself.
It should be noted that in the case where the target UPF is itself configured with a plurality of different types of hardware, the hardware usage of the target UPF may refer to a mean or weighted average or median of the plurality of different types of hardware usage.
Further, to relieve the computing pressure, the usage rate of the target UPF may be the hardware usage rate in an operating state.
The usage rate of the first hardware resource may refer to a current usage condition of the first hardware resource. For example, if the first hardware resource includes 2 GPUs, the usage of the first hardware resource refers to the average of the current usage of the 2 GPUs. For another example, if the first hardware resource includes 1 GPU and 1 and CPU, the usage of the first hardware resource refers to the current usage of the GPU, the average, weighted average, maximum or minimum of the current usage of the CPU.
In step 503, the resource allocation device adjusts the first configuration information according to the resource usage rate of the target UPF and the usage rate of the first hardware resource.
The adjusted first configuration information can meet the requirement of target UPF use and is also matched with the hardware state in the hardware resource pool. The adaptation to the hardware state means that the current utilization rate of the hardware is within a preset range. The preset range can be set according to the needs and is not limited.
Wherein adjusting the first configuration information may refer to modifying the first configuration information. Adjusting the first configuration information may include adding hardware resources of the target UPF, deleting applications of the first hardware resources, adding applications of the second hardware resources. The second hardware resource is a hardware resource newly added by the resource allocation device for the target UPF.
In one example, the resource configuration device may modify the identity, number of hardware in the first configuration information. Thus, the target UPF can call the resource according to the modified first configuration information.
For example, taking a case that the first configuration information includes UPF1-CPU-1, UPF1-GPU-2 and UPF1-GPU-3, the CPU-1 is the CPU configured by UPF1, and the GPU-2 and GPU-3 are GPUs in a hardware resource pool. The modified first configuration information may include UPF1-CPU-2, UPF1-GPU-2. That is, CPU-1 is replaced with CPU-2 configured by UPF1 itself, and GPU-3 is deleted. Wherein deleting GPU-3 may refer to deleting an application of GPU-3.
Further, the target UPF may configure hardware resources for the target UPF according to the modified first configuration information.
In one possible implementation, the resource allocation device may determine whether the resource usage rate of the target UPF and the usage rate of the first hardware resource exceed a preset threshold. If yes, the first configuration information is adjusted; if not, configuring hardware resources for the target UPF according to the first configuration information.
The preset threshold may be set as required, for example, the preset threshold may be a threshold of an input device of the user through the resource configuration device. For example, the preset threshold corresponding to the resource usage rate of the target UPF may be 20% and 90%, and the preset threshold corresponding to the first hardware usage rate may be 30% and 80%, which is not limited.
Further, to facilitate the manager to configure the hardware resources of the hardware resource pool for the target UPF. In this embodiment of the present application, after obtaining a preset threshold value corresponding to each hardware resource in a hardware resource pool, the resource allocation device may detect a usage rate of each hardware resource. For example, the resource allocation means may randomly or periodically detect the usage of each hardware resource. When the usage rate of the hardware resources is high (e.g., greater than 80%), the resource allocation device may output notification information indicating that the load of the hardware resources is high. When the usage rate of the hardware resources is low (e.g., less than 20%), the resource allocation means may output notification information indicating that the load of the hardware resources is low. Therefore, when the manager configures the hardware resource for the target UPF, the manager can flexibly select the available hardware resource according to the notification message output by the resource configuration device.
Step 503 is described below in conjunction with the plurality of preset thresholds.
1. If the resource usage of the UPF is less than 20%, this means that the load of the target UPF is smaller.
1. If the target UPF has a smaller load, the resource allocation device may delete the driver and the application of the first hardware if the first hardware usage is less than 30%. In this way, the first hardware may be put in an idle state.
It should be noted that, the hardware in the idle state may be called by other UPFs. For example, the resource allocation device may load the hardware in the idle state with the corresponding application program and network element information of other UPFs. As such, other UPFs may use this hardware for data processing.
Further, before deleting the application program of the first hardware resource, if the first hardware resource is performing data processing, the resource allocation device may use the first hardware resource to continue data processing until the first hardware resource finishes processing data.
For example, the first configuration information includes UPF1-CPU-1, UPF1-GPU-2, UPF1-GPU-3. If the resource usage rate of the UPF1 is less than 20% and the usage rate of the first hardware resource is less than 30%, the resource allocation device may delete the driver and the application program of the CPU-1. Thus, the adjusted first configuration information can be UPF1-GPU-2 and UPF1-GPU-3.
2. In the case where the load of the target UPF is small, if the first hardware usage is greater than 80%, this means that the load of the first hardware resource is large. In the case that the load of the first hardware resources is large, the resource allocation device may add one or more first hardware resources to the UPF.
It should be noted that the one or more newly added first hardware resources may be first hardware resources in an idle state.
For example, taking the first hardware resource as the GPU, both GPU-4 and GPU-5 in the hardware resource pool are in idle states. The resource allocation device may load the GPU-4 and/or GPU-5 with the corresponding application and network element information of the target UPF, so that the target UPF may use the GPU-4 and/or GPU-5 for data processing.
3. Under the condition that the load of the target UPF is smaller, if the first hardware utilization rate is greater than or equal to 30% and less than or equal to 80%, the first hardware resource can normally process data. In this case, the resource configuration means may configure the hardware resource for the target UPF according to the first configuration information.
2. If the resource usage of the target UPF is greater than 90%, this means that the resource load of the target UPF is large. Under the condition that the resource load of the target UPF is large, the resource allocation device can add a hardware resource for the target UPF.
In one example, if the target UPF is preconfigured with hardware in an idle state, the resource configuration means may load an application of the hardware; if the target UPF is not in the idle state hardware, the resource allocation device can input first notification information. The first notification information may be used to notify that hardware is to be added to the target UPF. For example, the first notification information may include an identification (e.g., sequence number) of the target UPF and the type and amount of hardware that needs to be newly added.
Further, in response to the operation of adding the hardware resource to the target UPF, the resource allocation device may load the corresponding driver and the software program according to the newly added hardware type, so that the hardware resource loading the driver and the software program may have the function of the target UPF.
Further, in response to the operation of adding the hardware resource to the hardware resource pool, the resource allocation device may load the responsive driver according to the newly added hardware type to activate the newly added hardware resource.
3. If the resource usage of the target UPF is greater than or equal to 20%, or less than or equal to 90%, this means that the target UPF can perform data processing normally. Under the condition that the target UPF can normally perform data processing, the resource configuration device can configure hardware resources for the target UPF according to the first configuration information.
Based on the technical scheme of fig. 5, after receiving the configuration information from the user, the resource configuration device can adjust the configuration information based on the resource utilization rate of the UPF and the hardware utilization rate in the hardware resource pool, so that the adjusted hardware can reasonably use the resources of the external device (such as the hardware resource pool) under the condition that the function of the UPF can be shared.
In a possible implementation manner, the method provided by the embodiment of the application may further include:
the resource allocation device receives a data processing request from a target UPF, wherein the data processing request is used for requesting to process first data; the resource allocation means processes the first data using the adjusted hardware resources.
In an application scenario, after receiving data to be processed from other network elements, the target UPF needs to perform DPI detection, for example. In order to quickly process the data, the target UPF may forward the data to the adjusted hardware resource through the API interface, so that the adjusted hardware resource may process the data.
Based on this possible implementation, the target UPF may process the data using hardware resources in the hardware resource pool, alleviating the pressure of the target UPF.
In another possible implementation manner, the method provided by the embodiment of the application may further include:
if the hardware resource pool does not have the hardware resource indicated by the first configuration information, the resource configuration device outputs a second notification message.
Wherein the second notification message may be used to indicate a hardware resource that cannot be configured. For example. The second notification message may include an identification of the hardware resource that is not configurable. In this case, the manager may add new hardware resources to the hardware resource pool.
Further, in the embodiment of the present application, in response to an operation of adding hardware to the hardware resource pool, the resource configuration device may acquire a driver and an application program of the added hardware. Therefore, under the condition that the new hardware needs to be called later, the resource allocation device can reduce the calling time according to the drive and the application program of the new hardware.
The various schemes in the embodiments of the present application may be combined on the premise of no contradiction.
The embodiment of the present application may divide the functional modules or functional units of the resource allocation device according to the above method example, for example, each functional module or functional unit may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated modules may be implemented in hardware, or in software functional modules or functional units. The division of the modules or units in the embodiments of the present application is merely a logic function division, and other division manners may be implemented in practice.
In the case of dividing the respective functional modules by the respective functions, fig. 6 shows a schematic configuration of a communication device 60, and the communication device 60 may be a resource allocation device or a chip applied to the resource allocation device, and the communication device 60 may be used to perform the functions of the resource allocation device according to the above-described embodiment. The communication device 60 shown in fig. 6 may include: a communication unit 602, a processing unit 601, and a hardware resource pool 603.
The communication unit 602 is configured to receive first configuration information, where the first configuration information is used to indicate a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a resource in a hardware resource pool.
The communication unit 602 is further configured to obtain a resource usage rate of the target user plane network element and a resource usage rate of the first hardware.
The processing unit 601 is configured to adjust the first configuration information according to a resource usage rate of the target user plane network element and a resource usage rate of the first hardware.
The specific implementation of the communication device 60 may refer to the behavior function of the resource allocation device in the resource allocation method shown in fig. 5.
In one possible design, the communication device 60 shown in FIG. 6 may also include a storage unit 604. The memory unit 604 is used for storing program codes and instructions.
In one possible design, the processing unit 601 is specifically configured to: judging whether the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource exceed a preset threshold value; and if the first configuration information exceeds the first configuration information, adjusting the first configuration information.
In a possible design, the processing unit 601 is further configured to: if the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource do not exceed the preset threshold, the resource configuration is carried out on the target user plane network element according to the first configuration information.
In one possible design, the adjusting the first configuration information includes: and adding one or more of hardware resources of the target user plane network element, deleting the application program of the first hardware resource and adding the application program of the second hardware resource, wherein the second hardware resource is the newly added hardware resource of the target user plane network element.
As yet another implementation, the processing unit 601 in fig. 6 may be replaced by a processor, which may integrate the functions of the processing unit 601. The communication unit 602 in fig. 6 may be replaced by a transceiver or a transceiving unit, which may integrate the functionality of the communication unit 602.
Further, when the processing unit 601 is replaced by a processor and the communication unit 602 is replaced by a transceiver or a transceiver unit, the communication device 60 according to the embodiment of the present application may be the communication device shown in fig. 2.
Embodiments of the present application also provide a computer-readable storage medium. All or part of the flow in the above method embodiments may be implemented by a computer program to instruct related hardware, where the program may be stored in the above computer readable storage medium, and when the program is executed, the program may include the flow in the above method embodiments. The computer readable storage medium may be an internal storage unit of the communication device (including the data transmitting end and/or the data receiving end) of any of the foregoing embodiments, for example, a hard disk or a memory of the communication device. The computer readable storage medium may be an external storage device of the terminal apparatus, for example, a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash card (flash card), or the like, which are provided in the terminal apparatus. Further, the computer readable storage medium may further include both an internal storage unit and an external storage device of the communication apparatus. The computer-readable storage medium is used to store the computer program and other programs and data required by the communication device. The above-described computer-readable storage medium may also be used to temporarily store data that has been output or is to be output.
It should be noted that the terms "first" and "second" and the like in the description, claims and drawings of the present application are used for distinguishing between different objects and not for describing a particular sequential order. Furthermore, the terms "comprise" and "have," as well as any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those listed steps or elements but may include other steps or elements not listed or inherent to such process, method, article, or apparatus.
It should be understood that, in the present application, "at least one (item)" means one or more, "a plurality" means two or more, "at least two (items)" means two or three and three or more, "and/or" for describing an association relationship of an association object, three kinds of relationships may exist, for example, "a and/or B" may mean: only a, only B and both a and B are present, wherein a, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship. "at least one of" or the like means any combination of these items, including any combination of single item(s) or plural items(s). For example, at least one (one) of a, b or c may represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", wherein a, b, c may be single or plural.
From the foregoing description of the embodiments, it will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of functional modules is illustrated, and in practical application, the above-described functional allocation may be implemented by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to implement all or part of the functions described above.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the modules or units is merely a logical functional division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another apparatus, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and the parts displayed as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions for causing a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk, etc.
The foregoing is merely a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (11)

1. A resource allocation method, applied to a resource allocation device, the resource allocation device including a hardware resource pool, the hardware resource pool being provided with a plurality of types of hardware resources, the method comprising:
the resource allocation device receives first allocation information, wherein the first allocation information is used for indicating a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a resource in the hardware resource pool;
the resource allocation device obtains the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource;
the resource allocation device adjusts the first allocation information according to the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource.
2. The method according to claim 1, wherein the resource allocation means adjusts the first configuration information according to the resource usage of the target user plane network element and the usage of the first hardware resource, including:
The resource allocation device judges whether the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource exceed a preset threshold value;
and if the first configuration information exceeds the first configuration information, the resource configuration device adjusts the first configuration information.
3. The method according to claim 2, wherein the method further comprises:
and if the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource do not exceed a preset threshold, the resource configuration device configures the resource of the target user plane network element according to the first configuration information.
4. A method according to any one of claims 1-3, wherein said adjusting the first configuration information comprises: adding one or more of hardware resources of the target user plane network element, deleting the application program of the first hardware resource, network element information of the target user plane network element and adding application programs of second hardware resources, wherein the second hardware resources are newly added hardware resources of the target user plane network element.
5. The method according to claim 4, wherein the method further comprises:
the resource allocation device receives a data processing request from the target user plane network element, wherein the data processing request is used for requesting to process first data;
The resource allocation means processes the first data using the adjusted hardware resources.
6. A resource allocation device, characterized in that the resource allocation device comprises a hardware resource pool, the hardware resource pool comprises a plurality of types of hardware resources, and the resource allocation device further comprises a communication unit and a processing unit;
the communication unit is configured to receive first configuration information, where the first configuration information is configured to indicate a first hardware resource configured by a user for a target user plane network element, and the first hardware resource is a resource in the hardware resource pool;
the communication unit is further configured to obtain a resource utilization rate of the target user plane network element and a utilization rate of the first hardware resource;
the processing unit is configured to adjust the first configuration information according to a resource usage rate of the target user plane network element and a usage rate of the first hardware resource.
7. The apparatus according to claim 6, wherein the processing unit is specifically configured to:
judging whether the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource exceed a preset threshold value;
And if the first configuration information exceeds the first configuration information, adjusting the first configuration information.
8. The apparatus of claim 7, wherein the processing unit is further configured to:
and if the resource utilization rate of the target user plane network element and the utilization rate of the first hardware resource do not exceed a preset threshold, configuring the resource of the target user plane network element according to the first configuration information.
9. The apparatus according to any of claims 6-8, wherein said adjusting the first configuration information comprises: adding one or more of hardware resources of the target user plane network element, deleting the application program of the first hardware resources and the network element information of the target user plane network element, and adding application programs of second hardware resources, wherein the second hardware resources are newly added hardware resources of the target user plane network element.
10. The apparatus of claim 9, wherein the device comprises a plurality of sensors,
the communication unit is further configured to receive a data processing request from the target user plane network element, where the data processing request is used to request processing of first data;
the processing unit is further configured to process the first data using the adjusted hardware resource.
11. A communication device, comprising: a processor, a memory, and a communication interface; wherein the communication interface is used for the communication of the communication device and other equipment or network; the memory is configured to store one or more programs, the one or more programs comprising computer-executable instructions that, when executed by the communication device, cause the communication device to perform the resource allocation method of any of claims 1 to 5.
CN202110528161.8A 2021-05-14 2021-05-14 Resource allocation method and device Active CN113282410B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110528161.8A CN113282410B (en) 2021-05-14 2021-05-14 Resource allocation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110528161.8A CN113282410B (en) 2021-05-14 2021-05-14 Resource allocation method and device

Publications (2)

Publication Number Publication Date
CN113282410A CN113282410A (en) 2021-08-20
CN113282410B true CN113282410B (en) 2023-06-23

Family

ID=77279326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110528161.8A Active CN113282410B (en) 2021-05-14 2021-05-14 Resource allocation method and device

Country Status (1)

Country Link
CN (1) CN113282410B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115102898B (en) * 2022-06-01 2023-07-07 中国联合网络通信集团有限公司 Communication method, device and storage medium
CN114884900B (en) * 2022-06-09 2023-10-31 中国联合网络通信集团有限公司 Resource allocation method, device, equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105009521A (en) * 2013-12-23 2015-10-28 华为技术有限公司 Message processing method and gateway
CN108307402A (en) * 2016-08-31 2018-07-20 中兴通讯股份有限公司 Manage the method, apparatus and system of UPF
CN109548079A (en) * 2017-09-22 2019-03-29 中兴通讯股份有限公司 A kind of method and device for the user-plane function management resource indicating communication system
CN110166580A (en) * 2018-02-13 2019-08-23 华为技术有限公司 Method, equipment and the system of resource management
CN111556530A (en) * 2020-04-26 2020-08-18 中国铁塔股份有限公司 Data processing method and UPF unit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3026841A1 (en) * 2017-12-08 2019-06-08 Comcast Cable Communications, Llc User plane function selection for isolated network slice
US11297534B2 (en) * 2019-08-09 2022-04-05 Cisco Technology, Inc. Intelligent and optimal resource selection within a network slice

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105009521A (en) * 2013-12-23 2015-10-28 华为技术有限公司 Message processing method and gateway
CN108307402A (en) * 2016-08-31 2018-07-20 中兴通讯股份有限公司 Manage the method, apparatus and system of UPF
CN109548079A (en) * 2017-09-22 2019-03-29 中兴通讯股份有限公司 A kind of method and device for the user-plane function management resource indicating communication system
CN110166580A (en) * 2018-02-13 2019-08-23 华为技术有限公司 Method, equipment and the system of resource management
CN111556530A (en) * 2020-04-26 2020-08-18 中国铁塔股份有限公司 Data processing method and UPF unit

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
5G核心网UPF硬件加速技术;王立文 等;《移动通信》(第1期);19-23,32 *
Suneet Kumar Singh 等.Offloading Virtual Evolved Packet Gateway User Plane Functions to a Programmable ASIC.《ENCP '19: Proceedings of the 1st ACM CoNEXT Workshop on Emerging in-Network Computing Paradigms》.2019,9-14. *
硬件加速在核心网转发面应用的思考和实践;王升 等;《中兴通讯技术》;第26卷(第3期);31-36 *

Also Published As

Publication number Publication date
CN113282410A (en) 2021-08-20

Similar Documents

Publication Publication Date Title
CN108781229B (en) Method and server for controlling relocation of session of application
CN109582472B (en) Micro-service processing method and device
KR101981334B1 (en) Mobile communication system and method applying distributed data packet handling
CN113282410B (en) Resource allocation method and device
AU2019256257B2 (en) Processor core scheduling method and apparatus, terminal, and storage medium
CN113821310A (en) Data processing method, programmable network card device, physical server and storage medium
US20140282528A1 (en) Virtualization Congestion Control Framework
US11818576B2 (en) Systems and methods for low latency cloud computing for mobile applications
CN107832142B (en) Resource allocation method and equipment for application program
Alsubhi et al. MEACC: an energy-efficient framework for smart devices using cloud computing systems
KR20210041085A (en) Data processing method, server, client device and media for security authentication
WO2017167688A1 (en) Methods and apparatuses for moving virtualized network function instances between network service instances
CN114489963A (en) Management method, system, equipment and storage medium of artificial intelligence application task
CN112332999A (en) Bandwidth allocation method, device, equipment and computer readable storage medium
CN112882826A (en) Resource cooperative scheduling method and device
CN116244231A (en) Data transmission method, device and system, electronic equipment and storage medium
CN106803804B (en) Method and device for transmitting message
CN111262771A (en) Virtual private cloud communication system, system configuration method and controller
CN116841720A (en) Resource allocation method, apparatus, computer device, storage medium and program product
CN111857941B (en) Security policy management method and device
CN114270309A (en) Resource acquisition method and device and electronic equipment
WO2019128538A1 (en) Information processing method, and mobile terminal and computer-readable storage medium
US20240111599A1 (en) Code execution on a distributed unit
CN116192545A (en) Global broadcasting method, apparatus, electronic device and storage medium
CN113905099A (en) Method, device, server, terminal and storage medium for controlling reporting request

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant