Resource Allocation Method and Device
The network equipment with available resources is identified and allocated in the communication network through the network controller, which solves the problem of excessive resource consumption of network equipment, improves the user's network usage experience and improves resource utilization efficiency.
Patent Information
- Application Number
- CN202010397086.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-05-12
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2040-05-12
AI Technical Summary
In a communication network, when network equipment processes basic telecommunications services, if other services are activated, such as user identity authentication, intelligent application control, in-depth message detection or artificial intelligence big data analysis, it will lead to excessive resource consumption, affecting the access and message forwarding of user equipment, thereby reducing the user's network usage experience.
Receive a request message from a network device through a network controller, determines other network devices with available resources, and sends identification information of the other device to the requesting device, thereby transferring the pending services to the network device capable of providing resources for processing.
This method effectively reduces the resource consumption of network equipment, improves the network usage experience of user equipment, and improves resource utilization efficiency.
Smart Images

Figure CN113660726B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technologies, and in particular, to a resource allocation method and apparatus. Background Art
[0002] Currently, the services supported by network devices in a communication network (such as access switches, aggregation switches, wireless local area network access points (WLAN APs), or wireless access controllers (WACs), etc.) include basic telecommunications services and other services. Among them, the basic telecommunications services include: access of user equipment or packet forwarding, etc. Other services include services such as user identity verification, smart application control (SAC), deep packet inspection (DPI), or artificial intelligence (AI) big data analysis.
[0003] When there are relatively many basic telecommunications services of a network device, enabling other services will cause excessive consumption of the resources of the network device (such as processors, caches, memory, or disk bandwidth, etc.). In this way, it will affect the basic telecommunications services such as access of normal user equipment or packet forwarding of the network device, and further affect the user's network usage experience. Summary of the Invention
[0004] Embodiments of this application provide a resource allocation method and apparatus, which helps to reduce the resource consumption of network devices and improve the user's network usage experience.
[0005] To achieve the above object, the embodiments of this application adopt the following technical solutions:
[0006] In a first aspect, a resource allocation method is provided. The method is executed by a network controller and includes: receiving a request message from a first network device, where the request message is used to request available resources for a to-be-processed service; determining a second network device from one or more network devices other than the first network device according to the request message, where the second network device has first available resources capable of processing the to-be-processed service; and sending first identification information of the second network device to the first network device. The to-be-processed service is any one of the other services described in the background art. In this way, when the network controller determines that the second network device has first available resources capable of processing the to-be-processed service according to the request message of the first network device, the network controller can send the first identification information of the second network device to the first network device, thereby instructing the first network device to transfer the to-be-processed service of the first network device to the second network device for processing, which helps reduce the resource consumption of the first network device and improve the network usage experience of the user equipment connected to the first network device (i.e., improve the user experience). At the same time, the idle resources of the second network device can be utilized, improving the resource utilization efficiency. It can be understood that when there are relatively many basic telecommunications services on the first network device, the to-be-processed services (i.e., the other services described in the background art) of the first network device will cause the resource consumption of the first network device to be too high. At this time, the first network device can request resources from the network controller and send its to-be-processed services to the second network device that can provide resources for processing, thereby reducing the resource consumption of the first network device and improving the network usage experience of the user equipment accessing the first network device.
[0007] According to the first aspect, in a first possible implementation manner, the request message includes resource information required for the to-be-processed service, and the resource information includes a resource type and a resource quantity; or, the request message includes the type of the to-be-processed service and the quantity of the to-be-processed service. The type of the to-be-processed service includes user identity verification, SAC, DPI, or AI big data analysis, etc. In this way, when the request message includes the resource information required for the to-be-processed service, the network controller can determine the second network device according to the resource information required for the to-be-processed service, without obtaining the resource information required for the to-be-processed service according to the type of the to-be-processed service and the quantity of the to-be-processed service, improving the efficiency of the network controller in determining the second network device.
[0008] According to the first aspect or the first possible implementation manner of the first aspect, in a second possible implementation manner, when the request message includes the resource information required for the to-be-processed service, the resource type includes at least one of a computing resource type or a storage resource type.
[0009] According to any one of the first aspect to the second possible implementation manner of the first aspect, in the third possible implementation manner, when the request message includes the type of the service to be processed and the quantity of the service to be processed, the method further includes: obtaining the resource information required for the service to be processed according to the type of the service to be processed and the quantity of the service to be processed. In this way, the first network device does not need to obtain the resource information required for the service to be processed according to the type of the service to be processed and the quantity of the service to be processed, reducing the resource consumption of the first network device.
[0010] According to any one of the first aspect to the third possible implementation manner of the first aspect, in the fourth possible implementation manner, the determining, from one or more network devices other than the first network device according to the request message, the second network device includes: according to the request message, using a prediction model based on historical data, determining the second network device from one or more network devices, where the historical data includes the historical resource usage information of one or more network devices. In this way, the second network device determined by using the prediction model based on historical data refers to the past resource usage information of each network device, reducing the situation that the traffic volume of the second network device determined by the network controller itself increases, resulting in excessive resource consumption of the second network device.
[0011] According to any one of the first aspect to the fourth possible implementation manner of the first aspect, in the fifth possible implementation manner, the prediction model is used to predict the resource utilization trend of one or more network devices based on the historical resource usage information of one or more network devices. In this way, the second network device determined according to the resource utilization trend of one or more network devices can reduce the probability that the traffic volume of the second network device determined by the network controller increases in a very short future time period, resulting in excessive resource consumption of the second network device.
[0012] According to any one of the first aspect to the fifth possible implementation manner of the first aspect, in the sixth possible implementation manner, the determining, from one or more network devices other than the first network device according to the request message, the second network device includes: according to the request message and the available resource information of one or more network devices stored, determining the second network device from one or more network devices. In this way, determining the second network device according to the available resource information of one or more network devices currently stored can select the second network device whose current available resource information can meet the resource usage request of the first network device.
[0013] According to any one of the first aspect to the sixth possible implementation manners of the first aspect, in the seventh possible implementation manner, determining a second network device from one or more network devices other than the first network device according to the request message includes: determining a plurality of candidate network devices from a plurality of network devices other than the first network device according to the request message, and each of the plurality of candidate network devices has available resources capable of processing the service to be processed. Determining the second network device according to the network topology, where the second network device is a network device that meets the preset topology condition among the plurality of candidate network devices. In this way, the network controller can select, according to the topology structure of the network, a network device that is in the same local area network as the first network device, is under the same network device as the first network device, or meets the preset condition as the second network device. The first network device can conveniently send the service to be processed to the second network device for processing.
[0014] According to any one of the first aspect to the seventh possible implementation manners of the first aspect, in the eighth possible implementation manner, the method further includes: receiving resource usage information of one or more network devices sent by the one or more network devices, where the resource usage information includes available resource information, or the resource usage information includes used resource information. Determining the second network device from one or more network devices according to the request message includes: determining the second network device from the one or more network devices according to the request message and the resource usage information of the one or more network devices. In this way, the network controller can train a prediction model according to the resource usage information of one or more network devices sent by the received one or more network devices, or directly determine the second network device according to the resource usage information of one or more network devices sent by the received one or more network devices.
[0015] According to any one of the first aspect to the eighth possible implementation manners of the first aspect, in the ninth possible implementation manner, the method further includes: determining a third network device from one or more network devices according to the request message, where the third network device has second available resources capable of processing the service to be processed. Sending the first identification information of the second network device and the information of the first available resources, as well as the second identification information of the third network device and the information of the second available resources to the first network device. In this way, when any one of the one or more network devices cannot completely process the service to be processed, the network controller can determine two network devices to process the service to be processed of the first network device.
[0016] Second aspect, a resource allocation method is provided. This method is executed by a first network device, which is any network device connected to a network controller. The method includes: sending a request message to the network controller, where the request message is used to request available resources for a to-be-processed service request. Receiving first identification information of a second network device sent by the network controller, where the second network device has first available resources capable of processing the to-be-processed service. Among them, the to-be-processed service is any one of the other services described in the background art. Sending a first sub-service to the second network device according to the first identification information, where the first sub-service belongs to the to-be-processed service. In this way, the first network device can request available resources from the network controller and, according to the requested available resources, send the to-be-processed service to the network device providing the available resources for processing, which helps reduce the resource consumption of the first network device and improve the network usage experience of the user equipment connected to the first network device (i.e., improve the user experience).
[0017] According to the second aspect, in the first possible implementation manner of the second aspect, the request message includes resource information required for the to-be-processed service, and the resource information includes a resource type and a resource quantity. Alternatively, the request message includes the type of the to-be-processed service and the quantity of the to-be-processed service. Among them, the type of the to-be-processed service includes user identity verification, SAC, DPI, or AI big data analysis, etc. In this way, when the request message includes the type of the to-be-processed service and the quantity of the to-be-processed service, the first network device does not need to obtain the resource information required for the to-be-processed service according to the type of the to-be-processed service and the quantity of the to-be-processed service.
[0018] According to the second aspect or the first possible implementation manner of the second aspect, in the second possible implementation manner of the second aspect, when the request message includes the resource information required for the to-be-processed service, the resource type includes at least one of a computing resource type or a storage resource type.
[0019] According to any one of the second aspect to the second possible implementation manner of the second aspect, in the third possible implementation manner of the second aspect, the method further includes: obtaining information on the first available resources of the second network device from the network controller. The above-mentioned sending the first sub-service to the second network device according to the first identification information includes: sending the first sub-service to the second network device according to the information on the first available resources and the first identification information. In this way, the information on the first available resources represents the available resource information provided by the second network device for the first network device. The first network device sends the first sub-service that can be processed by the second network device to the second network device according to the available resource information, avoiding the situation where the quantity of the to-be-processed service sent by the first network device is too large and the second network device cannot process it or has too much processing pressure.
[0020] According to any one of the third possible implementation manners of the second aspect to the second aspect, in the fourth possible implementation manner of the second aspect, the method further includes: obtaining second identification information of a third network device from a network controller, where the third network device has second available resources capable of processing a to-be-processed service. According to the second identification information, sending a second sub-service to the third network device, where the second sub-service belongs to the to-be-processed service. In this way, the first network device can not only distribute the first sub-service in the to-be-processed service to the second network device for processing, but also send the second sub-service of the to-be-processed service to the third network device for processing. This avoids the situation where all to-be-processed services are sent to the same network device for processing, resulting in a significant increase in the resource consumption of this network device.
[0021] According to any one of the third possible implementation manners of the second aspect to the second aspect, in the fifth possible implementation manner of the second aspect, before sending a request message to the network controller, the method further includes: obtaining resource usage information of the first network device, where the resource usage information includes at least one of available resource information or used resource information. The above-mentioned sending a request message to the network controller includes: when the resource usage information of the first network device meets a condition, sending a request message to the network controller, where, if the resource usage information includes used resource information, the condition includes that the used resource value in the used resource information is greater than or equal to a first threshold, and if the resource usage information includes available resource information, the condition includes that the available resource value in the available resource information is less than or equal to a second threshold. In this way, when the first network device obtains that its current resource usage information meets a certain condition, that is, when the current available resources are insufficient, it can request available resources from the network controller, avoiding excessive resource consumption of the first network device.
[0022] According to any one of the third possible implementation manners of the second aspect to the second aspect, in the sixth possible implementation manner of the second aspect, the method further includes: receiving a third to-be-processed service sent by a fourth network device. Obtaining a processing result of the third to-be-processed service. Sending the processing result of the third to-be-processed service to the fourth network device and releasing the resources for processing the third to-be-processed service. In this way, when the first network device is relatively idle, it can also help process the third to-be-processed service of the fourth network device, thereby reducing the resource consumption of the fourth network device.
[0023] In a third aspect, a network controller is provided, and the network controller can be used to execute any one of the methods provided in any one of the possible implementation manners of the first aspect to the first aspect.
[0024] According to the third aspect, in the first possible implementation manner of the third aspect, the network controller includes a plurality of functional modules, and the plurality of functional modules are respectively used to execute the corresponding steps in any one of the methods provided in the first aspect.
[0025] According to a third aspect, in a second possible implementation manner of the third aspect, the network controller may include a processor configured to execute any of the methods provided in any of the first aspect to any possible implementation manner of the first aspect. The network controller may further include a memory configured to store a computer program, so that the processor can call the computer program to execute any of the methods provided in any of the first aspect to any possible implementation manner of the first aspect.
[0026] A fourth aspect provides a network device, which can be used to execute any of the methods provided in any possible implementation manner of the second aspect. Exemplarily, the network device may be any one of a wireless access point, a wireless access controller, a core switch, an aggregation switch, an access switch, etc.
[0027] According to the fourth aspect, in a first possible implementation manner of the fourth aspect, the network device includes a plurality of functional modules, which are respectively configured to execute corresponding steps in any of the methods provided in the second aspect. The plurality of functional modules may be implemented in hardware or software.
[0028] According to the fourth aspect, in a second possible implementation manner of the fourth aspect, the network device may include a processor configured to execute any of the methods provided in any of the second aspect to any possible implementation manner of the second aspect. The network device may further include a memory configured to store a computer program, so that the processor can call the computer program to execute any of the methods provided in any of the second aspect to any possible implementation manner of the second aspect.
[0029] A fifth aspect provides a computer-readable storage medium, such as a non-transitory computer-readable storage medium. A computer program (or instruction) is stored thereon. When the computer program (or instruction) runs on a computer, the computer is caused to execute any of the methods provided in the first aspect or any possible implementation manner of the first aspect.
[0030] A sixth aspect provides a computer-readable storage medium, such as a non-transitory computer-readable storage medium. A computer program (or instruction) is stored thereon. When the computer program (or instruction) runs on a computer, the computer is caused to execute any of the methods provided in the second aspect or any possible implementation manner of the second aspect.
[0031] A seventh aspect provides a computer program product, which when running on a computer, causes any of the methods provided in the first aspect or any possible implementation manner of the first aspect to be executed.
[0032] In an eighth aspect, there is provided a computer program product which, when running on a computer, causes any method provided by any possible implementation of the second aspect to be executed.
[0033] In a ninth aspect, there is provided a chip, including: a processor for calling and running a computer program stored in a memory to execute any method provided by the first aspect or any possible implementation of the first aspect.
[0034] In a tenth aspect, there is provided a chip, including: a processor for calling and running a computer program stored in a memory to execute any method provided by the second aspect or any possible implementation of the second aspect.
[0035] It can be understood that any of the above-provided network controllers, network devices, computer-readable storage media, computer program products, or chips, etc. can be applied to the corresponding methods provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding methods, which will not be elaborated here. Description of the Drawings
[0036] Figure 1 Schematic diagram of the network architecture applicable to the embodiments of the present application;
[0037] Figure 2 Schematic diagram of the network structure applicable to the embodiments of the present application;
[0038] Figure 3 Schematic diagram of the structure of the communication device applicable to the embodiments of the present application;
[0039] Figure 4 Schematic diagram of the process flow in the initialization stage of a resource allocation method provided by the embodiments of the present application;
[0040] Figure 5 Schematic diagram of the process flow in the resource allocation stage of a resource allocation method provided by the embodiments of the present application;
[0041] Figure 6 Schematic diagram of the process flow in the resource allocation stage of another resource allocation method provided by the embodiments of the present application;
[0042] Figure 7 Schematic diagram of the structure of a network controller provided by the embodiments of the present application;
[0043] Figure 8 Schematic diagram of the structure of a network device provided by the embodiments of the present application. Detailed Embodiments
[0044] In the embodiments of the present application, words such as "exemplary" or "for example" are used to give 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.
[0045] In the embodiments of the present application, "at least one" means one or more. "Multiple" means two or more.
[0046] In the embodiments of the present application, "and / or" is merely a relationship description of associated objects, indicating that three relationships can exist. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone. Additionally, in this document, the character " / " generally indicates that the associated objects before and after are in an "or" relationship.
[0047] In the embodiments of the present application, a combination includes one or more objects.
[0048] In the embodiments of the present application, basic telecommunications services refer to services that provide public network infrastructure, public data transmission, and basic voice communication services. For example: access of user equipment or packet forwarding, etc.
[0049] Other services refer to services such as user identity verification, SAC, DPI, or AI big data analysis.
[0050] All the services to be processed mentioned in the present application refer to other services.
[0051] Before introducing the resource allocation method provided by the embodiments of the present application in detail, the application scenarios and implementation environments involved in the embodiments of the present application are briefly introduced here.
[0052] The network in the embodiments of the present application can be a campus network. A campus network generally refers to the campus network of a university and the internal network of an enterprise. The main feature of a campus network is that the routing structure is completely managed by an institution. The network mentioned in the embodiments of the present application is not limited to the campus network. The application scenario of the embodiments of the present application includes that when there are too many basic telecommunications services on the first network device in the network and other services are enabled, the problem of excessive resource consumption of the first network device will occur. Among them, the first network device is any network device connected to the network controller. In this way, it will affect the basic telecommunications services such as the access of normal user equipment or packet forwarding of the first network device, and further affect the network usage of the user equipment accessing the first network device.
[0053] In the embodiment of the present application, the network controller receives a request message from a first network device, and determines, according to the available resources requested in the request message, a second network device that can provide the first available resources capable of processing the to-be-processed service of the first network device for the first network device. In this way, the network controller can send the first identification information of the second network device to the first network device, thereby instructing the first network device to transfer the to-be-processed service of the first network device to the second network device for processing. This helps to reduce the resource consumption of the first network device and improve the user's network usage experience. At the same time, the idle resources of the second network device can be utilized, improving the resource utilization efficiency.
[0054] As Figure 1 shown, it is a schematic diagram of the network architecture applicable to the embodiment of the present application. Figure 1 The network architecture shown may include a network controller 101 and multiple network devices 102. Figure 1 In the following, two network devices 102 are taken as an example for illustration. Among them, the network controller 101 is connected to each network device 102 through a network. The embodiment of the present application does not limit the connection manner between the network controller 101 and the network device 102. In one possible implementation manner, the network controller 101 is directly connected to the network device 102. In another possible implementation manner, the network controller 101 is indirectly connected to the network device 102.
[0055] The network controller 101 is responsible for the registration of the network devices 102 in the network, the collection of the available resources of each network device 102, the trend prediction of the resource usage information of each network device 102, and the centralized scheduling of the resources in the network device 102, etc.
[0056] The network device 102 feeds back resource usage information to the network controller 101 and responds to the scheduling of the network controller 101.
[0057] It should be noted that Figure 1 the network structures of the network controller 101 and the network device 102 shown in the actual network can be Figure 2 the network structures shown. As Figure 2 shown in the schematic diagram of the network structure applicable to the embodiment of the present application, the network device 102 can be any one of a wireless access point (AP), a wireless access controller (WAC), a core switch, an aggregation switch, an access switch, etc. Among them, the "core switch and WAC" are directly connected to the network controller 101, and the aggregation switch, the access switch, and the wireless access point are indirectly connected to the network controller 101.
[0058] Both the above-mentioned network controller 101 and the network device 102 can be implemented by a communication device 30 as shown in Figure 3 . The communication device 30 may include at least one processor 301, a communication line 302, a memory 303, and at least one communication interface 304.
[0059] The processor 301 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the solution of the present application.
[0060] The communication line 302 may include a path for transmitting information between the above-mentioned components (such as at least one processor 301, the communication line 302, the memory 303, and at least one communication interface 304).
[0061] The communication interface 304 uses any device such as a transceiver to communicate with other devices or communication networks, such as a wide area network (WAN), a local area network (LAN), etc.
[0062] The memory 303 can be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 303 can exist independently and be connected to the processor 301 through the communication line 302. The memory 303 can also be integrated with the processor 301. The memory 303 provided in the embodiments of the present application generally can have non-volatility. Among them, the memory 303 is used to store computer instructions for executing the solution of the present application and is controlled by the processor 301 to execute. The processor 301 is used to execute the computer instructions stored in the memory 303, so as to implement the method provided in the following embodiments of the present application.
[0063] Optionally, the computer instructions in the embodiments of the present application can also be referred to as application program codes, and the embodiments of the present application do not make specific limitations thereto.
[0064] In a specific implementation, as an embodiment, the communication device 30 can include multiple processors, and each of these processors can be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. The processor here can refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).
[0065] In a specific implementation, as an embodiment, the communication device 30 may further include an output device 305 and / or an input device 306. The output device 305 communicates with the processor 301 and can display information in various ways. For example, the output device 305 may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. The input device 306 communicates with the processor 301 and can receive user input in various ways. For example, the input device 306 may be a mouse, a keyboard, a touch screen device, or a sensing device, etc.
[0066] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments.
[0067] The technical solutions provided by the embodiments of the present application include: an initialization phase and a resource allocation phase. Hereinafter, these two phases will be described separately:
[0068] Initialization phase
[0069] As Figure 4 shown is a schematic flowchart of the initialization phase of a resource allocation method provided by an embodiment of the present application. Exemplarily, this embodiment can be applied to Figure 1 the network architecture shown, that is, the following network device may be network device 102, and the network controller may be network controller 101. Figure 4 The method shown may include the following steps:
[0070] S100: The network device sends a registration message to the network controller. Among them, the network device is any network device connected to the network controller. The registration message may include the total resource information of the network device.
[0071] It should be noted that after the network device is powered on, each network device that establishes a connection with the network controller can send a registration message to the network controller, or a registration message is carried in the request message for establishing a connection sent by the network device to the network controller. This registration message is used to inform the network controller that the resources of the network device sending the registration message can be shared with other network devices in the network.
[0072] When the registration message includes the total resource information of the network device, for example, the total resource information of the network device may include: the computing power of the network device's processor is 800MHZ×3700, the memory of the network device is 5G, the flash storage space of the network device is 5G, and the total bandwidth of the network device is 1000Mbps.
[0073] S101: The network device sends resource usage information to the network controller.
[0074] The network device that has sent the registration message can periodically send resource usage information to the network controller. Among them, the resource usage information includes available resource information, or the resource usage information includes used resource information. The resource allocation method provided by the embodiments of the present application is not affected by the triggering conditions for the network device to send resource usage information to the network controller. Therefore, the network device can actively send resource usage information to the network controller, or can also send resource usage information to the network controller after receiving a request message from the network controller requesting to obtain resource usage information.
[0075] When the resource usage information of the network device includes available resource information, for example, the available resource information of the network device includes: the available computing power of the network device's processor is 800MHZ×3700×70%, the remaining memory of the network device is 5G×75%, the remaining flash storage space of the network device is 5G×60%, and the remaining bandwidth of the network device is 600Mbps. As another example, since the network controller may have obtained the total resource information of the network device during the registration phase, the available resource information sent by the network device can also be the resource occupancy ratio, rather than the specific value of the available resource. For example, the available resource information sent by the network device to the network controller can be that the available computing power of the processor is 70%, the remaining memory of the network device is 75%, the remaining flash storage space of the network device is 60%, and the remaining bandwidth of the network device is 60%.
[0076] Figure 4 The above is described by taking one network device as an example. It can be understood that all network devices that can share resources with other network devices and are connected to the network controller can execute S100~S101. It can also be understood that the above S100 may not be executed, and S101 can be directly executed.
[0077] S102: The network controller stores the available resource information of each network device according to the received resource usage information of each network device, or the network controller can train a prediction model according to the received resource usage information of each network device in different historical periods.
[0078] In one case, when the resource usage information sent by a network device includes available resource information, the network device stores the available resource information of each network device.
[0079] In another case, when the resource usage information sent by a network device includes used resource information, the network device obtains and stores the available resource information of each network device according to the used resource information and the total resource information.
[0080] The network controller can train a prediction model according to the resource usage information of each network device in different historical periods received. Among them, the prediction model can be used to predict the resource utilization trend of one or more network devices based on the historical resource usage information of the one or more network devices, and obtain the resource list of each network device. The embodiments of the present application do not uniquely limit the method for the prediction model to predict the resource utilization trend of one or more network devices based on the historical resource usage information of the one or more network devices. Exemplarily, the prediction model uses algorithms such as Gaussian regression algorithm or neural network algorithm, based on the historical resource usage information of one or more network devices, predicts the resource utilization trend of the one or more network devices, and determines the network devices that can provide corresponding resources during the corresponding time periods when resources are needed according to the resource utilization trend of the one or more network devices.
[0081] Resource allocation phase
[0082] The following takes the perspective of the first network device as the resource requester and the second network device as the resource provider as an example to illustrate the resource allocation method provided by the embodiments of the present application. As Figure 5 shown is a schematic flowchart of the resource allocation phase of a resource allocation method provided by the embodiments of the present application. Exemplarily, this embodiment can be applied to Figure 1 the network architecture shown. Figure 5 The method shown may include the following steps:
[0083] S200: The first network device sends a request message to the network controller. The request message is used to request available resources for the service to be processed. Among them, the service to be processed may include services such as user identity verification, SAC, DPI, or AI big data analysis.
[0084] Optionally, the request message includes the resource information required for the service to be processed. The resource information includes the resource type and the resource quantity; or, the request message includes the type of the service to be processed and the quantity of the service to be processed. When the request message includes the resource information required for the service to be processed, the resource type includes at least one of the computing resource type or the storage resource type.
[0085] Exemplarily, the computing resource type includes a processor, and the storage resource type includes memory and external storage (such as flash storage space, cache, etc.). The resource information may include the computing power of the processor, the memory size, the bandwidth size, and the external storage size, etc.
[0086] Optionally, the first network device obtains the resource usage information of the first network device, and the resource usage information includes at least one of available resource information or used resource information. When the resource usage information of the first network device meets the condition, a request message is sent to the network controller. Among them, if the resource usage information includes used resource information, the condition includes that the used resource value in the used resource information is greater than or equal to a first threshold, and if the resource usage information includes available resource information, the condition includes that the available resource value in the available resource information is less than or equal to a second threshold.
[0087] Exemplarily, when the resource usage information includes used resource information, the condition may include at least one of the processor utilization rate of the first network device being greater than or equal to 80%, the memory utilization rate of the first network device being greater than or equal to 85%, the flash storage space utilization rate of the first network device being greater than or equal to 75%, and the bandwidth utilization rate of the first network device being greater than or equal to 90%.
[0088] S201: The network controller determines a second network device from one or more network devices other than the first network device according to the request message, and the second network device has the first available resources capable of processing the service to be processed.
[0089] When the request message includes the resource information required for the service to be processed:
[0090] According to different possible situations, the network controller can determine the second network device from one or more network devices other than the first network device according to the required resource information in the following different ways:
[0091] Method 1: When the network controller stores a prediction model based on historical data, the network controller determines the second network device from one or more network devices according to the required resource information, using the prediction model based on historical data. The second network device is the network device that can provide the resources indicated by the required resource information according to the prediction model. Among them, the historical data includes the historical resource usage information of one or more network devices.
[0092] Exemplarily, for instance, the network controller can obtain the historical resource usage of network device A in the past week and the historical resource usage of network device B during the same period. The network controller can analyze the resource utilization trends of network device A and network device B based on the obtained historical resource usages of network device A and network device B respectively, using prediction models such as the Gaussian regression algorithm or the neural network algorithm. If network device C sends a resource request message requesting the available resources from 12:00 am to 1:00 pm on the current day, the network controller can determine the network device that can provide the available resources according to the prediction result of the resource utilization trend. Specifically, for example, when the network controller receives the request message from network device C, the resource information requested in the request message includes a processor computing power of 800 MHz × 3700 × 20%. Through prediction, it is known that the processor computing power of network device A is approximately 800 MHz × 3700 × 10% from 12:00 am to 1:00 pm, and the processor computing power of network device B is approximately 800 MHz × 3700 × 80% from 12:00 am to 1:00 pm. Thus, it can be seen that network device A cannot meet the resources requested by network device C, while network device B can meet the resources requested by network device C. Therefore, the network controller determines network device B as the second network device and can send the identification information of network device B to network device C.
[0093] In this way, the second network device determined according to the resource utilization trend of the network device can reduce the probability that the determined second network device has an increase in traffic volume in a very short future time period, resulting in excessive resource consumption of the second network device.
[0094] Method 2: When the network controller stores the available resource information of each network device, the network controller determines the second network device from one or more network devices according to the required resource information and the stored available resource information of one or more network devices.
[0095] Exemplarily, the current available resource information of network device A is: the processor computing power is 800 MHz × 3700 × 10%, and the available resource information of network device B is: the processor computing power is 800 MHz × 3700 × 80%. The network controller receives the request message from network device C, and the resource information requested in the request message includes a processor computing power of 800 MHz × 3700 × 20%. The current processor computing power of network device A is less than the processor computing power requested by network device C, and the current processor computing power of network device B is greater than the processor computing power requested by network device C. Then, based on the resource usage information of network device A and network device B, the network controller will determine network device B as the second network device.
[0096] In some cases, the network controller may determine multiple network devices, including the second network device, as the network devices for processing the pending service of the first network device. That is, based on the required resource information, in addition to determining the second network device, the network controller may also determine one or more other network devices from one or more network devices as resource providers. For example, when the second network device has a first available resource capable of processing the pending service and the third network device has a second available resource capable of processing the pending service, the network controller may select both the second network device and the third network device as the network devices providing available resources to the first network device.
[0097] The network controller may determine the second network device and the third network device from one or more network devices according to the required resource information and the available resource information of one or more stored network devices; the network controller may also use a prediction model based on historical data to determine the second network device and the third network device.
[0098] When the available resource information of each currently known network device cannot satisfy the requirement of processing the pending service of the first network device alone, the network controller may determine multiple network devices as resource providers for the pending service at the same time. That is, in addition to determining the second network device for processing the first sub-service of the pending service, the network controller also determines the third network device for processing the second sub-service of the pending service.
[0099] It can be understood that the pending service of the first network device can be divided into multiple sub-services, and each sub-service may correspond to a processing result. For example, the pending service of the first network device is the authentication of 100 user identities. Then, the first sub-service may be the authentication of 40 user identities, and the second sub-service may be the authentication of 60 user identities. In this case, the processing results of the first sub-service and the second sub-service are relatively independent. It can be understood that in other possible cases, the processing results of the first sub-service and the second sub-service may also be somewhat related. For example, the first network device may continue to perform subsequent processing based on the processing results of the first sub-service and the second sub-service after the processing results of the first sub-service and the second sub-service are respectively returned.
[0100] Exemplarily, the current available resource information of network device A is: the processor computing power is 800 MHZ × 3700 × 10%, and the available resource information of network device B is: the processor computing power is 800 MHZ × 3700 × 80%. The network controller receives a request message from network device C, and the resource information requested by the request message includes a processor computing power of 800 MHZ × 3700 × 85%. In this way, the processor computing power of each of network device A and network device B cannot meet the processor computing power requested by the request message of network device C. The network controller can determine that network device A provides a processor computing power of 800 MHZ × 3700 × 5%, and network device B provides a processor computing power of 800 MHZ × 3700 × 80%.
[0101] In other possible scenarios, even when the network controller determines that the available resources of at least one network device can meet the pending service of the first network device alone, the network controller can still determine to use multiple network devices to jointly complete the pending service of the first network device. For example, it is determined that the second network device is used to process the first sub-service of the pending service, and the third network device is used to process the second sub-service of the pending service. In this way, it is possible to avoid excessive resource consumption of the second network device after the first network device sends the pending service to the second network device for processing.
[0102] When determining the network device for processing the pending service of the first network device, the network controller can also refer to the network topology relationship to determine the final network device for processing the pending service. For example, the network controller determines multiple candidate network devices from multiple network devices according to the required resource information, and all of these multiple candidate network devices have available resources capable of processing the pending service. At this time, the network controller determines the second network device according to the network topology, and the second network device is a network device that meets the preset topology conditions among the multiple candidate network devices. Among them, the preset topology conditions may include that the first network device and the second network device are mounted under a network device, the first network device and the second network device are in the same local area network, or the length of the topology path between the first network device and the second network device is less than a threshold, etc. The network controller stores the topology paths between each network device in the network.
[0103] Among them, the network controller determines multiple candidate network devices from multiple network devices according to the available resource information of one or more network devices stored, or the network controller determines multiple candidate network devices from multiple network devices by using a prediction model based on historical data. The resources of each candidate network device among the multiple candidate network devices determined by the network controller can satisfy the to-be-processed service of the first network device, or multiple network devices among the multiple candidate network devices determined by the network controller are all required to be used to process the to-be-processed service of the first network device. The embodiments of the present application do not make a unique limitation on this.
[0104] Exemplarily, the current available resource information of network device A is: the processor computing power is 800MHZ×3700×50%, and the resource usage information of network device B is: the processor computing power is 800MHZ×3700×80%. The network controller receives a request message from network device C, and the resource information requested in the request message includes a processor computing power of 800MHZ×3700×20%. In this way, the respective processor computing powers of network device A and network device B can satisfy the processor computing power requested in the request message of network device C. At this time, network device A and network device C are both connected to network device D and can communicate with each other through network device D, then the network controller determines that network device A provides available resources for network device C.
[0105] When the request message includes the type of the to-be-processed service and the quantity of the to-be-processed service, wherein, the type of the to-be-processed service includes user identity verification, SAC, DPI or AI big data analysis, etc. For example, when the type of the to-be-processed service is user identity verification, the quantity of the to-be-processed service is the number of user identities to be verified, and when the type of the to-be-processed service is SAC, DPI or AI big data analysis, the quantity of the to-be-processed service can be the number of packets forwarded by the network device.
[0106] First, the network controller obtains the resource information required for the to-be-processed service according to the type of the to-be-processed service and the quantity of the to-be-processed service.
[0107] The corresponding relationship between the "type of the to-be-processed service and the quantity of the to-be-processed service" and the "resource information required for the to-be-processed service" can be pre-stored in the network controller, or this corresponding relationship can be pre-stored in any network device connected to the network controller. The network controller can obtain the "resource information required for the to-be-processed service" corresponding to the "type of the to-be-processed service and the quantity of the to-be-processed service" according to this corresponding relationship.
[0108] Exemplarily, assume that the "type of business to be processed" in the request message is user authentication, and the number of businesses to be processed is 100. The pre-stored correspondence between the "type of business to be processed and the number of businesses to be processed" and the "resource information required for the business to be processed" is that one user authentication requires a processor computing power of 800 MHZ × 3700 × 0.05%, and the required device memory size is 1 M. According to this correspondence, the computing power required for this request message is 800 MHZ × 3700 × 0.05% × 100, and the required device memory size is 1 M × 100.
[0109] Secondly, the network controller determines a second network device from one or more network devices according to the required resource information. Specifically, referring to the above various possible implementation manners, it will not be elaborated here.
[0110] S202: The network controller sends the first identification information of the second network device to the first network device.
[0111] In one case, when the network controller determines that the second network device can provide all the required resource information requested by the first network device, the network controller sends the first identification information of the second network device to the first network device. Alternatively, the network controller sends the first identification information of the second network device and the available resource information of the second network device to the first network device.
[0112] In another case, when the network controller determines that the second network device can provide the first available resource information and the third network device can provide the second available resource information, the network controller sends the first identification information of the second network device and the information of the first available resource, as well as the second identification information of the third network device and the information of the second available resource, to the first network device.
[0113] It can be understood that the first identification information may be the Internet Protocol (IP) address of the second network device, or the Media Access Control (MAC) address of the second network device, or a device identifier that can be recognized by each network device within a certain network range, or any other possible identifier type, etc., as long as the first network device can determine the second network device that can receive the business to be processed according to the identification information after receiving the identification information sent by the network controller.
[0114] Subsequently, when the first network device only receives the first identification information of the second network device, the first network device sends the business to be processed to the second network device. After the second network device processes the business to be processed, the first network device receives the processing result sent by the second network device.
[0115] When the first network device receives the first identification information of the second network device and the information of the first available resources, as well as the second identification information of the third network device and the information of the second available resources, the first network device divides the service to be processed into a first sub-service and a second sub-service according to the information of the first available resources and the information of the second available resources. Among them, the first available resources are used to process the first sub-service, and the second available resources are used to process the second sub-service. The first network device sends the first sub-service to the second network device and sends the second sub-service to the third network device. After that, the first network device respectively receives the first processing result of the first sub-service sent by the second network device and the second processing result of the second sub-service sent by the third network device. It can be understood that the first network device can, according to actual service needs, only save after receiving one or more of the first processing result and the second processing result; or, it can also continue with subsequent service processing after receiving one or more of the first processing result and the second processing result.
[0116] In the embodiments of the present application, the network controller determines, according to the request message sent by the first network device, a second network device that can provide available resources for processing the service to be processed by the first network device. In this way, on the one hand, the first network device can send the service to be processed to the second network device for processing, thereby reducing the resource consumption of the first network device and improving the network usage experience of the user equipment accessing the first network device. On the other hand, due to the resource scheduling of the network controller, the idle resources of the second network device are utilized, and the resource utilization efficiency within the network is improved.
[0117] The following takes the fourth network device as the resource requester and the first network device as the resource provider as an example to illustrate the resource allocation method provided by the embodiments of the present application, as Figure 6 shown in the flowchart of the resource allocation phase of another resource allocation method provided by the embodiments of the present application. Exemplarily, this embodiment can be applied to Figure 1 the network architecture shown. The situation described by this method can be, for example, before the first network device still has a certain amount of available resources and thus does not need to execute the Figure 5 method shown, or it can also be when the first network device has available resources that can be used by other network devices after releasing its own resources after completing one or more services using the resources of other network devices. Figure 6 The method shown can include the following steps:
[0118] S300 - S302: Specifically refer to the execution steps in S200 - S202, replace the first network device with the fourth network device, and replace the second network device with the first network device, which will not be elaborated here.
[0119] S303: The fourth network device sends a second pending service to the first network device according to the received identification information of the first network device. Here, the second pending service is the pending service in the fourth network device. The second pending service includes services such as user identity verification, SAC, DPI, or AI big data analysis. In one case, when the fourth network device receives the third identification information of the first network device sent by the network controller, the fourth network device sends the second pending service to the first network device.
[0120] In another case, when the fourth network device receives the third identification information of the first network device and the information of the third available resources, the fourth network device sends a third sub-service to the first network device according to the third identification information of the first network device and the information of the third available resources. Here, the third sub-service belongs to the second pending service. The third available resources can be used to process the third sub-service.
[0121] It should be noted that the pending services of the fourth network device can be divided into multiple sub-services, and each sub-service has a corresponding processing result. For example, the pending service of the first network device is the verification of 100 user identities. Then, the third sub-service can be the verification of 40 user identities, and the fourth sub-service can be the verification of 60 user identities.
[0122] S304: The first network device obtains the processing result of the second pending service.
[0123] Exemplarily, the first network device receives the service of verifying 100 user identities sent by the fourth network device. The first network device obtains the verification results of the 100 user identities.
[0124] S305: The first network device sends the processing result to the fourth network device.
[0125] Based on the example in S304, the first network device sends the verification results of the 100 user identities to the fourth network device.
[0126] S306: The first network device releases the resources used to process the second pending service.
[0127] Subsequently, after the first network device releases the resources, it can obtain its own resource usage information and send the latest resource usage information to the network controller. This resource usage information is used by the network controller to update and maintain the available resource information of the first network device.
[0128] In the embodiments of the present application, the network controller determines, according to a request message sent by a fourth network device, a first network device that can provide available resources for processing the service to be processed by the fourth network device. In this way, on the one hand, the fourth network device can send the service to be processed to the first network device for processing, thereby reducing the resource consumption of the fourth network device and improving the network experience of the user equipment accessing the fourth network device. On the other hand, due to the scheduling of resources by the network controller, the idle resources of the first network device are utilized, improving the resource utilization efficiency within the network.
[0129] Combined with the above Figure 5 and Figure 6 As can be seen from the illustrated embodiments, the same network device can send its own service to be processed to other network devices that can provide processing resources for processing, and can also process the services to be processed sent by other network devices when the available resources of the network device are relatively large. Thus, the problem that the resource utilization in the network is unbalanced, resulting in excessive resource consumption of individual network devices and affecting the network usage of the user equipment accessing the network device, is effectively solved. At the same time, the idle resources in the network can be utilized to improve the resource utilization efficiency within the network.
[0130] It can be understood that the order of the execution steps in the above method embodiments is only a possible example. In actual applications, the execution order of the steps can be adjusted as needed.
[0131] The above mainly introduces the solution provided by the embodiments of the present application from the perspective of methods. To implement the above functions, it includes the corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should easily realize that, combined with the method steps of the examples described in the embodiments disclosed in this article, 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 way 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.
[0132] The embodiments of the present application can divide the network device and the network controller into functional modules according to the above method examples. 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 modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, only a logical function division, and there may be other division methods in actual implementation.
[0133] Such as Figure 7As shown in the figure, it is a schematic structural diagram of a network controller provided by an embodiment of the present application. The network controller 50 can be used to execute the functions performed by the network controller in any one of the above embodiments (such as Figure 4 , Figure 5 or Figure 6 the embodiments shown). The network controller 50 includes: a receiving unit 501, a determining unit 502, and a sending unit 503. Among them, the receiving unit 501 is used to receive a request message from a first network device, and the request message is used to request available resources for a service to be processed. The determining unit 502: is used to determine a second network device from one or more network devices other than the first network device according to the request message, and the second network device has first available resources capable of processing the service to be processed. The sending unit 503: is used to send the first identification information of the second network device to the first network device. For example, in combination with Figure 4 , the receiving unit 501 can be used to execute the receiving step in S100, and the determining unit 502 can be used to execute S102. In combination with Figure 5 , the receiving unit 501 can be used to execute the receiving step in S200, the determining unit can be used to execute S201, and the sending unit 503 can be used to execute the sending step in S202. In combination with Figure 6 , the receiving unit 501 can be used to execute the receiving step in S300, the determining unit 502 can be used to execute S301, and the sending unit 503 can be used to execute the sending step in S302.
[0134] Optionally, the request message includes resource information required for the service to be processed, and the resource information includes a resource type and a resource quantity. Alternatively, the request message includes the type of the service to be processed and the quantity of the service to be processed.
[0135] Optionally, when the request message includes resource information required for the service to be processed, the resource type includes at least one of a computing resource type or a storage resource type.
[0136] Optionally, when the request message includes the type of the service to be processed and the quantity of the service to be processed, the network controller 50 further includes: an obtaining unit 504, which is used to obtain resource information required for the service to be processed according to the type of the service to be processed and the quantity of the service to be processed.
[0137] Optionally, the determining unit 502 is specifically used for: according to the request message, using a prediction model based on historical data, determining a second network device from one or more network devices, where the historical data includes historical resource usage information of one or more network devices.
[0138] Optionally, the prediction model is used to predict the resource utilization trend of one or more network devices based on the historical resource usage information of one or more network devices.
[0139] Optionally, the determining unit 502 is specifically configured to: determine a second network device from one or more network devices according to the request message and the available resource information of one or more stored network devices.
[0140] Optionally, the determining unit 502 is specifically configured to: determine a plurality of candidate network devices from a plurality of network devices other than the first network device according to the request message, and the plurality of candidate network devices all have available resources capable of processing the to-be-processed service; determine the second network device according to the network topology, and the second network device is a network device that meets the preset topology condition among the plurality of candidate network devices.
[0141] Optionally, the receiving unit 501 is further configured to: receive the resource usage information of one or more network devices sent by the one or more network devices, where the resource usage information includes available resource information, or the resource usage information includes used resource information; the determining unit 502 is specifically configured to: determine a second network device from one or more network devices according to the request message and the resource usage information of the one or more network devices.
[0142] Optionally, the determining unit 502 is further configured to: determine a third network device from one or more network devices according to the request message, and the third network device has second available resources capable of processing the to-be-processed service. The sending unit 503 is further configured to: send the first identification information of the second network device and the information of the first available resources, as well as the second identification information of the third network device and the information of the second available resources to the first network device.
[0143] In one example, referring to Figure 3 , the receiving function of the above receiving unit 501 and the sending function of the sending unit 503 can both be implemented by Figure 3 the communication interface 304 in. The above determining unit 502 and the obtaining unit 504 can both be implemented by Figure 3 the processor 301 in calling the computer program stored in the memory 303.
[0144] For the specific description of the above optional manner, refer to the foregoing method embodiments, which will not be elaborated here. In addition, the explanations and descriptions of the beneficial effects of any of the above-provided network controllers 50 can refer to the corresponding method embodiments above, and will not be elaborated.
[0145] It should be noted that the actions corresponding to the above respective units are only specific examples, and the actions actually performed by each unit refer to the actions or steps mentioned in the description of the embodiments based on Figure 4 , Figure 5 or Figure 6 described above.
[0146] As Figure 8As shown in the figure, it is a schematic structural diagram of a network device provided by an embodiment of the present application. The network device 60 can be used to perform the functions executed by the first network device in any one of the above embodiments (such as Figure 5 or Figure 6 the embodiments shown). The network device 60 includes: a sending unit 601 and a receiving unit 602. Among them, the sending unit 601 is used to send a request message to the network controller, and the request message is used to request available resources for the service to be processed. The receiving unit 602 is used to receive the first identification information of the second network device sent by the network controller, and the second network device has the first available resources capable of processing the service to be processed. The sending unit 601 is further used to: send a first sub-service to the second network device according to the first identification information, and the first sub-service belongs to the service to be processed.
[0147] Optionally, the network device further includes: an obtaining unit 603, configured to obtain information on the first available resources of the second network device from the network controller. The sending unit 601 is specifically configured to send a first sub-service to the second network device according to the information on the first available resources and the first identification information.
[0148] Optionally, the obtaining unit 603 is further used to: obtain the second identification information of the third network device from the network controller, and the third network device has the second available resources capable of processing the service to be processed; the sending unit 601 is further used to send a second sub-service to the third network device according to the second identification information, and the second sub-service belongs to the service to be processed.
[0149] Optionally, the obtaining unit 603 is further used to: before the sending unit 601 sends a request message to the network controller, obtain the resource usage information of the network device 60, and the resource usage information includes at least one of available resource information or used resource information. The sending unit 601 is specifically used to: when the resource usage information of the network device meets the conditions, send a request message to the network controller, where if the resource usage information includes used resource information, the condition includes that the used resource value in the used resource information is greater than or equal to a first threshold, and if the resource usage information includes available resource information, the condition includes that the available resource value in the available resource information is less than or equal to a second threshold.
[0150] Optionally, the receiving unit 602 is further used to: receive the second service to be processed sent by the fourth network device. The obtaining unit 603 is further used to: obtain the processing result of the second service to be processed. The sending unit 601 is further used to: send the processing result of the second service to be processed to the fourth network device and release the resources for processing the second service to be processed.
[0151] Optionally, the request message includes the resource information required for the service to be processed, and the resource information includes the resource type and the resource quantity. Or, the request message includes the type of the service to be processed and the quantity of the service to be processed.
[0152] Optionally, when the request message includes resource information required for the service to be processed, the resource type includes at least one of a computing resource type or a storage resource type.
[0153] In one example, refer to Figure 3 , the receiving functions of the above-mentioned sending unit 601, receiving unit 602, and obtaining unit 603 can all be implemented by Figure 3 the communication interface 304 in. The processing function of the above-mentioned obtaining unit 603 can be implemented by Figure 3 the processor 301 in calling a computer program stored in the memory 303.
[0154] For the specific description of the above optional manner, refer to the foregoing method embodiments, which will not be elaborated here. In addition, the explanations and beneficial effects descriptions of any of the above-provided network devices 60 can refer to the corresponding method embodiments above and will not be elaborated.
[0155] It should be noted that the actions corresponding to the above-mentioned respective units are only specific examples, and the actual actions executed by each unit refer to the actions or steps mentioned in the description of the above Figure 5 or Figure 6 described embodiments.
[0156] The embodiment of the present application further provides a communication device, including: a memory and a processor; the memory is used to store a computer program, and the processor is used to call the computer program to execute the actions or steps mentioned in any of the above embodiments.
[0157] The embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program runs on a computer, the computer is enabled to execute the actions or steps mentioned in any of the above embodiments.
[0158] The embodiment of the present application further provides a chip. Circuits for implementing the functions of the above-mentioned network controller or network device and one or more interfaces are integrated in the chip. Optionally, the functions supported by the chip may include based on the above Figures 4 to 6The processing actions in the described method embodiments will not be elaborated here. Those of ordinary skill in the art can understand that all or part of the steps to implement the above embodiments can be completed by a program instructing relevant hardware. The described program can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a random access memory, etc. The above processing unit or processor can be a central processing unit, a general-purpose processor, an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
[0159] The embodiments of the present application also provide a computer program product containing instructions. When the instructions run on a computer, the computer is made to execute any one of the methods in the above embodiments. 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 described in the embodiments of the present application are fully or partially generated. The computer can be a general-purpose computer, a dedicated 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. For example, the computer instructions can be transmitted from a website, a computer, a server, or a data center to another website, computer, server, or data center in a wired manner (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or a wireless manner (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access, or a data storage device such as a server or a data center that contains one or more integrated media. 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.
[0160] It should be noted that the devices for storing computer instructions or computer programs provided in the embodiments of the present application, such as but not limited to, the above-mentioned memory, computer-readable storage medium, and communication chip, etc., are all non-transitory.
[0161] In the process of implementing the claimed application, those skilled in the art can understand and achieve other variations of the disclosed embodiments by referring to the drawings, the disclosure, 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 may 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.
[0162] Although the application has been described in connection with specific features and their embodiments, various modifications and combinations can be made without departing from the spirit and scope of the application. Accordingly, the present specification and the drawings are merely illustrative descriptions of the application defined by the appended claims and are considered to have covered any and all modifications, variations, combinations, or equivalents within the scope of the application.
Claims
1. A resource allocation method, characterized in that, the method is executed by a network controller, and the method includes: receiving a request message from a first network device, the request message being used to request available resources for a service to be processed, the request message including resource information required for the service to be processed, the resource information including a resource type and a resource quantity, the service to be processed being a service other than basic telecommunications services, and the first network device being a device applicable to basic telecommunications services; determining a second network device from one or more network devices other than the first network device according to the request message, the second network device having first available resources capable of processing the service to be processed, and the second network device being a device applicable to basic telecommunications services; sending first identification information of the second network device to the first network device; wherein, the determining the second network device from one or more network devices other than the first network device according to the request message includes: determining the second network device from the one or more network devices according to the request message by using a prediction model based on historical data, wherein the historical data includes historical resource usage information of the one or more network devices; and the prediction model is used to predict a resource utilization trend of the one or more network devices based on the historical resource usage information of the one or more network devices.
2. The method according to claim 1, characterized in that, the request message includes the type of the service to be processed and the quantity of the service to be processed.
3. The method according to claim 2, characterized in that, when the request message includes the resource information required for the service to be processed, the resource type includes at least one of a computing resource type or a storage resource type.
4. The method according to claim 2, characterized in that, when the request message includes the type of the service to be processed and the quantity of the service to be processed, the method further includes: obtaining the resource information required for the service to be processed according to the type of the service to be processed and the quantity of the service to be processed.
5. The method according to any one of claims 1-4, characterized in that, the determining the second network device from one or more network devices other than the first network device according to the request message includes: determining the second network device from the one or more network devices according to the request message and the stored available resource information of the one or more network devices.
6. The method according to any one of claims 1-4, characterized in that, the determining the second network device from one or more network devices other than the first network device according to the request message includes: determining a plurality of candidate network devices from a plurality of network devices other than the first network device according to the request message, and the plurality of candidate network devices all have available resources capable of processing the service to be processed; determining the second network device according to a network topology, and the second network device is a network device satisfying a preset topology condition among the plurality of candidate network devices.
7. The method according to any one of claims 1-4, wherein, the method further comprises: receiving resource usage information of itself sent by the one or more network devices, the resource usage information including available resource information, or the resource usage information including used resource information; the determining, from one or more network devices other than the first network device according to the request message, a second network device includes: determining the second network device from the one or more network devices according to the request message and the resource usage information of the one or more network devices.
8. The method according to claim 1, wherein, the method further comprises: determining a third network device from the one or more network devices according to the request message, the third network device having second available resources capable of processing the to-be-processed service; sending the first identification information of the second network device and the information of the first available resources, and the second identification information of the third network device and the information of the second available resources to the first network device.
9. A resource allocation method, wherein, the method is executed by a first network device, the first network device being any network device connected to a network controller, and the method comprises: sending a request message to the network controller, the request message being used to request available resources for a to-be-processed service, the request message including the resource information required for the to-be-processed service, the resource information including the resource type and the resource quantity, the to-be-processed service being a service other than basic telecommunications services, and the first network device being a device applicable to basic telecommunications services; receiving the first identification information of a second network device sent by the network controller, the second network device having first available resources capable of processing the to-be-processed service, and the second network device being a device applicable to basic telecommunications services; sending a first sub-service belonging to the to-be-processed service to the second network device according to the first identification information; wherein, the second network device is determined from one or more network devices according to the request message by using a prediction model based on historical data, the historical data including the historical resource usage information of the one or more network devices; the prediction model is used to predict the resource utilization trend of the one or more network devices based on the historical resource usage information of the one or more network devices.
10. The method according to claim 9, wherein, the request message includes the type of the to-be-processed service and the quantity of the to-be-processed service.
11. The method according to claim 10, wherein, when the request message includes the resource information required for the to-be-processed service, the resource type includes at least one of a computing resource type or a storage resource type.
12. The method according to any one of claims 9-11, wherein, the method further comprises: obtaining the information of the first available resources of the second network device from the network controller; Sending a first sub-service to the second network device according to the first identification information includes: Sending the first sub-service to the second network device according to the information of the first available resources and the first identification information.
13. The method according to any one of claims 9-11, wherein, the method further includes: Obtaining second identification information of a third network device from the network controller, where the third network device has second available resources capable of processing the service to be processed; Sending a second sub-service to the third network device according to the second identification information, where the second sub-service belongs to the service to be processed.
14. The method according to any one of claims 9-11, wherein, before sending the request message to the network controller, the method further includes: Obtaining resource usage information of the first network device, where the resource usage information includes at least one of available resource information or used resource information; Sending the request message to the network controller includes: When the resource usage information of the first network device meets the condition, sending the request message to the network controller, where if the resource usage information includes the used resource information, the condition includes that the used resource value in the used resource information is greater than or equal to a first threshold, and if the resource usage information includes the available resource information, the condition includes that the available resource value in the available resource information is less than or equal to a second threshold.
15. The method according to any one of claims 9-11, wherein, before sending the request message to the network controller, the method further includes: Receiving a second service to be processed sent by a fourth network device; Obtaining a processing result of the second service to be processed; Sending the processing result of the second service to be processed to the fourth network device and releasing the resources for processing the second service to be processed.
16. A network controller, wherein, the network controller includes: A receiving unit: configured to receive a request message from a first network device, where the request message is used to request available resources for a service to be processed, the request message includes resource information required for the service to be processed, the resource information includes a resource type and a resource quantity, the service to be processed is a service other than a basic telecommunications service, and the first network device is a device applicable to basic telecommunications services; A determining unit: configured to determine a second network device from one or more network devices other than the first network device according to the request message, where the second network device has first available resources capable of processing the service to be processed, and the second network device is a device applicable to basic telecommunications services; A sending unit: configured to send the first identification information of the second network device to the first network device; The determining unit is specifically configured to: according to the request message, use a prediction model based on historical data to determine the second network device from the one or more network devices, where the historical data includes historical resource usage information of the one or more network devices; the prediction model is used to predict the resource utilization trend of the one or more network devices based on the historical resource usage information of the one or more network devices.
17. The network controller according to claim 16, wherein, the request message includes the type of the service to be processed and the quantity of the service to be processed.
18. The network controller according to claim 17, wherein, when the request message includes the resource information required for the service to be processed, the resource type includes at least one of a computing resource type or a storage resource type.
19. The network controller according to claim 18, wherein, when the request message includes the type of the service to be processed and the quantity of the service to be processed, the network controller further includes: an obtaining unit, configured to obtain the resource information required for the service to be processed according to the type of the service to be processed and the quantity of the service to be processed.
20. The network controller according to any one of claims 16-19, wherein, the determining unit is specifically configured to: determine the second network device from the one or more network devices according to the request message and the available resource information of the one or more network devices stored.
21. The network controller according to any one of claims 16-19, wherein, the determining unit is specifically configured to: determine a plurality of candidate network devices from the plurality of network devices other than the first network device according to the request message, and the plurality of candidate network devices all have available resources capable of processing the service to be processed; determine the second network device according to the network topology, and the second network device is a network device that meets the preset topology condition among the plurality of candidate network devices.
22. The network controller according to any one of claims 16-19, wherein, the receiving unit is further configured to: receive the resource usage information of itself sent by the one or more network devices, where the resource usage information includes available resource information, or the resource usage information includes used resource information; the determining unit is specifically configured to: determine the second network device from the one or more network devices according to the request message and the resource usage information of the one or more network devices.
23. The network controller according to claim 16, wherein, the determining unit is further configured to: determine a third network device from the one or more network devices according to the request message, and the third network device has second available resources capable of processing the service to be processed; the sending unit is further configured to: send the first identification information of the second network device and the information of the first available resources, and the second identification information of the third network device and the information of the second available resources to the first network device.
24. A first network device, characterized in that, the first network device is connected to a network controller, and the first network device includes: a sending unit, configured to send a request message to the network controller, where the request message is used to request available resources for a service to be processed, the request message includes resource information required for the service to be processed, the resource information includes a resource type and a resource quantity, the service to be processed is a service other than basic telecommunications services, and the first network device is a device applicable to basic telecommunications services; a receiving unit, configured to receive first identification information of a second network device sent by the network controller, where the second network device has first available resources capable of processing the service to be processed; the sending unit is further configured to: send a first sub-service to the second network device according to the first identification information, where the first sub-service belongs to the service to be processed; wherein, the second network device is determined from one or more network devices according to the request message by using a prediction model based on historical data, the historical data includes historical resource usage information of the one or more network devices; the prediction model is used to predict a resource utilization trend of the one or more network devices based on the historical resource usage information of the one or more network devices.
25. The network device according to claim 24, characterized in that, the network device further includes: an obtaining unit, configured to obtain information on the first available resources of the second network device from the network controller; the sending unit is specifically configured to send the first sub-service to the second network device according to the information on the first available resources and the first identification information.
26. The network device according to claim 25, characterized in that, the obtaining unit is further configured to: obtain second identification information of a third network device from the network controller, where the third network device has second available resources capable of processing the service to be processed; the sending unit is further configured to send a second sub-service to the third network device according to the second identification information, where the second sub-service belongs to the service to be processed.
27. The network device according to claim 25 or 26, characterized in that, the obtaining unit is further configured to: before the sending unit sends a request message to the network controller, obtain resource usage information of the network device, where the resource usage information includes at least one of available resource information or used resource information; the sending unit is specifically configured to: when the resource usage information of the network device meets a condition, send the request message to the network controller, where, if the resource usage information includes the used resource information, the condition includes that the used resource value in the used resource information is greater than or equal to a first threshold, and if the resource usage information includes the available resource information, the condition includes that the available resource value in the available resource information is less than or equal to a second threshold.
28. The network device according to claim 25 or 26, characterized in that, The receiving unit is further configured to: receive a second service to be processed sent by a fourth network device; The obtaining unit is further configured to: obtain a processing result of the second service to be processed; The sending unit is further configured to: send the processing result of the second service to be processed to the fourth network device, and release resources for processing the second service to be processed.
29. The network device according to claim 25 or 26, wherein, The request message includes the type of the service to be processed and the quantity of the service to be processed.
30. The network device according to claim 29, wherein, When the request message includes resource information required for the service to be processed, the resource type includes at least one of a computing resource type or a storage resource type.
31. A communication device, wherein, comprising: a memory and a processor, the memory is used for storing a computer program, and the processor is used for executing the computer program to execute the method according to any one of claims 1-8, or execute the method according to any one of claims 9-15.
32. A computer-readable storage medium, wherein, A computer program is stored on the computer-readable storage medium, and when the computer program runs on a computer, the computer is caused to execute the method according to any one of claims 1-8, or execute the method according to any one of claims 9-15.
Citation Information
Patent Citations
Service processing method, mobile edge computing equipment and network equipment
CN109495929A
Resource sharing between devices in a wireless network
EP3035721A1