Dynamic Priority Content-Addressable Memory Blocks for Packet Forwarding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current packet switching technologies using content-addressable memories face inefficiencies in determining packet forwarding due to the need to search multiple blocks, leading to increased power consumption and heat generation, as well as the inability to efficiently perform multiple lookup operations simultaneously.

Innovation Solution

Implementing dynamic priority assignment among content-addressable memory blocks, where lookup operations are weighted to initially search higher-priority blocks, reducing unnecessary searches and allowing parallel operations by dynamically assigning priorities based on search keys and profiles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple content-addressable memory blocks are searched to determine packet forwarding, then lookup accuracy is improved, but power consumption increases

Engineering Contradiction:
Improvelookup accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies dynamics by making the priority assignment of content-addressable memory blocks dynamic rather than static. The priority can be changed based on different search keys and profiles, allowing the system to adaptively select which blocks to search first, thereby reducing unnecessary searches and power consumption while maintaining lookup accuracy.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of block priority assignment from fixed to variable. By allowing priority parameters to change based on search patterns and profiles, the system can optimize the search sequence for different types of lookups, improving energy efficiency without compromising the accuracy of packet forwarding decisions.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If multiple content-addressable memory blocks are searched sequentially, then lookup accuracy is improved, but search time increases

Engineering Contradiction:
Improvelookup accuracyVSAvoidsearch time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The dynamic priority assignment allows the system to adaptively determine the optimal search sequence based on the search key and profile. This reduces the average search time by prioritizing blocks that are more likely to contain the desired information, while still ensuring that all necessary blocks are searched if needed to maintain lookup accuracy.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary action by pre-assigning priorities to content-addressable memory blocks based on profiles and search patterns. This preliminary organization allows the most promising blocks to be searched first, reducing the average search time while ensuring that accurate lookup results are still obtained by searching all relevant blocks if necessary.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If dynamic priority assignment is implemented, then search efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvesearch efficiencyVSAvoidcontrol logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the control of priority assignment into manageable components: profiles that define priority schemes, search keys that trigger specific profiles, and priority assignment logic that maps between them. This segmentation makes the dynamic priority system more manageable and less complex than a fully arbitrary dynamic system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses profiles as an intermediary between search keys and priority assignments. Rather than directly complex logic mapping every search key to priority configurations, the profile acts as a mediator that simplifies the control structure, making the system easier to manage while still achieving dynamic priority optimization for search efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10212082B2Dynamic priority of content-addressable memory blocks used in determining a highest-priority matching entry
Publication Date: 2019.02.19 CISCO TECHNOLOGY INC
  • US10212082B2 patent drawing
  • US10212082B2 patent drawing
  • US10212082B2 patent drawing

AI summary

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.