Search

US-12627580-B2 - Dynamic classification of online applications based on application behavior for cognitive networks

US12627580B2US 12627580 B2US12627580 B2US 12627580B2US-12627580-B2

Abstract

In one embodiment, a device determines a type of content being accessed by an endpoint client within an online application during a particular period of time. The device selects a quality of experience prediction model for the online application, based on the type of content being accessed during the particular period of time. The device uses the quality of experience prediction model to predict a quality of experience metric for the online application. The device causes a configuration change in a network based on the quality of experience metric.

Inventors

  • Eduard Schornig
  • Jean-Philippe Vasseur
  • Grégory Mermoud
  • Pierre-André Savalle

Assignees

  • CISCO TECHNOLOGY, INC.

Dates

Publication Date
20260512
Application Date
20240223

Claims (20)

  1. 1 . A method comprising: determining, by a device, a type of content being accessed by an endpoint client within an online application during a particular period of time; selecting, by the device and based on the type of content being accessed during the particular period of time, a quality of experience prediction model for the online application from a plurality of quality of experience prediction models, wherein the plurality of quality of experience prediction models are configured to predict quality of experience metrics for applications accessing a respective type of content; using, by the device, the quality of experience prediction model to predict a quality of experience metric for the online application when the type of content is being accessed; and causing, by the device, a configuration change in a network based on the quality of experience metric.
  2. 2 . The method as in claim 1 , wherein the endpoint client accesses the online application via a web browser.
  3. 3 . The method as in claim 1 , wherein the device determines the type of content based on Hypertext Transfer Protocol (HTTP) archive resource (HAR) telemetry or real user monitoring (RUM) telemetry.
  4. 4 . The method as in claim 1 , wherein the device accesses the quality of experience prediction model via an application programming interface (API).
  5. 5 . The method as in claim 1 , further comprising: determining, by the device, that the endpoint client accessed a different type of content during a subsequent period of time to that of the particular period of time; and using, by the device, a second quality of experience prediction model selected based on the different type of content to update the quality of experience metric for the online application.
  6. 6 . The method as in claim 5 , further comprising: providing, by the device, an indication to a user interface that the device oscillates between using the quality of experience prediction model and the second quality of experience prediction model to predict the quality of experience metric for the online application.
  7. 7 . The method as in claim 1 , wherein the device uses a machine learning-based classifier to determine the type of content being accessed by the endpoint client within the online application during the particular period of time.
  8. 8 . The method as in claim 1 , wherein the type of content comprises at least one of: video streaming content, media sharing content, collaboration content, low latency data streaming content, or static content.
  9. 9 . The method as in claim 1 , wherein the device determines the type of content based on telemetry collected by an agent executed by the endpoint client.
  10. 10 . The method as in claim 1 , wherein causing the configuration change comprises: providing the quality of experience metric for the online application to a user interface for review by an administrator.
  11. 11 . An apparatus, comprising: one or more network interfaces; a processor coupled to the one or more network interfaces and configured to execute one or more processes; and a memory configured to store a process that is executable by the processor, the process when executed configured to: determine a type of content being accessed by an endpoint client within an online application during a particular period of time; select, based on the type of content being accessed during the particular period of time, a quality of experience prediction model for the online application from a plurality of quality of experience prediction models, wherein the plurality of quality of experience prediction models are configured to predict quality of experience metrics for applications accessing a respective type of content; use the quality of experience prediction model to predict a quality of experience metric for the online application when the type of content is being accessed; and cause a configuration change in a network based on the quality of experience metric.
  12. 12 . The apparatus as in claim 11 , wherein the endpoint client accesses the online application via a web browser.
  13. 13 . The apparatus as in claim 11 , wherein the apparatus determines the type of content based on Hypertext Transfer Protocol (HTTP) archive resource (HAR) telemetry or real user monitoring (RUM) telemetry.
  14. 14 . The apparatus as in claim 11 , wherein the apparatus accesses the quality of experience prediction model via an application programming interface (API).
  15. 15 . The apparatus as in claim 11 , wherein the process when executed is further configured to: determine that the endpoint client accessed a different type of content during a subsequent period of time to that of the particular period of time; and use a second quality of experience prediction model selected based on the different type of content to update the quality of experience metric for the online application.
  16. 16 . The apparatus as in claim 15 , wherein the process when executed is further configured to: provide an indication to a user interface that the apparatus oscillates between using the quality of experience prediction model and the second quality of experience prediction model to predict the quality of experience metric for the online application.
  17. 17 . The apparatus as in claim 11 , wherein the apparatus uses a machine learning-based classifier to determine the type of content being accessed by the endpoint client within the online application during the particular period of time.
  18. 18 . The apparatus as in claim 11 , wherein the type of content comprises at least one of: video streaming content, media sharing content, collaboration content, low latency data streaming content, or static content.
  19. 19 . The apparatus as in claim 11 , wherein the apparatus determines the type of content based on telemetry collected by an agent executed by the endpoint client.
  20. 20 . A tangible, non-transitory, computer-readable medium storing program instructions that cause a device to execute a process comprising: determining, by the device, a type of content being accessed by an endpoint client within an online application during a particular period of time; selecting, by the device and based on the type of content being accessed during the particular period of time, a quality of experience prediction model for the online application from a plurality of quality of experience prediction models, wherein the plurality of quality of experience prediction models are configured to predict quality of experience metrics for applications accessing a respective type of content; using, by the device, the quality of experience prediction model to predict a quality of experience metric for the online application when the type of content is being accessed; and causing, by the device, a configuration change in a network based on the quality of experience metric.

Description

TECHNICAL FIELD The present disclosure relates generally to computer networks, and, more particularly, to the dynamic classification of online applications based on application behavior for cognitive networks. BACKGROUND Traditionally, service level agreement (SLA) thresholds regarding path metrics like loss, latency, and jitter, have been used as proxies for the user experience of online applications, such as those served using a software-as-a-service (SaaS) model. For instance, if the packet loss is greater than a defined threshold, it is assumed that a user of the application would deem their experience with the application as unsatisfactory. This is not always the case, though. For instance, certain codecs are now resilient to packet loss, meaning that the user may not even notice a decrease in performance. With the recent advancements in machine learning, it now becomes possible to predict the user experience of such online applications. However, the diversity and number of online applications available today makes doing so quite challenging. Indeed, there can be hundreds or even thousands of such applications in use in any enterprise network environment, with applications being added or removed, constantly. Analyzing and building prediction models for thousands of individual web application poses scaling concerns in terms of both time and effort while, at the same time, attempting to build a single model that can cover all types of applications may be unfeasible. BRIEF DESCRIPTION OF THE DRAWINGS The embodiments herein may be better understood by referring to the following description in conjunction with the accompanying drawings in which like reference numerals indicate identically or functionally similar elements, of which: FIGS. 1A-1B illustrate an example communication network; FIG. 2 illustrates an example network device/node; FIGS. 3A-3B illustrate example network deployments; FIGS. 4A-4B illustrate example software defined network (SDN) implementations; FIG. 5 illustrates an example architecture for the dynamic classification of web applications based on application behavior for cognitive networks; FIG. 6 illustrates an example of the interactions of the components of FIG. 5; FIG. 7 illustrates an example of HTTP archive resource (HAR) telemetry; and FIG. 8 illustrates an example simplified procedure for the dynamic classification of web applications based on application behavior for cognitive networks. DESCRIPTION OF EXAMPLE EMBODIMENTS Overview According to one or more embodiments of the disclosure, a device determines a type of content being accessed by an endpoint client within an online application during a particular period of time. The device selects a quality of experience prediction model for the online application, based on the type of content being accessed during the particular period of time. The device uses the quality of experience prediction model to predict a quality of experience metric for the online application. The device causes a configuration change in a network based on the quality of experience metric. Description A computer network is a geographically distributed collection of nodes interconnected by communication links and segments for transporting data between end nodes, such as personal computers and workstations, or other devices, such as sensors, etc. Many types of networks are available, with the types ranging from local area networks (LANs) to wide area networks (WANs). LANs typically connect the nodes over dedicated private communications links located in the same general physical location, such as a building or campus. WANs, on the other hand, typically connect geographically dispersed nodes over long-distance communications links, such as common carrier telephone lines, optical lightpaths, synchronous optical networks (SONET), or synchronous digital hierarchy (SDH) links, or Powerline Communications (PLC) such as IEEE 61334, IEEE P1901.2, and others. The Internet is an example of a WAN that connects disparate networks throughout the world, providing global communication between nodes on various networks. The nodes typically communicate over the network by exchanging discrete frames or packets of data according to predefined protocols, such as the Transmission Control Protocol/Internet Protocol (TCP/IP). In this context, a protocol consists of a set of rules defining how the nodes interact with each other. Computer networks may be further interconnected by an intermediate network node, such as a router, to extend the effective “size” of each network. Smart object networks, such as sensor networks, in particular, are a specific type of network having spatially distributed autonomous devices such as sensors, actuators, etc., that cooperatively monitor physical or environmental conditions at different locations, such as, e.g., energy/power consumption, resource consumption (e.g., water/gas/etc. for advanced metering infrastructure or “AMI” applications) temperatu