Packet Forwarding via Multi-Bit Decision Diagrams

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current tools for managing complex computer networks lack the ability to predict and efficiently store and access packet-forwarding rules, leading to inefficiencies in data traffic management and flow behavior analysis.

Innovation Solution

A novel data structure that uses multi-bit bit patterns to reduce the number of nodes required for implementing set operations between equivalence classes and packet sets, enabling more compact storage and faster access to packet-forwarding rules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional binary decision trees are used to store packet-forwarding rules, then the rules can be stored, but significant overhead is incurred due to considering each bit as a separate variable with an associated decision node

Engineering Contradiction:
Improvestorage capabilityVSAvoiddata structure overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple adjacent bits into a single multi-bit variable. Instead of creating separate decision nodes for each bit position, the invention combines groups of bits (e.g., 4 bits) into one variable that is evaluated as a unit. This merging reduces the total number of decision nodes from potentially hundreds (one per bit) to a manageable number (one per multi-bit group), directly resolving the overhead problem while maintaining complete storage capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent transitions from a one-bit-at-a-time decision approach to a multi-dimensional approach where multiple bit positions are collapsed into single variables representing larger units. By changing the dimensionality of the decision variables from individual bits to multi-bit groups, the data structure achieves more compact representation without losing the ability to distinguish between different packet-forwarding rule conditions.

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

2Manufacturing precision

If each bit of IP or MAC address is considered a variable with an associated decision node, then complete packet-forwarding rules can be represented, but the number of nodes increases significantly

Engineering Contradiction:
Improverule representation accuracyVSAvoidnumber of decision nodes
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent merges multiple adjacent bits into a single multi-bit variable. Instead of creating separate decision nodes for each bit position, the invention combines groups of bits (e.g., 4 bits) into one variable that is evaluated as a unit. This merging reduces the total number of decision nodes from potentially hundreds (one per bit) to a manageable number (one per multi-bit group), directly resolving the overhead problem while maintaining complete storage capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates multi-bit variables that serve multiple functions simultaneously. Each multi-bit variable represents multiple bit positions and can capture multiple patterns of interest. This multi-functionality allows a single decision node to perform what would otherwise require multiple separate nodes, reducing overall structure complexity while preserving rule representation accuracy.

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

3Quantity of substance

If hypercubes, bit vectors, or binary decision trees are used to store large numbers of packet-forwarding rules, then storage is possible, but access speed and efficiency become problematic due to high dimensionality

Engineering Contradiction:
Improvenumber of rules storedVSAvoidaccess speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent merges multiple adjacent bits into a single multi-bit variable. Instead of creating separate decision nodes for each bit position, the invention combines groups of bits (e.g., 4 bits) into one variable that is evaluated as a unit. This merging reduces the total number of decision nodes from potentially hundreds (one per bit) to a manageable number (one per multi-bit group), directly resolving the overhead problem while maintaining complete storage capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent segments the high-dimensional bit space into manageable multi-bit groups. By dividing the address space into segments of multiple bits and treating each segment as a discrete variable, the invention creates a hierarchical structure that is more efficient for traversal. This segmentation allows the system to handle large numbers of rules by organizing them into fewer, more manageable decision layers.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11184282B1Packet forwarding in a network device
Publication Date: 2021.11.23 VMWARE INC
  • US11184282B1 patent drawing
  • US11184282B1 patent drawing
  • US11184282B1 patent drawing

AI summary

An example method of packet forwarding for a packet set in a network device includes: selecting a first bit pattern of multiple adjacent bits from a bit string that represents an input packet set; selecting a second bit pattern of multiple adjacent bits from a first node of a data structure that implements a prefix-compressed decision diagram representing a first class of packets; performing a comparison of the first bit pattern to the second bit pattern; generating an output packet set, which is a subset of the input packet set, in response to the first bit pattern matching the second bit pattern; and applying a network forwarding action to the output packet set, the network forwarding action associated with the prefix-compressed decision diagram and dictating packet forwarding behavior of the network device with respect to the output packet set.