Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A computer-implemented method, comprising: partitioning each of two or more fabric modules (FMs) into two or more banks, wherein the partitioning comprises associating at least two chipsets for each of the two or more FMs into different banks selected from among the two or more banks; dynamically assigning two or more entries in a LPM table of a line card (LC) at least based upon routes that are dynamically learned at the LC; programming the two or more banks in each of the two or more FMs based upon the dynamically assigned two or more entries in the LPM table; in response to receiving a Layer-3 packet, looking up the Layer-3 packet in the LPM table of the LC to determine a particular bank in one of the two or more FMs for routing the Layer-3 packet; and routing the Layer-3 packet to the particular bank.
A method for improving Layer-3 routing database scalability divides fabric modules (FMs) into multiple banks, assigning different chipsets within each FM to different banks. A line card (LC) uses a longest prefix match (LPM) table, dynamically updated with learned routes, to determine the bank within an FM to which a Layer-3 packet should be routed. The banks in each FM are programmed according to the dynamic LPM table entries. Upon receiving a Layer-3 packet, the LC consults its LPM table to identify the correct bank for routing the packet, and then forwards the packet to that bank.
2. The computer-implemented method of claim 1 , further comprising: assigning a virtual module (VM) identifier to each of the two or more banks in one of the two or more FMs.
The method for improving Layer-3 routing database scalability described in the previous claim, where fabric modules (FMs) are divided into multiple banks and traffic routed via a line card (LC) using a dynamically updated longest prefix match (LPM) table, also assigns a virtual module (VM) identifier to each bank within each FM. This VM identifier helps distinguish and manage traffic flow to different banks within the FMs.
3. The computer-implemented method of claim 2 , wherein forwarding the Layer-3 packet among the two or more banks of the two or more FMs is based at least upon assigned VM identifiers of the two or more banks in the two or more FMS.
In the method for improving Layer-3 routing database scalability described previously, where fabric modules (FMs) are divided into banks with virtual module (VM) identifiers, and traffic is routed using a line card (LC) based on a longest prefix match (LPM) table, the forwarding of Layer-3 packets *among* the banks of the FMs is based at least partly on the assigned VM identifiers of those banks. These identifiers are used to direct the Layer-3 packet to its destination bank.
4. The computer-implemented method of claim 1 , further comprising: increasing, based upon participation of the LC in virtual routing and forwarding (VRF) or virtual design and construction (VDC), a number of the routes using a selective download.
The method for improving Layer-3 routing database scalability described previously, involving fabric module (FM) bank partitioning and dynamic longest prefix match (LPM) table updates on a line card (LC), also increases the number of routes supported based on the LC's involvement in virtual routing and forwarding (VRF) or virtual design and construction (VDC) through a selective download mechanism. This selective download ensures that only relevant routes are added to the LPM table, improving scalability.
5. The computer-implemented method of claim 1 , further comprising: adding an additional entry to the LPM table of the LC based upon the routes that are dynamically learned; and hashing the additional entry to one of the two or more banks in one of the two or more FMs.
The method for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, also includes adding additional entries to the LC's LPM table based on dynamically learned routes. Each new entry is then hashed to one of the banks within the FMs. This hashing distributes the routing load across different banks.
6. The computer-implemented method of claim 1 , further comprising: in response to the routes at the LC becoming too granular to fit in the LPM table, aggregating the routes up by 1 bit-level.
The method for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, further includes route aggregation. Specifically, when the routes at the LC become too granular (too many specific routes) to fit within the LPM table's capacity, the method aggregates the routes by increasing the prefix length by 1 bit-level, effectively reducing the number of entries needed.
7. The computer-implemented method of claim 1 , further comprising: measuring traffic flows on each of the two or more banks in the two or more FMs; based upon measured traffic flows on the two or more banks in the two or more FMs, determining a new bank in the two or more FMs for at least one route to the LC, the new bank being different from an existing bank for the at least one route to the LC; and switching the at least one route from the existing bank in the two or more FMs to the new bank in the two or more FMs.
The method for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, also optimizes traffic flow. It measures traffic on each bank, and based on these measurements, determines a potentially better bank for a specific route. If a new bank is more suitable, the method switches the route from the existing bank to the new bank, balancing the load across the FMs.
8. The computer-implemented method of claim 7 , further comprising: adding a pre-determined delay to a determination of whether to switch the route from the existing bank in the two or more FMs to the new bank in the two or more FMs.
The method described in the previous claim about improving Layer-3 routing database scalability using traffic flow measurement and bank switching, adds a pre-determined delay to the decision of whether to switch a route from an existing bank to a new bank. This delay prevents rapid, potentially unstable, route changes based on transient traffic fluctuations, ensuring a more stable routing configuration.
9. The computer-implemented method of claim 7 , further comprising: in response to a determination to switch the route from the existing bank in the two or more FMs to the new bank in the two or more FMs, making both the existing bank and the new bank available before the route is switched from the existing bank to the new bank.
In the method for improving Layer-3 routing database scalability by measuring traffic and switching routes to different fabric module (FM) banks, when a decision is made to switch a route to a new bank, both the existing bank and the new bank are made available *before* the route is actually switched. This ensures a seamless transition with no packet loss, as both banks can handle traffic for the route during the switchover period.
10. A system, comprising: at least one processor; and memory including instructions that, when executed by the at least one processor, cause the system to: partition each of two or more fabric modules (FMs) into two or more banks, wherein the partitioning comprises associating at least two chipsets for each of the two or more FMs into different banks selected from among the two or more banks; dynamically assign two or more entries in a LPM table of a line card (LC) at least based upon routes that are dynamically learned at the LC; program the two or more banks in each of the two or more FMs based upon the dynamically assigned two or more entries in the LPM table; in response to receiving a Layer-3 packet, look up the Layer-3 packet in the LPM table of the LC to determine a particular bank in one of the two or more FMs for routing the Layer-3 packet; and route the Layer-3 packet to the particular bank.
A system for increasing Layer-3 routing database scalability includes a processor and memory. The system divides fabric modules (FMs) into multiple banks by assigning chipsets to different banks. A line card (LC) uses a longest prefix match (LPM) table, dynamically updated with learned routes, to determine the bank within an FM to which a Layer-3 packet should be routed. The banks in each FM are programmed according to the dynamic LPM table entries. Upon receiving a Layer-3 packet, the LC consults its LPM table to identify the correct bank for routing the packet, and then forwards the packet to that bank.
11. The system of claim 10 , wherein the instructions when executed further cause the system to: assign a virtual module (VM) identifier to each of the two or more banks in one of the two or more FMs.
The system for improving Layer-3 routing database scalability described in the previous claim, where fabric modules (FMs) are divided into multiple banks and traffic routed via a line card (LC) using a dynamically updated longest prefix match (LPM) table, also assigns a virtual module (VM) identifier to each bank within each FM. This VM identifier helps distinguish and manage traffic flow to different banks within the FMs.
12. The system of claim 11 , wherein forwarding of the Layer-3 packet among the two or more banks of the two or more FMs is based at least upon assigned VM identifiers of the two or more banks in the two or more FMs.
In the system for improving Layer-3 routing database scalability described previously, where fabric modules (FMs) are divided into banks with virtual module (VM) identifiers, and traffic is routed using a line card (LC) based on a longest prefix match (LPM) table, the forwarding of Layer-3 packets *among* the banks of the FMs is based at least partly on the assigned VM identifiers of those banks. These identifiers are used to direct the Layer-3 packet to its destination bank.
13. The system of claim 10 , wherein the instructions when executed further cause the system to: add an additional entry to the LPM table of the LC based upon the routes that are dynamically learned; and hash the additional entry to one of the two or more banks in one of the two or more FMs.
The system for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, also includes adding additional entries to the LC's LPM table based on dynamically learned routes. Each new entry is then hashed to one of the banks within the FMs. This hashing distributes the routing load across different banks.
14. The system of claim 10 , wherein the instructions when executed further cause the system to: in response to the routes at the LC becoming too granular to fit in the LPM table, aggregate the routes up by 1 bit-level.
The system for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, further includes route aggregation. Specifically, when the routes at the LC become too granular (too many specific routes) to fit within the LPM table's capacity, the system aggregates the routes by increasing the prefix length by 1 bit-level, effectively reducing the number of entries needed.
15. The system of claim 10 , wherein the instructions when executed further cause the system to: measure traffic flows on each of the two or more banks in the two or more FMs; based upon measured traffic flows on the two or more banks in the two or more FMs, determine a new bank in the two or more FMs for at least one route to the LC, the new bank being different from an existing bank for the at least one route to the LC; and switch the at least one route from the existing bank in the two or more FMs to the new bank in the two or more FMs.
The system for improving Layer-3 routing database scalability, involving dividing fabric modules (FMs) into banks and using a line card (LC) with a dynamically updated longest prefix match (LPM) table, also optimizes traffic flow. It measures traffic on each bank, and based on these measurements, determines a potentially better bank for a specific route. If a new bank is more suitable, the system switches the route from the existing bank to the new bank, balancing the load across the FMs.
16. The system of claim 15 , wherein the instructions when executed further cause the system to: add a pre-determined delay to a determination whether to switch the route from the existing bank in the two or more FMs to the new bank in the two or more FMs.
The system described in the previous claim about improving Layer-3 routing database scalability using traffic flow measurement and bank switching, adds a pre-determined delay to the decision of whether to switch a route from an existing bank to a new bank. This delay prevents rapid, potentially unstable, route changes based on transient traffic fluctuations, ensuring a more stable routing configuration.
Unknown
November 21, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.