IP Library Granted Patent US 10,671,520
Granted Patent B1
US 10,671,520 · App. 16/528,247 · Granted Jun 2, 2020

Scheduled tests for endpoint agents

Inventors: Nelson Rodrigues (San Francisco, CA); Santiago Alessandri (San Francisco, CA); Sergio Freitas (London, GB); Ricardo V. Oliveira (San Francisco, CA)
Assignee: ThousandEyes, Inc.
G06F11/3688G06F11/3692H04L43/08H04L43/50
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,671,520
App. No.
16/528,247
Granted
Jun 2, 2020
Kind
B1
Abstract

Techniques for scheduled tests for endpoint agents are disclosed. In some embodiments, a system/process/computer program product for providing scheduled tests for endpoint agents includes receiving a test configuration for scheduled tests that includes a set of conditions for dynamically selecting endpoint agents that match the set of conditions in the test configuration, wherein a plurality of endpoint agents are deployed to a plurality of endpoint devices; identifying one or more of the plurality of endpoint agents that match the set of conditions in the test configuration; assigning the scheduled tests associated with the test configuration to the matching endpoint agents for execution of the scheduled tests based on the test configuration, wherein test results are based on the scheduled tests executed on each of the matching endpoint agents for monitoring network activity; and receiving uploaded results of the scheduled tests executed on the matching endpoint agents, wherein the uploaded results of the scheduled tests executed on the matching endpoint agents are processed for generating graphical visualizations and/or alerts of the monitored network activity.

Claims (50)

1. A system, comprising:

a processor configured to:

receive a test configuration for scheduled tests that includes a label for a set of conditions for dynamically selecting endpoint agents that match the set of conditions in the test configuration, wherein a plurality of endpoint agents are deployed to a plurality of endpoint devices;

receive a configuration input for setting a maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests;

identify one or more of the plurality of endpoint agents that match the label for the set of conditions in the test configuration, wherein each of the plurality of endpoint agents that match the label for the set of conditions in the test configuration is dynamically associated with the label based on a current network, a geography, an operating system (OS), a set of current state information, and/or other runtime/state information;

assign the scheduled tests associated with the test configuration to the matching endpoint agents for execution of the scheduled tests based on the test configuration, wherein a number of the matching endpoint agents that are assigned the scheduled tests does not exceed the maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests, and wherein test results are based on the scheduled tests executed on each of the matching endpoint agents for monitoring network activity; and

receive uploaded results of the scheduled tests executed on the matching endpoint agents, wherein the uploaded results of the scheduled tests executed on the matching endpoint agents are processed for generating graphical visualizations and/or alerts of the monitored network activity; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system recited in claim 1 , wherein graphical visualizations of an application delivery state facilitate troubleshooting of network performance problems associated with one or more of the plurality of endpoint devices.

3. The system recited in claim 1 , wherein each of the plurality of endpoint agents performs network monitoring tests and system monitoring tests.

4. The system recited in claim 1 , wherein each of the plurality of endpoint agents is controlled by an agent controller.

5. The system recited in claim 1 , wherein the graphical visualizations are generated by a web tier.

6. The system recited in claim 1 , wherein the scheduled tests that can be performed by the endpoint agents on the endpoint devices are configurable.

7. The system recited in claim 1 , wherein the processor is further configured to:

receive state information periodically from each of the plurality of endpoint agents.

8. The system recited in claim 1 , wherein the processor is further configured to:

deploy a plurality of endpoint agents to a plurality of endpoint devices.

9. The system recited in claim 1 , wherein the processor is further configured to:

deploy a plurality of endpoint agents to a plurality of endpoint devices; and

collect test results from each of the plurality of endpoint agents for a plurality of tests, wherein the test results are based on tests executed on each of the plurality of endpoint devices for monitoring network activity.

10. The system recited in claim 1 , wherein the processor is further configured to:

deploy a plurality of endpoint agents to a plurality of endpoint devices;

collect test results from each of the plurality of endpoint agents for a plurality of tests, wherein the test results are based on tests executed on each of the plurality of endpoint devices for monitoring network activity; and

generate a graphical visualization of an application delivery state for one or more application delivery layers based on the test results.

11. The system recited in claim 1 , wherein the processor is further configured to:

receive another configuration input for setting a maximum number of tests assigned for a single endpoint agent.

12. A method, comprising:

receiving a test configuration for scheduled tests that includes a label for a set of conditions for dynamically selecting endpoint agents that match the set of conditions in the test configuration, wherein a plurality of endpoint agents are deployed to a plurality of endpoint devices;

receiving a configuration input for setting a maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests;

identifying one or more of the plurality of endpoint agents that match the label for the set of conditions in the test configuration, wherein each of the plurality of endpoint agents that match the label for the set of conditions in the test configuration is dynamically associated with the label based on a current network, a geography, an operating system (OS), a set of current state information, and/or other runtime/state information;

assigning the scheduled tests associated with the test configuration to the matching endpoint agents for execution of the scheduled tests based on the test configuration, wherein a number of the matching endpoint agents that are assigned the scheduled tests does not exceed the maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests, and wherein test results are based on the scheduled tests executed on each of the matching endpoint agents for monitoring network activity; and

receiving uploaded results of the scheduled tests executed on the matching endpoint agents, wherein the uploaded results of the scheduled tests executed on the matching endpoint agents are processed for generating graphical visualizations and/or alerts of the monitored network activity.

13. The method of claim 12 , wherein graphical visualizations of an application delivery state facilitate troubleshooting of network performance problems associated with one or more of the plurality of endpoint devices.

14. The method of claim 12 , wherein each of the plurality of endpoint agents perform network monitoring tests and system monitoring tests.

15. The method of claim 12 , wherein each of the plurality of endpoint agents are controlled by an agent controller.

16. The method of claim 12 , wherein a plurality of tests that can be performed by the endpoint agents on the endpoint devices are configurable.

17. The method of claim 12 , further comprising:

receiving another configuration input for setting a maximum number of tests assigned for a single endpoint agent.

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

receiving a test configuration for scheduled tests that includes a label for a set of conditions for dynamically selecting endpoint agents that match the set of conditions in the test configuration, wherein a plurality of endpoint agents are deployed to a plurality of endpoint devices;

receiving a configuration input for setting a maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests;

identifying one or more of the plurality of endpoint agents that match the label for the set of conditions in the test configuration, wherein each of the plurality of endpoint agents that match the label for the set of conditions in the test configuration is dynamically associated with the label based on a current network, a geography, an operating system (OS), a set of current state information, and/or other runtime/state information;

assigning the scheduled tests associated with the test configuration to the matching endpoint agents for execution of the scheduled tests based on the test configuration, wherein a number of the matching endpoint agents that are assigned the scheduled tests does not exceed the maximum number of endpoint agents that are to be selected for concurrently performing the scheduled tests, and wherein test results are based on the scheduled tests executed on each of the matching endpoint agents for monitoring network activity; and

receiving uploaded results of the scheduled tests executed on the matching endpoint agents, wherein the uploaded results of the scheduled tests executed on the matching endpoint agents are processed for generating graphical visualizations and/or alerts of the monitored network activity.

19. The computer program product recited in claim 18 , wherein graphical visualizations of an application delivery state facilitate troubleshooting of network performance problems associated with one or more of the plurality of endpoint devices.

20. The computer program product recited in claim 18 , wherein each of the plurality of endpoint agents perform network monitoring tests and system monitoring tests.

21. The computer program product recited in claim 18 , wherein the scheduled tests that can be performed by the endpoint agents on the endpoint devices are configurable.

22. The computer program product recited in claim 18 , wherein each of the plurality of endpoint agents is controlled by an agent controller.

23. The computer program product recited in claim 18 , further comprising computer instructions for:

receiving another configuration input for setting a maximum number of tests assigned for a single endpoint agent.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2021
From: THOUSANDEYES LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 056348/0993 →
CHANGE OF NAME Recorded Nov 18, 2020
From: THOUSANDEYES, INC.
To: THOUSANDEYES LLC
Reel/Frame 054476/0337 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 19, 2019
From: RODRIGUES, NELSON; ALESSANDRI, SANTIAGO; FREITAS, SERGIO; OLIVEIRA, RICARDO V.
To: THOUSANDEYES, INC.
Reel/Frame 050430/0310 →
Continuity (2)
Continuation In Part 15622535 · Jun 14, 2017
Provisional Application 62350632 · Jun 15, 2016
Cited By (5)
US 12,284,105 US 12,423,174 US 12,438,800 US 12,443,671 US 12,547,819