Configurable Receive Packet Queues for Network Switch Buffer Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fixed numbers of receive queues with fixed sizes in network switches lead to inefficient use of receive buffers, as they do not adapt to varying configurations and link requirements.

Innovation Solution

A method for configuring receive packet queues in network devices, which involves determining the number of sub-ports, assigning memory based on sub-port configurations, and dividing queues according to the flow control scheme, allowing for dynamic adjustment of queue sizes and configurations based on port settings and link protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If fixed numbers of receive queues with fixed sizes are used, then device complexity is reduced, but buffer efficiency deteriorates

Engineering Contradiction:
Improvequeue configuration complexityVSAvoidbuffer efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic receive queue configuration where the number of receive queues and their sizes are programmably adjusted based on port configuration, link rate, and protocol requirements. This allows the system to adapt buffer allocation to actual operational needs rather than using fixed predetermined values.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the parameters of receive queue configuration by allowing programmable adjustment of queue count and queue sizes based on operational conditions. The system can modify these parameters dynamically according to link rate and protocol requirements, transforming a static configuration into a flexible, adaptive system.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If fixed receive queue sizes are used, then ease of manufacture is improved, but adaptability deteriorates

Engineering Contradiction:
Improvequeue configuration simplicityVSAvoidconfiguration adaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system transitions from static fixed queue sizes to dynamic programmable queue sizes that can be adjusted based on port configuration, link rate, and protocol requirements, enabling the same hardware to efficiently handle diverse network conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The receive buffer system is designed to serve multiple functions and configurations through a single programmable interface. The same buffer infrastructure can be configured for different link rates and protocols by adjusting queue parameters, eliminating the need for separate fixed configurations for each scenario.

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

3Device complexity

If fixed number of receive queues is used, then device complexity is reduced, but bandwidth utilization deteriorates

Engineering Contradiction:
Improvequeue management complexityVSAvoidbandwidth utilization efficiency
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

The invention dynamically adjusts the number of receive queues and their individual sizes based on operational parameters such as link rate and protocol requirements. This parameter change enables optimal bandwidth utilization by allocating buffer resources according to actual traffic patterns and link capabilities.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system incorporates feedback mechanisms where operational data about link rate and protocol usage informs the queue configuration decisions. This feedback loop allows the system to continuously optimize buffer allocation to maximize bandwidth utilization efficiency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9282000B1Network devices having configurable receive packet queues and related methods
Publication Date: 2016.03.08 MARVELL ASIA PTE LTD
  • US9282000B1 patent drawing
  • US9282000B1 patent drawing
  • US9282000B1 patent drawing

AI summary

Method and system for configuring a port of a network device are provided. One method for a port of a network device communicating with another network device port includes reading manufacturing, license and user provided port configuration data by a processor of the network device; obtaining capabilities information for the port by the processor of the network device from an external pluggable media device; setting port configuration data based on the capabilities information obtained from the external pluggable media; executing auto-negotiation on the port, when enabled and obtaining configuration data from the other port; determining that enough data is available to set port configuration; attempting to configure the port by using a highest permissible bandwidth configuration when enough data is available to set the port configuration; and setting port configuration based on the attempt to configure the port to operate when a link connected to the port is operational.