IP Library Granted Patent US 9,426,064
Granted Patent B2
US 9,426,064 · App. 14/061,695 · Granted Aug 23, 2016

Pathway decision forwarding for rack domains

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,426,064
App. No.
14/061,695
Filed
Oct 23, 2013
Granted
Aug 23, 2016
Kind
B2
Art Unit
2478
USPC
370/392
Abstract

Methods and systems for improved pathway decision forwarding for rack domains include a gravity well forwarding protocol that enables local forwarding decisions at each network node involved with forwarding packets. The gravity well forwarding protocol may administer gravity well values for each of a plurality of rack domain nodes in a rack domain. The local forwarding decisions may involve selecting output ports corresponding to a higher/lower gravity well value at a network switching element, depending on a destination gravity well value associated with a network packet. Assignment of the gravity well values among the rack domain nodes may be used according to considerations, including security considerations, throughput considerations, loading considerations, redundancy considerations, physical location, and/or physical proximity, among other considerations, in the rack domain.

Claims (66)

1. A method comprising:

receiving an incoming packet at a first rack domain node having a first gravity well value, the first rack domain node included in a rack domain;

determining whether to forward the incoming packet using gravity well forwarding, including determining whether a destination node for the incoming packet is included in the rack domain;

when the destination node is included in the rack domain, forwarding the incoming packet using gravity well forwarding within the rack domain, further comprising:

identifying a gravity well destination value associated with the destination node for the incoming packet;

based on the gravity well destination value, selecting an output port of the rack domain, the output port corresponding to one of: a second rack domain node having a second gravity well value and a third rack domain node having a third gravity well value, wherein the second gravity well value is greater than the first gravity well value, and the first gravity well value is greater than the third gravity well value, wherein the second rack domain node and the third rack domain node are included in the rack domain; and

forwarding the incoming packet to the output port; and

when the destination node is not included in the rack domain, forwarding the incoming packet to the destination node without using gravity well forwarding,

wherein respective gravity well values assigned to a plurality of rack domain nodes within the rack domain, including the first rack domain node, the second rack domain node, and the third rack domain node, are unique gravity well values that avoid looped forwarding paths within the rack domain when gravity well forwarding is used, and

wherein selecting the output port further comprises:

when the gravity well destination value is greater than the first gravity well value, selecting the output port corresponding to the second rack domain node; and

when the gravity well destination value is less than the first gravity well value, selecting the output port corresponding to the third rack domain node.

2. The method of claim 1 , wherein identifying the gravity well destination further comprises:

determining a destination identifier for the destination node; and

matching the destination identifier with the gravity well destination value.

3. The method of claim 2 , wherein the destination identifier is included in the incoming packet.

4. The method of claim 1 , wherein the gravity well values are assigned based on at least one of:

security considerations for restricting access to incoming packets for at least some of the plurality of rack domain nodes;

throughput considerations for enabling a specified packet throughput rate during gravity well forwarding;

loading considerations for distributing packets according to a specified load distribution among the plurality of rack domain nodes;

redundancy considerations for enabling redundant forwarding paths among the plurality of rack domain nodes;

a physical location of at least some of the plurality of rack domain nodes; and

a physical proximity between at least some pairs of the plurality of rack domain nodes.

5. An article of manufacture comprising a non-transitory computer-readable medium storing instructions, that, when executed by a processor, cause the processor to:

receive an incoming packet at a first rack domain node having a first gravity well value, the first rack domain node included in a rack domain;

determine whether to forward the incoming packet using gravity well forwarding, including determining whether a destination node for the incoming packet is included in the rack domain;

when the destination node is included in the rack domain, forward the incoming packet using gravity well forwarding within the rack domain, further comprising instructions to:

identify a gravity well destination value associated with the destination node for the incoming packet;

based on the gravity well destination value, select an output port of the rack domain, the output port corresponding to one of: a second rack domain node having a second gravity well value and a third rack domain node having a third gravity well value, wherein the second gravity well value is greater than the first gravity well value, and the first gravity well value is greater than the third gravity well value, wherein the second rack domain node and the third rack domain node are included in the rack domain; and

forward the incoming packet to the output port; and

when the destination node is not included in the rack domain, forward the incoming packet to the destination node without using gravity well forwarding,

wherein respective gravity well values assigned to a plurality of rack domain nodes within the rack domain, including the first rack domain node, the second rack domain node, and the third rack domain node, are unique gravity well values that avoid looped forwarding paths within the rack domain when gravity well forwarding is used, and

wherein the instructions to select the output port further comprise instructions to:

when the gravity well destination value is greater than the first gravity well value, select the output port corresponding to the second rack domain node; and

when the gravity well destination value is less than the first gravity well value, select the output port corresponding to the third rack domain node.

6. The article of manufacture of claim 5 , wherein the instructions to identify the gravity well destination further comprise instructions to:

determine a destination identifier for the destination node; and

match the destination identifier with the gravity well destination value.

7. The article of manufacture of claim 6 , wherein the destination identifier is included in the incoming packet.

8. The article of manufacture of claim 5 , wherein the first rack domain node includes at least one of: a network switch and a network router.

9. A network switching element comprising:

a processor having access to a memory; and

a plurality of network ports,

wherein the network switching element is a first rack domain node included in a rack domain having a first gravity well value, and wherein the memory stores instructions executable by the processor, that, when executed by the processor, cause the processor to:

receive an incoming packet at a first network port included in the plurality of network ports;

determine whether to forward the incoming packet using gravity well forwarding, including determining whether a destination node for the incoming packet is included in the rack domain; and

when the destination node is included in the rack domain, forward the incoming packet using gravity well forwarding within the rack domain, further comprising instructions to:

identify a gravity well destination value associated with the destination node for the incoming packet;

based on the gravity well destination value, select an output port included in the plurality of network ports, the output port corresponding to one of: a second rack domain node having a second gravity well value and a third rack domain node having a third gravity well value, wherein the second gravity well value is greater than the first gravity well value, and the first gravity well value is greater than the third gravity well value, wherein the second rack domain node and the third rack domain node are included in the rack domain; and

forward the incoming packet to the output port; and

when the destination node is not included in the rack domain, forward the incoming packet to the destination node without using gravity well forwarding,

wherein respective gravity well values assigned to a plurality of rack domain nodes within the rack domain, including the first rack domain node, the second rack domain node, and the third rack domain node, are unique gravity well values that avoid looped forwarding paths within the rack domain when gravity well forwarding is used, and

wherein the instructions to select the output port further comprise instructions to:

when the gravity well destination value is greater than the first gravity well value, select the output port corresponding to the second rack domain node; and

when the gravity well destination value is less than the first gravity well value, select the output port corresponding to the third rack domain node.

10. The network switching element of claim 9 , wherein the instructions to identify the gravity well destination further comprise instructions to:

determine a destination identifier for the destination node; and

match the destination identifier with the gravity well destination value.

11. The network switching element of claim 10 , wherein the destination identifier is included in the incoming packet.

12. The network switching element of claim 9 , wherein gravity well values are assigned based on at least one of:

security considerations for restricting access to incoming packets for at least some of the plurality of rack domain nodes;

throughput considerations for enabling a specified packet throughput rate during gravity well forwarding;

loading considerations for distributing packets according to a specified load distribution among the plurality of rack domain nodes;

redundancy considerations for enabling redundant forwarding paths among the plurality of rack domain nodes;

a physical location of at least some of the plurality of rack domain nodes; and

a physical proximity between at least some pairs of the plurality of rack domain nodes.

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: 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; 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 032810 FRAME 0206 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; CREDANT TECHNOLOGIES, INC.; COMPELLENT TECHNOLOGIES, INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
Reel/Frame 040027/0204 →
RELEASE OF SECURITY INTEREST OF REEL 032809 FRAME 0930 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; CREDANT TECHNOLOGIES, INC.; COMPELLENT TECHNOLOGIES, INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
Reel/Frame 040045/0255 →
RELEASE OF REEL 032809 FRAME 0887 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; CREDANT TECHNOLOGIES, INC.; COMPELLENT TECHNOLOGIES, INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
Reel/Frame 040017/0314 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded May 1, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032809/0887 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded May 1, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 032810/0206 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded May 1, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 032809/0930 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2013
From: WINTER, ROBERT LEE
To: DELL PRODUCTS L.P.
Reel/Frame 031465/0167 →