IP Library Granted Patent US 11,256,553
Granted Patent B2
US 11,256,553 · App. 16/812,897 · Granted Feb 22, 2022

Intelligent system to prioritize servers for envisaged requests

Inventors: Tamilarasan Janakiraman (Hosur, IN); Kannan Subbaraman (Bangalore, IN); Sivaram Selvam (Bangalore, IN); Mark Arakelian (Shirley, MA); Debra Robitaille (Hopkinton, MA)
Assignee: Dell Products L.P.
G06F9/5083G06F9/4881G06F9/5038H04L43/08H04L67/1002
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,256,553
App. No.
16/812,897
Granted
Feb 22, 2022
Kind
B2
Abstract

A workload manager uses on-band and off-band metrics to select a host server in a cluster to handle a connection request. The on-band metrics include CPU usage, memory usage, and vulnerability metrics. The off-band metrics include hardware component error logs. Utilization and vulnerability scores are calculated for each host server from the on-band metrics. A reliability score is calculated for each host server from the off-band metrics. A health score for each host server is calculated from the vulnerability and reliability scores. The health score is used to exclude unhealthy host servers from consideration. A priority score is calculated for each host server from the utilization, vulnerability, and reliability scores. The host server that has not been excluded and has the greatest priority score is selected to handle the connection request.

Claims (195)

1. An apparatus comprising:

a load balancer comprising:

memory; and

a workload manager processor that:

collects on-band metrics comprising CPU usage, memory usage, and cumulative common vulnerability scoring system vulnerability metrics from each of a plurality of host servers of a cluster;

collects off-band metrics comprising hardware component error logs from each of the host servers of the cluster;

calculates a utilization score U for each of the host servers based on the CPU usage and the memory usage;

calculates a vulnerability score V for each of the host servers based on the vulnerability metrics;

calculates a reliability score R for each of the host servers based on critical errors indicated in the hardware component error logs;

calculates a priority score P for each of the host servers based on weighted calculated values of U, V, and P;

calculates a health score H for each of the host servers based on calculated values of V and R; and

responsive to receipt of a new connection request:

excludes from consideration ones of the host servers for which H fails to meet a predetermined threshold; and

assigns the connection request to one of the host servers that is not excluded from consideration and has a better score P than other ones of the host servers.

2. The apparatus of claim 1 wherein the workload manager calculates the utilization score U=((100−pCpuUsage)+(100−pMemUsage))/2, where pCpuUsage is percentage of CPU usage and pMemUsage is percentage of memory usage.

3. The apparatus of claim 1 wherein the workload manager calculates the vulnerability score V=1−(cvss_high+cvss_critical)/cvss_cum, where cvss_cum is the cumulative common vulnerability scoring system value and cvss_high and cvss_critical are High and Critical ratings, respectively.

4. The apparatus of claim 1 wherein the workload manager calculates the reliability score

R

=

1

0

0

*

Total

No

.

of

Logs

with

Uniq

(

High

)

and

Uniq

(

Critical

)

Total

No

.

of

Components

-

100

5. The apparatus of claim 1 wherein the workload manager calculates the health score H=(R+V)/2.

6. The apparatus of claim 1 wherein the workload manager calculates the priority score P=(Wtu*U)+(Wtr*R)+(Wtv*V), where Wtu, Wtr, and Wtv are weights.

7. A method comprising:

collecting on-band metrics comprising CPU usage, memory usage, and cumulative common vulnerability scoring system vulnerability metrics from each of a plurality of host servers of a cluster;

collecting off-band metrics comprising hardware component error logs from each of the host servers of the cluster;

calculating a utilization score U for each of the host servers based on the CPU usage and the memory usage;

calculating a vulnerability score V for each of the host servers based on the vulnerability metrics;

calculating a reliability score R for each of the host servers based on critical errors indicated in the hardware component error logs;

calculating a priority score P for each of the host servers based on weighted calculated values of U, V, and P;

calculating a health score H for each of the host servers based on calculated values of V and R; and

responsive to receipt of a new connection request:

excluding from consideration ones of the host servers for which H fails to meet a predetermined threshold; and

assigning the connection request to one of the host servers that is not excluded from consideration and has a better score P than other ones of the host servers.

8. The method of claim 7 comprising calculating the utilization score U=((100−pCpuUsage)+(100−pMemUsage))/2, where pCpuUsage is percentage of CPU usage and pMemUsage is percentage of memory usage.

9. The method of claim 7 comprising calculating the vulnerability score V=1−(cvss_high+cvss_critical)/cvss_cum, where cvss_cum is the cumulative common vulnerability scoring system value and cvss_high and cvss_critical are High and Critical ratings, respectively.

10. The method of claim 7 comprising calculating the reliability score

R

=

1

0

0

*

Total

No

.

of

Logs

with

Uniq

(

High

)

and

Uniq

(

Critical

)

Total

No

.

of

Components

-

100

11. The method of claim 7 comprising calculating the health score H=(R+V)/2.

12. The method of claim 7 comprising calculating the priority score P=(Wtu*U)+(Wtr*R)+(Wtv*V), where Wtu, Wtr, and Wtv are weights.

13. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for using a computer system to assign a connection request to a selected host server in a cluster of host servers, the method comprising: collecting on-band metrics from each host server of the cluster, wherein the on-band metrics comprise CPU usage, memory usage, and cumulative common vulnerability scoring system vulnerability metrics; collecting off-band metrics from each host server of the cluster, wherein the off-band metrics comprise hardware component error logs; calculating a utilization score U for each of the host servers based on CPU usage and memory usage; calculating a vulnerability score V for each of the host servers based on the vulnerability metrics using the cumulative common vulnerability scoring system; calculating a reliability score R for each of the host servers based on critical errors indicated in the hardware component error logs; calculating a priority score P for each of the host servers based on weighted calculated values of U, V, and P; calculating a health score H for each of the host servers based on calculated values of V and R; and responsive to receipt of a new connection request: excluding from consideration ones of the host servers for which H fails to meet a predetermined threshold; and assigning the connection request to one of the host servers that is not excluded from consideration and has a better score P than other ones of the host servers.

14. The non-transitory computer-readable storage medium of claim 13 wherein the method further comprises:

calculating the utilization score U=((100−pCpuUsage)+(100−pMemUsage))/2, where pCpuUsage is percentage of CPU usage and pMemUsage is percentage of memory usage;

calculating the vulnerability score V=1−(cvss_high+cvss_critical)/cvss_cum, where cvss_cum is the cumulative common vulnerability scoring system value and cvss_high and cvss_critical are High and Critical ratings, respectively;

calculating the reliability score

R

=

1

0

0

*

Total

No

.

of

Logs

with

Uniq

(

High

)

and

Uniq

(

Critical

)

Total

No

.

of

Components

-

100

calculating the health score H=(R+V)/2; and

calculating the priority score P=(Wtu*U)+(Wtr*R)+(Wtv*V), where Wtu, Wtr, and Wtv are weights.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) 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 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) 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 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) 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 060436/0441 →
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 AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 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 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 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 052851/0917 →
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 May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2020
From: JANAKIRAMAN, TAMILARASAN; SUBBARAMAN, KANNAN; SELVAM, SIVARAM; ARAKELIAN, MARK; ROBITAILLE, DEBRA
To: EMC IP HOLDING COMANY LLC
Reel/Frame 052054/0767 →
Continuity (1)
Related Publication 20210279112A1 · Sep 9, 2021
Cited By (2)
US 12,348,568 US 12,512,969