IP Library Granted Patent US 9,577,900
Granted Patent B1
US 9,577,900 · App. 14/815,211 · Granted Feb 21, 2017

Application centric network experience monitoring

Inventors: Harish Nataraj (Berkeley, CA); Adam Leftik (San Francisco, CA); Ajay Chandel (Fremont, CA); Jyoti Bansal (San Francisco, CA); Bhaskar Sunkara (San Francisco, CA)
Assignee: AppDynamics, Inc.
H04L43/062H04W24/10H04W36/30H04L43/16
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 9,577,900
App. No.
14/815,211
Granted
Feb 21, 2017
Kind
B1
Abstract

A system determines the performance of a network within the context of an application using that network. Network data is collected and correlated with an application that uses the network as well as a distributed transaction implemented by the application. The collected network data is culled, and the remaining data is rolled up into one or more metrics. The metrics, selected network data, and other data are reported in the context of the application that implements part of the distributed transaction. In this manner, specific network performance and architecture data is reported along with application context information.

Claims (53)

1. A method for correlating application performance data and network performance data for a distributed transaction, comprising:

collecting application data by a first module installed on a first machine, the application data collected during execution of an application, the application one of a plurality of applications on one or more machines that implement a distributed transaction over a network;

receiving, by a second module installed on the first machine, the collected application data;

collecting network data for the network by the second module installed on the first machine;

identifying, by the second module, a subset of the collected network data including network flow data corresponding to the application data and collected during execution of the application while implementing a portion of the distributed transaction over the network;

correlating the application data and the identified subset of the network data using distributed transaction information that includes call chain data, the correlated application data and the identified subset of the network data indicating performance of the network within a context of the application during execution; and

reporting the correlated application data and the network indicating the performance of the network within the context of the application during execution from a remote server.

2. The method of claim 1 , wherein the first module is a first agent installed on the first machine and the second module is a plug-in installed in the first agent on the first machine.

3. The method of claim 2 , wherein the call chain data includes a sequence of one or more nodes that have previously processed the distributed business transaction.

4. The method of claim 3 , including:

receiving, by the second module, the network flow tuple and distributed transaction information;

generating, by the second module, metrics for network flow group data that matches the received network flow tuple; and

reporting the network flow group metrics and the distributed transaction information to a remote server.

5. The method of claim 1 , the network data including network infrastructure data.

6. The method of claim 1 , wherein the first module is a first agent installed on the first machine and the second module is a second agent installed on the first machine.

7. The method of claim 1 , including:

collecting, by the first module, the distributed transaction information from the application being monitored; and

providing, by the first module, the distributed transaction information to the second module.

8. The method of claim 1 , including:

collecting, by the first module, a network flow tuple for the application; and

providing, by the first module, the distributed transaction information and the network flow tuple to the second module.

9. The method of claim 1 , wherein correlating includes:

receiving application performance metrics generated from the application data collected by the first module;

receiving network performance metrics generated from the network data collected by the second module; and

correlating the application performance metrics and network performance metrics using the call chain data that indicate a sequence of machines that have previously processed the distributed transaction are associated with each of the application performance metrics and network performance metrics.

10. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method for correlating application performance data and network performance data for a distributed transaction, the method comprising:

collecting application data by a first module installed on a first machine, the application data collected during execution of an application, the application one of a plurality of applications on one or more machines that implement a distributed transaction over a network;

receiving, by a second module installed on the first machine, the collected application data;

collecting network data for the network by the second module installed on the first machine;

identifying, by the second module, a subset of the collected network data including network flow data corresponding to the application data and collected during execution of the application while implementing a portion of the distributed transaction over the network;

correlating the application data and the identified subset of the network data using distributed transaction information that includes call chain data, the correlated application data and the identified subset of the network data indicating performance of the network within a context of the application during execution; and

reporting the correlated application data and the network indicating the performance of the network within the context of the application during execution from a remote server.

11. The non-transitory computer readable storage medium of claim 10 , wherein the first module collecting the distributed transaction information from the application being monitored by the first module, the first module providing the second module with the distributed transaction information.

12. The non-transitory computer readable storage medium of claim 11 , wherein the call chain data includes a sequence of one or more nodes that have previously processed the distributed business transaction.

13. The non-transitory computer readable storage medium of claim 10 , wherein the first module collecting a network flow tuple for the application, the first module providing the distributed transaction information and the network flow tuple to the second module.

14. The non-transitory computer readable storage medium of claim 13 , the second module receiving the network flow tuple and distributed transaction information, the second module generating metrics for network flow group data that matches the received network flow tuple and reporting the network flow group metrics and distributed transaction information to a remote server.

15. The non-transitory computer readable storage medium of claim 10 , the network data including network infrastructure data.

16. The non-transitory computer readable storage medium of claim 10 , wherein the first module is a first agent installed on the first machine and the second module is a second agent installed on the first machine.

17. The non-transitory computer readable storage medium of claim 10 , wherein the first module is a first agent installed on the first machine and the second module is a plug-in installed in the first agent on the first machine.

18. The non-transitory computer readable storage medium of claim 10 , wherein correlating includes:

receiving application performance metrics generated from the application data collected by the first module;

receiving network performance metrics generated from the network data collected by the second module; and

correlating the application performance metrics and network performance metrics using the call chain data that indicate a sequence of machines that have previously processed the distributed transaction are associated with each of the application performance metrics and network performance metrics.

19. A system for correlating application performance data and network performance data for a distributed transaction, comprising:

a server including a memory and a processor; and

one or more modules stored in the memory and executed by the processor to perform operations including:

collect application data by a first module installed on a first machine, the application data collected during execution of an application, the application one of a plurality of applications on one or more machines that implement a distributed transaction over a network;

receive, by a second module installed on the first machine, the collected application data;

collect network data for the network by the second module installed on the first machine;

identify, by the second module, a subset of the collected network data including network flow data corresponding to the application data and collected during execution of the application while implementing a portion of the distributed transaction over the network;

correlate the application data and the identified subset of the network data using distributed transaction information that includes call chain data, the correlated application data and the identified subset of the network data indicating performance of the network within a context of the application during execution; and

report the correlated application data and the identified subset of the network data indicating the performance of the network within the context of the application from a remote server.

20. The system of claim 19 , wherein the call chain data includes a sequence of nodes that have previously processed the distributed business transaction.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2017
From: APPDYNAMICS LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 044173/0050 →
CHANGE OF NAME Recorded Jun 23, 2017
From: APPDYNAMICS, INC.
To: APPDYNAMICS LLC
Reel/Frame 042964/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2017
From: NATARAJ, HARISH; LEFTIK, ADAM; CHANDEL, AJAY; SUNKARA, BHASKAR; BANSAL, JYOTI
To: APPDYNAMICS, INC.
Reel/Frame 041120/0919 →