Dynamic Virtual Output Queue Buffer Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer networks, Virtual Output Queues (VOQs) face challenges in managing buffer space efficiently, leading to congestion and packet dropping issues due to the shared buffer space being overwhelmed by a single ingress forwarding unit, which affects the overall network performance.

Innovation Solution

The proposed solution dynamically allocates VOQ buffer space to ingress forwarding units based on their respective drain rates, allowing each unit to adjust its buffer size proportionally to its share of the output queue's bandwidth, thereby maintaining expected delay bandwidth and reducing the need for control signaling between units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a single ingress forwarding unit uses all shared buffer space, then buffer capacity for that unit is maximized, but other ingress forwarding units experience congestion and packet dropping

Engineering Contradiction:
Improvebuffer space allocationVSAvoidpacket delivery reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The shared buffer space is segmented into multiple Virtual Output Queues (VOQs), with each VOQ dedicated to a specific ingress-egress pair. This segmentation prevents any single ingress forwarding unit from monopolizing the entire buffer space, as each unit can only use the VOQs assigned to it, thereby ensuring fair resource distribution and maintaining packet delivery reliability across all units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each VOQ is configured with a specific buffer size tailored to the drain rate of its corresponding ingress forwarding unit. This local quality adjustment ensures that each unit receives buffer space proportional to its needs and contribution to the output queue, preventing both buffer monopolization and ensuring reliable packet delivery for all ingress units.

Inventive Principle:
Principle #3Local quality

2Productivity

If VOQ buffer sizes are dynamically adjusted based on drain rates, then buffer space distribution efficiency is improved, but control signaling complexity increases

Engineering Contradiction:
Improvebuffer space utilization efficiencyVSAvoidcontrol signaling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The VOQ buffer sizes are dynamically adjusted based on the measured drain rates of ingress forwarding units. When drain rates change, the system automatically reallocates buffer space to maintain optimal efficiency. This dynamic adaptation improves buffer space utilization without requiring complex manual configuration or extensive control signaling, as the adjustments are driven by local measurements of drain rate.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If multiple ingress forwarding units share buffer space equally, then fairness is improved, but units with lower drain rates waste buffer capacity

Engineering Contradiction:
Improvefairness of resource distributionVSAvoidbuffer capacity waste
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The buffer size parameter for each VOQ is changed dynamically based on the drain rate of the corresponding ingress forwarding unit. Units with higher drain rates receive larger buffer allocations, while units with lower drain rates receive smaller allocations. This parameter adjustment maintains fairness by matching buffer capacity to actual usage needs, preventing buffer capacity waste while ensuring equitable resource distribution.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8797877B1Virtual output queue allocation using dynamic drain bandwidth
Publication Date: 2014.08.05 JUNIPER NETWORKS INC
  • US8797877B1 patent drawing
  • US8797877B1 patent drawing
  • US8797877B1 patent drawing

AI summary

In general, techniques are described for allocating virtual output queue (VOQ) buffer space to ingress forwarding units of a network device based on drain rates at which network packets are forwarded from VOQs of the ingress forwarding units. For example, a network device includes multiple ingress forwarding units that each forward network packets to an output queue of an egress forwarding unit. Ingress forwarding units each include a VOQ that corresponds to the output queue. The drain rate at any particular ingress forwarding unit corresponds to its share of bandwidth to the output queue, as determined by the egress forwarding unit. Each ingress forwarding unit configures its VOQ buffer size in proportion to its respective drain rate in order to provide an expected delay bandwidth buffering for the output queue of the egress forwarding unit.