IP Library Granted Patent US 10,938,721
Granted Patent B2
US 10,938,721 · App. 16/523,838 · Granted Mar 2, 2021

Hash collision mitigation system

Inventors: Anoop Ghanwani (Roseville, CA); Raja Sathianarayan Jayakumar (Freemont, CA); Kannan Karuppiah (Santa Clara, CA); Chetput L. Venkataraghavan (Cupertino, CA)
Assignee: Dell Products L.P.
H04L45/7453H04L12/4641H04L45/04H04L45/66H04L45/7457
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,938,721
App. No.
16/523,838
Granted
Mar 2, 2021
Kind
B2
Abstract

A hash collision mitigation system includes a source device coupled to a destination device by a networking device. The networking device receives a first packet from the source device, and uses first packet information included in the first packet to perform a hash operation on the first packet and generate a hash value. The networking device then determines that the hash value has caused a hash collision with a first hash value forwarding entry in a hash forwarding table in the networking device and, in response, generates a first Policy Based Routing (PBR) entry for the first packet. The first PBR entry is configured to provide for the forwarding of at least one second packet received from the destination device and directed to the source device, and that first PBR is stored in a Ternary Content Addressable Memory (TCAM) in the networking device.

Claims (67)

1. A hash-collision-based packet forwarding system, comprising:

a source device;

a destination device; and

a networking device coupling the source device to the destination device, wherein the networking device is configured to:

receive, from the source device, a first packet that is directed to the destination device;

perform, using first packet information included in the first packet, a hash operation to generate a hash value;

determine that the hash value has caused a hash collision with a first hash value forwarding entry in a hash forwarding table in the networking device;

generate, in response to determining that the hash value has caused a hash collision, a first Policy Based Routing (PBR) entry for the first packet, wherein the first PBR entry is configured to provide for the forwarding of at least one second packet received from the destination device and directed to the source device; and

store the first PBR entry in a Ternary Content Addressable Memory (TCAM) in the networking device.

2. The system of claim 1 , wherein the first PBR entry is stored in a Layer 2 (L2) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L2 area of the TCAM.

3. The system of claim 2 , wherein the networking device is configured to:

generate a second PBR entry that is configured to provide for the aging of an address that is associated with the source device and that is included in the first PBR entry; and

store the second PBR entry in the L2 area of the TCAM in a lower priority position relative to the first PBR entry.

4. The system of claim 3 , wherein the networking device is configured to:

generate a third PBR entry that is configured to provide for the movement of the address that is associated with the source device and that is included in the first PBR entry; and

store the third PBR entry in the L2 area of the TCAM in a lower priority position relative to the second PBR entry.

5. The system of claim 1 , wherein the first PBR entry is stored in a Layer 3 (L3) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L3 area of the TCAM.

6. The system of claim 1 , wherein the networking device is configured to:

determine that the first hash value forwarding entry associated with the hash collision has been removed from the hash forwarding table in the networking device;

generate, in response to determining that the first hash value forwarding entry has been removed from the hash forwarding table, a second hash value forwarding entry corresponding to the first PBR entry; and

store the second hash value forwarding entry in the hash forwarding table.

7. An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a switch engine that is configured to:

receive, from a source device, a first packet;

perform, using first packet information included in the first packet, a hash operation to generate a hash value;

determine that the hash value has caused a hash collision with a first hash value forwarding entry in a hash forwarding table;

generate, in response to determining that the hash value has caused a hash collision, a first Policy Based Routing (PBR) entry for the first packet, wherein the first PBR entry is configured to provide for the forwarding of at least one second packet directed to the source device; and

store the first PBR entry in a Ternary Content Addressable Memory (TCAM).

8. The IHS of claim 7 , wherein the first PBR entry is stored in a Layer 2 (L2) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L2 area of the TCAM.

9. The IHS of claim 8 , wherein the switch engine is configured to:

generate a second PBR entry that is configured to provide for the aging of an address that is associated with the source device and that is included in the first PBR entry; and

store the second PBR entry in the L2 area of the TCAM in a lower priority position relative to the first PBR entry.

10. The IHS of claim 9 , wherein the switch engine is configured to:

generate a third PBR entry that is configured to provide for the movement of the address that is associated with the source device and that is included in the first PBR entry; and

store the third PBR entry in the L2 area of the TCAM in a lower priority position relative to the second PBR entry.

11. The IHS of claim 7 , wherein the first PBR entry is stored in a Layer 3 (L3) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L3 area of the TCAM.

12. The IHS of claim 7 , wherein the switch engine is configured to:

determine that the first hash value forwarding entry associated with the hash collision has been removed from the hash forwarding table;

generate, in response to determining that the first hash value forwarding entry has been removed from the hash forwarding table, a second hash value forwarding entry corresponding to the first PBR entry; and

store the second hash value forwarding entry in the hash forwarding table.

13. The IHS of claim 7 , wherein the switch engine is configured to:

receive, subsequent to storing the first PBR entry in the TCAM, a second packet;

perform, using second packet information included in the second packet, the hash operation and, in response, generating the hash value; and

forward, in response to generating the hash value via the performance of the hash operation on the second packet, the second packet using the first PBR entry.

14. A method for packet forwarding based on a hash collision, comprising:

receiving, by a networking device from a source device, a first packet;

performing, by the networking device using first packet information included in the first packet, a hash operation to generate a hash value;

determining, by the networking device, that the hash value has caused a hash collision with a first hash value forwarding entry in a hash forwarding table;

generating, by the networking device in response to determining that the hash value has caused a hash collision, a first Policy Based Routing (PBR) entry for the first packet, wherein the first PBR entry is configured to provide for the forwarding of at least one second packet directed to the source device; and

storing, by the networking device, the first PBR entry in a Ternary Content Addressable Memory (TCAM) in the networking device.

15. The method of claim 14 , wherein the first PBR entry is stored in a Layer 2 (L2) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L2 area of the TCAM.

16. The method of claim 15 , further comprising:

generating, by the networking device, a second PBR entry that is configured to provide for the aging of an address that is associated with the source device and that is included in the first PBR entry; and

storing, by the networking device, the second PBR entry in the L2 area of the TCAM in a lower priority position relative to the first PBR entry.

17. The method of claim 16 , further comprising:

generating, by the networking device, a third PBR entry that is configured to provide for the movement of the address that is associated with the source device and that is included in the first PBR entry; and

storing, by the networking device, the second PBR entry in the L2 area of the TCAM in a lower priority position relative to the second PBR entry.

18. The method of claim 14 , wherein the first PBR entry is stored in a Layer 3 (L3) area of the TCAM in a lower priority position relative to a plurality of second PBR entries that were previously stored in the L3 area of the TCAM.

19. The method of claim 14 , further comprising:

determining, by the networking device, that the first hash value forwarding entry associated with the hash collision has been removed from the hash forwarding table;

generating, by the networking device in response to determining that the first hash value forwarding entry has been removed from the hash forwarding table, a second hash value forwarding entry corresponding to the first PBR entry; and

storing, by the networking device, the second hash value forwarding entry in the hash forwarding table.

20. The method of claim 14 , further comprising:

receiving, by the networking device subsequent to storing the first PBR entry in the TCAM, a second packet;

performing, by the networking device using second packet information included in the second packet, the hash operation and, in response, generating the hash value; and

forwarding, by the networking device in response to generating the hash value via the performance of the hash operation on the second packet, the second packet using the first PBR entry.

Assignments (9)
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 (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 (050724/0571) 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 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
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 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2019
From: GHANWANI, ANOOP; JAYAKUMAR, RAJA SATHIANARAYAN; KARUPPIAH, KANNAN; VENKATARAGHAVAN, CHETPUT L.
To: DELL PRODUCTS L.P.
Reel/Frame 049878/0202 →