Aggregation Tree for Packet Forwarding Rule Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing packet forwarding systems face issues with increased memory capacity and time-consuming processing due to a large number of information entries in forwarding nodes, which degrades packet forwarding capability and complicates management during network topology changes or malfunctions.

Innovation Solution

A packet forwarding system utilizing an aggregation tree structure to reduce the number of processing rules by forming shorter matching keys, where policies are registered in nodes of the tree based on ad-hoc matching keys, allowing for efficient packet processing and rule aggregation, and dynamically managing flow entries to avoid conflicts with pre-existing policies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of information entries in forwarding nodes is increased, then the packet processing capability is improved, but the memory capacity requirement increases and processing time becomes longer

Engineering Contradiction:
Improvepacket processing capabilityVSAvoidmemory capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent aggregates multiple flow entries that share common prefix characteristics into a single consolidated entry. By merging entries with similar matching key patterns (e.g., entries matching 10.0.0.0/8, 10.1.0.0/16, 10.1.1.0/24 are aggregated under a common parent entry), the system reduces the total number of entries stored in forwarding nodes while maintaining the ability to process packets efficiently through hierarchical matching.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a hierarchical dimension to the flow entry structure by organizing entries in a tree-like hierarchy with parent-child relationships. Instead of storing all entries at the same level, the system creates multiple levels of aggregation where parent entries represent broader network ranges and child entries represent more specific subnets. This dimensional reorganization allows the forwarding node to traverse the hierarchy and find matching entries more efficiently.

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

2Productivity

If the number of information entries in forwarding nodes is increased, then the packet processing capability is improved, but the processing time becomes longer

Engineering Contradiction:
Improvepacket processing capabilityVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By consolidating multiple flow entries into aggregated parent entries, the system reduces the total number of entries that need to be searched during packet processing. When a packet arrives, the forwarding node performs hierarchical matching that traverses fewer levels compared to searching through a flat list of all individual entries, thereby reducing processing time while maintaining comprehensive packet handling capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs aggregation of flow entries in advance during the control plane processing phase, before packets need to be forwarded. The control device pre-computes the hierarchical structure and identifies parent-child relationships between entries, organizing them into an optimized format that can be quickly consulted by forwarding nodes during real-time packet processing, thus avoiding the need for complex real-time computations.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the flow entries are increased, then the network control flexibility is improved, but the management complexity during network topology changes increases

Engineering Contradiction:
Improvenetwork control flexibilityVSAvoidmanagement complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The hierarchical aggregation structure naturally groups related flow entries together, making it easier to manage and update entries during network topology changes. When a network change occurs, the control device can identify affected entries and their hierarchical relationships, allowing for bulk updates or selective modifications without manually managing each individual entry, thus reducing management complexity while maintaining network flexibility.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The aggregated parent entries serve multiple functions: they act as matching entries for packets that fall within the broader network range, serve as organizational containers for child entries, and provide a simplified representation for routing decisions. This multi-functionality reduces the management burden by allowing a single parent entry to represent multiple specific subnets without requiring separate management actions for each child entry in many scenarios.

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

Data Source

PatentUS9203743B2Packet forwarding system, control device, forwarding device and method and program for preparing processing rules
Publication Date: 2015.12.01 NEC CORP
  • US9203743B2 patent drawing
  • US9203743B2 patent drawing
  • US9203743B2 patent drawing

AI summary

In a method and a configuration for forming a processing rule, number of entries for packet processing, maintained by a forwarding node, may be decreased. The processing rule includes processing contents and information to become a matching key to identify a packet to be applied with the processing contents. An aggregation tree is used which has a depth corresponding to a length of information that becomes matching key in the processing rule. A plurality of nodes branched from a root of the aggregation tree and levels of nodes represent value of the matching key and mask length, respectively. The processing rule or the policy is registrable in each of the individual nodes. The policy is registered in a relevant node of the aggregation tree. For each received packet, processing contents and ad-hoc matching key to identify the packet to be applied with the processing contents are determined by having reference to the policy. Then, based on the ad-hoc matching key, the aggregation tree is traced from its root downwards to find a node beyond which along the depth of the tree there is no policy registered. The processing rule having the node as the matching key is then formed.