Bloom Filter Lookup for Variable Prefix Lengths

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network devices face performance penalties when handling large sets of prefix lengths due to hardware or software constraints, as they are limited in the number of prefix lengths that can be evaluated concurrently, leading to increased processing time and power usage.

Innovation Solution

The technique involves grouping prefix lengths into multiple groups, each containing no more than the maximum number of prefix lengths supported by the hardware or software, allowing the network device to iterate through these groups until a match is found or all groups have been searched, thereby reducing the number of prefixes that need to be searched and processed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the network device evaluates multiple different prefix lengths concurrently to improve search speed, then the lookup performance is improved, but the hardware or software constraints limit the number of prefix lengths that can be evaluated in parallel

Engineering Contradiction:
Improvelookup performanceVSAvoidhardware/software constraints
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the set of prefix lengths into multiple groups, where each group contains no more than the maximum number of prefix lengths that can be evaluated in parallel. This segmentation allows the system to manage prefix length evaluation in manageable chunks while maintaining high throughput by processing multiple groups concurrently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by organizing prefix lengths into groups rather than treating them as a single flat list. This dimensional reorganization enables the system to exceed the parallel evaluation limit by distributing prefix length evaluation across multiple groups that can be processed in parallel, effectively increasing the total number of prefix lengths that can be evaluated concurrently.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If the network device supports a large set of prefix lengths, then the adaptability is improved, but the processing time and power usage increase

Engineering Contradiction:
Improvesupport for prefix lengthsVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the large set of prefix lengths into multiple smaller groups, each manageable by the hardware. This segmentation maintains the ability to support extensive prefix length sets while reducing processing time by limiting the number of prefixes evaluated in each parallel iteration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs partial action by evaluating only the necessary number of prefix lengths from each group in parallel, rather than evaluating all possible prefix lengths simultaneously. This partial evaluation approach reduces processing time and power consumption while still providing comprehensive coverage across multiple groups.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If the network device iterates through multiple groups of prefix lengths, then the number of prefixes to search is reduced, but the complexity of managing multiple groups increases

Engineering Contradiction:
Improvenumber of prefixes searchedVSAvoidmanagement of multiple groups
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments prefix lengths into groups that are easy to manage and iterate through. Each group is independently manageable, allowing the system to simplify the complexity of handling large prefix sets by breaking them down into smaller, organized units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal group structure that can accommodate any number of prefix lengths while maintaining consistent management procedures. This universal approach simplifies complexity by providing a standardized method for handling prefix length groups regardless of their size or content.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP2640021B1Longest prefix match searches with variable numbers of prefixes
Publication Date: 2019.06.19 JUNIPER NETWORKS INC
  • EP2640021B1 patent drawingFigure 1
  • EP2640021B1 patent drawingFigure 2
  • EP2640021B1 patent drawingFigure 3

AI summary

An example network device includes a control plane and a filter lookup module that includes a Bloom filter that supports parallel lookup of a maximum number of different prefix lengths. The filter lookup module accesses the Bloom filter to determine a longest length prefix that matches an entry in a set of prefixes. The control plane receives prefix lengths that include more than the maximum number of different prefix lengths supported by the Bloom filter, wherein the set of prefix lengths is associated with one application, generates, based on the received set of prefix lengths, two or more groups of different prefix lengths, wherein each of the two or more groups of different prefix lengths includes no more than the maximum number of different prefix lengths, and programs the filter lookup module with the two or more groups of different prefix lengths associated with the one application.