US 12,250,259 B2
Automatic diagnostics alerts
Yan Li, Foster City, CA (US); Rui Zhang, San Mateo, CA (US); Henry Milner, Burlingame, CA (US); and Jibin Zhan, San Mateo, CA (US)
Assigned to Conviva Inc., Foster City, CA (US)
Filed by Conviva Inc., Foster City, CA (US)
Filed on Aug. 2, 2023, as Appl. No. 18/229,483.
Application 18/229,483 is a continuation of application No. 17/308,942, filed on May 5, 2021, granted, now 11,765,437.
Application 17/308,942 is a continuation of application No. 15/994,534, filed on May 31, 2018, granted, now 11,044,533, issued on Jun. 22, 2021.
Claims priority of provisional application 62/514,672, filed on Jun. 2, 2017.
Prior Publication US 2024/0040206 A1, Feb. 1, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 15/16 (2006.01); H04L 65/1066 (2022.01); H04L 65/612 (2022.01); H04L 65/80 (2022.01); H04N 21/442 (2011.01); H04N 21/647 (2011.01); H04L 9/40 (2022.01)
CPC H04L 65/80 (2013.01) [H04L 65/1066 (2013.01); H04L 65/612 (2022.05); H04N 21/44245 (2013.01); H04N 21/647 (2013.01); H04L 63/1425 (2013.01)] 23 Claims
OG exemplary drawing
 
1. A system, comprising:
one or more processors configured to:
compute a set of quality metrics for a plurality of groups of streaming sessions, wherein the set of quality metrics comprises at least one of video start failure, exits before video start, video startup time, or rebuffering ratio;
identify an anomaly in at least one group of streaming sessions at least in part by performing anomaly detection using the set of quality metrics and historical information, wherein the identifying comprises using a hidden Markov model to determine, based on an observed quality metric over an interval of time for streaming sessions in a given group of streaming sessions, a probability that the given group of streaming sessions is in an anomalous state;
construct a diagnosis graph, wherein each node in the diagnosis graph corresponds to a group of streaming sessions;
diagnose a cause of the identified anomaly at least in part by traversing the diagnosis graph; and
generate an alert based at least in part on the diagnosis; and
a memory coupled to the one or more processors and configured to provide the one or more processors with instructions.