US-12621232-B2 - Variable latency testing
Abstract
Novel tools and techniques are provided for implementing variable latency testing. In various embodiments, a computing system may identify a plurality of network devices among network devices that are distributed across a network, based on a set of characteristics for testing a target device in the network. The computing system establishes a plurality of paths, each path corresponding to a path between the target device and one of the plurality of network devices. The plurality of paths includes at least one path having a latency that is different from a latency of other paths and/or at least one path having a connection speed or bandwidth that is different from a connection speed or bandwidth of other paths. The computing system initiates network tests along each established path, analyzes results of the network tests, and presents at least one of the results of the network tests or analyses of the results.
Inventors
- Patrick Giagnocavo
- Michael Stillman
Assignees
- CENTURYLINK INTELLECTUAL PROPERTY LLC
Dates
- Publication Date
- 20260505
- Application Date
- 20240510
Claims (20)
- 1 . A method, comprising: identifying, by a computing system, a first plurality of network devices among a second plurality of network devices that is distributed across a network, based on a set of characteristics for testing a target device in the network; establishing, by the computing system, a first plurality of paths, each path corresponding to a path between the target device and one of the first plurality of network devices, the first plurality of paths including one or more of at least one second path having a latency that is different from a latency of other paths among the first plurality of paths or at least one third path having a connection speed or bandwidth that is different from a connection speed or bandwidth of other paths among the first plurality of paths; initiating, by the computing system, one or more network tests along each established path among the first plurality of paths; analyzing, by the computing system, results of the one or more network tests; and presenting, by the computing system, at least one of the results of the one or more network tests or analyses of the results.
- 2 . The method of claim 1 , wherein the computing system comprises at least one of an application-specific integrated circuit (“ASIC”), a network testing system, a system orchestrator, a server, a cloud computing system, or a distributed computing system.
- 3 . The method of claim 1 , wherein the first plurality of network devices comprises at least one of one or more customer premises equipment (“CPEs”), one or more routers, one or more firewalls, one or more cloud servers, or one or more other network equipment.
- 4 . The method of claim 1 , wherein the set of characteristics comprises at least one of previously measured latency, public or private network type, interface speed, interface type, customer information, or type of network traffic.
- 5 . The method of claim 1 , wherein the one or more network tests include at least one of initiating border gateway protocol (“BGP”) queries, initiating traceroute functions, initiating a network ping, performing a domain name system (“DNS”) queries, performing bandwidth testing, performing network connection testing, performing quality of service (“QOS”) testing, performing class of service (“COS”) testing, performing latency testing, performing bandwidth testing, performing virtual private network (“VPN”) testing, or performing hypertext transfer protocol (“HTTP”) testing.
- 6 . The method of claim 1 , further comprising: based on the analysis, determining, by the computing system, whether the target device is on the network yet unreachable by one or more parts of the network or by one or more ports on an external network interface.
- 7 . The method of claim 1 , wherein identifying the first plurality of network devices comprises: querying, by the computing system, at least one database for information regarding the second plurality of network devices; and identifying, by the computing system, the first plurality of network devices among the second plurality of network devices that are compatible with the one or more network tests, based on the queried information.
- 8 . The method of claim 1 , wherein identifying the first plurality of network devices comprises: determining, by the computing system, which network devices among the second plurality of network devices satisfy the set of characteristics for testing the target device in the network; and randomly selecting, by the computing system, the first plurality of network devices among the determined network devices that satisfy the set of characteristics for testing the target device.
- 9 . A system, comprising: a computing system, comprising: at least one first processor; and a first non-transitory computer readable medium communicatively coupled to the at least one first processor, the first non-transitory computer readable medium having stored thereon computer software comprising a first set of instructions that, when executed by the at least one first processor, causes the computing system to: receive a request to test a target device; identify a first plurality of network devices among a second plurality of network devices that is distributed across a network, based on a set of characteristics for testing a target device in the network; establish a first plurality of paths, each path corresponding to a path between the target device and one of the first plurality of network devices, the first plurality of paths including one or more of at least one second path having a latency that is different from a latency of other paths among the first plurality of paths or at least one third path having a connection speed or bandwidth that is different from a connection speed or bandwidth of other paths among the first plurality of paths; initiate one or more network tests along each established path among the first plurality of paths; analyze results of the one or more network tests; and present at least one of the results of the one or more network tests or analyses of the results.
- 10 . The system of claim 9 , wherein the computing system comprises at least one of an application-specific integrated circuit (“ASIC”), a network testing system, a system orchestrator, a server, a cloud computing system, or a distributed computing system.
- 11 . The system of claim 9 , wherein the first plurality of network devices comprises at least one of one or more customer premises equipment (“CPEs”), one or more routers, one or more firewalls, one or more cloud servers, or one or more other network equipment.
- 12 . The system of claim 9 , wherein the set of characteristics comprises at least one of previously measured latency, public or private network type, interface speed, interface type, customer information, or type of network traffic.
- 13 . The system of claim 9 , wherein the one or more network tests include at least one of initiating border gateway protocol (“BGP”) queries, initiating traceroute functions, initiating a network ping, performing a domain name system (“DNS”) queries, performing bandwidth testing, performing network connection testing, performing quality of service (“QOS”) testing, performing class of service (“COS”) testing, performing latency testing, performing bandwidth testing, performing virtual private network (“VPN”) testing, or performing hypertext transfer protocol (“HTTP”) testing.
- 14 . The system of claim 9 , wherein the first set of instructions, when executed by the at least one first processor, further causes the computing system to: based on the analysis, determining, by the computing system, whether the target device is on the network yet unreachable by one or more parts of the network or by one or more ports on an external network interface.
- 15 . The system of claim 9 , wherein identifying the first plurality of network devices comprises: querying, by the computing system, at least one database for information regarding the second plurality of network devices; and identifying, by the computing system, the first plurality of network devices among the second plurality of network devices that are compatible with the one or more network tests, based on the queried information.
- 16 . A method, comprising: receiving, by a computing system, a request to test a target device in a network, the request including a set of characteristics for testing the target device; identifying, by the computing system, a first plurality of network devices among a second plurality of network devices that is distributed across the network, based on the set of characteristics for testing the target device in the network; running, by the computing system, commands on the first plurality of network devices to initiate one or more network tests over varying latencies or varying network speeds between the target device and the first plurality of network devices; analyzing, by the computing system, results of the one or more network tests to determine network status of the target device and to identify outlier network devices among the target device and the first plurality of network devices, based on at least one of the determined network status of the target device or the results of the one or more network tests; generating, by the computing system, a report based on at least one of the results of the one or more network tests, analyses of the results, the network status of the target device, or the identified outlier network devices; and presenting, by the computing system, the generated report to a user device.
- 17 . The method of claim 16 , wherein the first plurality of network devices comprises at least one of one or more customer premises equipment (“CPEs”), one or more routers, one or more firewalls, one or more cloud servers, or one or more other network equipment.
- 18 . The method of claim 16 , wherein the set of characteristics comprises at least one of previously measured latency, public or private network type, interface speed, interface type, customer information, or type of network traffic.
- 19 . The method of claim 16 , wherein the one or more network tests include at least one of initiating border gateway protocol (“BGP”) queries, initiating traceroute functions, initiating a network ping, performing a domain name system (“DNS”) queries, performing bandwidth testing, performing network connection testing, performing quality of service (“QOS”) testing, performing class of service (“COS”) testing, performing latency testing, performing bandwidth testing, performing virtual private network (“VPN”) testing, or performing hypertext transfer protocol (“HTTP”) testing.
- 20 . The method of claim 16 , wherein identifying the first plurality of network devices comprises: querying, by the computing system, at least one database for information regarding the second plurality of network devices; and randomly identifying, by the computing system, the first plurality of network devices among the second plurality of network devices that are compatible with the one or more network tests, based on the queried information.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of U.S. Provisional Application No. 63/601,021 filed Nov. 20, 2023, entitled “Variable Latency Testing,” which is incorporated herein by reference in its entirety. COPYRIGHT STATEMENT A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. FIELD The present disclosure relates, in general, to methods, systems, and apparatuses for implementing network monitoring and testing, and, more particularly, to methods, systems, and apparatuses for implementing variable latency testing. BACKGROUND Traditionally, network testing conditions are controlled, homogenized, predictable, known, and/or in a single data center. Different generations of hardware and applications across multiple different data centers, however, make such traditional testing conditions impractical and unrealistic. It is with respect to this general technical environment to which aspects of the present disclosure are directed. BRIEF DESCRIPTION OF THE DRAWINGS A further understanding of the nature and advantages of particular embodiments may be realized by reference to the remaining portions of the specification and the drawings, which are incorporated in and constitute a part of this disclosure. FIG. 1 depicts an example system for implementing variable latency testing, in accordance with various embodiments. FIG. 2 depicts an example sequence flow for implementing variable latency testing, in accordance with various embodiments. FIG. 3 depicts a flow diagram illustrating an example method for implementing variable latency testing, in accordance with various embodiments. FIG. 4 depicts a flow diagram illustrating another example method for implementing variable latency testing, in accordance with various embodiments. FIG. 5 depicts a block diagram illustrating an exemplary computer or system hardware architecture, in accordance with various embodiments. DETAILED DESCRIPTION OF CERTAIN EMBODIMENTS Overview Various embodiments provide tools and techniques for implementing network monitoring and testing, and, more particularly, to methods, systems, and apparatuses for implementing variable latency testing. In various embodiments, a computing system may identify a first plurality of network devices among a second plurality of network devices that is distributed across a network(s), based on a set of characteristics for testing a target device in the network(s). The computing system establishes a plurality of paths, each path corresponding to a path between the target device and one of the first plurality of network devices. The plurality of paths includes one or more of at least one path having a latency that is different from a latency of other paths among the plurality of paths or at least one path having a connection speed or bandwidth that is different from a connection speed or bandwidth of other paths among the plurality of paths. The computing system initiates one or more network tests along each established path among the plurality of paths, analyzes results of the one or more network tests, and presents at least one of the results of the one or more network tests or analyses of the results to the requesting user device. In some examples, identifying the first plurality of network devices includes determining which network devices among the second plurality of network devices satisfy the set of characteristics for testing the target device in the network; and randomly selecting the first plurality of network devices among the determined network devices that satisfy the set of characteristics for testing the target device. In some cases, the set of characteristics includes at least one of previously measured latency, public or private network type, interface speed, interface type, customer information, or type of network traffic, and/or the like. In examples, controlled or pruned stochastic methods may be provided for continuous or intermittent testing and monitoring of a large variable-latency network with diverse ingress and egress points. In some cases, controlled processes take the random nature of the behavior of a system into account. In such cases, it is natural, when choosing a control strategy, to proceed from the average expected result, taking note of all the possible variants of the behavior of a controlled system. Stochastic pruning is an automatic, straightforward level-of-detail method that can greatly reduce the geometric complexity of objects with large numbers of simple, disconnected elements. In some examples, a method and system are provided that automates statistics and performance measurement of any point of the network from multiple ingress and