IP Library Granted Patent US 10,958,769
Granted Patent B2
US 10,958,769 · App. 16/741,256 · Granted Mar 23, 2021

Activation of performance monitoring component of network protocol based on network metrics

Inventors: Xuebin He (Westwood, MA); Kathleen Moriarty (Arlington, MA); Amy Seibel (Cambridge, MA); Akshaya Khare (Cambridge, MA)
Assignee: EMC IP Holding Company LLC
H04L69/02H04L41/5009H04L43/0817H04L43/16H04L63/0485H04L65/1069H04L65/80
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 10,958,769
App. No.
16/741,256
Granted
Mar 23, 2021
Kind
B2
Abstract

A system in one embodiment comprises a first endpoint device that is configured to communicate with a second endpoint device using a given communication protocol. The first endpoint device is configured to monitor a communication session under the given communication protocol and to determine a metric value associated with a given network metric based at least in part on the monitoring. The first endpoint device is further configured to determine that a network condition has occurred based at least in part on a comparison of the metric value to a threshold value for the given network metric and to activate a performance monitoring component of the given communication protocol for the first endpoint device based at least in part on the determination that the network condition has occurred. The first endpoint device is further configured to generate performance data associated with the communication session utilizing the activated performance monitoring component.

Claims (75)

1. A system comprising:

a first endpoint device, the first endpoint device comprising at least one processor coupled to memory, the first endpoint device being configured to communicate with a second endpoint device over a network using a given communication protocol, the at least one processor being configured:

to monitor a communication session under the given communication protocol between the first endpoint device and the second endpoint device;

to determine a metric value associated with a given network metric based at least in part on the monitoring;

to determine that a network condition has occurred based at least in part on a comparison of the metric value to a threshold value for the given network metric;

to send, to the first endpoint device, a consent request based at least in part on the determination that the network condition has occurred;

to receive, from the first endpoint device, a response to the consent request to determine that the response to the consent request comprises an indication of consent by a user of the first endpoint device to activate the performance monitoring component;

to activate a performance monitoring component of the given communication protocol for the first endpoint device based at least in part on the determination that the network condition has occurred and the determination that the response to the consent request comprises the indication of consent by the user to activate the performance monitoring component; and

to generate performance data associated with the communication session based at least in part on the activated performance monitoring component.

2. The system of claim 1 wherein the at least one processor is further configured to set the threshold value for the given network metric based at least in part on a number of standard deviations from a historical norm of the given network metric.

3. The system claim 1 wherein the at least one processor is further configured to wait a predetermined amount of time after the determination that the network condition has occurred before activating the performance monitoring component.

4. The system of claim 1 wherein the first endpoint device is configured to communicate with a plurality of endpoint devices over a network in a plurality of communication sessions; and

wherein the at least one processor is further configured:

to determine a sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria;

to monitor the communications sessions in the sample subset;

to determine subset metrics values associated with the given network metric based at least in part on the monitoring of the communication sessions in the sample subset;

to determine that a network condition has occurred for one or more of the communication sessions in the sample subset based at least in part on a comparison of the subset metric values for the one or more of the communication sessions in the sample subset to the threshold value for the given network metric;

to activate the performance monitoring component for the first endpoint device for the one or more of the communication sessions in the sample subset based at least in part on the determination that the network condition has occurred for the one or more of the communication sessions in the sample subset; and

to generate performance data associated with the one or more of the communication sessions in the sample subset based at least in part on the activated performance monitoring component.

5. The system of claim 4 wherein the sample subset comprises a predefined number of communication sessions or a predefined percentage of the plurality of communication sessions.

6. The system of claim 4 wherein the at least one processor is further configured to dynamically adjust the number of communication sessions that are included in the sample subset based at least in part on a number of standard deviations of the subset metric values from a historical norm for the given network metric.

7. The system of claim 4 wherein determining the sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria comprises determining whether or not to include a given communication session in the sample subset based at least in part on at least one of:

a graphical analysis of the network that indicates whether or not the given communication session is experiencing network issues;

whether or not a network protocol being used by the given communication session is a target network protocol that is experiencing network issues in the network; and

a predetermined number of standard deviations of the subset metric value of the given network metric for the given communication session from a historical norm for the given network metric.

8. A method comprising:

monitoring a communication session under a given communication protocol between a first endpoint device and a second endpoint device;

determining a metric value associated with a given network metric based at least in part on the monitoring;

determining that a network condition has occurred based at least in part on a comparison of the metric value to a threshold value for the given network metric;

sending, to the first endpoint device, a consent request based at least in part on the determination that the network condition has occurred;

receiving, from the first endpoint device, a response to the consent request

determining that the response to the consent request comprises an indication of consent by a user of the first endpoint device to activate the performance monitoring component

activating a performance monitoring component of the given communication protocol for the first endpoint device based at least in part on the determination that the network condition has occurred and the determination that the response to the consent request comprises the indication of consent by the user to activate the performance monitoring component; and

generating performance data associated with the communication session based at least in part on the activated performance monitoring component;

wherein the method is performed by at least one processor of the first endpoint device.

9. The method of claim 8 wherein the method further comprises waiting a predetermined amount of time after the determination that the network condition has occurred before activating the performance monitoring component.

10. The method of claim 8 wherein the first endpoint device is configured to communicate with a plurality of endpoint devices over a network in a plurality of communication sessions; and

wherein the method further comprises:

determining a sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria;

monitoring the communications sessions in the sample subset;

determining subset metric values associated with the given network metric based at least in part on the monitoring of the communication sessions in the sample subset;

determining that a network condition has occurred for one or more of the communication sessions in the sample subset based at least in part on a comparison of the subset metric values for the one or more of the communication sessions in the sample subset to the threshold value for the given network metric;

activating the performance monitoring component for the first endpoint device for the one or more of the communication sessions in the sample subset based at least in part on the determination that the network condition has occurred for the one or more of the communication sessions in the sample subset; and

generating performance data associated with the one or more of the communication sessions in the sample subset based at least in part on the activated performance monitoring component.

11. The method of claim 10 wherein the method further comprises dynamically adjusting the number of communication sessions that are included in the sample subset based at least in part on a number of standard deviations of the subset metric values from a historical norm for the given network metric.

12. The method of claim 10 wherein determining the sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria comprises determining whether or not to include a given communication session in the sample subset based at least in part on at least one of:

a graphical analysis of the network that indicates whether or not the given communication session is experiencing network issues;

whether or not a network protocol being used by the given communication session is a network protocol that is experiencing network issues in the network; and

a predetermined number of standard deviations of the subset metric value of the given network metric for the given communication session from a historical norm for the given network metric.

13. The method of claim 10 wherein the sample subset comprises a predefined number of communication sessions or a predefined percentage of the plurality of communication sessions.

14. The method of claim 8 wherein the method further comprises setting the threshold value for the given network metric based at least in part on a number of standard deviations from a historical norm for the given network metric.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processor of a first endpoint device, the first endpoint device comprising at least one processor coupled to memory, the first endpoint device being configured to communicate with a second endpoint device over a network using a given communication protocol, causes the at least one processor:

to monitor a communication session under the given communication protocol between the first endpoint device and the second endpoint device;

to determine a metric value associated with a given network metric based at least in part on the monitoring;

to determine that a network condition has occurred based at least in part on a comparison of the metric value to a threshold value for the given network metric;

to send, to the first endpoint device, a consent request based at least in part on the determination that the network condition has occurred;

to receive, from the first endpoint device, a response to the consent request

determine that the response to the consent request comprises an indication of consent by a user of the first endpoint device to activate the performance monitoring component

to activate a performance monitoring component of the given communication protocol for the first endpoint device based at least in part on the determination that the network condition has occurred and the determination that the response to the consent request comprises the indication of consent by the user to activate the performance monitoring component; and

to generate performance data associated with the communication session based at least in part on the activated performance monitoring component.

16. The computer program product of claim 15 wherein the first endpoint device is configured to communicate with a plurality of endpoint devices over a network in a plurality of communication sessions; and

wherein the program code further causes the at least one processor:

to determine a sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria;

to monitor the communications sessions in the sample subset;

to determine subset metric values associated with the given network metric based at least in part on the monitoring of the communication sessions in the sample subset;

to determine that a network condition has occurred for one or more of the communication sessions in the sample subset based at least in part on a comparison of the subset metric values for the one or more of the communication sessions in the sample subset to the threshold value for the given network metric;

to activate the performance monitoring component for the first endpoint device for the one or more of the communication sessions in the sample subset based at least in part on the determination that the network condition has occurred for the one or more of the communication sessions in the sample subset; and

to generate performance data associated with the one or more of the communication sessions in the sample subset based at least in part on the activated performance monitoring component.

17. The computer program product of claim 16 wherein the program code further causes the at least one processor to dynamically adjust the number of communication sessions that are included in the sample subset based at least in part on a number of standard deviations of the subset metric values from a historical norm for the given network metric.

18. The computer program product of claim 16 wherein determining the sample subset of the plurality of communication sessions to monitor based at least in part on at least one sampling criteria comprises determining whether or not to include a given communication session in the sample subset based at least in part on at least one of:

a graphical analysis of the network that indicates whether or not the given communication session is experiencing network issues;

whether or not a network protocol being used by the given communication session is a target network protocol that is experiencing network issues in the network; and

a predetermined number of standard deviations of the subset metric value of the given network metric for the given communication session from a historical norm for the given network metric.

19. The computer program product of claim 15 wherein the program code further causes the at least one processor to set the threshold value for the given network metric based at least in part on a number of standard deviations from a historical norm for the given network metric.

20. The computer program product of claim 15 wherein the program code further causes the at least one processor to wait a predetermined amount of time after the determination that the network condition has occurred before activating the performance monitoring component.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2020
From: HE, XUEBIN; MORIARTY, KATHLEEN; SEIBEL, AMY; KHARE, AKSHAYA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051499/0473 →