IP Library Granted Patent US 11,552,864
Granted Patent B2
US 11,552,864 · App. 17/045,700 · Granted Jan 10, 2023

Measuring metrics of a computer network

Inventors: Anders Bergsten (Gammelstad, SE); Mikael Sundström (Luleå, SE)
Assignee: Juniper Networks, Inc.
H04L43/02
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 11,552,864
App. No.
17/045,700
Granted
Jan 10, 2023
Kind
B2
Abstract

A method of measuring ( 100 ) metrics of a computer network, comprising the steps of: —from a data source collecting ( 110 ) sets of data points during a sampling time period, wherein the set of data points constitute a sample, and uploading ( 120 ) each sample to a server for further processing ( 130 ), wherein from each sample, a tractile information instance is produced ( 131 ), wherein the tractile information has a type and each data source is associated ( 110 a ) with a fractile information type.

Claims (59)

1. A method of measuring metrics of a computer network, the method comprising:

collecting data points from a plurality of data sources,

wherein a set of data points collected from each data source is collected during a sampling period,

wherein the set of data points, referred to as sample, is collected throughout each sampling period for each data source,

wherein each data source is associated with a fractile information type that specifies parameters for fractile information instances;

repeatedly updating, during the sampling period, one or more bins associated with a fractile information instance associated with the data source with counts of values of the collected data points, the one or more bins comprising counters corresponding to values of the collected data points, wherein for each data point of the collected data points, an index identifying the bin to be updated is determined according to a pair of values comprising a mantissa and an exponent of the value of the corresponding data point;

transmitting the fractile information instance, for each data source, to a computing device or server for further processing; and

aggregating two or more original fractile information instances, representing the same data source but at different time frames, wherein aggregating the two or more original fractile information instances comprises computing new aggregate counters by adding the corresponding counters from the two or more original fractile information instances.

2. The method according to claim 1 ,

wherein a plurality of fractile information instances are associated with each data source,

wherein, for each data source, exactly one fractile information instance is active during each sampling period,

wherein, for each data source, the non-active fractile information instances are passive during each sampling period,

wherein, for each data source, the active fractile information instance is empty at the beginning the sampling period,

wherein, for each data source, the passive fractile information instances are transmitted and/or stored to be available for further processing, and

wherein, for each data source, at least one passive fractile information instance can be recycled at the end of each sampling period to become an empty active fractile information instance for the following sampling period.

3. The method according to claim 1 ,

wherein the collection of data points from one or more data sources are performed by test agents,

wherein each test agent updates the fractile information instance associated with each data source immediately after collecting each data point throughout the sampling period, and

wherein each test agent up-loads fractile information instances to a control center after the end of each sampling period, to be available for further processing.

4. The method according to claim 1 ,

wherein the collection of data points is performed by test agents which collect all data points of a sample throughout a sample time period,

wherein the test agents upload the entire sample to a control center at the end of the sample time period, and

wherein the control center produces the fractile information instance from the received sample to be available for further processing.

5. The method according to claim 1 ,

wherein a control center starts with an empty/reset fractile information instance for each data source at the beginning of the sampling period,

wherein test agents repeatedly upload individual data points, or sets of data points, to the control center throughout the sampling period,

wherein the server updates the fractile information instance immediately after receiving each data point, for each data source, as it receives data-points throughout the sampling period, and

wherein the fractile information instance represents the entire sample at the end of the sampling period and is available for further processing.

6. The method according to claim 1 ,

wherein the further processing includes performing statistical analysis based on the fractile information instance without having access to the full sample.

7. The method according to claim 1 ,

wherein a period between individual measurements of metrics and the length of the sampling period is varied depending on one or more of a metric measured, a traffic rate in a part of the network where a measurement of the individual measurements takes place.

8. The method according to claim 1 , wherein the sampling period comprises a smallest time-frame where statistical analysis of data is supported.

9. The method according to claim 1 , wherein a base 2 is used for the exponent.

10. The method according to claim 1 , wherein a base 10 is used for the exponent.

11. The method according to claim 9 , wherein principal representation of fractile information comprises an interval of exponents defining the values with smallest and largest absolute value and a fixed number of bits representing significant figures or mantissa.

12. The method according to claim 1 , wherein further processing comprises storing compressed fractile information instances in a data base at the server using a time stamp as a key and the compressed fractile information as a binary large object (BLOB).

13. The method according to claim 1 , further comprising decompressing the two or more original fractile information instances.

14. The method according to claim 1 , wherein the fractile information instances include different data points.

15. The method according to claim 1 , further comprising scheduling the aggregating of the two or more original fractile information instances according to an aggregation scheme.

16. The method according to claim 1 , wherein each data source is associated with an aggregation scheme.

17. A non-transitory processor-readable medium, having instructions stored thereon, where the instructions cause at least one data processor to:

collect data points from a plurality of data sources,

wherein a set of data points collected from each data source is collected during a sampling period,

wherein the set of data points, referred to as sample, is collected throughout each sampling period for each data source,

wherein each data source is associated with a fractile information type that specifies parameters for fractile information instances;

repeatedly update, during the sampling period, one or more bins associated with a fractile information instance associated with the data source with counts of values of the collected data points, the one or more bins comprising counters corresponding to values of the collected data points, wherein for each data point of the collected data points, an index identifying the bin to be updated is determined according to a pair of values comprising a mantissa and an exponent of the value of the corresponding data point;

transmit the fractile information instance, for each data source, to a computing device or server for further processing; and

aggregate two or more original fractile information instances, representing the same data source but at different time frames, wherein aggregation of the two or more original fractile information instances comprises computing new aggregate counters by adding the corresponding counters from the original fractile information instances.

18. A system comprising:

one or more processors;

a memory storing instructions, that when executed, cause the one or more processors to:

collect data points from a plurality of data sources,

wherein a set of data points collected from each data source is collected during a sampling period,

wherein the set of data points, referred to as sample, is collected throughout each sampling period for each data source,

wherein each data source is associated with a fractile information type that specifies parameters for fractile information instances;

repeatedly update, during the sampling period, one or more bins associated with a fractile information instance associated with the data source with counts of values of the collected data points, the one or more bins comprising counters corresponding to values of the collected data points, wherein for each data point of the collected data points, an index identifying the bin to be updated is determined according to a pair of values comprising a mantissa and an exponent of the value of the corresponding data point;

transmit the fractile information instance, for each data source, to a computing device or server for further processing; and

aggregate two or more original fractile information instances, representing the same data source but at different time frames, wherein aggregation of the two or more original fractile information instances comprises computing new aggregate counters by adding the corresponding counters from the original fractile information instances.

Assignments (3)
CONFIRMATORY ASSIGNMENT Recorded Jul 27, 2023
From: BERGSTEN, ANDERS
To: JUNIPER NETWORKS, INC.
Reel/Frame 064401/0257 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2021
From: NETROUNDS AB
To: JUNIPER NETWORKS, INC.
Reel/Frame 055297/0917 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2020
From: BERGSTEN, ANDERS; SUNDSTRÖM, MIKAEL
To: NETROUNDS AB
Reel/Frame 053996/0518 →
Priority Claims (1)
SE 1850400-1 · Apr 10, 2018 · national
Continuity (1)
Related Publication 20210351994A1 · Nov 11, 2021