Flexible Lookup Keys in Software-Defined Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional router designs face challenges in supporting flexible lookup keys and dynamic table creation in software-defined networks, particularly with OpenFlow protocols, as they are not designed to accommodate runtime changes in table structures and combinations of match fields.

Innovation Solution

A network device with a parse module to generate superkeys from packet header field values, a lookup module to identify superkey mask and offset values, and a packet action module to perform lookups in flexible lookup tables, allowing for dynamic key generation and table updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional router designs are used to maintain fast forwarding performance, then forwarding speed is improved, but flexibility in supporting dynamic lookup keys and table creation is worsened

Engineering Contradiction:
Improveforwarding speedVSAvoidflexibility in lookup key support
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic lookup tables where the set of match fields (lookup keys) can be modified at runtime through controller instructions. The forwarding element maintains a configurable mapping between packet header fields and lookup table keys, allowing the system to adapt its forwarding behavior dynamically without hardware reconfiguration, thus achieving both speed and flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system allows changing the parameters of lookup tables by modifying which packet header fields are used as match keys. The controller can instruct the forwarding element to create, delete, or modify lookup tables with different combinations of match fields (e.g., changing from destination IP only to include source IP, protocol, or port numbers), enabling flexible adaptation to different networking requirements while maintaining fast forwarding.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If forwarding elements support a wide variety of lookup key combinations for SDN protocols, then adaptability is improved, but device complexity is worsened

Engineering Contradiction:
Improvesupport for SDN protocolsVSAvoidforwarding element complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal lookup table structure that can accommodate any combination of packet header fields as match keys. The forwarding element uses a configurable mapping mechanism that works with all SDN protocols (OpenFlow, NetConf, etc.) through a common interface, allowing a single device to perform multiple protocol-specific functions without requiring separate specialized hardware for each protocol.

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

Solution Approach 2:

The controller acts as an intermediary between the SDN protocol specifications and the forwarding element implementation. It translates protocol-specific requirements into standardized instructions for creating and configuring lookup tables, thereby simplifying the forwarding element's complexity while maintaining broad protocol support. The controller handles the complexity of protocol interpretation and generates unified configuration commands.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If lookup tables are created and modified at runtime based on controller instructions, then flexibility is improved, but processing overhead is worsened

Engineering Contradiction:
Improvedynamic table creationVSAvoidconfiguration time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The forwarding element pre-allocates and prepares the structural framework of lookup tables in advance, including the data structures and processing pipelines needed for various match field combinations. When the controller requests dynamic table creation or modification, the forwarding element can quickly activate pre-prepared configurations rather than building tables from scratch, significantly reducing the time penalty associated with runtime table management.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3085033B1Method, apparatus, and system for supporting flexible lookup keys in software-defined networks
Publication Date: 2019.05.01 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP3085033B1 patent drawingFigure 1
  • EP3085033B1 patent drawingFigure 2
  • EP3085033B1 patent drawingFigure 3

AI summary

A method is described in a network element for supporting flexible lookup keys in a software-defined network. The method includes receiving a packet to be forwarded and determining a next hop for the packet, which includes parsing the packet to identify a superkey comprising a plurality of header field values of the packet; identifying a superkey mask value and a superkey offset value for a first lookup table of a set of one or more lookup tables; generating a table key for the first lookup table based upon the superkey mask value, the superkey offset value, and the superkey; and performing a lookup in the first lookup table using the table key. The lookup identifies an entry of the first lookup table indicating the next hop for the packet. The packet may then be forwarded to the next hop.