Patent ID: 10212082

Abstract:
In one embodiment, packets are forwarded in a network based on lookup results in a content-addressable memory that includes multiple blocks of content-addressable memory entries, with the relative priority of these blocks typically determined on a per search basis. In one embodiment, the content-addressable memory blocks perform lookup operations based on a search key resulting in a lookup results. The result determiner determines an overall highest-priority content-addressable memory lookup result based on ordering the lookup results according to a dynamic priority ordering (e.g., retrieved from storage) among the content-addressable memory blocks. One embodiment allows multiple searches to occur simultaneously among the content-addressable memory blocks by selectively performing lookup operations on multiple search keys. One embodiment weights such lookup operations to initially assign search keys to content-addressable memory block(s) with a corresponding higher-priority, and if a match is found, other content-addressable memory block(s) will not need to be searched.