Mirror Buffer for Flexible Packet Processing in SDN Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hardware switches in Software Defined Networking (SDN) are inflexible and inefficient due to their limited ability to process a fixed set of packet fields and actions, which hinders the effective implementation of the match-action paradigm.

Innovation Solution

The introduction of temporary storages, or mirror buffers, outside the standard packet processing pipeline, which allow for the copying and re-insertion of packet copies into the forwarding element pipeline, enabling flexible packet processing and monitoring by storing specific portions of packets and appending metadata for traffic monitoring.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If hardware switches process only a fixed set of fields with limited packet processing actions, then device complexity is reduced and manufacturing is easier, but adaptability and versatility of packet processing are limited

Engineering Contradiction:
Improvepacket processing flexibilityVSAvoidswitch architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a mirror buffer as an intermediary component between the packet processing pipeline and monitoring functions. This mirror buffer receives packet copies from the main processing flow and enables monitoring operations without requiring the main switch architecture to be redesigned for each monitoring requirement, thus improving adaptability while maintaining manageable complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the packet processing function by separating the main forwarding pipeline from the monitoring function. The mirror buffer acts as a dedicated segment for monitoring operations, allowing independent optimization of each function. This segmentation enables the main switch to maintain its simple fixed-set processing while adding versatile monitoring capabilities through the separate mirror buffer component

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If packet copies are stored in temporary storage for later re-insertion into the forwarding element pipeline, then traffic monitoring capability is improved, but device complexity and memory requirements increase

Engineering Contradiction:
Improvetraffic monitoring capabilityVSAvoidmemory storage requirements
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary portion of packet data (headers and relevant fields) into the mirror buffer rather than storing complete packet copies. This extraction approach provides sufficient data for traffic monitoring and analysis while significantly reducing the memory storage requirements compared to storing entire packets

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The mirror buffer implements partial action by storing only a subset of packet data (specific headers and fields) rather than complete packets. This partial storage approach provides adequate information for monitoring purposes while avoiding the excessive memory consumption that would result from storing full packet copies

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If packet copies are re-inserted into the forwarding element pipeline with additional metadata, then monitoring precision and information quality are improved, but processing time and device complexity increase

Engineering Contradiction:
Improvemonitoring information qualityVSAvoidpacket processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating and attaching metadata to packet copies while they are being stored in the mirror buffer, before these copies are re-inserted into the forwarding element pipeline. This preliminary preparation of monitoring data eliminates the need for time-consuming metadata generation during the critical packet forwarding path, thus improving monitoring information quality without significantly increasing overall processing time

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11019172B2Storing packet data in mirror buffer
Publication Date: 2021.05.25 BAREFOOT NETWORKS INC
  • US11019172B2 patent drawing
  • US11019172B2 patent drawing
  • US11019172B2 patent drawing

AI summary

Some embodiments provide a method for a hardware forwarding element. Based on a set of characteristics of a packet, the method determines to copy a packet to a particular temporary storage of a set of temporary storages of the hardware forwarding element. Based on a property of the particular temporary storage, the method stores only a particular portion of the packet in the particular temporary storage. A same size portion of each packet copied to the particular temporary storage is stored in the particular temporary storage.