Dynamic Virtual Output Queue Buffer Allocation
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Productivity
If VOQ buffer sizes are dynamically adjusted based on drain rates, then buffer space distribution efficiency is improved, but control signaling complexity increases
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.
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
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.
Data Source
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.


