IP Library Granted Patent US 12,259,927
Granted Patent B1
US 12,259,927 · App. 18/543,813 · Granted Mar 25, 2025

Intent graph model generation using difference information

Inventors: Chi Fung Michael Chan (Mountain View, CA); Nathaniel Scott Ray (Aliso Viejo, CA); Diheng Qu (Palo Alto, CA); Atul Bhaskarrao Patil (San Ramon, CA); Manish Kumar Mathukumilli (Sunnyvale, CA)
Assignee: Juniper Networks, Inc.
G06F16/9024
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,259,927
App. No.
18/543,813
Granted
Mar 25, 2025
Kind
B1
Abstract

A system includes computer-readable media configured to store a plurality of objects representing intent graph models of a network, and processing circuitry coupled to the computer-readable media. The processing circuitry is configured to receive a request indicating a requested time, determine one or more first objects of the plurality of objects, the first objects storing an intent graph model associated with a first time, the first time different from the requested time, determine one or more second objects of the plurality of objects, the second objects storing difference information indicating one or more changes to the intent graph model associated with the first time that occurred after the first time, apply the changes to the intent graph model associated with the first time to generate an intent graph model associated with the requested time, and output an indication of the intent graph model associated with the requested time.

Claims (60)

1. A system for network management comprising:

computer-readable media configured to store a plurality of objects representing a plurality of intent graph models of a network; and

processing circuitry coupled to the computer-readable media, wherein the processing circuitry is configured to:

based on an amount of change to the network prior to a first time exceeding a threshold value, generate one or more first objects of the plurality of objects, the one or more first objects storing an intent graph model associated with the first time;

receive a request indicating an intent graph model associated with a requested time;

determine the one or more first objects of the plurality of objects, the first time different from the requested time;

determine one or more second objects of the plurality of objects, the one or more second objects storing difference information indicating one or more changes to the intent graph model associated with the first time that occurred after the first time;

apply the one or more changes to the intent graph model associated with the first time to generate the intent graph model associated with the requested time; and

output an indication of the intent graph model associated with the requested time.

2. The system of claim 1 , wherein to output the indication, the processing circuitry is configured to generate data for a user interface configured to present the intent graph model associated with the requested time.

3. The system of claim 1 , wherein the one or more changes occur one or more times after the first time and at or before the requested time.

4. The system of claim 1 , wherein the plurality of objects store at least one of system information describing one or more nodes of the network or interface information describing one or more interfaces of the network.

5. The system of claim 4 , wherein a first object of the one or more first objects stores the system information and a second object of the one or more first objects stores the interface information.

6. The system of claim 4 , wherein the one or more first objects store interface information and the one or more changes specify a change to the interface information stored by the one or more first objects.

7. The system of claim 1 , wherein the processing circuitry is further configured to:

obtain tree information corresponding to the requested time, the tree information comprising one or more first pointers indicating the one or more first objects and one or more second pointers indicating the one or more second objects;

wherein to determine the one or more first objects, the processing circuitry is configured to determine, based on the one or more first pointers, a first portion of the tree information that includes the intent graph model associated with the first time; and

wherein to determine the one or more second objects, the processing circuitry is configured to determine, based on the one or more second pointers, a second portion of the tree information that includes the one or more changes.

8. The system of claim 1 , wherein the processing circuitry is further configured to:

store, using one or more third objects, a previous intent graph model associated with a previous time that occurs prior to the first time;

store, using one or more fourth objects, difference information indicating one or more second changes to the previous intent graph model that occurred after the previous time and no later than the first time; and

determine an amount of data used to store the one or more fourth objects, wherein the amount of data represents the amount of change and a size of the amount of data exceeds the threshold value.

9. The system of claim 1 , wherein a quantity of a plurality of changes in a subset of the plurality of objects represents the amount of change and exceeds the threshold value, the subset excluding the one or more first objects and the one or more second objects.

10. The system of claim 1 , wherein the one or more changes comprises a change to one or more of:

a node in the network; or

a link in the network.

11. The system of claim 1 , further comprising memory, wherein to apply the one or more changes the processing circuitry is further configured to:

store the one or more first objects in the memory;

store the one or more second objects in the memory; and

modify the one or more first objects in the memory using the one or more second objects in the memory to generate the intent graph model associated with the requested time in the memory.

12. The system of claim 11 , wherein the processing circuitry is further configured to:

determine one or more third objects storing difference information indicating one or more additional changes to the intent graph model associated with the first time that occurred at a second time after the one or more changes and before the requested time;

apply the one or more additional changes to the intent graph model associated with the first time to generate an intent graph model associated with the second time; and

output an indication of the intent graph model associated with the second time.

13. A method for network management comprising:

based on an amount of change to a network prior to a first time exceeding a threshold value, generating, by processing circuitry, one or more first objects of a plurality of objects representing a plurality of intent graph models of the network, the one or more first objects storing an intent graph model associated with the first time;

receiving, by the processing circuitry, a request indicating an intent graph model associated with a requested time;

determining, by the processing circuitry, the one or more first objects of a plurality of objects, the first time different from the requested time;

determining, by the processing circuitry, one or more second objects of the plurality of objects, the one or more second objects storing difference information indicating one or more changes to the intent graph model associated with the first time that occurred after the first time;

applying, by the processing circuitry, the one or more changes to the intent graph model associated with the first time to generate the intent graph model associated with the requested time; and

outputting, by the processing circuitry, an indication of the intent graph model associated with the requested time.

14. The method of claim 13 , wherein outputting the indication comprises generating data for a user interface configured to present the intent graph model associated with the requested time.

15. The method of claim 13 , wherein the one or more changes occur one or more times are after the first time and at or before the requested time.

16. The method of claim 13 , wherein the plurality of objects store at least one of system information describing one or more nodes of the network or interface information describing one or more interfaces of the network.

17. The method of claim 16 , wherein the one or more first objects of the plurality of objects store interface information and the one or more changes specify a change to the interface information stored by the one or more first objects.

18. The method of claim 13 , further comprising:

obtaining, by the processing circuitry, tree information corresponding to the requested time, the tree information comprising one or more first pointers indicating the one or more first objects and one or more second pointers indicating the one or more second objects;

wherein determining the one or more first objects comprises determining, based on the one or more first pointers, a first portion of the tree information that includes the intent graph model associated with the first time; and

wherein determining the one or more second objects comprises determining, based on the one or more second pointers, a second portion of the tree information that includes the one or more changes.

19. The method of claim 13 , further comprising

determining, by the processing circuitry, one or more third objects storing difference information indicating one or more additional changes to the intent graph model associated with the first time that occurred at a second time after the one or more changes and before the requested time;

applying, by the processing circuitry, the one or more additional changes to the intent graph model associated with the first time to generate an intent graph model associated with the second time; and

outputting, by the processing circuitry, an indication of the intent graph model associated with the second time.

20. Non-transitory computer-readable storage media storing instructions that, when executed, cause processing circuitry of a network management system to:

based on an amount of change to a network prior to a first time exceeding a threshold value, generate one or more first objects of a plurality of objects representing a plurality of intent graph models of the network, the one or more first objects storing an intent graph model associated with the first time;

receive a request indicating an intent graph model associated with a requested time;

determine the one or more first objects of a plurality of objects, the first time different from the requested time;

determine one or more second objects of the plurality of objects, the one or more second objects storing difference information indicating one or more changes to the intent graph model associated with the first time that occurred after the first time;

apply the one or more changes to the intent graph model associated with the first time to generate the intent graph model associated with the requested time; and

output an indication of the intent graph model associated with the requested time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2023
From: CHAN, CHI FUNG MICHAEL; RAY, NATHANIEL SCOTT; QU, DIHENG; PATIL, ATUL BHASKARRAO; MATHUKUMILLI, MANISH KUMAR
To: JUNIPER NETWORKS, INC.
Reel/Frame 065900/0333 →
References Cited (13)
US 10200248B1 · Jiang et al. · 2019 [cited by applicant]
US 10516761B1 · A et al. · 2019 [cited by applicant]
US 20240095544A1 · Kahn · 2024 [cited by examiner]
US 20240265210A1 · Rizk · 2024 [cited by examiner]
EP 3989486A1 · 2022 [cited by applicant]
“Time Voyager”, Juniper Networks, Inc., May 30, 2023, 5 pp. [cited by applicant]
Bjorklund, “Yang—A Data Modeling Language for the Network Configuration Protocol (NETCONF),” Internet Engineering Task Force, RFC 6020, Oct. 2010, 173 pp. [cited by applicant]
ENNS, “NETCONF Configuration Protocol,” Network Working Group, RFC 4741, Dec. 2006, 96pp. [cited by applicant]
Harrington et al., “An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks,” RFC 3411, Network Working Group, the Internet Engineering Task Force draft, Dec. 2002, 64 pp. [cited by applicant]
Extended Search Report from counterpart European Application No. 24157171.0 dated Jul. 26, 2024, 13 pp. [cited by applicant]
McNamara et al., “A mechanism for intent driven adaptive policy decision making”, 2020 16th International Conference on Network and Service Management (CNSM), Nov. 2, 2020, 1-3 pp. [cited by applicant]
Wang et al., “Epinoia: Intent Checker for Stateful Networks”, 2021 International Conference on Computer Communications and Networks (ICCCN), Jul. 19, 2021, 1-9 pp. [cited by applicant]
Zhang et al., “A conflict resolution scheme in intent-driven network”, 2021 IEEE/CIC International Conference on Communications in China (ICCC), Jul. 28, 2021, 23-28 pp. [cited by applicant]
Cited By (1)
US 12,598,111