IP Library Granted Patent US 10,659,363
Granted Patent B2
US 10,659,363 · App. 16/205,538 · Granted May 19, 2020

Forwarding table management

Inventors: How T. Lim (San Jose, CA); Lok Y. Hui (Fremont, CA)
Assignee: Extreme Networks, Inc.
H04L45/748H04L45/54H04L45/60H04L45/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,659,363
App. No.
16/205,538
Granted
May 19, 2020
Kind
B2
Abstract

Disclosed herein are system, method, and computer program product embodiments for representing a forwarding information base (FIB) in a database. An embodiment operates by determining that a first routing prefix of a first forwarding entry in the FIB is a less specific routing prefix than a second routing prefix in a second forwarding entry in the FIB. The embodiment determines that a first next hop of the first routing prefix is equal to a second next hop of the second routing prefix. The embodiment removes the second forwarding entry from the FIB. The embodiment then inserts the first forwarding entry into a database (e.g., a longest exact match (LEM) database or a longest prefix match (LPM) database) based on a prefix length of the first routing prefix of the first forwarding entry.

Claims (36)

1. A computer implemented method for representing a forwarding information base (FIB) in a database, comprising:

determining, by at least one processor, that a first routing prefix of a first forwarding entry in the FIB is a less specific routing prefix than a second routing prefix in a second forwarding entry in the FIB;

determining, by the at least one processor, a first next hop of the first routing prefix is equal to a second next hop of the second routing prefix;

removing, by the at least one processor, the second forwarding entry from the FIB based on the determination that the first next hop of the first routing prefix is equal to the second next hop of the second routing prefix; and

inserting, by the at least one processor, the first forwarding entry into a longest exact match (LEM) database or a longest prefix match (LPM) database based on a prefix length of the first routing prefix of the first forwarding entry.

2. The method of claim 1 , wherein the first next hop comprises a next hop address and an outgoing interface.

3. The method of claim 1 , wherein the inserting comprises inserting the first forwarding entry into the LPM database based on the prefix length of the first routing prefix of the first forwarding entry being different than 24 bits or 32 bits.

4. The method of claim 1 , wherein the inserting comprises inserting the first forwarding entry into the LEM database based on the prefix length of the first routing prefix of the first forwarding entry being 24 bits or 32 bits.

5. The method of claim 1 , wherein each of the LEM and LPM databases comprise ternary content-addressable memory (TCAM).

6. The method of claim 1 , further comprising:

generating a first sub routing prefix and a second sub routing prefix from a third routing prefix of a third forwarding entry in the FIB based on a prefix length of the third routing prefix being 23 bits.

7. The method of claim 6 , further comprising:

inserting the first sub routing prefix and the second sub routing prefix into the LEM database.

8. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

determine that a first routing prefix of a first forwarding entry in a forwarding information base (FIB) is a less specific routing prefix than a second routing prefix in a second forwarding entry in the FIB;

determine a first next hop of the first routing prefix is equal to a second next hop of the second routing prefix;

remove the second forwarding entry from the FIB based on the determination that the first next hop of the first routing prefix is equal to the second next hop of the second routing prefix; and

insert the first forwarding entry into a database based on a prefix length of the first routing prefix of the first forwarding entry.

9. The system of claim 8 , wherein the first next hop comprises a next hop address and an outgoing interface.

10. The system of claim 8 , wherein to insert the first forwarding entry, the at least one processor is configured to insert the first forwarding entry into the database based on the prefix length of the first routing prefix of the first forwarding entry being different than 24 bits or 32 bits, wherein the database comprises a longest prefix match (LPM) database.

11. The system of claim 8 , wherein to insert the first forwarding entry, the at least one processor is configured to insert the first forwarding entry into the database based on the prefix length of the first routing prefix of the first forwarding entry being 24 bits or 32 bits, wherein the database comprises a longest exact match (LEM) database.

12. The system of claim 8 , wherein the database comprises ternary content-addressable memory (TCAM).

13. The system of claim 8 , wherein the at least one processor is further configured to generate a first sub routing prefix and a second sub routing prefix from a third routing prefix of a third forwarding entry in the FIB based on a prefix length of the third routing prefix being 23 bits.

14. The system of claim 13 , wherein the at least one processor is further configured to insert the first sub routing prefix and the second sub routing prefix into the database.

15. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations comprising:

determining that a first routing prefix of a first forwarding entry in a forwarding information base (FIB) is a less specific routing prefix than a second routing prefix in a second forwarding entry in the FIB;

determining a first next hop of the first routing prefix is equal to a second next hop of the second routing prefix;

removing the second forwarding entry from the FIB based on the determination that the first next hop of the first routing prefix is equal to the second next hop of the second routing prefix; and

inserting the first forwarding entry into an exact match database based on a prefix length of the first routing prefix of the first forwarding entry being 24 bits or 32 bits.

16. The non-transitory computer-readable device of claim 15 , wherein the inserting comprises inserting a third forwarding entry into a longest prefix match (LPM) database based on a prefix length of a third routing prefix of the third forwarding entry being different than 24 bits or 32 bits.

17. The non-transitory computer-readable device of claim 15 , wherein the FIB is organized using a trie data structure.

18. The non-transitory computer-readable device of claim 16 , wherein each of the exact match and LPM databases comprise ternary content-addressable memory (TCAM).

19. The non-transitory computer-readable device of claim 15 , wherein the operations further comprise generating a first sub routing prefix and a second sub routing prefix from a third routing prefix of a third forwarding entry in the FIB based on a prefix length of the third routing prefix being 23 bits.

20. The non-transitory computer-readable device of claim 19 , wherein the operations further comprise inserting the first sub routing prefix and the second sub routing prefix into the exact match database.

Assignments (3)
AMENDED SECURITY AGREEMENT Recorded Aug 18, 2023
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 064782/0971 →
SECURITY INTEREST Recorded Aug 12, 2019
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 050023/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2018
From: LIM, HOW T.; HUI, LOK Y.
To: EXTREME NETWORKS, INC.
Reel/Frame 047781/0522 →
Continuity (2)
Provisional Application 62593834 · Dec 1, 2017
Related Publication 20190173791A1 · Jun 6, 2019
Cited By (1)
US 12,542,741