Hierarchical routing with table management across hardware modules
US-10079761-B2 · Sep 18, 2018 · US
US10320670B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10320670-B2 |
| Application number | US-201514970403-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 15, 2015 |
| Priority date | Dec 15, 2015 |
| Publication date | Jun 11, 2019 |
| Grant date | Jun 11, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A router may include a central processing unit-based line card storing a forwarding table that includes a first set of entries, a network processing unit-based line card storing a partial forwarding table that includes a second set of entries comprising a subset of the first set of entries, where the second set of entries comprises entries that are most utilized by a plurality of line cards of the router, and a route controller for updating the second set of entries to comprise the entries that are the most utilized. The network processing unit-based line card may forward a packet when an entry in the partial forwarding table matches the packet and may forward the packet to the central processing unit-based line card to forward the packet when there is no entry in the partial forwarding table of the network processing-unit based line card that matches the packet.
Opening claim text (preview).
What is claimed is: 1. A router comprising: a central processing unit-based line card storing a forwarding table that includes a first set of entries; a network processing unit-based line card storing a partial forwarding table that includes a second set of entries, wherein the second set of entries comprises a subset of the first set of entries, wherein the second set of entries comprises entries that are most utilized by a plurality of line cards of the router, the plurality of line cards including the central processing unit-based line card and the network processing unit-based line card, wherein the central processing unit-based line card and the network processing unit-based line card are distinct physical devices, wherein the network processing unit-based line card is configured to forward a packet received at the router to a destination when an entry in the partial forwarding table of the network processing unit-based line card matches the packet and to transfer the packet to the central processing unit-based line card to allow the central processing unit-based line card to forward the packet to the destination using the forwarding table stored by the central processing unit-based line card when there is no entry in the partial forwarding table of the network processing unit-based line card that matches the packet; and a route controller for updating the second set of entries in the partial forwarding table to comprise the entries that are the most utilized by the plurality of line cards of the router. 2. The router of claim 1 , wherein the central processing unit-based line card comprise an x86 architecture-based central processing unit. 3. The router of claim 1 , wherein the network processing unit-based line card comprises a merchant silicon network processing unit. 4. The router of claim 1 , wherein the forwarding table comprises entries for a full set of Internet destinations. 5. The router of claim 1 , wherein the forwarding table comprises greater than 500,000 entries. 6. The router of claim 1 , wherein the network processing unit-based line card has a capacity of less than 500,000 entries for the partial forwarding table. 7. The router of claim 1 , wherein the network processing unit-based line card routes the packet at a wire speed when the packet matches the entry in the partial forwarding table. 8. The router of claim 7 , wherein the wire speed is at least 100 gigabits per second. 9. The router of claim 1 , wherein the central processing unit-based line card routes the packet at less than a wire speed when the packet is forwarded to the central processing unit-based line card. 10. The router of claim 9 , wherein the wire speed is at least 100 gigabits per second. 11. The router of claim 1 , wherein the central processing unit-based line card is one of a plurality of central processing unit-based line cards of the router, and wherein the network processing unit-based line card is one of a plurality of network processing unit-based line cards of the router. 12. The router of claim 11 , wherein the plurality of network processing unit-based line cards comprises two network processing unit-based line cards, and wherein the plurality of central processing unit-based line cards comprises greater than ten central processing unit-based line cards. 13. The router of claim 11 , wherein the plurality of central processing unit-based line cards comprises virtual machines hosted on at least one server. 14. The router of claim 13 , wherein the route controller is further for adjusting a number of central processing unit-based line cards of the plurality of central processing unit-based line cards in response to a utilization level of the router. 15. The router of claim 11 , wherein the route controller is further for reconfiguring the network processing unit-based line card to forward a further packet to a different central processing unit-based line card of the plurality of central processing unit-based line cards when there is no matching entry in the partial forwarding table of the network processing unit-based line card for the additional packet. 16. The router of claim 1 , wherein the network processing unit-based line card is further for: counting utilizations of the second set of entries in the partial forwarding table of the network processing unit-based line card; and reporting to the route controller the utilizations of the second set of entries in the partial forwarding table of the network processing unit-based line card. 17. The router of claim 16 , wherein the central processing unit-based line card is for: counting utilizations of the first set of entries in the forwarding table of the central processing unit-based line card; and reporting to the route controller the utilizations of the first set of entries in the forwarding table of the central processing unit-based line card. 18. The router of claim 1 , wherein the router comprises a provider edge router of a telecommunication service provider network. 19. A method comprising: receiving, by a processor, utilizations of a first set of entries in a forwarding table of a central processing unit-based line card of a router; receiving, by the processor, utilizations of a second set of entries in a partial forwarding table of a network processing unit-based line card of the router, wherein the second set of entries comprises a subset of the first set of entries, wherein the second set of entries comprises entries that are most utilized by a plurality of line cards of the router, the plurality of line cards including the central processing unit-based line card and the network processing unit-based line card, wherein the central processing unit-based line card and the network processing unit-based line card are distinct physical devices, wherein the network processing unit-based line card is configured to forward a packet received at the router to a destination when an entry in the partial forwarding table of the network processing unit-based line card matches the packet and to transfer the packet to the central processing unit-based line card to allow the central processing unit-based line card to forward the packet to the destination using the forwarding table of the central processing unit-based line card when there is no entry in the partial forwarding table of the network processing unit-based line card that matches the packet; and updating, by the processor, the second set of entries in the partial forwarding table to comprise the entries that are the most utilized by the plurality of line cards of the router. 20. A device comprising: a processor; and a computer-readable medium storing instructions which, when executed by the processor, cause the processor to perform operations, the operations comprising: receiving utilizations of a first set of entries in a forwarding table of a central processing unit-based line card of a router; receiving utilizations of a second set of entries in a partial forwarding table of a network processing unit-based line card of the router, wherein the second set of entries comprises a subset of the first set of entries, wherein the second set of entries comprises entries that are most utilized by a plurality of line cards of the router, the plurality of line cards including the central processing unit-based line card and the network processing unit-based line card, wherein the central processing unit-based line card and the network processing unit-based line card are distinct physical devices, wherein the network proc
Address table lookup; Address filtering · CPC title
Route cache; Operation thereof · CPC title
Router architectures · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.