Shared Buffer Allocation for Virtual Links in High-Rate Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing communication networks face challenges in efficiently managing and configuring buffers for multiple virtual links over a single physical link, particularly in high-rate long-haul links, where the required buffer size increases significantly, limiting the number of virtual links that can be supported without compromising memory usage.

Innovation Solution

The implementation of a system that allocates a shared buffer and dedicated buffers for each virtual link, with credit-based flow control, allowing the sender node to decide whether to buffer packets in the shared or dedicated buffer based on available space, and signaling this decision to the receiver node, thereby optimizing buffer usage and supporting a large number of virtual links over long-haul links.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dedicated buffers are allocated for each virtual link, then buffer management is simplified and reliability is improved, but memory usage increases significantly

Engineering Contradiction:
Improvebuffer management reliabilityVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The buffer memory is segmented into multiple regions, with each region associated with a specific virtual link. This allows the system to maintain dedicated buffer regions for reliability while sharing the overall memory structure, thus reducing total memory usage compared to fully dedicated buffers for each virtual link.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The buffer regions are designed to be multi-functional, where each region can serve its associated virtual link while also being part of a shared memory structure that can be dynamically allocated. This universal design allows the same memory infrastructure to support multiple virtual links efficiently.

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

2Quantity of substance

If a shared buffer is used for multiple virtual links, then memory usage is reduced, but buffer management complexity increases

Engineering Contradiction:
Improvememory usageVSAvoidbuffer management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The buffer allocation is made dynamic rather than static. The buffer manager can dynamically allocate and deallocate buffer regions to different virtual links based on current traffic demands and link states. This dynamic approach simplifies management by allowing the system to adapt automatically rather than requiring complex static configuration for all possible scenarios.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms where buffer usage statistics and link performance metrics are continuously monitored. This feedback information is used by the buffer manager to make intelligent allocation decisions, automatically adjusting buffer distribution to optimize performance without requiring manual intervention or complex predefined rules.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If buffer size is increased to support more virtual links over long-haul links, then communication capability is improved, but device cost and complexity increase

Engineering Contradiction:
Improvevirtual link support capabilityVSAvoidbuffer configuration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Instead of increasing buffer size in a single dimension (more memory), the system introduces a new dimension of virtualization by creating multiple buffer regions that can be logically divided and assigned to different virtual links. This dimensional approach allows the same physical memory to support more virtual links through logical partitioning rather than physical expansion.

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

Solution Approach 2:

The system changes key parameters such as buffer region size, allocation policies, and association rules to optimize performance for different numbers and types of virtual links. By adjusting these parameters dynamically, the system can adapt to various configurations without requiring fundamentally different hardware designs or complex fixed architectures.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8989011B2Communication over multiple virtual lanes using a shared buffer
Publication Date: 2015.03.24 MELLANOX TECHNOLOGIES LTD(IL)
  • US8989011B2 patent drawing
  • US8989011B2 patent drawing
  • US8989011B2 patent drawing

AI summary

A method for communication includes, in a sender node that sends packets to a receiver node over a physical link, making a decision, for a packet that is associated with a respective virtual link selected from among multiple virtual links, whether the receiver node is to buffer the packet in a dedicated buffer assigned to the respective virtual link or in a shared buffer that is shared among the multiple virtual links. The packet is sent, and the decision is signaled, from the sender node to the receiver node.