IP Library Granted Patent US 10,756,983
Granted Patent B2
US 10,756,983 · App. 16/043,904 · Granted Aug 25, 2020

Intent-based analytics

Inventors: Aleksandar Luka Ratkovic (Palo Alto, CA); Jonathan Thambidurai (Palo Alto, CA); Maksim Kulkin (Sunnyvale, CA)
Assignee: Apstra, Inc.
H04L41/145G06F16/2379G06F16/9024G06F16/951H04L43/045H04L43/06H04L43/08H04L43/0817H04L67/02H04L41/046H04L41/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 10,756,983
App. No.
16/043,904
Granted
Aug 25, 2020
Kind
B2
Abstract

In performing network analysis, a declarative specification of a collector element and a declarative specification of a processing element are received. The declarative specification of the collector element specifies a dynamically updating query associated with networking components of a computer network. The processing element dynamically processes dynamically updated results of the dynamically updating query. At least the collector element and the processing element are executed. An indication of a detected anomaly is provided based at least in part on a result of the execution of the collector element and the processing element.

Claims (34)

1. A method of network analysis performed by one or more servers, comprising:

receiving, for a collector element, a first declarative specification that specifies a dynamically updating query associated with networking components of a computer network, wherein the query identifies criteria that match a portion of the computer network and the collector element is capable of implementing a variety of different queries including the received dynamically updating query;

receiving, for a processing element, a second declarative specification, wherein the processing element is configured to receive dynamically updated results of the dynamically updating query of the collector element and dynamically process the dynamically updated results of the dynamically updating query;

executing at least the collector element and the processing element as separate elements to implement the dynamically updating query based on the first declarative specification and process the dynamically updated results of the dynamically updating query based on the second declarative specification, including by in response to a detected change in the network that would affect the dynamically updating query, identifying that the collector element and/or the processing element is affected by the detected change and enabling the collector element and/or the processing element to automatically and dynamically adapt to the detected change, wherein the dynamically updated results are updated due to the detected change in the network; and

providing an indication of a detected anomaly based at least in part on the updated dynamically updated results of the dynamically updating query.

2. The method of claim 1 , wherein the dynamically updating query is for a graph representation of the networking components of the computer network.

3. The method of claim 2 , wherein the graph representation includes a computing infrastructure node and a computing infrastructure edge; the computing infrastructure node comprises one or more of the following: an identifier, a type, a label, a tag, and a property; and the computing infrastructure edge comprises one or more of the following: an identifier, a type, a label, a tag, a source node, a target node, and a property.

4. The method of claim 2 , wherein telemetry data of the networking components of the computer network is stored in the graph representation.

5. The method of claim 1 , wherein the dynamically updating query identifies a pattern of an interrelated set of computing infrastructure nodes and computing infrastructure edges of the computer network.

6. The method of claim 1 , wherein the detected anomaly indicates an anomaly in a performance of the computer network.

7. The method of claim 1 , wherein the collector element and the processing element are included in a directed acyclic graph of stages in performing the network analysis.

8. The method of claim 1 , wherein a result of the execution is aggregated with a previous result of a previous execution of the collector element and the processing element.

9. The method of claim 8 , wherein the detected anomaly is based at least in part on the aggregated result.

10. The method of claim 1 , wherein the first declarative specification of the collector element and the second declarative specification of the processing element are included in an HTTP POST request.

11. The method of claim 1 , wherein executing the processing element includes executing the processing element in parallel with another processing element of the network analysis.

12. The method of claim 1 , wherein component results of a plurality of processing elements executed in parallel are gathered together and the result of the execution is based at least in part on the gathered components results.

13. The method of claim 1 , wherein the indication of the detected anomaly is provided via a graphical user interface.

14. The method of claim 1 , wherein the indication of the detected anomaly is provided via a streaming message.

15. The method of claim 1 , further comprising automatically performing a responsive action based on the indication of the detected anomaly.

16. The method of claim 1 , wherein providing the indication of the detected anomaly includes providing an analysis report of telemetry data gathered from one or more of the networking components of the computer network.

17. A system for network analysis, comprising:

one or more processors configured to:

receive, for a collector element, a first declarative specification that specifies a dynamically updating query associated with networking components of a computer network, wherein the query identifies criteria that match a portion of the computer network and the collector element is capable of implementing a variety of different queries including the received dynamically updating query;

receive, for a processing element, a second declarative specification, wherein the processing element is configured to receive dynamically updated results of the dynamically updating query of the collector element and dynamically process the dynamically updated results of the dynamically updating query;

execute at least the collector element and the processing element as separate elements to implement the dynamically updating query based on the first declarative specification and process the dynamically updated results of the dynamically updating query based on the second declarative specification, including by being configured to, in response to a detected change in the network that would affect the dynamically updating query, identify that the collector element and/or the processing element is affected by the detected change and enable the collector element and/or the processing element to automatically and dynamically adapt to the detected change, wherein the dynamically updated results are to be updated due to the detected change in the network; and

provide an indication of a detected anomaly based at least in part on the updated dynamically updated results of the dynamically updating query; and

a memory coupled to at least one of the one or more processors and configured to provide at least one of the one or more processors with instructions.

18. The system of claim 17 , wherein the one or more processors are further configured to automatically perform a responsive action based on the indication of the detected anomaly.

19. The system of claim 17 , wherein the one or more processors are configured to provide the indication of the detected anomaly including by being configured to provide an analysis report of telemetry data gathered from one or more of the networking components of the computer network.

20. A computer program product for network analysis, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving, for a collector element, a first declarative specification that specifies a dynamically updating query associated with networking components of a computer network, wherein the query identifies criteria that match a portion of the computer network and the collector element is capable of implementing a variety of different queries including the received dynamically updating query;

receiving, for a processing element, a second declarative specification, wherein the processing element is configured to receive dynamically updated results of the dynamically updating query of the collector element and dynamically process the dynamically updated results of the dynamically updating query;

executing at least the collector element and the processing element as separate elements to implement the dynamically updating query based on the first declarative specification and process the dynamically updated results of the dynamically updating query based on the second declarative specification, including by in response to a detected change in the network that would affect the dynamically updating query, identifying that the collector element and/or the processing element is affected by the detected change and enabling the collector element and/or the processing element to automatically and dynamically adapt to the detected change, wherein the dynamically updated results are updated due to the detected change in the network; and

providing an indication of a detected anomaly based at least in part on the updated dynamically updated results of the dynamically updating query.

Assignments (2)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: APSTRA, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0120 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2018
From: RATKOVIC, ALEKSANDAR LUKA; THAMBIDURAI, JONATHAN; KULKIN, MAKSIM
To: APSTRA, INC.
Reel/Frame 047108/0558 →
Continuity (2)
Provisional Application 62596672 · Dec 8, 2017
Related Publication 20190182119A1 · Jun 13, 2019
Cited By (28)
US 12,192,241 US 12,200,596 US 12,206,566 US 12,232,013 US 12,238,565 US 12,282,409 US 12,284,626 US 12,289,198 US 12,289,220 US 12,289,622 US 12,289,655 US 12,301,403 US 12,302,133 US 12,323,826 US 12,348,411 US 12,362,987 US 12,368,712 US 12,368,717 US 12,375,363 US 12,382,368 US 12,470,469 US 12,484,012 US 12,542,785 US 12,610,257 US 12,652,546 US 12,675,380 US 12,711,010 US 12,719,764