IP Library › Granted Patent US 12,381,825
Granted Patent B1
US 12,381,825 · App. 17/453,689 · Granted Aug 5, 2025

User plane load balancing in a disaggregated broadband network gateway architecture

Inventors: Cristina Radulescu-Banu (Lexington, MA); Nadeem Mohammad (Tewksbury, MA); Richard P. Pagliaro (Westford, MA); John E. Ziegler (Westborough, MA); Adrian Orozco (Hampstead, NH)
Assignee: Juniper Networks, Inc.
H04L47/125H04L12/66H04L67/141
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 12,381,825
App. No.
17/453,689
Granted
Aug 5, 2025
Kind
B1
Abstract

A disaggregated broadband network gateway (DBNG) control plane system may be configured to receive a first initialization packet associated with a user device via a first user plane and a second initialization packet associated with the user device via a second user plane. The DBNG control plane system may be configured to determine, based on at least one of the first initialization packet or the second initialization packet, one or more load balancing parameters. The DBNG control plane system may be configured to cause, based on at least one of the one or more load balancing parameters, a communication session for the user device to be established via the first user plane and not via the second user plane.

Claims (85)

1. A disaggregated broadband network gateway (DBNG) control plane system, comprising:

one or more memories; and

one or more processors to:

receive a first initialization packet associated with a user device via a first user plane and a second initialization packet associated with the user device via a second user plane;

determine, based on at least one of the first initialization packet or the second initialization packet, one or more load balancing parameters,

wherein determining the one or more load balancing parameters comprises:

determining, based on processing one or more entries in a data structure included in the DBNG control plane system that stores user plane utilization information, a first utilization rate parameter provided in terms of a percentage of a utilization of the first user plane and a second utilization rate parameter provided in terms of a percentage of a utilization of the second user plane; and

cause, based on the first utilization rate parameter and the second utilization rate parameter, a communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

2. The DBNG control plane system of claim 1 , wherein the one or more processors, when determining the one or more load balancing parameters, are to:

process the first initialization packet to determine first identification information associated with the first user plane;

process the second initialization packet to determine second identification information associated with the second user plane;

identify the data structure; and

identify, based on the first identification information and the second identification information, the one or more entries in the data structure.

3. The DBNG control plane system of claim 1 , wherein

the one or more processors, when causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, are to:

determine that the first utilization rate parameter satisfies a utilization rate threshold; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

4. The DBNG control plane system of claim 1 , wherein

the one or more processors, when causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, are to:

determine that the first utilization rate parameter satisfies a utilization rate threshold;

determine that the second utilization rate parameter does not satisfy the utilization rate threshold; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold and that the second utilization rate parameter does not satisfy the utilization rate threshold, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

5. The DBNG control plane system of claim 1 , wherein

the one or more processors, when causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, are to:

determine that the first utilization rate parameter satisfies a utilization rate threshold;

determine that the second utilization rate parameter satisfies the utilization rate threshold;

determine that the first utilization rate parameter is less than or equal to the second utilization rate parameter; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold, that the second utilization rate parameter satisfies the utilization rate threshold, and that the first utilization rate parameter is less than or equal to the second utilization rate parameter, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

6. The DBNG control plane system of claim 1 , wherein the one or more processors, when causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, are to at least one of:

send an allowance packet to the user device via the first user plane; or

refrain from sending any packet to the user device via the second user plane.

7. The DBNG control plane system of claim 1 , wherein the one or more processors are further to:

identify the data structure;

identify an entry in the data structure that indicates a utilization rate of the first user plane; and

update, based on causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, the entry to indicate a different utilization rate of the first user plane.

8. The DBNG control plane system of claim 1 , wherein the one or more processors, when determining the one or more load balancing parameters, are to:

determine, based on at least one of the first initialization packet or the second initialization packet, an identifier of an interface group that is associated with the user device;

identify another data structure included in the DBNG control plane system that stores interface group information;

identify, based on the identifier, an entry in the other data structure that is associated with the interface group; and

determine, based on the entry, a user plane identification parameter that is associated with the first user plane.

9. The DBNG control plane system of claim 8 , wherein the one or more processors, when determining the identifier of the interface group that is associated with the user device, are to:

process at least one of the first initialization packet or the second initialization packet to determine identification information associated with the user device;

communicate, based on the identification information associated with the user device, with another device to authenticate the user device; and

determine, based on authenticating the user device, the identifier of the interface group that is associated with the user device.

10. The DBNG control plane system of claim 1 , wherein the one or more load balancing parameters includes a user plane identification parameter associated with the first user plane,

wherein the one or more processors, when causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, are to:

cause, based on the user plane identification parameter associated with the first user plane, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

11. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a disaggregated broadband network gateway (DBNG) control plane system, cause the DBNG control plane system to:

receive a first initialization packet associated with a user device via a first user plane and a second initialization packet associated with the user device via a second user plane;

determine, based on the first initialization packet and the second initialization packet, and based on processing one or more entries in a data structure accessible by the DBNG control plane system that stores user plane utilization information, a first utilization rate parameter provided in terms of a percentage of a utilization of the first user plane and a second utilization rate parameter provided in terms of a percentage of a utilization of the second user plane; and

cause, based on the first utilization rate parameter and the second utilization rate parameter, a communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

12. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, that cause the DBNG control plane system to determine the first utilization rate parameter and the second utilization rate parameter, cause the DBNG control plane system to:

process the first initialization packet to determine first identification information associated with the first user plane;

process the second initialization packet to determine second identification information associated with the second user plane; and

search, based on the first identification information and the second identification information, the data structure to obtain the first utilization rate parameter and the second utilization rate parameter.

13. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, that cause the DBNG control plane system to cause the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, cause the DBNG control plane system to:

determine that the first utilization rate parameter satisfies a utilization rate threshold; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

14. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, that cause the DBNG control plane system to cause the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, cause the DBNG control plane system to:

determine that the first utilization rate parameter satisfies a utilization rate threshold;

determine that the second utilization rate parameter does not satisfy the utilization rate threshold; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold and that the second utilization rate parameter does not satisfy the utilization rate threshold, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

15. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, that cause the DBNG control plane system to cause the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, cause the DBNG control plane system to:

determine that the first utilization rate parameter satisfies a utilization rate threshold;

determine that the second utilization rate parameter satisfies the utilization rate threshold;

determine that the first utilization rate parameter is less than or equal to the second utilization rate parameter; and

cause, based on determining that the first utilization rate parameter satisfies the utilization rate threshold, that the second utilization rate parameter satisfies the utilization rate threshold, and that the first utilization rate parameter is less than or equal to the second utilization rate parameter, the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

16. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, that cause the DBNG control plane system to cause the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane, cause the DBNG control plane system to:

send an allowance packet to the user device via the first user plane; or

send a denial packet to the user device via the second user plane.

17. A method, comprising:

receiving, by a disaggregated broadband network gateway (DBNG) control plane system, a first initialization packet associated with a user device via a first user plane and a second initialization packet associated with the user device via a second user plane;

determining, by the DBNG control plane system and based on at least one of the first initialization packet or the second initialization packet, and based on processing one or more entries in a data structure accessible by the DBNG control plane system that stores user plane utilization information, a user plane identification parameter that is associated with the first user plane, a first utilization rate parameter provided in terms of a percentage of a utilization of the first user plane, and a second utilization rate parameter provided in terms of a percentage of a utilization of the second user plane; and

causing, by the DBNG control plane system and based on the user plane identification parameter, the first utilization rate parameter, and the second utilization rate parameter, a communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane.

18. The method of claim 17 , wherein determining the user plane identification parameter comprises:

determining, based on at least one of the first initialization packet or the second initialization packet, an identifier of an interface group that is associated with the user device; and

searching, based on the identifier, a data structure that stores interface group information to obtain the user plane identification parameter.

19. The method of claim 18 , wherein determining the identifier of the interface group that is associated with the user device comprises:

processing at least one of the first initialization packet or the second initialization packet to determine identification information associated with the user device;

communicating, based on the identification information associated with the user device, with another device to authenticate the user device; and

determining, based on authenticating the user device, the identifier of the interface group that is associated with the user device.

20. The method of claim 17 , wherein causing the communication session between the user device and the DBNG control plane system to be established via the first user plane and not via the second user plane comprises:

sending an allowance packet to the user device via the first user plane; or

sending a denial packet to the user device via the second user plane.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2021
From: RADULESCU-BANU, CRISTINA; MOHAMMAD, NADEEM; PAGLIARO, RICHARD P.; ZIEGLER, JOHN E.; OROZCO, ADRIAN
To: JUNIPER NETWORKS, INC.
Reel/Frame 058030/0035 →
References Cited (7)
US 8937865B1 · Kumar · 2015 [cited by examiner]
US 8953623B1 · Eyada · 2015 [cited by examiner]
US 10412157B2 · Thirumurthi et al. · 2019 [cited by applicant]
US 20210409288A1 · Hua · 2021 [cited by examiner]
US 20220386179A1 · Dhammawat · 2022 [cited by examiner]
US 20230209404A1 · Peng · 2023 [cited by examiner]
“MR-459.2: Improving Service Resilience through BNG Disaggregation”, Improving Service Resilience through BNG Disaggregation, Marketing Report, Mar. 2020, pp. 1-9, Broadband Forum, https://www.broadband-forum.org/market… [cited by applicant]