IP Library › Granted Patent US 11,943,660
Granted Patent B2
US 11,943,660 · App. 18/093,246 · Granted Mar 26, 2024

User plane function (UPF) load balancing supporting multiple slices

Inventors: Mehdi Alasti (Reston, VA); Kazi Bashir (Lewisville, TX); Ash Khamas (Goffstown, NM); Ashish Bansal (Frisco, TX); Siddhartha Chenumolu (Broadlands, VA)
Assignee: DISH Wireless L.L.C.
H04W28/0942H04W48/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,943,660
App. No.
18/093,246
Granted
Mar 26, 2024
Kind
B2
Abstract

Embodiments are directed towards systems and methods for user plane function (UPF) and network slice load balancing within a 5G network. Example embodiments include systems and methods for load balancing based on current UPF load and thresholds that depend on UPF capacity; UPF load balancing using predicted throughput of new UE on the network based on network data analytics; UPF load balancing based on special considerations for low latency traffic; UPF load balancing supporting multiple slices, maintaining several load-thresholds for each UPF and each slice depending on the UPF and network slice capacity; and UPF load balancing using predicted central processing unit (CPU) utilization and/or predicted memory utilization of new UE on the network based on network data analytics.

Claims (77)

1. A system, comprising:

a memory that stores computer instructions; and

a processor that executes the computer instructions to perform actions, the actions including:

maintaining a plurality of load thresholds for each network slice of a plurality of network slices, wherein:

each network slice of each respective set of network slices comprises of a set of virtual network resources and network traffic flows associated with the network slice and represents an independent virtualized instance of a network defined by allocation of a subset of available network resources in a cellular telecommunication network;

each network slice of the plurality of network slices is supported by a respective user plane function (UPF) of a plurality of UPFs in a cellular telecommunication network;

the plurality of UPFs serve as anchor points between user equipment (UE) in the cellular telecommunication network and a data network (DN);

each UPF of the plurality of UPFs is a virtual network function responsible for interconnecting packet data unit (PDU) sessions between the user equipment (UE) and the DN by anchoring the PDU sessions on individual UPFs;

the plurality of load thresholds for each network slice depend on a respective capacity of each network slice and total capacity of each UPF supporting each network slice to have PDU sessions anchored thereon; and

an amount of load put on a network slice by a UE appearing in the cellular telecommunication network is assumed to be identical for all UEs appearing in the cellular telecommunication network;

receiving a request to anchor on a UPF a PDU session of a new UE newly appearing on the cellular telecommunication network;

selecting a network slice of the plurality of network slices on which to anchor the PDU session based on a location of the new UE and determined load-regions for each network slice of the plurality of network slices defined by the plurality of load thresholds;

anchoring the PDU session of the new UE to the selected network slice and the respective UPF supporting the selected network slice;

generating a lowing load-region indicating a current network slice load less that a first threshold percentage of network slice capacity;

generating one or more intermediate non-overlapping load-regions each defined by respective lower and upper threshold percentages of network slice capacity and indicating a current load greater than the lowest load-region; and

generating a highest load-region indicating a current network slice load greater than a second threshold percentage of network slice capacity and greater than the one or more intermediate non-overlapping load-regions.

2. The system of claim 1 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

selecting the particular network slice in response to the determined load-region of the particular network slice being a load-region indicating a current load of the particular network slice is below a threshold capacity.

3. The system of claim 1 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls;

determining whether the particular network slice has a determined load-region indicating a current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than a current load of another network slice of the plurality of network slices; and

in response to the particular network slice having a determined load-region indicating the current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than the current load of another network slice of the plurality of network slices, weighting the selection of a network slice of the plurality of network slices such that the particular network slice is not overloaded compared to the other network slice of the plurality of network slices by using credit/token-based weighted scheduling or probability-based weighted scheduling.

4. The system of claim 1 , wherein:

each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice;

the selecting a network slice of the plurality of network slices includes determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

the selection of the network slice is weighted by using credit/token-based weighted scheduling or probability-based weighted scheduling such that the frequency of selection of the particular network slice decreases as a difference between a higher current load of the particular network slice and a lower current load of at least one network slice of the plurality of network slices increases, as indicated by the load-regions determined for each network slice of the plurality of network slices.

5. A method, comprising:

maintaining a plurality of load thresholds for each network slice of a plurality of network slices, wherein:

each network slice of each respective set of network slices comprises of a set of virtual network resources and network traffic flows associated with the network slice and represents an independent virtualized instance of a network defined by allocation of a subset of available network resources a cellular telecommunication network;

each network slice of the plurality of network slices is supported by a respective user plane function (UPF) of a plurality of UPFs in a cellular telecommunication network;

the plurality of UPFs serve as anchor points between user equipment (UE) in the cellular telecommunication network and a data network (DN);

each UPF of the plurality of UPFs is a virtual network function responsible for interconnecting packet data unit (PDU) sessions between the user equipment (UE) and the DN by anchoring the PDU sessions on individual UPFs;

the plurality of load thresholds for each network slice depend on a respective capacity of each network slice and total capacity of each UPF supporting each network slice to have PDU sessions anchored thereon; and

an amount of load put on a network slice by a UE appearing in the cellular telecommunication network is assumed to be identical for all UEs appearing in the cellular telecommunication network;

receiving a request to anchor on a UPF a PDU session of a new UE newly appearing on the cellular telecommunication network;

selecting a network slice of the plurality of network slices on which to anchor the PDU session based on a location of the new UE and determined load-regions for each network slice of the plurality of network slices defined by the plurality of load thresholds;

anchoring the PDU session of the new UE to the selected network slice and the respective UPF supporting the selected network slice;

generating a lowing load-region indicating a current network slice load less that a first threshold percentage of network slice capacity;

generating one or more intermediate non-overlapping load-regions each defined by respective lower and upper threshold percentages of network slice capacity and indicating a current load greater than the lowest load-region; and

generating a highest load-region indicating a current network slice load greater than a second threshold percentage of network slice capacity and greater than the one or more intermediate non-overlapping load-regions.

6. The method of claim 5 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

selecting the particular network slice in response to the determined load-region of the particular network slice being a load-region indicating a current load of the particular network slice is below a threshold capacity.

7. The method of claim 5 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls;

determining whether the particular network slice has a determined load-region indicating a current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than a current load of another network slice of the plurality of network slices; and

in response to the particular network slice having a determined load-region indicating the current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than the current load of another network slice of the plurality of network slices, weighting the selection of a network slice of the plurality of network slices such that the particular network slice is not overloaded compared to the other network slice of the plurality of network slices by using credit/token-based weighted scheduling or probability-based weighted scheduling.

8. The method of claim 5 , wherein:

each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice;

the selecting a network slice of the plurality of network slices includes determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

the selection of the network slice is weighted by using credit/token-based weighted scheduling or probability-based weighted scheduling such that the frequency of selection of the particular network slice decreases as a difference between a higher current load of the particular network slice and a lower current load of at least one network slice of the plurality of network slices increases, as indicated by the load-regions determined for each network slice of the plurality of network slices.

9. A non-transitory computer-readable storage medium having computer-executable instructions stored thereon that, when executed by at least one computer processor, cause actions to be performed including:

maintaining a plurality of load thresholds for each network slice of a plurality of network slices, wherein:

each network slice of each respective set of network slices comprises of a set of virtual network resources and network traffic flows associated with the network slice and represents an independent virtualized instance of a network defined by allocation of a subset of available network resources in a cellular telecommunication network;

each network slice of the plurality of network slices is supported by a respective user plane function (UPF) of a plurality of UPFs in a cellular telecommunication network;

the plurality of UPFs serve as anchor points between user equipment (UE) in the cellular telecommunication network and a data network (DN);

each UPF of the plurality of UPFs is a virtual network function responsible for interconnecting packet data unit (PDU) sessions between the user equipment (UE) and the DN by anchoring the PDU sessions on individual UPFs;

the plurality of load thresholds for each network slice depend on a respective capacity of each network slice and total capacity of each UPF supporting each network slice to have PDU sessions anchored thereon; and

an amount of load put on a network slice by a UE appearing in the cellular telecommunication network is assumed to be identical for all UEs appearing in the cellular telecommunication network;

receiving a request to anchor on a UPF a PDU session of a new UE newly appearing on the cellular telecommunication network;

selecting a network slice of the plurality of network slices on which to anchor the PDU session based on a location of the new UE and determined load-regions for each network slice of the plurality of network slices defined by the plurality of load thresholds;

anchoring the PDU session of the new UE to the selected network slice and the respective UPF supporting the selected network slice;

generating a lowing load-region indicating a current network slice load less that a first threshold percentage of network slice capacity;

generating one or more intermediate non-overlapping load-regions each defined by respective lower and upper threshold percentages of network slice capacity and indicating a current load greater than the lowest load-region; and

generating a highest load-region indicating a current network slice load greater than a second threshold percentage of network slice capacity and greater than the one or more intermediate non-overlapping load-regions.

10. The non-transitory computer-readable storage medium of claim 9 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

selecting the particular network slice in response to the determined load-region of the particular network slice being a load-region indicating a current load of the particular network slice is below a threshold capacity.

11. The non-transitory computer-readable storage medium of claim 9 , wherein each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice and selecting a network slice of the plurality of network slices includes:

determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls;

determining whether the particular network slice has a determined load-region indicating a current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than a current load of another network slice of the plurality of network slices; and

in response to the particular network slice having a determined load-region indicating the current load of the particular network slice is in a different load-region indicating a higher current load of the particular network slice than the current load of another network slice of the plurality of network slices, weighting the selection of a network slice of the plurality of network slices such that the particular network slice is not overloaded compared to the other network slice of the plurality of network slices by using credit/token-based weighted scheduling or probability-based weighted scheduling.

12. The non-transitory computer-readable storage medium of claim 9 , wherein:

each network slice of the plurality of network slices is associated with a respective geographic area of the respective UPF supporting the network slice;

the selecting a network slice of the plurality of network slices includes determining a particular network slice of the plurality of network slices is associated with a respective geographic area within which the location of the new UE falls; and

the selection of the network slice is weighted by using credit/token-based weighted scheduling or probability-based weighted scheduling such that the frequency of selection of the particular network slice decreases as a difference between a higher current load of the particular network slice and a lower current load of at least one network slice of the plurality of network slices increases, as indicated by the load-regions determined for each network slice of the plurality of network slices.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2025
From: DISH WIRELESS L.L.C.
To: BOOST SUBSCRIBERCO L.L.C.
Reel/Frame 073066/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2023
From: ALASTI, MEHDI; BASHIR, KAZI; KHAMAS, ASH; BANSAL, ASHISH; CHENUMOLU, SIDDHARTHA
To: DISH WIRELESS L.L.C.
Reel/Frame 062275/0912 →
Continuity (2)
Continuation 17458889 · Aug 27, 2021
Related Publication 20230144066A1 · May 11, 2023
Cited By (3)
US 12,309,640 US 12,328,621 US 12,356,249