Programmable Buffer Dynamic Allocation Switch Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Fixed buffer allocation in switches is inefficient as it wastes resources when certain priority levels have low traffic, leading to potential deadlocks and bandwidth degradation during congestion.
Innovation Solution
Implementing dynamic buffer allocation and programmable reservation sizes for each priority level to ensure efficient utilization of buffers, prevent deadlocks, and maintain full bandwidth, even during long ACK latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If fixed buffer allocation is used for each priority level, then buffer management is simple, but buffer utilization efficiency deteriorates when traffic varies dynamically
Solution Approach 1:
The patent implements dynamic buffer allocation where the buffer size for each priority level is not fixed but can be adjusted based on current traffic conditions. The system monitors traffic patterns and reallocates buffer resources dynamically to match actual demand, allowing high-utilization priorities to receive more buffer space while low-utilization priorities release their allocated buffers back to the common pool.
2Reliability
If fixed buffer allocation is used, then resource distribution is predictable, but resource waste occurs when certain priorities have low traffic
Solution Approach 1:
The system continuously monitors buffer utilization across different priority levels and recovers unused buffer resources from low-traffic priorities by reallocating them to high-traffic priorities. This discarding and recovering mechanism ensures that buffer resources are not permanently tied to underutilized priorities but are instead made available for more critical traffic when needed.
3Reliability
If more buffers are allocated to higher priority levels, then deadlock avoidance is improved, but bandwidth for lower priority traffic deteriorates
Solution Approach 1:
The patent implements dynamic buffer allocation where the buffer size for each priority level is not fixed but can be adjusted based on current traffic conditions. The system monitors traffic patterns and reallocates buffer resources dynamically to match actual demand, allowing high-utilization priorities to receive more buffer space while low-utilization priorities release their allocated buffers back to the common pool.
Data Source
AI summary
A method and apparatus for programmable buffer with dynamic allocation to optimize system throughput with deadlock avoidance on switches have been disclosed where a buffer availability is based on a programmable reservation size for dynamic allocation.


