Hierarchical Buffer Management for Differentiated Packet Discarding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing router and switch management systems discard packets without differentiation across different priority levels and buffer levels, leading to bandwidth allocation errors and unfair allocation.
Innovation Solution
A packet processing method that dynamically determines the processing of packets based on the upper limit value of the lowest-level buffer, occupation value, and packet size, ensuring differentiated packet discarding and adaptive hierarchical waterline management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a shared buffer is managed at multiple levels (queue buffer, port buffer, global buffer), then buffer capacity and packet storage ability are improved, but undifferentiated packet discarding occurs when congestion happens in high-level buffers
Solution Approach 1:
The patent applies local quality by differentiating packet discarding based on local buffer status at each hierarchy level. Each queue buffer independently determines whether to discard packets based on its own available space and the buffer status of its parent port buffer, rather than uniformly discarding all packets when high-level buffers are congested. This ensures that only packets destined for congested lower-level buffers are discarded, while packets for non-congested buffers are preserved.
Solution Approach 2:
The patent segments the buffer management process into independent decisions at each hierarchy level. The queue buffer management decision is separated from the port buffer management decision, allowing each level to make independent discarding decisions based on its own congestion state. This segmentation prevents the propagation of discarding decisions from high-level to low-level buffers, resolving the undifferentiated discarding problem.
2Device complexity
If packets are discarded without differentiation based on priority or buffer level, then processing complexity is reduced, but bandwidth allocation fairness deteriorates
Solution Approach 1:
The patent introduces dynamic buffer status indication information that changes based on real-time buffer availability at each hierarchy level. The queue buffer status indication reflects whether the queue buffer has sufficient space, while the port buffer status indication reflects the overall port buffer availability. These dynamic indicators enable differentiated discarding decisions without requiring complex manual configuration, maintaining processing simplicity while achieving fairness.
Solution Approach 2:
The patent implements feedback mechanisms where buffer status information flows from lower-level buffers to higher-level buffers. The queue buffer provides status information about its availability to the port buffer, which then uses this information to make informed discarding decisions. This feedback loop ensures that discarding decisions are based on actual buffer conditions, preventing unfair bandwidth allocation while keeping the processing logic straightforward.
3Productivity
If low-priority queue buffers preempt bandwidth from high-priority queue buffers during congestion, then buffer utilization is improved, but bandwidth allocation accuracy deteriorates
Solution Approach 1:
The patent applies local quality by allowing each queue buffer to independently manage its own packets based on local buffer status. The high-priority queue buffer and low-priority queue buffer both have independent discarding decisions based on their respective availability and the port buffer status. This prevents the low-priority buffer from preempting bandwidth from the high-priority buffer, as each buffer makes decisions based on its own state rather than collectively depleting shared buffer resources.
Solution Approach 2:
The patent segments the bandwidth allocation process into independent queue buffer decisions. Instead of a single centralized decision-making process that could allow preemption, each queue buffer independently determines whether to accept or discard packets based on its own buffer status and the port buffer status. This segmentation eliminates the preemption mechanism while maintaining efficient buffer utilization.
Data Source
AI summary
A packet processing method includes: a first device receives a packet from a second device; the first device determines a first queue buffer used to store the packet, and determines a first upper limit value of the first queue buffer based on an available value of a first port buffer and an available value of a global buffer, where the global buffer includes at least one port buffer, the first port buffer is one of the at least one port buffer, the first port buffer includes at least one queue buffer, and the first queue buffer is one of the at least one queue buffer. The first device processes the packet based on the first upper limit value of the first queue buffer, an occupation value of the first queue buffer, and a size of the packet.


