Hybrid Port Range Encoding for Router Filter Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional routers face inefficiencies in storing and processing filter criteria, particularly when dealing with port ranges, which leads to increased resource usage and reduced performance as the number of subscribers and port ranges increases.

Innovation Solution

The technique encodes port ranges using a combination of identifiers for frequently occurring ranges and index values for dynamically learned ranges, allowing for efficient storage and retrieval through associative data structures and tree-structured representations, reducing the number of encoded values required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional routers store all port ranges individually in filtering rules, then filtering accuracy is maintained, but memory resources and processing time increase significantly as the number of subscribers and port ranges grows

Engineering Contradiction:
Improvefiltering accuracyVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple individual port range entries into consolidated ranges. Instead of storing each port range separately, the system combines adjacent or overlapping port ranges into single entries, reducing the total number of stored filtering rules while maintaining the same filtering accuracy.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system dynamically learns and adapts port range patterns from observed traffic. By monitoring frequently accessed port ranges, the system automatically identifies and consolidates these into compressed representations, allowing the filtering structure to evolve and optimize itself based on actual usage patterns.

Inventive Principle:
Principle #15Dynamics

2Reliability

If conventional routers store all port ranges individually in filtering rules, then complete port range coverage is maintained, but processing speed and performance decrease as data structures grow larger

Engineering Contradiction:
Improveport range coverageVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By merging multiple individual port range specifications into consolidated range entries, the system reduces the total number of comparisons required during packet filtering. This consolidation maintains complete port range coverage while significantly improving processing speed by reducing the size of data structures that must be searched.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary consolidation of port ranges during rule installation and updates, rather than processing individual ranges during packet filtering. This pre-processing step creates optimized data structures that enable faster lookup and matching operations during actual packet processing.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If routers apply interface-specific filters to each packet flow, then filtering precision is improved, but the complexity of filter management and resource consumption increase

Engineering Contradiction:
Improvefiltering precisionVSAvoidfilter management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent creates a universal port range compression mechanism that can be applied across all interfaces and filtering contexts. The same consolidation algorithms and data structures are used regardless of interface or filter type, simplifying management while maintaining the precision benefits of interface-specific filtering.

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

Data Source

PatentUS8576841B2Hybrid port range encoding
Publication Date: 2013.11.05 JUNIPER NETWORKS INC
  • US8576841B2 patent drawing
  • US8576841B2 patent drawing
  • US8576841B2 patent drawing

AI summary

In general, techniques are described for encoding port ranges. In one example, a method includes generating an encoded value that represents a specified port range including a first element storing an identifier that identifies a frequently occurring port range stored in an associative data structure of most frequently occurring port ranges, a second element storing an index that represents a dynamically-learned port range specifying at least a part of the specified port range, the dynamically-learned port range represented in a tree-structure of dynamically-learned port ranges and identified by the index, and applying, by a forwarding plane of the computing device, one or more filters associated with the encoded value to a packet that specifies a port included in the specified port range.