Techniques are disclosed for sending downloadable software packages that may be executed to perform tests of a network device without requiring the network device to update firmware. In one example, the network device obtains a software package comprising instructions for simulating a network instance and stores the software package in a volatile memory of the network device. The network device simulates, based on the instructions, the network instance to obtain data indicative of a performance of the network instance. The network device sends, via a communication channel established with a network management system (NMS) based on the software package, the data indicative of the performance of the network instance. In some examples, the NMS uses the data indicative of the performance of the network instance to identify a root cause of a failure of the network device or a remedial action to be performed upon the network device.
Legal claims defining the scope of protection, as filed with the USPTO.
. A network device comprising:
. The network device of,
. The network device of,
. The network device of, wherein to simulate the network instance to obtain the data indicative of the performance of the network instance, the processing circuitry is configured to simulate an operation of one or more client devices accessing a network via the network device.
. The network device of, wherein to simulate the network instance to obtain the data indicative of the performance of the network instance, the processing circuitry is configured to perform a network test upon the simulated network instance to obtain the data indicative of the performance of the network instance.
. The network device of, wherein to simulate the network instance to obtain the data indicative of the performance of the network instance, the processing circuitry is configured to perform at least one of:
. The network device of, wherein to simulate the network instance to obtain the data indicative of the performance of the network instance, the processing circuitry is configured to cause the network instance to initiate an Authentication, Authorization, and Accounting (AAA) session with an AAA server.
. The network device of, wherein the processing circuitry is configured to obtain the software package from the NMS.
. The network device of, wherein the software package includes one or more of:
. The network device of, wherein the data format specifies one or more of:
. The network device of, wherein the processing circuitry is configured to simulate the network instance to obtain the data indicative of the performance of the network instance based at least in part on a triggering command received from a user.
. The network device of, wherein the data indicative of the performance of the network instance comprises one or more of latency, jitter, packet loss, CPU usage, memory usage, or a version identifier.
. A method comprising:
. The method of, further comprising:
. The method of,
. The method of, wherein simulating the network instance to obtain the data indicative of the performance of the network instance comprises simulating an operation of one or more client devices accessing a network via the network device.
. The method of, wherein simulating the network instance to obtain the data indicative of the performance of the network instance comprises performing a network test upon the simulated network instance to obtain the data indicative of the performance of the network instance.
. The method of, wherein simulating the network instance to obtain the data indicative of the performance of the network instance comprises at least one of:
. The method of, wherein simulating the network instance to obtain the data indicative of the performance of the network instance comprises causing the network instance to initiate an Authentication, Authorization, and Accounting (AAA) session with an AAA server.
. Non-transitory, computer-readable media comprising instructions that, when executed, cause processing circuitry of a network device to:
Complete technical specification and implementation details from the patent document.
This application claims the benefit of India application No. 202441038170, which was filed on May 15, 2024, the entire content of which is incorporated herein by reference.
The disclosure relates generally to computer networks and, more specifically, to monitoring and troubleshooting computer networks.
Commercial premises or sites, such as offices, hospitals, airports, stadiums, or retail outlets, often install complex wireless network systems, including a network of wireless access points (APs), throughout the premises to provide wireless network services to one or more wireless client devices (or simply, “clients”). APs are physical, electronic devices that enable other devices to wirelessly connect to a wired network using various wireless networking protocols and technologies, such as wireless local area networking protocols conforming to one or more of the IEEE 802.11 standards (i.e., “WiFi”), Bluetooth/Bluetooth Low Energy (BLE), mesh networking protocols such as ZigBee or other wireless networking technologies. Many different types of wireless client devices, such as laptop computers, smartphones, tablets, wearable devices, appliances, and Internet of Things (IoT) devices, incorporate wireless communication technology and can be configured to connect to wireless access points when the device is in range of a compatible wireless access point in order to access a wired network.
In general, this disclosure describes techniques for sending, to a network device, downloadable software packages that may be executed to perform tests of the network device without requiring the updating of firmware executed by the network device. In one example, a network management system (NMS) identifies a triggering event associated with a network device of a plurality of network devices managed by the network management system. Based at least in part on the identified triggering event, the NMS selects a software package that comprises instructions for the network device to simulate a network instance. The NMS sends, to the network device (or the network device obtains from the NMS), the selected software package.
The network device obtains the software package comprising instructions for the network device to simulate the network instance and stores the software package in a volatile memory of the network device. The network device simulates, based on the instructions, the network instance to obtain data indicative of a performance of the network instance. The network device sends, via a communication channel established with the NMS based on the software package, the data indicative of the performance of the network instance. In some examples, the NMS uses the data indicative of the performance of the network instance to identify a root cause of a failure of the network device or a remedial action to be performed upon the network device.
The techniques of this disclosure provide one or more technical advantages and practical applications. For example, the techniques of the disclosure may enable the dynamic deployment of downloadable network performance modules that configure network devices of an enterprise network to perform network functions, such as network tests, without the need for installation of firmware that would ordinarily disrupt the network. Furthermore, the techniques of the disclosure may enable a network device to download and execute software modules enabling functionality for network testing for which the network device was previously unable to perform, without requiring the network device to update or reinstall firmware, an operating system, reboot or restart the network device, or interrupt the forwarding of network traffic. Because such a network device may obviate the need to reinstall or update firmware to perform such network tests, a network device as described herein may enable the more widespread implementation of network testing without imposing significant administrative overhead to update such devices or imposing additional network downtime to perform such network tests. Accordingly, the techniques of the disclosure may enhance the ability of a network device to perform network performance monitoring, troubleshooting, diagnosis, analysis, and failure remediation without causing interruption to the ordinary operation of the network or forwarding of network traffic.
In one example, the disclosure describes a network device comprising: a volatile memory; and processing circuitry in communication with storage media, the processing circuitry configured to: obtain a software package comprising instructions for simulating a network instance; store the software package in the volatile memory; simulate, based on the instructions specified by the software package, the network instance to obtain data indicative of a performance of the network instance; and send, via a communication channel established with a network management system (NMS) based on the software package, the data indicative of the performance of the network instance.
In another example, the disclosure describes a network management system (NMS) comprising: processing circuitry in communication with storage media, the processing circuitry configured to: identify a triggering event associated with a network device of a plurality of network devices managed by the network management system; based at least in part on the identified triggering event, select a software package from a plurality of software packages, the selected software package comprising instructions for simulating a network instance; and send, to the network device, the selected software package to cause the network device to simulate the network instance to obtain data indicative of a performance of the network instance.
The details of one or more examples of the techniques of this disclosure are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the techniques will be apparent from the description and drawings, and from the claims.
Techniques are disclosed for providing a downloadable software package that comprises instructions for causing a network device to perform a testing function or other function to monitor the performance of a network (collectively referred to herein as a “network performance monitoring function”), without requiring the network device to reinstall or update firmware or an operating system executed by the network device. The downloadable software package may be referred to herein as a “network performance monitoring module” or “downloadable mini.” As one example, the software package may cause a network device (e.g., access point, router, switch, etc.) to simulate a network instance. In some examples, the network device simulates an operation of one or more client devices accessing the network via the network device. The network device collects data associated with the simulated network instance which may be sent to a network management system (NMS) configured to manage network devices of the network. The NMS may use the data associated with the simulated network instance to analyze the performance of the network and/or the network device.
In some examples, a network device may obtain the downloadable software package from the NMS or a server storing the downloadable software package. The instructions may specify, for example, a network performance monitoring function (e.g., a particular type of network test, type of data to be collect and/or measure, etc.) to be performed by the network device, instructions to configure a communication channel to communicate data collected by the network device to the NMS, and/or a data format for communicating the collected data (e.g., JSON). The data format may specify, for example, a payload of a message that includes information such as a name of the network performance monitoring function, an identifier of the network performance monitoring function, one or more categories for the collected data (e.g., Kafka topic), and/or the values of the collected data (e.g., latency, jitter, packet loss, etc.).
The network device installs the downloadable software package, for example, in a random access memory (RAM) file system (“ramfs”) or other volatile memory, as a temporarily file (e.g., tmp). An administrator or user of the network device may invoke the downloadable network performance monitoring module via, for example, a command-line interface (CLI) or other interface. The administrator or user may specify a triggering command for the downloadable network performance monitoring module that specifies, for example, an identifier of the network performance monitoring function, a name of the network performance monitoring function, one or more categories for the collected data (e.g., Kafka topic), a schedule to perform the network performance monitoring function (e.g., frequency of performing the test), network configurations (e.g., VLANs) to perform the network performance monitoring function, and/or resource requirements to perform the network performance monitoring function (e.g., memory and/or CPU limitations), or other information to perform the network performance monitoring function.
The network device may perform the network performance monitoring function and collect data associated with the performance of the network performance monitoring function. For example, the network device may simulate a network instance in which a synthetic client device performs a network function (e.g., request access to an application server in the network) and may generate a report of collected data associated with the network function. The report may represent a JSON file that specifies values of the collected data. As one example, the network device may perform a speed test by sending and receiving network traffic to and from a test server and measuring download and upload speeds of the network traffic (e.g., latency, round-trips per minute (rpm), throughput, etc.) and may generate a report specifying the measured download and upload speeds. As another example, the network device may perform a continuous ping to a particular destination (e.g., domain and/or server) by measuring round-trip times (RTT) of network traffic communicated from the network device (e.g., average RTT, maximum RTT, minimum RTT, ping count, ping interval, ping request size, ping domain, packet loss percentage, number of packets received, number of packets transmitted, etc.). The network functions described above are merely some examples of functions performed by the downloadable network performance modules. The downloadable software package alternatively, or additionally, may include instructions to perform other functions typically performed by the NMS, such as specifying AI/ML models to enable the network device to examine collected data locally at the enterprise network. In some examples, the report may additionally, or alternatively, specify information about the downloadable network performance modules that are active and/or installed on the network device, such as runtime statistics (e.g., CPU usage, memory usage, version, etc.) of each of the downloadable network performance modules that are active and/or installed on the network device.
The network device sends the collected data to the NMS via the communication channel. The NMS may determine the performance of the network based on the collected data. In some examples, the NMS determines, based on the collected data, that an issue or anomaly is present within the network. Based at least in part on the determination that the issue or anomaly is present, the NMS performs an action to remediate the detected issue, such as generating a notification specifying the issue detected and/or a suggestion to remedy the issue, or automatically performing a remedial action (e.g., resetting the network device, changing the configuration of the network device, etc.).
is a block diagram of an example network systemconfigured to provide a downloadable software package to perform a testing function or other function to monitor the performance of a network, in accordance with one or more techniques of this disclosure. Example network systemincludes a plurality sitesA-N at which a network service provider manages one or more wireless networksA-N, respectively. Although ineach siteA-N is shown as including a single wireless networkA-N, respectively, in some examples, each siteA-N may include multiple wireless networks, and the disclosure is not limited in this respect.
Each siteA-N includes a plurality of network access server (NAS) devices, such as access points (APs), switches, or routers (not shown). For example, siteA includes a plurality of APsA-throughA-N. Similarly, siteN includes a plurality of APsN-throughN-M. Each APmay be any type of wireless access point, including, but not limited to, a commercial or enterprise AP, a router, or any other device that is connected to a wired network and is capable of providing wireless network access to client devices within the site. References to “N” or “M” may represent any number. References to “N” for different elements need not be the same number. Similarly, references to “M” for different elements need not be the same number.
Each siteA-N also includes a plurality of client devices, otherwise known as user equipment devices (UEs), referred to generally as UEs or client devices, representing various wireless-enabled devices within each site. For example, a plurality of UEsA-throughA-N are currently located at siteA. Similarly, a plurality of UEsN-throughN-M are currently located at siteN. Each UEmay be any type of wireless client device, including, but not limited to, a mobile device such as a smart phone, tablet or laptop computer, a personal digital assistant (PDA), a wireless terminal, a smart watch, smart ring, or other wearable device. UEsmay also include wired client-side devices, e.g., IoT devices such as printers, security devices, environmental sensors, or any other device connected to the wired network and configured to communicate over one or more wireless networks.
In order to provide wireless network services to UEsand/or communicate over the wireless networks, APsand the other wired client-side devices at sitesare connected, either directly or indirectly, to one or more network devices (e.g., switches, routers, or the like) via physical cables, e.g., Ethernet cables. In the example of, siteA includes a switchA to which each of APsA-throughA-N at siteA are connected. Similarly, siteN includes a switchN to which each of APsN-throughN-M at siteN are connected. Although illustrated inas if each siteincludes a single switchand all APsof the given siteare connected to the single switch, in other examples, each sitemay include more or fewer switches and/or routers. In addition, the APs and the other wired client-side devices of the given site may be connected to two or more switches and/or routers. In addition, two or more switches at a site may be connected to each other and/or connected to two or more routers, e.g., via a mesh or partial mesh topology in a hub-and-spoke architecture. In some examples, interconnected switches and routers comprise wired local area networks (LANs) at siteshosting wireless networks.
Example network systemalso includes various networking components for providing networking services within the wired network including, as examples, an Authentication, Authorization, and Accounting (AAA) serverfor authenticating users and/or UEs, a Dynamic Host Configuration Protocol (DHCP) serverfor dynamically assigning network addresses (e.g., IP addresses) to UEsupon authentication, a Domain Name System (DNS) serverfor resolving domain names into network addresses, a plurality of serversA-N (collectively “servers”) (e.g., web servers, databases servers, file servers and the like), and a network management system (NMS). As shown in, the various devices and systems of networkare coupled together via one or more network(s), e.g., the Internet and/or an enterprise intranet.
In the example of, NMSis a cloud-based computing platform that manages wireless networksA-N at one or more of sitesA-N. As further described herein, NMSprovides an integrated suite of management tools and implements various techniques of this disclosure. In general, NMSmay provide a cloud-based platform for wireless network data acquisition, monitoring, activity logging, reporting, predictive analytics, network anomaly identification, and alert generation. In some examples, NMSoutputs notifications, such as alerts, alarms, graphical indicators on dashboards, log messages, text/SMS messages, email messages, and the like, and/or recommendations regarding wireless network issues to a site or network administrator (“admin”) interacting with and/or operating admin device. Additionally, in some examples, NMSoperates in response to configuration input received from the administrator interacting with and/or operating admin device.
The administrator and admin devicemay comprise IT personnel and an administrator computing device associated with one or more of sites. Admin devicemay be implemented as any suitable device for presenting output and/or accepting user input. For instance, admin devicemay include a display. Admin devicemay be a computing system, such as a mobile or non-mobile computing device operated by a user and/or by the administrator. Admin devicemay, for example, represent a workstation, a laptop or notebook computer, a desktop computer, a tablet computer, or any other computing device that may be operated by a user and/or present a user interface in accordance with one or more aspects of the present disclosure. Admin devicemay be physically separate from and/or in a different location than NMSsuch that admin devicemay communicate with NMSvia networkor other means of communication.
In some examples, one or more of the NAS devices, e.g., APs, switches, or routers, may connect to edge devicesA-N via physical cables, e.g., Ethernet cables. Edge devicescomprise cloud-managed, wireless local area network (LAN) controllers. Each of edge devicesmay comprise an on-premises device at a sitethat is in communication with NMSto extend certain microservices from NMSto the on-premises NAS devices while using NMSand its distributed software architecture for scalable and resilient operations, management, troubleshooting, and analytics.
Each one of the network devices of network system, e.g., servers,,and/or, APs, UEs, switches, and any other servers or devices attached to or forming part of network system, may include a system log or an error log module wherein each one of these network devices records the status of the network device including normal operational status and error conditions. Throughout this disclosure, one or more of the network devices of network system, e.g., servers,,and/or, APs, UEs, and switches, may be considered “third-party” network devices when owned by and/or associated with a different entity than NMSsuch that NMSdoes not receive, collect, or otherwise have access to the recorded status and other data of the third-party network devices. In some examples, edge devicesmay provide a proxy through which the recorded status and other data of the third-party network devices may be reported to NMS.
In some examples, NMSmonitors network data, e.g., one or more service level expectation (SLE) metrics, received from wireless networksA-N at each siteA-N, respectively, and manages network resources, such as APsat each site, to deliver a high-quality wireless experience to end users, IoT devices and clients at the site. For example, NMSmay include a virtual network assistant (VNA)that implements an event processing platform for providing real-time insights and simplified troubleshooting for IT operations, and that automatically takes corrective action or provides recommendations to proactively address wireless network issues. VNAmay, for example, include an event processing platform configured to process hundreds or thousands of concurrent streams of network datafrom sensors and/or agents associated with APsand/or nodes within network. For example, VNAof NMSmay include an underlying analytics and network error identification engine and alerting system in accordance with various examples described herein. The underlying analytics engine of VNAmay apply historical data and models to the inbound event streams to compute assertions, such as identified anomalies or predicted occurrences of events constituting network error conditions. Further, VNAmay provide real-time alerting and reporting to notify a site or network administrator via admin deviceof any predicted events, anomalies, trends, and may perform root cause analysis and automated or assisted error remediation. In some examples, VNAof NMSmay apply machine learning techniques to identify the root cause of error conditions detected or predicted from the streams of network data. If the root cause may be automatically resolved, VNAmay invoke one or more corrective actions to correct the root cause of the error condition, thus automatically improving the underlying SLE metrics and also automatically improving the user experience.
Further example details of operations implemented by the VNAof NMSare described in U.S. Pat. No. 9,832,082, issued Nov. 28, 2017, and entitled “Monitoring Wireless Access Point Events,” U.S. Publication No. US 2021/0306201, published Sep. 30, 2021, and entitled “Network System Fault Resolution Using a Machine Learning Model,” U.S. Pat. No. 10,985,969, issued Apr. 20, 2021, and entitled “Systems and Methods for a Virtual Network Assistant,” U.S. Pat. No. 10,958,585, issued Mar. 23, 2021, and entitled “Methods and Apparatus for Facilitating Fault Detection and/or Predictive Fault Detection,” U.S. Pat. No. 10,958,537, issued Mar. 23, 2021, and entitled “Method for Spatio-Temporal Modeling,” and U.S. Pat. No. 10,862,742, issued Dec. 8, 2020, and entitled “Method for Conveying AP Error Codes Over BLE Advertisements,” all of which are incorporated herein by reference in their entirety.
In operation, NMSobserves, collects and/or receives network data, which may take the form of data extracted from messages, counters, and statistics, for example. In accordance with one specific implementation, a computing device is part of NMS. In accordance with other implementations, NMSmay comprise one or more computing devices, dedicated servers, virtual machines, containers, services, or other forms of environments for performing the techniques described herein. Similarly, computational resources and components implementing VNAmay be part of the NMS, may execute on other servers or execution environments, or may be distributed to nodes within network(e.g., routers, switches, controllers, gateways, and the like).
In accordance with one or more techniques of this disclosure, NMSis configured to perform scheduling and/or orchestration of tests performed by devices of a site. In this example, VNAof NMSincludes network test transmission modulethat is configured to provide a software package to one or more devices, such as APs, to enable APsto simulate a network instance and perform one or more network performance tests using the simulated network instance to obtain data indicative of a performance of the network instance. NMSmay receive the data indicative of a performance of the network instance from APsfor use in failure detection, troubleshooting and root cause analysis, and performing remedial actions upon network system, as described in more detail below.
In one example, network test transmission moduleof VNAof NMSidentifies a triggering event. In some examples, a triggering event may include a network event indicative of a potential issue that may require additional testing. For example, network test transmission modulemay determine, based on network data of APA-and/or one or more client devices or other network devices associated with APA-, a network anomaly that may require additional testing. In some examples, a triggering event may be based on a schedule to perform testing. In other examples, a triggering event may be an input received from admin device. Based at least in part on the identified triggering event, network test transmission moduleselects a software package from a plurality of downloadable software packages. Each software package comprises a downloadable network performance monitoring module that includes, e.g., instructions for causing an APto perform a network performance monitoring function. For example, the software package may include instructions for causing an APto perform a network performance test by simulating a network instance. Network test transmission modulesends to APA-(or APA-obtains from network transmission module), the selected software package to cause APA-to simulate the network instance to obtain data indicative of a performance of the network instance.
In this example, network test transmission modulestores the selected software package and sends the selected software module to an AP. In other examples, another device may store the selected software package, such as a server, a software package repository, a content delivery network, etc. In this situation, network test transmission modulemay cause the APto obtain the selected software package from, e.g., a server or software package repository storing the selected software package.
APA-obtains the software package comprising instructions for simulating a network instance and stores the software package. In some examples, APA-optionally stores the software package in a volatile memory such that the software package is not retained upon power loss, restarting, or rebooting of APA-. In some examples, APA-optionally stores the software package in a non-volatile memory such that the software package is retained after power loss, restarting, or rebooting of APA-.
APA-simulates, based on the instructions specified by the software package, the network instance to obtain data indicative of a performance of the network instance. APA-establishes a communication channel with NMSbased at least in part on configuration information for the communication channel specified by the software package. APA-sends, via the established communication channel, the data indicative of the performance of the network instance to NMS.
NMSreceives, from APA-, the data indicative of the performance of the network instance via a communication channel established by the network device based on the selected software package. In some examples, VNAof NMSperforms fault diagnosis, troubleshooting, or automatic fault remediation based at least in part on the received data indicative of the performance of the network instance. In some examples, VNAperforms traffic engineering, network path selection, or network traffic load balancing based at least in part on the received data indicative of the performance of the network instance.
Although the techniques of the present disclosure are described in this example as performed by an access point device (e.g., APA-), techniques described herein may be performed by any other device, such as any of client devices, switches, routers, or other devices.
Although the techniques of the present disclosure are described in this example as performed by NMS, techniques described herein may be performed by any other computing device(s), system(s), and/or server(s), and that the disclosure is not limited in this respect. For example, one or more computing device(s) configured to execute the functionality of the techniques of this disclosure may reside in a dedicated server or be included in any other server in addition to or other than NMS, or may be distributed throughout network, and may or may not form a part of NMS.
is a block diagram illustrating further example details of the network system of. In this example,illustrates NMSconfigured to operate according to an artificial intelligence/machine-learning-based computing platform providing comprehensive automation, insight, and assurance (WiFi Assurance, Wired Assurance and WAN assurance) spanning from “client,” e.g., user devicesconnected to wireless networkand wired LAN(far left of), to “cloud,” e.g., cloud-based application servicesthat may be hosted by computing resources within data centers(far right of).
As described herein, NMSprovides an integrated suite of management tools and implements various techniques of this disclosure. In general, NMSmay provide a cloud-based platform for wireless network data acquisition, monitoring, activity logging, reporting, predictive analytics, network anomaly identification, and alert generation. For example, network management systemmay be configured to proactively monitor and adaptively configure networkso as to provide self-driving capabilities. Moreover, VNAincludes a natural language processing engine to provide AI-driven support and troubleshooting, anomaly detection, AI-driven location services, and AI-driven radio frequency (RF) optimization with reinforcement learning.
As illustrated in the example of, AI-driven NMSalso provides configuration management, monitoring and automated oversight of software defined wide-area network (SD-WAN), which operates as an intermediate network communicatively coupling wireless networksand wired LANsto data centersand application services. In general, SD-WANprovides seamless, secure, traffic-engineered connectivity between “spoke” routersA of wired networkshosting wireless networks, such as branch or campus networks, to “hub” routersB further up the cloud stack toward cloud-based application services. SD-WANoften operates and manages an overlay network on an underlying physical Wide-Area Network (WAN), which provides connectivity to geographically separate customer networks. In other words, SD-WANextends Software-Defined Networking (SDN) capabilities to a WAN and allows network(s) to decouple underlying physical network infrastructure from virtualized network infrastructure and applications such that the networks may be configured and managed in a flexible and scalable manner.
In some examples, underlying routers of SD-WANmay implement a stateful, session-based routing scheme in which the routersA,B dynamically modify contents of original packet headers sourced by client devicesto steer traffic along selected paths, e.g., path, toward application serviceswithout requiring use of tunnels and/or additional labels. In this way, routersA,B may be more efficient and scalable for large networks since the use of tunnel-less, session-based routing may enable routersA,B to achieve considerable network resources by obviating the need to perform encapsulation and decapsulation at tunnel endpoints. Moreover, in some examples, each routerA,B may independently perform path selection and traffic engineering to control packet flows associated with each session without requiring use of a centralized SDN controller for path selection and label distribution. In some examples, routersA,B implement session-based routing as Secure Vector Routing (SVR), provided by Juniper Networks, Inc.
Additional information with respect to session-based routing and SVR is described in U.S. Pat. No. 9,729,439, entitled “COMPUTER NETWORK PACKET FLOW CONTROLLER,” and issued on Aug. 8, 2017; U.S. Pat. No. 9,729,682, entitled “NETWORK DEVICE AND METHOD FOR PROCESSING A SESSION USING A PACKET SIGNATURE,” and issued on Aug. 8, 2017; U.S. Pat. No. 9,762,485, entitled “NETWORK PACKET FLOW CONTROLLER WITH EXTENDED SESSION MANAGEMENT,” and issued on Sep. 12, 2017; U.S. Pat. No. 9,871,748, entitled “ROUTER WITH OPTIMIZED STATISTICAL FUNCTIONALITY,” and issued on Jan. 16, 2018; U.S. Pat. No. 9,985,883, entitled “NAME-BASED ROUTING SYSTEM AND METHOD,” and issued on May 29, 2018; U.S. Pat. No. 10,200,264, entitled “LINK STATUS MONITORING BASED ON PACKET LOSS DETECTION,” and issued on Feb. 5, 2019; U.S. Pat. No. 10,277,506, entitled “STATEFUL LOAD BALANCING IN A STATELESS NETWORK,” and issued on Apr. 30, 2019; U.S. Pat. No. 10,432,522, entitled “NETWORK PACKET FLOW CONTROLLER WITH EXTENDED SESSION MANAGEMENT,” and issued on Oct. 1, 2019; and U.S. Pat. No. 11,075,824, entitled “IN-LINE PERFORMANCE MONITORING,” and issued on Jul. 27, 2021, the entire content of each of which is incorporated herein by reference in its entirety.
In some examples, AI-driven NMSmay enable intent-based configuration and management of network system, including enabling construction, presentation, and execution of intent-driven workflows for configuring and managing devices associated with wireless networks, wired LAN networks, and/or SD-WAN. For example, declarative requirements express a desired configuration of network components without specifying an exact native device configuration and control flow. By utilizing declarative requirements, what should be accomplished may be specified rather than how it should be accomplished. Declarative requirements may be contrasted with imperative instructions that describe the exact device configuration syntax and control flow to achieve the configuration. By utilizing declarative requirements rather than imperative instructions, a user and/or user system is relieved of the burden of determining the exact device configurations required to achieve a desired result of the user/system. For example, it is often difficult and burdensome to specify and manage exact imperative instructions to configure each device of a network when various different types of devices from different vendors are utilized. The types and kinds of devices of the network may dynamically change as new devices are added and device failures occur. Managing various different types of devices from different vendors with different configuration protocols, syntax, and software versions to configure a cohesive network of devices is often difficult to achieve. Thus, by only requiring a user/system to specify declarative requirements that specify a desired result applicable across various different types of devices, management and configuration of the network devices becomes more efficient. Further example details and techniques of an intent-based network management system are described in U.S. Pat. No. 10,756,983, entitled “Intent-based Analytics,” and U.S. Pat. No. 10,992,543, entitled “Automatically generating an intent-based network model of an existing computer network,” each of which is hereby incorporated by reference.
In accordance with one or more techniques of this disclosure, NMSis configured to perform scheduling and/or orchestration of tests performed by devices of a site. In this example, VNAof NMSincludes network test transmission modulethat is configured to provide a software package (e.g., one or more downloadable software packets) to one or more devices, such as client devices, NAS devices in wireless networkand/or wired network, or devices in SD-WAN, to enable the devices to simulate, based on the one or more downloadable software packagesprovided by network test transmission module, a network instance and perform one or more network performance tests using the simulated network instance to obtain data indicative of a performance of the network instance. NMSmay receive the data indicative of a performance of the network instance from devices executing the one or more downloadable software packetsfor use in failure detection, troubleshooting and root cause analysis, and performing remedial actions upon network system, as described in more detail below.
In one example, network test transmission moduleof VNAof NMSidentifies a triggering event that may be indicative of a potential issue that may require additional testing. For example, network test transmission modulemay determine, based on network data associated with one of client devices, APsof wireless network, or network devices of wired networkor SD-WAN, a network anomaly that may require additional testing. Based at least in part on the identified triggering event, network test transmission moduleselects a software package from a plurality of downloadable software packages. Each software package comprises a downloadable network performance monitoring module that includes, e.g., instructions for causing a device (e.g., one of APsof wireless network) to perform a network performance monitoring function. For example, the software package may include instructions for causing one of APsof wireless networkto perform a network performance test by simulating a network instance. Network test transmission modulesends, to one of APsof wireless network, the selected software package to cause the APof wireless networkto simulate the network instance to obtain data indicative of a performance of the network instance.
One of APsof wireless networkobtains the software package comprising instructions for simulating a network instance and stores the software package. In some examples, the APoptionally stores the software package in a volatile memory such that the software package is not retained upon power loss, restarting, or rebooting of the AP. In some examples, the APoptionally stores the software package in a non-volatile memory such that the software package is retained after power loss, restarting, or rebooting of the AP.
The APsimulates, based on the instructions specified by the software package, the network instance to obtain data indicative of a performance of the network instance. The APestablishes a communication channel with NMSbased at least in part on configuration information for the communication channel specified by the software package. The APsends, via the established communication channel, the data indicative of the performance of the network instance to NMS.
NMSreceives, from the AP, the data indicative of the performance of the network instance via a communication channel established by the network device based on the selected software package. In some examples, VNAof NMSperforms fault diagnosis, troubleshooting, or automatic fault remediation based at least in part on the received data indicative of the performance of the network instance. In some examples, VNAperforms traffic engineering, network path selection, or network traffic load balancing based at least in part on the received data indicative of the performance of the network instance.
Although the techniques of the present disclosure are described in this example as performed by NMS, techniques described herein may be performed by any other computing device(s), system(s), and/or server(s), and that the disclosure is not limited in this respect. For example, one or more computing device(s) configured to execute the functionality of the techniques of this disclosure may reside in a dedicated server or be included in any other server in addition to or other than NMS, or may be distributed throughout network, and may or may not form a part of NMS.
is a block diagram of an example access point (AP) device, in accordance with one or more techniques of this disclosure. Example access pointshown inmay be used to implement any of APsas shown and described herein with respect to. Access pointmay comprise, for example, a Wi-Fi, Bluetooth and/or Bluetooth Low Energy (BLE) base station or any other type of wireless access point.
In the example of, access pointincludes a wired interface, wireless interfacesA-B one or more processor(s), memory, and input/output, coupled together via a busover which the various elements may exchange data and information. Wired interfacerepresents a physical network interface and includes a receiverand a transmitterfor sending and receiving network communications, e.g., packets. Wired interfacecouples, either directly or indirectly, access pointto a wired network device, such as one of switchesof, within the wired network via a cable, such as an Ethernet cable.
First and second wireless interfacesA andB represent wireless network interfaces and include receiversA andB, respectively, each including a receive antenna via which access pointmay receive wireless signals from wireless communications devices, such as UEsof. First and second wireless interfacesA andB further include transmittersA andB, respectively, each including transmit antennas via which access pointmay transmit wireless signals to wireless communications devices, such as UEsof. In some examples, first wireless interfaceA may include a Wi-Fi 802.11 interface (e.g., 2.4 GHz and/or 5 GHZ) and second wireless interfaceB may include a Bluetooth interface and/or a Bluetooth Low Energy (BLE) interface.
Processor(s)are programmable hardware-based processors configured to execute software instructions, such as those used to define a software or computer program, stored to a computer-readable storage medium (such as memory), such as non-transitory computer-readable media including a storage device (e.g., a disk drive, or an optical drive) or a memory (such as Flash memory or RAM) or any other type of volatile or non-volatile memory, that stores instructions to cause the one or more processorsto perform the techniques described herein.
Unknown
November 20, 2025
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.