IP Library › Granted Patent US 11,431,567
Granted Patent B1
US 11,431,567 · App. 17/249,760 · Granted Aug 30, 2022

Deploying a network management controller in an existing data center fabric

Inventors: Sridevi JeevaRaj (San Jose, CA); Suresh Palguna Krishnan (Fremont, CA); Ganesha Hebbale Venkatasubbaiah (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L41/0816H04L41/0853H04L41/0883H04L41/22
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,431,567
App. No.
17/249,760
Granted
Aug 30, 2022
Kind
B1
Abstract

Some organizations have a deployed and functional “controllerless” EVPN VxLAN Fabric in their data centers. Eventually, however, the organization may deploy a controller within the network. In one example, this disclosure describes a method that includes configuring a controller to communicate with each of a plurality of elements in a network; determining, by the controller, an initial operational state of the network; translating, by the controller, the initial operational state of the network to an intent-based configuration; pushing, by the controller, the intent-based configuration to the network to reconfigure each of the plurality of elements in the network in a manner consistent with the intent-based configuration; determining, by the controller and after pushing the intent-based configuration, an updated operational state of the network; and comparing, by the controller, the initial operational state of the network with the updated operational state of the network.

Claims (66)

1. A method comprising:

configuring a controller to communicate with each of a plurality of elements in a network;

determining, by the controller, an initial operational state of the network based on responses to operational commands output to at least a subset of the plurality of elements in the network;

translating, by the controller, the initial operational state of the network to an intent-based configuration; and

pushing, by the controller, the intent-based configuration to the network to reconfigure each of the plurality of elements in the network in a manner consistent with the intent-based configuration.

2. The method of claim 1 , further comprising:

determining, by the controller and after pushing the intent-based configuration, an updated operational state of the network; and

comparing, by the controller, the initial operational state of the network with the updated operational state of the network.

3. The method of claim 2 , wherein translating the initial operational state includes:

translating the responses to the operational commands received from the plurality of elements into a plurality of intent-based network objects representing the initial operational state of the network; and

storing the network objects in a data store.

4. The method of claim 2 , wherein pushing the intent-based configuration includes:

determining, based on the stored network objects, commands for configuring the network; and

outputting, over the network, the commands to configure each of the elements in the network.

5. The method of claim 2 , wherein comparing the initial operational state of the network with the updated operational state of the network includes:

determining that the updated operational state of the network is consistent with the initial operational state of the network.

6. The method of claim 2 , wherein comparing the initial operational state of the network with the updated operational state of the network includes:

determining that the updated operational state of the network is not consistent with the initial operational state of the network; and

outputting a user interface presenting information about differences between the initial operational state of the network and the updated operational state of the network.

7. The method of claim 2 , wherein outputting operational commands includes:

outputting operational commands that elicit information about underlay configurations associated with the network.

8. The method of claim 7 , wherein the information about underlay configurations includes at least one of:

underlay exterior Border Gateway Protocol (BGP) information associated with the network, link level discovery protocol neighbors within the network, interfaces within the network, BGP neighbors, link layer discovery protocol neighbors, BGP group details, and bidirectional forwarding detection information.

9. The method of claim 7 , wherein the information about overlay configurations includes at least one of:

Ethernet Virtual Private Network (EVPN) information, virtual extensible local area network (VxLAN) information, virtual LAN information, interface within the network, EVPN instances, route instances, Border Gateway Protocol (BGP) neighbors, information about Bidirectional Forwarding Detection (BFD) sessions, and firewall information.

10. The method of claim 2 , wherein outputting operational commands includes:

outputting operational commands that elicit information about overlay configurations associated with the network.

11. The method of claim 1 , wherein pushing the intent-based configuration to the network includes:

presenting a user interface that includes information about a proposed intent-based configuration for the network.

12. The method of claim 11 , wherein pushing the intent-based configuration to the network further includes:

responsive to an indication of input confirming the proposed intent-based configuration for the network, reconfiguring each of the plurality of elements in the network based on the proposed intent-based configuration.

13. The method of claim 1 , wherein translating the initial operational state includes:

reverse engineering the initial operational state to determine a plurality of intent-based network objects representing the initial operational state of the network; and

storing the intent-based network objects in a data store.

14. The method of claim 1 , wherein reconfiguring each of the plurality of elements in the network includes:

overwriting device-level configurations for at least some of the plurality of elements in the network.

15. A method comprising:

configuring a controller to communicate with each of a plurality of elements in a network;

determining, by the controller, an initial operational state of the network based on responses to operational commands output to at least a subset of the plurality of elements in the network;

translating, by the controller, the initial operational state of the network to an intent-based configuration; and

pushing, by the controller, the intent-based configuration to the network to reconfigure each of the plurality of elements in the network in a manner consistent with the intent-based configuration,

wherein the controller is a fabric manager, wherein the elements in the network are unmanaged elements, and wherein configuring the controller to communicate with each of the plurality of elements in the network includes:

deploying the fabric manager in the network; and

enabling the fabric manager to communicate with the plurality of elements in the network.

16. The method of claim 15 , wherein pushing the intent-based configuration to the network includes:

converting each of the plurality of unmanaged elements into managed elements.

17. A computing system having a storage system and processing circuitry, wherein the processing circuitry has access to the storage system and is configured to:

enable communication with each of a plurality of elements in a network;

determine an initial operational state of the network;

translate the initial operational state of the network to an intent-based configuration;

push the intent-based configuration to the network to reconfigure each of the plurality of elements in the network in a manner consistent with the intent-based configuration;

determine, after pushing the intent-based configuration, an updated operational state of the network; and

compare the initial operational state of the network with the updated operational state of the network.

18. The computing system of claim 17 , wherein to determine the initial operational state of the network, the processing circuitry is further configured to:

output operational commands to at least a subset of the plurality of elements in the network; and

determine, based on responses to the operational commands received from the plurality of elements, the initial operational state of the network.

19. The computing system of claim 17 , wherein to compare the initial operational state of the network with the updated operational state of the network, the processing circuitry is further configured to:

determine that the updated operational state of the network is not consistent with the initial operational state of the network; and

output a user interface presenting information about differences between the initial operational state of the network and the updated operational state of the network.

20. A non-transitory computer-readable medium comprising instructions that, when executed, configure processing circuitry of a computing system to:

enable communication with each of a plurality of elements in a network;

determine an initial operational state of the network;

translate the initial operational state of the network to an intent-based configuration;

push the intent-based configuration to the network to reconfigure each of the plurality of elements in the network in a manner consistent with the intent-based configuration;

determine, after pushing the intent-based configuration, an updated operational state of the network; and

compare the initial operational state of the network with the updated operational state of the network.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2024
From: JEEVARAJ, SRIDEVI; KRISHNAN, SURESH PALGUNA; VENKATASUBBAIAH, GANESHA HEBBALE
To: JUNIPER NETWORKS, INC.
Reel/Frame 066545/0860 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2021
From: JEEVARAJ, SRIDEVI; KRISHNAN, SURESH PALGUNA; VENKATASUBBAIAH, GANESHA HEBBALE
To: JUNIPER NETWORKS, INC.
Reel/Frame 055567/0827 →
Cited By (2)
US 12,683,860 US 12,739,170