IP Library Granted Patent US 11,916,746
Granted Patent B1
US 11,916,746 · App. 17/304,238 · Granted Feb 27, 2024

Decision tree based dynamic mesh topology

Inventors: Krishna Mohan Golla (Bangalore, IN); Venkata Rajasekharu Athreyapurapu (Bangalore, IN); Prasad V (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L41/12G06N5/01H04L41/16H04L41/5009
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,916,746
App. No.
17/304,238
Granted
Feb 27, 2024
Kind
B1
Abstract

A computing device may determine an occurrence of a network event associated with a pair of network devices of a plurality of network devices included in a network. The computing device may, in response to determining the occurrence of the network event, determine a plurality of network parameters associated with the network. The computing device may determine, using a plurality of decision trees and based on the plurality of network parameters, a number of overlay tunnels to add between the pair of network devices. The computing device may create the number of overlay tunnels over an underlay topology of the network between the pair of network devices.

Claims (47)

1. A method comprising:

determining, by a computing device, an occurrence of a network event associated with a pair of network devices of a plurality of network devices included in a network;

in response to determining the occurrence of the network event, determining, by the computing device, a plurality of network parameters associated with the network;

determining, by the computing device using a plurality of decision trees and based on the plurality of network parameters, a number of overlay tunnels to add between the pair of network devices; and

creating, by the computing device, the number of overlay tunnels over an underlay topology of the network between the pair of network devices.

2. The method of claim 1 , wherein the network event comprises one of: a link status change event, a network traffic event, or a service level agreement (SLA) event.

3. The method of claim 1 , wherein the plurality of network parameters comprises two or more of: processor usage associated with the pair of network devices, memory usage associated the pair of network devices, a current number of overlay tunnels between the pair of network devices, a total number of overlay tunnels in the network, and link statuses of links in the underlay topology of the network between the pair of network devices.

4. The method of claim 1 , wherein determining, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further comprises:

processing, by the computing device, each of the plurality of network parameters using a corresponding decision tree of the plurality of decision trees to determine a plurality of decisions; and

determining, by the computing device and based on the plurality of decisions, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices.

5. The method of claim 4 , wherein each of the plurality of decisions indicates a corresponding weight and a corresponding number of overlay tunnels to add between the pair of network devices in accordance with a respective network parameter of the plurality of network parameters.

6. The method of claim 5 , wherein determining, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further comprises:

determining, by the computing device, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as a majority of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions.

7. The method of claim 5 , wherein determining, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further comprises:

determining, by the computing device, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as an average of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions.

8. The method of claim 5 , wherein determining, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further comprises:

determining, by the computing device, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as a weighted average of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions that are weighted based on the corresponding weight indicated by each of the plurality of decisions.

9. A computing device comprising:

a memory; and

processing circuitry in communication with the memory and configured to:

determine an occurrence of a network event associated with a pair of network devices of a plurality of network devices included in a network;

in response to determining the occurrence of the network event, determine a plurality of network parameters associated with the network;

determine, using a plurality of decision trees and based on the plurality of network parameters, a number of overlay tunnels to add between the pair of network devices; and

create the number of overlay tunnels over an underlay topology of the network between the pair of network devices.

10. The computing device of claim 9 , wherein the network event comprises one of: a link status change event, a network traffic event, or a service level agreement (SLA) event.

11. The computing device of claim 9 , wherein the plurality of network parameters comprises two or more of: processor usage associated with the pair of network devices, memory usage associated the pair of network devices, a current number of overlay tunnels between the pair of network devices, a total number of overlay tunnels in the network, and link statuses of links in the underlay topology of the network between the pair of network devices.

12. The computing device of claim 9 , wherein to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices, the processing circuitry is further configured to:

process each of the plurality of network parameters using a corresponding decision tree of the plurality of decision trees to determine a plurality of decisions; and

determine, based on the plurality of decisions, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices.

13. The computing device of claim 12 , wherein each of the plurality of decisions indicates a corresponding weight and a corresponding number of overlay tunnels to add between the pair of network devices in accordance with a respective network parameter of the plurality of network parameters.

14. The computing device of claim 13 , wherein to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices, the processing circuitry is further configured to:

determine the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as a majority of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions.

15. The computing device of claim 13 , wherein to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices, the processing circuitry is further configured to:

determine the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as an average of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions.

16. The computing device of claim 13 , wherein to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices, the processing circuitry is further configured to:

determine the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as a weighted average of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions that are weighted based on the corresponding weight indicated by each of the plurality of decisions.

17. A non-transitory computer-readable storage medium encoded with instructions that, when executed, cause one or more programmable processors to:

determine an occurrence of a network event associated with a pair of network devices of a plurality of network devices included in a network;

in response to determining the occurrence of the network event, determine a plurality of network parameters associated with the network;

determine, using a plurality of decision trees and based on the plurality of network parameters, a number of overlay tunnels to add between the pair of network devices; and

create the number of overlay tunnels over an underlay topology of the network between the pair of network devices.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the instructions that cause the one or more programmable processors to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further cause the one or more programmable processors to:

process each of the plurality of network parameters using a corresponding decision tree of the plurality of decision trees to determine a plurality of decisions; and

determine, based on the plurality of decisions, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices.

19. The non-transitory computer-readable storage medium of claim 18 , wherein each of the plurality of decisions indicates a corresponding weight and a corresponding number of overlay tunnels to add between the pair of network devices in accordance with a respective network parameter of the plurality of network parameters.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the instructions that cause one or more programmable processors to determine, using the plurality of decision trees and based on the plurality of network parameters, the number of overlay tunnels to add between the pair of network devices of the plurality of network devices further cause the one or more programmable processors to:

determine the number of overlay tunnels to add between the pair of network devices of the plurality of network devices as a majority of the corresponding number of overlay tunnels to add between the pair of network devices indicated by each of the plurality of decisions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2021
From: GOLLA, KRISHNA MOHAN; ATHREYAPURAPU, VENKATA RAJASEKHARU; V, PRASAD
To: JUNIPER NETWORKS, INC.
Reel/Frame 056568/0960 →
Cited By (2)
US 12,513,061 US 12,659,250