IP Library Granted Patent US 9,548,872
Granted Patent B2
US 9,548,872 · App. 14/497,869 · Granted Jan 17, 2017

Reducing internal fabric congestion in leaf-spine switch fabric

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 9,548,872
App. No.
14/497,869
Granted
Jan 17, 2017
Kind
B2
Abstract

Embodiments of the present invention provide methods and system to reduce needless data traffic in leaf-spine switch fabric. In embodiments, in a static solution, data rates of data flows having a common destination port may be measured and responsive to the data flows having a combined data rate that exceeding a rate limit of the common destination port, one or more of the data flows may be limited. Embodiments may also comprise a global scheduler to provide dynamic data rate controls of traffic flows from source ports to destination ports in which to reduce the handling of data traffic that would otherwise be discarded due to oversubscription.

Claims (44)

1. An information handling system (IHS) comprising:

a plurality of ports for sending data to and receiving data t-o from one or more devices; one or more processors that are communicatively coupled to the plurality of ports to facilitate the sending and receiving of data; and

a data rate measurer, executed by one or more processors, that measures data rates of one or more data flows received at one or more ports from the plurality of ports, the one or more data flows having a common destination port in a leaf-spine system; and

a rate limiter, executed by one or more processors, that responsive to a combined data rate of the one or more data flows exceeding a rate limit of the common destination port at a second IHS in the leaf-spine system, limits egress of the one or more data flows from the IHS based on the rate limit of the common destination port.

2. The information handling system (IHS) of claim 1 , wherein the IHS is a leaf node in the leaf-spine system and wherein the common destination port is at a second leaf node in the leaf-spine system.

3. The information handling system (IHS) of claim 2 , wherein a rate limit of each port of a set of ports at the second leaf node are communicated to the IHS.

4. The information handling system (IHS) of claim 1 , wherein the IHS is a spine node in the leaf-spine system, the one or more ports are at one or more leaf nodes in the leaf-spine system, and the second IHS is a second leaf node in the leaf-spine system.

5. The information handling system (IHS) of claim 4 , wherein at least two data flows from the one or more data flows ingressing to the IHS from different leaf nodes in the leaf-spine system routed to the common destination port via the spine node.

6. The information handling system (IHS) of claim 1 , wherein a rate limit of each port of a set of ports at the second IHS is communicated to the IHS.

7. The information handling system (IHS) of claim 1 , wherein the rate limit of the common destination port comprises a port speed of the common destination port.

8. The information handling system (IHS) of claim 7 , wherein the rate limit of the common destination port further comprises the port speed plus a burst size.

9. The information handling system (IHS) of claim 8 , wherein the burst size is related to at least a buffer size of the second IHS.

10. A method of dynamic rate limiting, the method comprising: receiving data rates of traffic flows from source ports to a common destination port having a rate limit;

calculating an allocated rate for each of the traffic flows based on the number of the traffic flows, the data rates, and the rate limit, wherein each of the data rates corresponds to one of the traffic flows from a source port among the source ports to the common destination port; and

for each traffic flow that has a data rate that exceeds its allocated rate, sending the allocated rate to a dynamic rate limiter residing on a leaf node in a leaf-spine system hosting the source port for that traffic flow.

11. The method of claim 10 , wherein the calculating uses a max-min fairness algorithm.

12. The method of claim 11 , wherein the max-min fairness algorithm includes the steps of:

(a) dividing the rate limit by the number of the traffic flows to obtain an average;

(b) for a data rate in the data rates, the data rate corresponding to a traffic flow,

responsive to the data rate not exceeding the average, setting an allocated rate corresponding to the traffic flow to the data rate, removing the data rate from the data rates, removing the allocated rate from the set of allocated rates, subtracting the allocated rate from the rate limit, and reducing the number of the traffic flows by one;

responsive to the data rate exceeding the average, adding the average to the allocated rate corresponding to the traffic flow, subtracting the average from the data rate, and subtracting the average from the rate limit; and

(c) repeating steps (a) to (b) while the number of the traffic flows and the rate limit are positive.

13. The method of claim 10 , wherein the calculating includes:

identifying strict priority quality-of-service (QoS) classes and non-strict priority QoS classes in the traffic flows;

allocating a bandwidth to each of the strict priority QoS classes based on the rate limit and a corresponding data rate in the data rates;

calculating a leftover bandwidth by subtracting the bandwidth from the rate limit; and

allocating the leftover bandwidth to the non-strict priority QoS classes by weight.

14. The method of claim 13 , wherein allocating the leftover bandwidth includes:

allocating the leftover bandwidth to the non-strict priority QoS classes by weight;

calculating an excess bandwidth based on the allocated bandwidth to undersubscribed classes among the non-strict priority QoS classes and the leftover bandwidth; and

allocating the excess bandwidth to oversubscribed classes among the non-strict priority QoS classes.

15. A global scheduler system for rate limiting data flows, the global scheduler system comprising:

a rate monitor, executed by one or more processors, that receives data rates of traffic flows from source ports to a common destination port having a rate limit;

a rate allocator, executed by one or more processors, to calculate an allocated rate for each of the traffic flows based on the number of the traffic flows, the data rates, and the rate limit, wherein each of the data rates corresponds to one of the traffic flows from a source port among the source ports to the common destination port; and

a rate limit notifier, executed by one or more processors, that for each traffic flow that has a data rate that exceeds its allocated rate, sends the allocated rate to a dynamic rate limiter residing on a leaf node in a leaf-spine system hosting the source port for that traffic flow.

16. The system of claim 15 , further comprising:

a leaf rate limiter, residing on each of leaf nodes hosting the source ports, being responsive to a data rate exceeding the rate limit of the common destination port, configured to limit the traffic flows to the common destination port based on the rate limit of the common destination port.

17. The system of claim 15 , further comprising:

a spine node, configured to measure a data rate of at least one traffic flow among the traffic flows switched through the spine node to the common destination port; and

a spine rate limiter residing on the spine node, being responsive to the data rate exceeding the rate limit of the common destination port, configured to limit the at least one traffic flow to the common destination port based on the rate limit of the common destination port.

18. The system of claim 15 , wherein the global scheduler is configured to evaluate the common destination port to identify an oversubscribed destination port, and allocate among a set of traffic flows to the oversubscribed destination port.

19. The system of claim 15 , wherein the at least one leaf node includes Access Control List (ACL) counters indicative of the traffic flows between active source ports on the at least one leaf node and the common destination node, each of the active source ports includes at least one of an active source port on a leaf node.

20. The system of claim 15 , wherein the dynamic rate limiter includes:

a priority-based flow control (PFC) issuer to issue a PFC message on the source port when a source data rate of the source port exceeds the allocated rate.

Assignments (15)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 21, 2019
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 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 034591 FRAME 0391 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040027/0719 →
RELEASE OF REEL 034590 FRAME 0731 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040027/0070 →
RELEASE OF REEL 034590 FRAME 0696 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040016/0964 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 034591/0391 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 034590/0731 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 034590/0696 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2014
From: GHANWANI, ANOOP; SUNDARAM, SHIVAKUMAR
To: DELL PRODUCTS L.P.
Reel/Frame 033828/0141 →