IP Library Granted Patent US 11,477,104
Granted Patent B2
US 11,477,104 · App. 17/002,030 · Granted Oct 18, 2022

Data rate monitoring to determine channel failure

Inventor: James R Malnati (Stillwater, MN)
Assignee: Unisys Corporation
H04L43/0894H04L41/0677H04L43/16
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,477,104
App. No.
17/002,030
Granted
Oct 18, 2022
Kind
B2
Abstract

Data channels of a computer system may be remotely monitored to detect data channel degradation. A monitoring agent on a client may execute script commands on the remote computer system to monitor input/output (I/O) rates of a set of channels. The monitoring agent may compute an average data rate of the data channels and compare the I/O rate of each channel to the average. When the I/O rate of a channel falls below the average by at least a threshold amount, an alert may be generated to indicate to an administrator a possible failure with the data channel.

Claims (59)

1. A method, comprising:

measuring, by a client monitoring agent residing on a client computing device, a data rate for each of a set of channels on a remote server, wherein the step of measuring the data rate comprises:

initializing a communication session with the remote server;

transmitting, through the communication session, channel data rate commands for each of a plurality of channels in a set of channels to the remote server for execution,

wherein the channel data rate commands are generated by a client script engine, each of the channel data rate commands specifying at least one time period for measuring the data rate; and

receiving, through the communication session, the data rate of each of the channels in the set of channels, in response to the channel data rate commands;

calculating, by the client monitoring agent, an average data rate for the channels in the set of channels;

determining, by the client monitoring agent, whether any data rate of any channel of the set of channels is a threshold amount below the average data rate; and

generating, by the client monitoring agent, an alert for the channel when the data rate of the channel is determined to be below the average data rate by the threshold amount.

2. The method of claim 1 , further comprising:

determining, by the client monitoring agent, whether the data channel is below a second larger threshold amount below the calculated average data rate; and

generating, by the client monitoring agent, a second alert of higher severity when the data channel is determined to be below the calculated average data rate by the second threshold amount.

3. The method of claim 1 , further comprising receiving, by the client monitoring agent, a list of channel names corresponding to the set of channels.

4. The method of claim 1 , further comprising:

transmitting periodic channel input/output (I/O) rate commands;

wherein the step of calculating the average data rate comprises recursively comparing each data rate for the set of channels to the calculated average data rate.

5. The method of claim 1 , in which the alert is at least one of an email message and a text message.

6. The method of claim 1 , further comprising storing the data rate of each channel of the set of channels in a string variable, in which the step of calculating the average data rate comprises performing 32-bit unsigned arithmetic on the string variables.

7. A computer program product, comprising:

a non-transitory computer-readable medium of a client computing device comprising code of a client monitoring agent to reside on the client computing device to perform the steps of:

measuring a data rate of a set of channels on a remote server, wherein the step of measuring the data rate comprises:

initializing a communication session with the remote server;

transmitting, through the communication session, channel data rate commands for each of a plurality of channels in a set of channels to the remote server for execution,

wherein the channel data rate commands are generated by a client script engine, each of the channel data rate commands specifying at least one time period for measuring the data rates;

receiving, through the communication session, the data rate of the channels in the set of channels, in response to the channel data rate commands,

calculating an average data rate for the channels in the set of channels,

determining whether any data rate of any channel of the set of channels is a threshold amount below the average data rate; and

generating an alert for the channel when the data rate of the channel is determined to be below the average data rate by the threshold amount.

8. The computer program product of claim 7 , in which the medium further comprises code to perform the steps of:

determining whether the data channel is below a second larger threshold amount below the calculated average data rate; and

generating a second alert of higher severity when the data channel is determined to be below the calculated average data rate by the second threshold amount.

9. The computer program product of claim 7 , in which the medium further comprises code to perform the step of receiving a list of channel names corresponding to the set of channels.

10. The computer program product of claim 7 , further comprising:

transmitting periodic channel input/output (I/O) rate commands;

wherein the step of calculating the average data rate comprises recursively comparing each data rate for the set of channels to the calculated average data rate.

11. The computer program product of claim 7 , in which the alert is at least one of an email message and a text message.

12. The computer program product of claim 7 , in which the medium further comprises code to perform the step of further comprising storing the data rate of each channel of the set of channels in a string variable, in which the step of calculating the average data rate comprises performing 32-bit unsigned arithmetic on the string variables.

13. An apparatus, comprising:

a memory; and

a processor of a client computing device coupled to the memory, wherein the processor is configured to perform the steps of a client monitoring agent residing on the client computing device:

measuring a data rate of a set of channels on a remote server, wherein the step of measuring the data rate comprises:

initializing a communication session with the remote server;

transmitting, through the communication session, channel data rate commands for each of a plurality of channels in a set of channels to the remote server for execution,

wherein the channel data rate commands are generated by a client script engine, each of the channel data rate commands specifying at least one time period for measuring the data rates; and

receiving, through the communication session, the data rate of each of the channels in the set of channels, in response to the channel data rate commands,

calculating an average data rate for the channels in the set of channels;

determining whether any data rate of any channel of the set of channels is a threshold amount below the average data rate; and

generating an alert for the channel when the data rate of the channel is determined to be below the average data rate by the threshold amount.

14. The apparatus of claim 13 , in which the processor is further configured to perform the steps of:

determining whether the data channel is below a second larger threshold amount below the calculated average data rate; and

generating a second alert of higher severity when the data channel is determined to be below the calculated average data rate by the second threshold amount.

15. The apparatus of claim 13 , in which the processor is further configured to perform the step of receiving a list of channel names corresponding to the set of channels.

16. The apparatus of claim 13 , further comprising:

transmitting periodic channel input/output (I/O) rate commands;

wherein the step of calculating the average data rate comprises recursively comparing each data rate for the set of channels to the calculated average data rate.

17. The apparatus of claim 13 , in which the processor is further configured to perform the step of storing the data rate of each channel of the set of channels in a string variable, in which the step of calculating the average data rate comprises performing 32-bit unsigned arithmetic on the string variables.

18. The method of claim 1 , wherein the channel data rate command is executed by a simulated user on the remote server.

19. The computer program product of claim 7 , wherein the channel data rate command is executed by a simulated user on the remote server.

20. The apparatus of claim 15 , wherein the channel data rate command is executed by a simulated user on the remote server.

Assignments (2)
AMENDED AND RESTATED PATENT SECURITY AGREEMENT Recorded Jun 27, 2025
From: UNISYS CORPORATION; UNISYS HOLDING CORPORATION; UNISYS NPL, INC.; UNISYS AP INVESTMENT COMPANY I
To: COMPUTERSHARE TRUST COMPANY, N.A., AS COLLATERAL TRUSTEE
Reel/Frame 071759/0527 →
SECURITY INTEREST Recorded Jun 14, 2021
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 056531/0150 →
Continuity (2)
Continuation 14017370 · Sep 4, 2013
Related Publication 20200389382A1 · Dec 10, 2020