Method, device, equipment and medium for redistributing load on user plane functions

By dividing overload and underload modules according to bandwidth load value in 5G mobile communication network and redistributeing equipment, the problem of unbalanced load of user-plane functional modules is solved, ensuring system stability and throughput capabilities.

CN114599095BActive Publication Date: 2025-08-08SHANDONG INSPUR SCI RES INST CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210068712.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-20
Publication Date
2025-08-08
Estimated Expiration
2042-01-20

AI Technical Summary

Technical Problem

In 5G mobile communication network, the load imbalance of user-plane functional modules causes some modules to overload and crash, affecting system stability and throughput capabilities.

Method used

By obtaining the bandwidth load values of each sub-service module, calculating the average and the difference, distinguishing the overload module from the underload module, and dividing the user equipment on the overload module to the underload module to achieve load balancing.

Benefits of technology

It realizes load balancing between user-side functional modules, avoids crashes of individual modules, and improves system reliability and throughput capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114599095B_ABST
    Figure CN114599095B_ABST
Patent Text Reader

Abstract

The present invention provides a method, apparatus, device, and medium for redistributing the load on a user plane function. The method includes: obtaining the bandwidth load value of each sub-service module in the service module on the user plane function; when the bandwidth load value of any of the sub-service modules is greater than a preset value, solving the bandwidth load average value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value; dividing the sub-service modules into overloaded service modules and underloaded service modules based on the difference; obtaining information to be allocated on the overloaded service module, and allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated. The method, apparatus, device, and medium for redistributing the load on the user plane function provided by the present invention realize a balanced distribution of the load on the user plane function, avoid the problem of a single service module crashing due to overload, and ensure the overall stable operation of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a method, apparatus, device and medium for redistributing load on a user plane function. Background Art

[0002] In the fifth generation mobile communication technology (5G), the 5G mobile network core network (5GC) is divided into two categories: control plane functions and user plane functions. The control plane functions are used to implement signaling control functions such as user device access control, registration, session establishment, and mobility management. After the user device accesses the network and establishes a session with the data network, the control plane functions send the user plane tunnel and forwarding rules to the user plane functions in the PFCP (Packet Forwarding Control Protocol) message format. The user plane functions establish a tunnel between the access network and the data network and, based on the tunnel information and forwarding rules, perform data forwarding, discarding, caching, and quality of service (QoS) processing.

[0003] During the operation of the user plane function of the 5G mobile network core network, the different services run by each user device will lead to unbalanced loads on the various service modules on the user plane function, that is, the service modules may be overloaded or underloaded. When a service module is overloaded for a long time, it will cause the service module to crash and cannot continue to operate normally. Summary of the Invention

[0004] The purpose of the present invention is to provide a method, device, equipment and medium for redistributing load on user plane functions, so as to solve the technical problems existing in the prior art.

[0005] The present invention provides a method for redistributing load on a user plane function, comprising:

[0006] Obtain the bandwidth load value of each sub-service module in the service module on the user plane function;

[0007] When the bandwidth load value of any of the sub-service modules is greater than a preset value, calculating the bandwidth load average value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value;

[0008] dividing the sub-service module into an overload service module and an underload service module based on the difference;

[0009] Acquire the to-be-allocated information on the overloaded service module, and allocate the to-be-allocated user equipment to the underloaded service module based on the to-be-allocated information.

[0010] According to the method for redistributing the load on the user plane function provided by the present invention, the method further includes:

[0011] When the bandwidth load value of any of the sub-service modules is less than or equal to the preset value, the process jumps to executing the step of obtaining the bandwidth load value of each sub-service module in the service module on the user plane function.

[0012] According to the method for redistributing the load on the user plane function provided by the present invention, dividing the sub-service module into an overloaded service module and an underloaded service module based on the difference specifically includes:

[0013] When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is greater than zero, dividing the sub-service module into the overloaded service module;

[0014] When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is less than zero, the sub-service module is divided into the underloaded service module.

[0015] According to the method for redistributing the load on the user plane function provided by the present invention, the step of obtaining the information to be allocated on the overloaded service module specifically includes:

[0016] Acquisition process, obtaining all user equipment information on the current overloaded service module, the user equipment information including user equipment name and user equipment bandwidth load;

[0017] A selection process is used to select the user device information in sequence and save the user device information to a storage module;

[0018] terminating the process, summing the bandwidth loads of the user equipment in the storage module to obtain a first bandwidth load value, and stopping the selection process when the first bandwidth load value is equal to the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value;

[0019] Repeat the process to sequentially execute the acquisition process, the selection process, and the termination process for each overloaded service module in the service module; summarize the user equipment information stored in the storage module to obtain information to be allocated.

[0020] According to the method for redistributing the load on the user plane function provided by the present invention, allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated specifically includes:

[0021] Allocation process, obtaining the information to be allocated, and selecting the user equipment to be allocated to the current underloaded service module in sequence based on the information to be allocated;

[0022] Stop the process, sum the bandwidth loads of the user equipment to be allocated on the current underloaded service module to obtain a second bandwidth load value, and stop executing the allocation process when the second bandwidth load value is equal to the difference between the bandwidth load value of the current underloaded service module and the bandwidth load average value;

[0023] In a reciprocating process, the allocation process and the stop process are sequentially executed on each underloaded service module in the service module, and the user equipment information that has completed the allocation process in the to-be-allocated information is deleted.

[0024] According to the user plane function load redistribution method provided by the present invention, before obtaining the bandwidth load value of each sub-service module in the user plane function service module, the method further includes:

[0025] A timer is set on the user plane function, and a timing period of the timer is configured.

[0026] The present invention also provides a device for redistributing load on a user plane function, comprising:

[0027] An acquisition unit, configured to acquire a bandwidth load value of each sub-service module in a service module on a user plane function;

[0028] a calculation unit, configured to calculate, when the bandwidth load value of any of the sub-service modules is greater than a preset value, an average bandwidth load value of the service module and a difference between the bandwidth load value of each sub-service module and the bandwidth load average value;

[0029] a classification unit, configured to classify the sub-service module into an overload service module and an underload service module based on the difference;

[0030] The allocating unit is configured to obtain information to be allocated on the overloaded service module, and allocate the user equipment to be allocated to the underloaded service module based on the information to be allocated.

[0031] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps of the method for redistributing the load on the user plane function as described above are implemented.

[0032] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of any of the above-mentioned methods for redistributing the load on the user plane function.

[0033] The present invention also provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the computer program implements the steps of any of the above-mentioned methods for redistributing the load on the user plane function.

[0034] The method, apparatus, device and medium for redistributing the load on the user plane function provided by the present invention divide the service modules on the user plane function into overloaded service modules and underloaded service modules according to specific load conditions, and divert user equipment on the overloaded service modules to the underloaded service modules. Based on this, balanced distribution of the load on the user plane function among the various service modules is achieved, ensuring that the processing capacity of the service modules is maximized without causing a crash of a single service module due to overload, thereby improving the reliability of the long-term operation of the user plane function and fully utilizing the maximum throughput capacity of the user plane function. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] In order to more clearly illustrate the technical solutions in the present invention or the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0036] Figure 1 This is one of the flow charts of the method for redistributing the load on the user plane function provided by the present invention;

[0037] Figure 2 This is a schematic diagram of the core network structure provided by the present invention;

[0038] Figure 3 This is a schematic diagram of the user plane functional structure provided by the present invention;

[0039] Figure 4 This is a second flow chart of the method for redistributing the load on the user plane function provided by the present invention;

[0040] Figure 5 This is the third flow chart of the method for redistributing the load on the user plane function provided by the present invention;

[0041] Figure 6 This is a fourth flow chart of the method for redistributing the load on the user plane function provided by the present invention;

[0042] Figure 7 It is a structural diagram of a device for redistributing load on a user plane function provided by the present invention;

[0043] Figure 8 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0044] To make the objectives, technical solutions, and advantages of the present invention more clear, the technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative efforts shall fall within the scope of protection of the present invention.

[0045] Figure 1 This is one of the flow charts of the method for redistributing the load on the user plane function provided by the present invention, such as Figure 1 As shown, the method includes:

[0046] S110, obtaining a bandwidth load value of each sub-service module in the service module on the user plane function;

[0047] S120, when the bandwidth load value of any of the sub-service modules is greater than a preset value, calculating the average bandwidth load value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value;

[0048] S130, dividing the sub-service module into an overload service module and an underload service module based on the difference;

[0049] S140: Acquire information to be allocated on the overloaded service module, and allocate the user equipment to be allocated to the underloaded service module based on the information to be allocated.

[0050] Figure 2 This is a schematic diagram of the core network structure provided by the present invention, such as Figure 2 As shown, the core network includes a control plane function (CPF) and a user plane function (UPF), wherein the control plane function includes AMF (access and mobility management function), SMF (session management function), UDM (unified data management function), AUSF (authentication server function), PCF (policy control function) and NRF (network storage function). The control plane function is mainly used to implement signaling control functions such as access control, registration, session establishment and mobility management of user equipment; the user plane function is used to establish a tunnel between AN (access network) and DN (data network), and perform data forwarding, discarding, caching and qos processing according to tunnel information and forwarding rules.

[0051] Figure 3 This is a schematic diagram of the user plane functional structure provided by the present invention, such as Figure 3 As shown, the user plane function includes a configuration module, an interface module and a service module, wherein the user equipment UE and the configuration module are both connected to the interface module, the interface module is connected to the service module, and the service module includes multiple sub-service modules.

[0052] It should be noted that when each sub-service module on the user plane function is started, a fixed bandwidth size is allocated for use by the user equipment connected to each sub-service module. The bandwidth load of the sub-service module is mainly determined by the bandwidth actually used by the user equipment connected to the sub-service module. The bandwidth load value of each sub-service module in the service module on the user plane function is obtained, and a preset value is set in the configuration module on the user plane function. The size of the preset value can be set according to actual needs. When the bandwidth load value of one sub-service module is greater than the preset value, the bandwidth load values of all sub-service modules are summed and then averaged to obtain the bandwidth load average value. The bandwidth load value of each sub-service module is subtracted from the bandwidth load average value to obtain a difference value. The difference value has three results: positive value, zero and negative value. According to the specific size of the difference value, each sub-service module is divided into an overloaded service module and an underloaded service module.

[0053] Obtain the information to be allocated on the overloaded service module, where the information to be allocated refers to the information of the user equipment to be allocated. The sum of the load values of the user equipment to be allocated on each overloaded service module is exactly equal to the difference between the load value of the overloaded service module and the load average value; allocate the user equipment to be allocated to the underloaded service module according to the information to be allocated, and the load value of each underloaded service module after the allocation is completed is exactly equal to the load average value.

[0054] The method for redistributing the load on the user plane function provided by the present invention divides the service modules on the user plane function into overloaded service modules and underloaded service modules according to specific load conditions, and diverts user equipment on the overloaded service modules to the underloaded service modules. Based on this, balanced distribution of the load on the user plane function among the various service modules is achieved, ensuring that the processing capacity of the service modules is maximized without causing a crash of a single service module due to overload, thereby improving the reliability of the long-term operation of the user plane function and fully utilizing the maximum throughput capacity of the user plane function.

[0055] According to the method for redistributing the load on the user plane function provided by the present invention, in the present invention, the method also includes: when the bandwidth load value of any of the sub-service modules is less than or equal to the preset value, jumping to execute the acquisition of the bandwidth load value of each sub-service module in the service module on the user plane function.

[0056] It should be noted that when the bandwidth load value of a sub-service module is less than or equal to the preset value, it indicates that the sub-service module is in normal operation. Only when the bandwidth load value of a sub-service module is greater than the preset value is the sub-service module considered to be in abnormal operation. Therefore, when the bandwidth load value of any sub-service module in the user plane function is less than or equal to the preset value, it indicates that the user plane function is in normal operation. At this time, return to the previous execution step, that is, re-acquire the bandwidth load value of each sub-service module in the service module of the user plane function.

[0057] The user plane function load redistribution method provided by the present invention selects the next execution step according to the actual load conditions of each sub-service module, and when the bandwidth load value of any sub-service module is less than or equal to a preset value, promptly jumps to execute and re-acquires the bandwidth load values of each sub-service module in the user plane function service module. Based on this, polling detection of the bandwidth load values of each sub-service module on the user plane function is achieved, avoiding detection window periods, and ensuring real-time monitoring of the user plane function load.

[0058] According to the method for redistributing the load on the user plane function provided by the present invention, in the present invention, dividing the sub-service module into an overloaded service module and an underloaded service module based on the difference specifically includes:

[0059] When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is greater than zero, dividing the sub-service module into the overloaded service module;

[0060] When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is less than zero, the sub-service module is divided into the underloaded service module.

[0061] It should be noted that, using the bandwidth load average value as the dynamic evaluation standard, when the difference between the bandwidth load value of a sub-business module and the bandwidth load average value is greater than zero, it means that the load of the sub-business module is too large, and this part of the sub-business module is classified as an overloaded business module; when the difference between the bandwidth load value of a sub-business module and the bandwidth load average value is less than zero, it means that the load of the sub-business module is too small, and this part of the sub-business module is classified as an underloaded business module.

[0062] The present invention provides a method for redistributing load on user plane functions. By using the average bandwidth load value as a dynamic evaluation standard, sub-service modules with bandwidth load values higher than the average bandwidth load value are classified as overloaded service modules, and sub-service modules with bandwidth load values lower than the average bandwidth load value are classified as underloaded service modules. User equipment is then redistributed between the overloaded service modules and the underloaded service modules. Ultimately, load balancing is achieved for all sub-service modules by reducing the bandwidth load value of the overloaded service modules and increasing the bandwidth load value of the underloaded service modules, thereby ensuring the stable operation of the entire system.

[0063] According to the method for redistributing the load on the user plane function provided by the present invention, in the present invention, obtaining the information to be allocated on the overloaded service module specifically includes:

[0064] Acquisition process, obtaining all user equipment information on the current overloaded service module, the user equipment information including user equipment name and user equipment bandwidth load;

[0065] A selection process is used to select the user device information in sequence and save the user device information to a storage module;

[0066] terminating the process, summing the bandwidth loads of the user equipment in the storage module to obtain a first bandwidth load value, and stopping the selection process when the first bandwidth load value is equal to the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value;

[0067] Repeat the process to sequentially execute the acquisition process, the selection process, and the termination process for each overloaded service module in the service module; summarize the user equipment information stored in the storage module to obtain information to be allocated.

[0068] It should be noted that all overloaded service modules are traversed, and each overloaded service module interface is called to obtain all user equipment information on each overloaded service module. The user equipment information includes the user equipment name and the user equipment bandwidth load, where the user equipment name can be reflected by the IP address of the user equipment. The user equipment information is selected in turn and saved to the storage module vecUeInfos. The specific selection process is as follows:

[0069] Each time a user equipment information is selected and stored in the storage module, the bandwidth load of the user equipment is accumulated to obtain a first bandwidth load value, and the first bandwidth load value is compared with the difference value A-DiffBand, where the difference value A-DiffBand refers to the difference between the bandwidth load value of the current overloaded service module and the average bandwidth load value;

[0070] Step 1: When the first bandwidth load value is less than A-DiffBand, the current user equipment information is stored in vecUeInfos and Step 1 is repeated;

[0071] Step 2: When the first bandwidth load value is greater than A-DiffBand, skip the current user equipment information and jump to Step 1;

[0072] Step 3: When the first bandwidth load value is equal to A-DiffBand, it indicates that the information of the overloaded user equipment on the current overloaded service module has been counted. The current user equipment information is stored in vecUeInfos, and the next overloaded service module is selected to execute Step 1 to Step 3 in sequence.

[0073] The user equipment information stored in the storage module vecUeInfos is aggregated to obtain information to be allocated.

[0074] The method for redistributing the load on a user plane function provided by the present invention sequentially selects user equipment information on an overloaded service module, compares a first bandwidth load value with a difference value A-DiffBand during the selection process, and uses the first bandwidth load value being equal to the difference value A-DiffBand as the cutoff point of the selection process. Based on this, accurate screening of user equipment information on the overloaded service module is achieved, and information to be allocated is obtained, which lays a foundation for accurate allocation of user equipment to be allocated on the overloaded service module, is conducive to ensuring efficient balancing of the load on the user plane function, and ensures the stable operation of the entire system.

[0075] According to the method for redistributing the load on the user plane function provided by the present invention, in the present invention, allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated specifically includes:

[0076] Allocation process, obtaining the information to be allocated, and selecting the user equipment to be allocated to the current underloaded service module in sequence based on the information to be allocated;

[0077] Stop the process, sum the bandwidth loads of the user equipment to be allocated on the current underloaded service module to obtain a second bandwidth load value, and stop executing the allocation process when the second bandwidth load value is equal to the difference between the bandwidth load value of the current underloaded service module and the bandwidth load average value;

[0078] In a reciprocating process, the allocation process and the stop process are sequentially executed on each underloaded service module in the service module, and the user equipment information that has completed the allocation process in the to-be-allocated information is deleted.

[0079] It should be noted that all underloaded service modules are traversed to obtain the difference between the bandwidth load value and the load average value B-DiffBand of each underloaded service module. Based on the aforementioned to-be-allocated information, user equipment to be allocated to the underloaded service module is selected in sequence. The specific selection process is as follows:

[0080] Each time a user equipment to be assigned is selected into an underloaded service module, the bandwidth loads of all user equipment to be assigned in the underloaded service module are accumulated to obtain a second bandwidth load value, and the second bandwidth load value is compared with a difference value B-DiffBand, where the difference value B-DiffBand refers to the difference between the average bandwidth load value and the bandwidth load value of the current underloaded service module;

[0081] Step 1: When the second bandwidth load value is less than B-DiffBand, call the service module interface to divert the current user equipment to be allocated to the current underloaded service module, delete the user equipment information of the current user equipment to be allocated in the allocation information, and jump to Step 1;

[0082] Step 2: When the second bandwidth load value is greater than B-DiffBand, skip the current user equipment to be assigned and jump to Step 1;

[0083] Step 3: When the second bandwidth load value is equal to B-DiffBand, call the service module interface to divert the current user equipment to be allocated to the current underloaded service module, delete the user equipment information of the current user equipment to be allocated in the allocation information, and select the next underloaded service module to execute Step 1 to Step 3 in sequence.

[0084] The method for redistributing the load on the user plane function provided by the present invention sequentially selects user equipment to be allocated to the underloaded service module, compares the second bandwidth load value and the difference B-DiffBand during the selection process, and uses the second bandwidth load value equal to the difference B-DiffBand as the cutoff point of the selection process. Based on this, the user equipment to be allocated is accurately allocated to the underloaded service module, so that the underloaded service module can be fully loaded again, laying the foundation for load balancing between the underloaded service module and the overloaded service module, and ensuring the stable operation of the entire system.

[0085] According to the method for redistributing the load on the user plane function provided by the present invention, in the present invention, before obtaining the bandwidth load value of each sub-service module in the service module on the user plane function, the method further includes:

[0086] A timer is set on the user plane function, and a timing period of the timer is configured.

[0087] It should be noted that the triggering of the load redistribution process on the user plane function can be divided into manual triggering and automatic triggering. The control logic of manual triggering relies on human participation and cannot achieve automatic balancing of the load on the user plane function. Based on this, in the present invention, a timer is set on the user plane function, and the timing period of the timer can be set in advance as needed. The timing period refers to the interval time between each load redistribution process on the user plane function.

[0088] The method for redistributing the load on the user plane function provided by the present invention realizes an automatic balancing process of the load on the user plane function by setting a timer on the user plane function, thereby improving the efficiency of the load balancing process.

[0089] Figure 4 This is a second flow chart of the method for redistributing the load on the user plane function provided by the present invention. Figure 5 This is the third flow chart of the method for redistributing the load on the user plane function provided by the present invention. Figure 6 This is a fourth flow chart of the method for redistributing the load on the user plane function provided by the present invention, such as Figure 4-6 As shown, the method includes:

[0090] Step 1, start, start the timer;

[0091] Step 2, GetUPFBandWidthLoad(), obtains the bandwidth load of each service module of UPF;

[0092] Step 3: Determine whether the load of all business modules of UPF exceeds the limit. If not, jump to Step 2; if yes, continue to Step 4;

[0093] Step 4: Calculate the average bandwidth load Avg of the service module and traverse the bandwidth load of all service modules;

[0094] Step 5: Compare the current service module bandwidth load with the average load Avg. If the current service module bandwidth load is equal to the average load Avg, discard the service module instance with the equal average load. If the current service module bandwidth load is greater than the average load Avg, execute Step 6-Step 9 in sequence. If the current service module bandwidth load is less than the average load Avg, execute Step 10-Step 13 in sequence.

[0095] In Step 6, the service module instance information with a load greater than the average is saved in AboveAvg. The core data is the bandwidth DiffBand of the service module that is higher than the average value Avg. UEs using this bandwidth need to be reallocated to other service modules.

[0096] Step 7: traverse the service module instances AboveAvg and obtain the full UE information and bandwidth load of the service module;

[0097] Step 8: Traverse all UEs under each service module and sum the actual bandwidth occupied by the UEs;

[0098] Step 9: Compare the sum of the current UE bandwidths with the DiffBand of the current service module. When the sum of the current UE bandwidths is equal to the DiffBand of the current service module, store the current UE instance in the memory data UeInfos. The statistics of the UEs that need to be assigned to the current service module have been completed, and the next service module is polled, and the process jumps to Step 7. When the sum of the current UE bandwidths is greater than the DiffBand of the current service module, the current UE is skipped and the process jumps to Step 8. When the sum of the current UE bandwidths is less than the DiffBand of the current service module, store the current UE instance in the memory data UeInfos, poll the next UE, and jump to Step 8.

[0099] In step 10, the service module instance information with a load lower than the average is saved in BlowAvg. The core data is the bandwidth DiffBand of the service module below the average value Avg. This bandwidth is the total UE bandwidth that needs to be allocated.

[0100] Step 11, traverse these business module instances BlowAvg;

[0101] Step 12, obtain each UE instance information from UeInfos in a round-robin manner;

[0102] Step 13: Sum the bandwidth of the UE and compare it with the DiffBand of the current service module. When the sum of the bandwidth of the UE is equal to the DiffBand of the current service module, the service module interface reallocates the UE to the current service module and deletes the current UE instance in UeInfos. At this time, the current service module has been allocated, and the UE is allocated to the next service module, and the process jumps to Step 11. When the sum of the bandwidth of the UE is greater than the DiffBand of the current service module, the current UE is skipped and the process jumps to Step 12. When the sum of the bandwidth of the UE is less than the DiffBand of the current service module, the service module interface reallocates the UE to the current service module, deletes the current UE instance in UeInfos, continues to poll the next UE, and jumps to Step 12.

[0103] It should be noted that UeInfos stores all UE instances that need to be reallocated, and the core data is the actual bandwidth used by each UE.

[0104] The method for redistributing the load on the user plane function provided by the present invention divides the service modules on the user plane function into overloaded service modules and underloaded service modules according to specific load conditions, and diverts user equipment on the overloaded service modules to the underloaded service modules. Based on this, balanced distribution of the load on the user plane function among the various service modules is achieved, ensuring that the processing capacity of the service modules is maximized without causing a crash of a single service module due to overload, thereby improving the reliability of the long-term operation of the user plane function and fully utilizing the maximum throughput capacity of the user plane function.

[0105] Figure 7 Schematic diagram of the structure of the device for redistributing the load on the user plane function provided by the present invention, such as Figure 7 As shown, the device includes:

[0106] An acquiring unit 710 is configured to acquire a bandwidth load value of each sub-service module in a service module on a user plane function;

[0107] The calculation unit 720 is configured to calculate the average bandwidth load of the service module and the difference between the bandwidth load value of each sub-service module and the average bandwidth load when the bandwidth load value of any of the sub-service modules is greater than a preset value;

[0108] a classification unit 730, configured to classify the sub-service module into an overload service module and an underload service module based on the difference;

[0109] The allocating unit 740 is configured to obtain information to be allocated on the overloaded service module, and allocate the user equipment to be allocated to the underloaded service module based on the information to be allocated.

[0110] The device for redistributing the load on the user plane function provided by the present invention divides the service modules on the user plane function into overloaded service modules and underloaded service modules according to specific load conditions, and diverts user equipment on the overloaded service modules to the underloaded service modules. Based on this, balanced distribution of the load on the user plane function among the various service modules is achieved, ensuring that the processing capacity of the service modules is maximized without causing a crash of a single service module due to overload, thereby improving the reliability of the long-term operation of the user plane function and fully utilizing the maximum throughput capacity of the user plane function.

[0111] According to the user plane function load redistribution device provided by the present invention, in the present invention, the device also includes a jump unit, which is used to jump to execute the acquisition of the bandwidth load value of each sub-service module in the user plane function service module when the bandwidth load value of any of the sub-service modules is less than or equal to the preset value.

[0112] The user plane function load redistribution device provided by the present invention selects the next execution step according to the actual load conditions of each sub-service module, and when the bandwidth load value of any sub-service module is less than or equal to a preset value, promptly jumps to execute and re-acquires the bandwidth load values of each sub-service module in the user plane function service module. Based on this, polling detection of the bandwidth load values of each sub-service module on the user plane function is implemented, avoiding the occurrence of detection window periods, and ensuring real-time monitoring of the user plane function load.

[0113] According to the device for redistributing the load on user plane functions provided by the present invention, in the present invention, when the classification unit 730 is used to divide the sub-service module into an overloaded service module and an underloaded service module based on the difference, it is specifically used to: when the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is greater than zero, divide the sub-service module into the overloaded service module; when the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is less than zero, divide the sub-service module into the underloaded service module.

[0114] The user plane function load redistribution device provided by the present invention uses the bandwidth load average value as a dynamic evaluation standard to classify sub-service modules with bandwidth load values higher than the bandwidth load average value as overloaded service modules, and sub-service modules with bandwidth load values lower than the bandwidth load average value as underloaded service modules, thereby redistributing user equipment between the overloaded service modules and the underloaded service modules. Ultimately, load balancing is achieved for all sub-service modules by reducing the bandwidth load value of the overloaded service modules and increasing the bandwidth load value of the underloaded service modules, thereby ensuring the stable operation of the entire system.

[0115] According to the device for redistributing the load on the user plane function provided by the present invention, in the present invention, the allocating unit 740, when used to obtain the information to be allocated on the overloaded service module, is specifically used to: obtain a process to obtain all user equipment information on the current overloaded service module, the user equipment information including the user equipment name and the user equipment bandwidth load;

[0116] A selection process is used to select the user device information in sequence and save the user device information to a storage module;

[0117] terminating the process, summing the bandwidth loads of the user equipment in the storage module to obtain a first bandwidth load value, and stopping the selection process when the first bandwidth load value is equal to the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value;

[0118] Repeat the process to sequentially execute the acquisition process, the selection process, and the termination process for each overloaded service module in the service module; summarize the user equipment information stored in the storage module to obtain information to be allocated.

[0119] The device for redistributing the load on user plane functions provided by the present invention sequentially selects user equipment information on an overloaded service module, compares a first bandwidth load value with a difference value A-DiffBand during the selection process, and uses the first bandwidth load value being equal to the difference value A-DiffBand as the cutoff point of the selection process. Based on this, accurate screening of user equipment information on the overloaded service module is achieved, and information to be allocated is obtained, laying the foundation for accurate allocation of user equipment to be allocated on the overloaded service module, which is conducive to ensuring efficient balancing of the load on the user plane functions and ensuring the stable operation of the entire system.

[0120] According to the device for redistributing the load on the user plane function provided by the present invention, in the present invention, the allocating unit 740, when used to allocate the user equipment to be allocated to the underloaded service module based on the information to be allocated, is specifically used to: allocate the information to be allocated, and select the user equipment to be allocated to the current underloaded service module in sequence based on the information to be allocated;

[0121] Stop the process, sum the bandwidth loads of the user equipment to be allocated on the current underloaded service module to obtain a second bandwidth load value, and stop executing the allocation process when the second bandwidth load value is equal to the difference between the bandwidth load value of the current underloaded service module and the bandwidth load average value;

[0122] In a reciprocating process, the allocation process and the stop process are sequentially executed on each underloaded service module in the service module, and the user equipment information that has completed the allocation process in the to-be-allocated information is deleted.

[0123] The device for redistributing the load on the user plane function provided by the present invention sequentially selects user equipment to be allocated to the underloaded service module, compares the second bandwidth load value and the difference B-DiffBand during the selection process, and uses the second bandwidth load value equal to the difference B-DiffBand as the cutoff point of the selection process. Based on this, the device achieves accurate allocation of the user equipment to be allocated to the underloaded service module, enables the underloaded service module to resume full-load operation, lays the foundation for load balancing between the underloaded service module and the overloaded service module, and ensures the stable operation of the entire system.

[0124] According to the device for redistributing load on a user plane function provided by the present invention, in the present invention, the device further includes a timing unit, which is used to set a timer on the user plane function and configure a timing period of the timer.

[0125] The device for redistributing the load on the user plane function provided by the present invention realizes an automatic balancing process of the load on the user plane function by setting a timer on the user plane function, thereby improving the efficiency of the load balancing process.

[0126] Figure 8 An example of a physical structure diagram of an electronic device is shown below. Figure 8 As shown, the electronic device may include: a processor 810, a communication interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communication interface 820, and the memory 830 communicate with each other via the communication bus 840. The processor 810 may call logic instructions in the memory 830 to execute a method for redistributing the load on a user plane function, the method comprising: obtaining bandwidth load values of each sub-service module in a service module on the user plane function; when the bandwidth load value of any of the sub-service modules is greater than a preset value, calculating the average bandwidth load value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value; dividing the sub-service modules into overloaded service modules and underloaded service modules based on the difference; obtaining to-be-allocated information on the overloaded service module, and allocating the to-be-allocated user equipment to the underloaded service module based on the to-be-allocated information.

[0127] In addition, the logic instructions in the above-mentioned memory 830 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0128] On the other hand, the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the load redistribution method on the user plane function provided by the above methods, the method including: obtaining the bandwidth load value of each sub-service module in the service module on the user plane function; when the bandwidth load value of any of the sub-service modules is greater than a preset value, solving the bandwidth load average value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value; dividing the sub-service modules into overloaded service modules and underloaded service modules based on the difference; obtaining the information to be allocated on the overloaded service module, and allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated.

[0129] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform the above-mentioned method for redistributing the load on the user plane function, the method comprising: obtaining the bandwidth load value of each sub-service module in the service module on the user plane function; when the bandwidth load value of any of the sub-service modules is greater than a preset value, solving the bandwidth load average value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value; dividing the sub-service modules into overloaded service modules and underloaded service modules based on the difference; obtaining the information to be allocated on the overloaded service module, and allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated.

[0130] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.

[0131] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, or of course, by hardware. Based on this understanding, the essence of the above technical solution or the part that contributes to the existing technology can be embodied in the form of a software product. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or certain parts of the embodiments.

[0132] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.

Claims

1. A method for redistributing load on user plane functions, characterized in that: include: Obtain the bandwidth load value of each sub-service module in the service module on the user plane function; When the bandwidth load value of any of the sub-service modules is greater than a preset value, calculating the bandwidth load average value of the service module and the difference between the bandwidth load value of each sub-service module and the bandwidth load average value; dividing the sub-service module into an overload service module and an underload service module based on the difference; Acquiring information to be allocated on the overloaded service module, and allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated; The obtaining of the information to be allocated on the overloaded service module includes: Acquisition process, obtaining all user equipment information on the current overloaded service module, the user equipment information including user equipment name and user equipment bandwidth load; The selection process sequentially selects the user equipment information, accumulates the user equipment bandwidth load of the current user equipment information, and obtains a first bandwidth load value. When the first bandwidth load value is less than the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, the current user equipment information is saved to the storage module, and the next user equipment information is polled. When the first bandwidth load value is greater than the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, the current user equipment information is skipped. terminating the process, when the first bandwidth load value is equal to the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, stopping the execution of the selection process; Repeat the process to sequentially execute the acquisition process, the selection process, and the termination process for each overloaded service module in the service module; summarize the user equipment information stored in the storage module to obtain information to be allocated.

2. The method for redistributing the load on the user plane function according to claim 1, characterized in that: The method further comprises: When the bandwidth load value of any of the sub-service modules is less than or equal to the preset value, the process jumps to executing the step of obtaining the bandwidth load value of each sub-service module in the service module on the user plane function.

3. The method for redistributing the load on the user plane function according to claim 1, characterized in that: The dividing the sub-service module into an overload service module and an underload service module based on the difference specifically includes: When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is greater than zero, dividing the sub-service module into the overloaded service module; When the difference between the bandwidth load value of the sub-service module and the bandwidth load average value is less than zero, the sub-service module is divided into the underloaded service module.

4. The method for redistributing the load on the user plane function according to claim 1, characterized in that: The allocating the user equipment to be allocated to the underloaded service module based on the information to be allocated specifically includes: Allocation process, obtaining the information to be allocated, and selecting the user equipment to be allocated to the current underloaded service module in sequence based on the information to be allocated; Stop the process, sum the bandwidth loads of the user equipment to be allocated on the current underloaded service module to obtain a second bandwidth load value, and stop executing the allocation process when the second bandwidth load value is equal to the difference between the bandwidth load value of the current underloaded service module and the bandwidth load average value; In a reciprocating process, the allocation process and the stop process are sequentially executed on each underloaded service module in the service module, and the user equipment information that has completed the allocation process in the to-be-allocated information is deleted.

5. The method for redistributing the load on the user plane function according to claim 1, characterized in that: Before obtaining the bandwidth load value of each sub-service module in the service module on the user plane function, the method further includes: A timer is set on the user plane function, and a timing period of the timer is configured.

6. A device for redistributing load on user plane functions, characterized in that: include: An acquisition unit, configured to acquire a bandwidth load value of each sub-service module in a service module on a user plane function; a calculation unit, configured to calculate, when the bandwidth load value of any of the sub-service modules is greater than a preset value, an average bandwidth load value of the service module and a difference between the bandwidth load value of each sub-service module and the bandwidth load average value; a classification unit, configured to classify the sub-service module into an overload service module and an underload service module based on the difference; an allocating unit, configured to obtain information to be allocated on the overloaded service module, and allocate the user equipment to be allocated to the underloaded service module based on the information to be allocated; The obtaining of the information to be allocated on the overloaded service module includes: Acquisition process, obtaining all user equipment information on the current overloaded service module, the user equipment information including user equipment name and user equipment bandwidth load; The selection process sequentially selects the user equipment information, accumulates the user equipment bandwidth load of the current user equipment information, and obtains a first bandwidth load value. When the first bandwidth load value is less than the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, the current user equipment information is saved to the storage module, and the next user equipment information is polled. When the first bandwidth load value is greater than the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, the current user equipment information is skipped. terminating the process, when the first bandwidth load value is equal to the difference between the bandwidth load value of the current overloaded service module and the bandwidth load average value, stopping the execution of the selection process; Repeat the process to sequentially execute the acquisition process, the selection process, and the termination process for each overloaded service module in the service module; summarize the user equipment information stored in the storage module to obtain information to be allocated.

7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the steps of the method for redistributing the load on the user plane function as claimed in any one of claims 1 to 5 are implemented.

8. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method for redistributing the load on the user plane function according to any one of claims 1 to 5 are implemented.

9. A computer program product comprising a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method for redistributing the load on the user plane function according to any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Load balancing method and device, equipment and readable storage medium

    CN110362402A

  • Processing method and device for realizing load balancing

    CN113377539A