Two-Level Arbitration for Fair Buffer De-queue and Drop
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network routers face challenges in efficiently managing limited buffer space across multiple data ports and packet classes, leading to packet drops due to bandwidth imbalances and varying traffic conditions, requiring a fair arbitration method that considers packet priorities.
Innovation Solution
A two-level arbitration scheme is implemented, where the first level selects an input port based on weighted round-robin fairness and the second level prioritizes packet de-queue and drop decisions based on queue priorities, ensuring fair bandwidth allocation and maintaining priority-based criteria.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If buffer space is allocated to ports with low traffic, then buffer utilization efficiency is improved, but fairness deteriorates when those ports face higher traffic
Solution Approach 1:
The buffer allocation is made dynamic through the two-level arbitration scheme. The first level dynamically adjusts buffer allocation based on current traffic conditions across ports, allowing ports with low traffic to use more buffer space. The second level dynamically enforces priority-based drop decisions when traffic conditions change, ensuring fairness is maintained when previously low-traffic ports experience higher traffic loads.
2Device complexity
If packets are dropped based on simple FIFO (first-in-first-out), then implementation complexity is reduced, but packet loss performance deteriorates due to ignoring packet priorities
Solution Approach 1:
The arbitration mechanism is segmented into two distinct levels. The first level handles port selection with weighted round-robin fairness, and the second level handles queue selection with priority-based drop decisions. This segmentation allows the system to implement complex priority-based packet loss management without requiring a single monolithic complex arbitration mechanism, thereby maintaining reasonable implementation complexity while significantly improving packet loss performance.
3Speed
If buffer management operates at the rate of incoming packets, then real-time performance is improved, but hardware complexity increases to approach maximum memory technology rates
Solution Approach 1:
The buffer management operation is segmented into two sequential arbitration stages. This segmentation allows each stage to operate independently at the required packet rate, simplifying the hardware implementation of each individual stage. The first level selects the input port, and the second level selects the queue within that port, allowing the system to achieve real-time performance without requiring excessively complex hardware that would be needed for a single-stage arbitration handling all decisions simultaneously.
Data Source
AI summary
Systems and methods consistent with the present invention provide a mechanism that can efficiently manage multiple queues and maintain fairness among ports while not placing additional performance demands on the memory used to store the queue data structures. Within a port, high priority traffic is dropped only if it is consuming more than its fair share of bandwidth allocated to that port. Queue arbitration is of low performance cost and simple because it arbitrates only across queues per port, rather than across all the queues in parallel. Accordingly, fair arbitration with relatively little hardware cost.


