Unified Packet Buffer Memory Allocation for Network Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-speed packet networks face buffer overflow issues due to delays in flow-control messages, leading to packet drops, and existing solutions limit flexibility in responding to varying network traffic patterns and system requirements by separating headroom and shared buffer memories.

Innovation Solution

A single memory array is used for both headroom and shared buffer spaces, with control logic dynamically allocating memory and tracking packet occupancy to apply flow-control operations, allowing direct transfer of packets from headroom to egress ports without copying, thereby simplifying queue handling and enhancing flexibility in memory allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate headroom and shared buffer memories are used, then buffer overflow protection is provided, but device complexity increases and flexibility decreases

Engineering Contradiction:
Improvebuffer overflow protectionVSAvoidmemory structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges separate headroom memory and shared buffer memory into a single unified memory structure. This single memory serves both functions: it provides headroom protection against buffer overflow while also acting as the shared buffer for packet data. The merging eliminates the need for separate memory allocations and complex management logic, thereby reducing device complexity while maintaining reliability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single memory structure is designed to perform multiple functions simultaneously. It acts as both the headroom buffer for flow control operations and the shared buffer for packet data storage and transmission. This multi-functionality approach allows the same memory resource to serve different purposes, reducing overall memory requirements and simplifying the system architecture.

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

2Device complexity

If static buffer allocation is used, then memory management is simplified, but adaptability to varying traffic patterns decreases

Engineering Contradiction:
Improvememory management complexityVSAvoidtraffic pattern adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic buffer allocation within the single memory structure. Instead of static allocation, the buffer space is dynamically adjusted based on real-time traffic conditions, queue lengths, and flow control requirements. This allows the system to adapt to varying traffic patterns while maintaining simplified memory management through a unified allocation mechanism.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes buffer allocation parameters dynamically based on network conditions. The single memory structure allows flexible adjustment of buffer sizes, thresholds, and allocation ratios without requiring complex reconfiguration of separate memory blocks. This parameter flexibility enables adaptation to different traffic patterns while keeping management logic relatively simple.

Inventive Principle:
Principle #35Parameter changes

3Stability of the object's composition

If copying packets between headroom and shared buffer is required, then memory isolation is maintained, but processing time increases

Engineering Contradiction:
Improvememory isolationVSAvoidpacket processing time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

By merging headroom and shared buffer into a single memory structure, the patent eliminates the need for packet copying between separate memory regions. Packets can be directly allocated and managed within the unified memory space, removing the copy operation entirely. This maintains logical memory isolation through software management while achieving physical efficiency.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent extracts the unnecessary copying operation from the packet processing pipeline. By redesigning the memory architecture to eliminate separate headroom and buffer regions, the system removes the copy step that previously existed between these regions, thereby reducing processing time without compromising memory management integrity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10069701B2Flexible allocation of packet buffers
Publication Date: 2018.09.04 MELLANOX TECHNOLOGIES LTD(IL)
  • US10069701B2 patent drawing
  • US10069701B2 patent drawing
  • US10069701B2 patent drawing

AI summary

Communication apparatus includes multiple ports configured to serve as ingress ports and egress ports for connection to a packet data network. A single memory array is coupled to the ports and configured to contain both a respective headroom allocation for each ingress port and a shared buffer holding data packets for transmission in multiple queues via the egress ports. Control logic is configured to adjustably allocate to each ingress port a respective volume of memory within the single memory array to serve as the respective headroom allocation, and to queue the data packets in the multiple queues in the single memory array for transmission through the egress ports.