Network Buffer Segmentation for Credit Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network nodes face inefficiencies in buffer space utilization and buffer overflow due to handling frames of different sizes, leading to dropped frames and performance issues, especially in longer network links.

Innovation Solution

A method and buffer structure that dynamically determine the storage space for incoming frames based on size, using a first memory space for single-frame storage and a second space for multiple-frame storage, with the option to bypass receive port processing and route frames through an in-line credit extender for efficient credit management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single uniform receive buffer slot size is used for all frames, then the buffer structure is simple, but buffer space utilization becomes inefficient

Engineering Contradiction:
Improvebuffer structureVSAvoidbuffer space utilization
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The receive buffer is divided into two separate storage spaces: a first storage space with slots sized for maximum length frames, and a second storage space with slots sized for shorter frames. This segmentation allows each space to optimize for its specific frame type, improving overall buffer utilization while maintaining manageable complexity through structured organization.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the receive buffer is filled with short frames during processing of a large frame, then buffer overflow occurs, but using a larger buffer increases memory usage

Engineering Contradiction:
Improvebuffer overflow preventionVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

By segmenting the buffer into two specialized storage spaces, the system prevents buffer overflow without requiring a uniformly large buffer. The first storage space handles maximum length frames while the second handles shorter frames, allowing efficient packing and reducing the total memory required while preventing overflow conditions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each storage space is optimized with slot sizes appropriate for its intended frame type. The first storage space uses larger slots for maximum length frames, while the second uses smaller slots for shorter frames. This local optimization prevents overflow in each segment while minimizing overall memory consumption.

Inventive Principle:
Principle #3Local quality

3Reliability

If credit indication is delayed until frame processing is complete, then processing accuracy is maintained, but network performance deteriorates

Engineering Contradiction:
Improveprocessing accuracyVSAvoidnetwork performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system sends credit indication signals to the transmitting node as frames are stored in the receive buffer, before complete processing is finished. This preliminary credit notification allows the transmitting node to continue sending frames without waiting for full processing completion, improving network throughput while maintaining processing accuracy through the structured buffer management.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7609710B1Method and system for credit management in a networking system
Publication Date: 2009.10.27 MARVELL ASIA PTE LTD
  • US7609710B1 patent drawing
  • US7609710B1 patent drawing
  • US7609710B1 patent drawing

AI summary

A method for credit management in a network system is provided. The method comprises receiving an incoming frame at a receive port of a network device; determining a frame length of the incoming frame; based on the frame length, determining whether to store the frame in a first memory storage space or a second memory storage space, wherein the first memory storage space includes a plurality of slots and each of the plurality of slots can store only one frame regardless of frame size; and the second memory storage space includes a plurality of slots and each of the plurality of slots can store more than one frame; and if the incoming frame is stored in the second memory storage space, transmitting a signal immediately to another port indicating that credit is available.