Adaptive Token Bucket for Network Flow Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network switches face challenges in controlling data flow rates to match the processing capabilities of receiving network devices, leading to potential data overflow and inefficiencies.
Innovation Solution
Implementing a token bucket system within network switches, which regulates data flow by maintaining a token count representing the allowed data transmission, adjusting based on packet sizes and refresh rates, and marking or dropping packets that exceed specified limits to maintain average data transmission rates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a leaky bucket is used to control data flow, then the data transmission rate is limited, but burstiness is not allowed
Solution Approach 1:
The patent applies dynamics by making the token bucket adaptive - the bucket size and refresh rate can be dynamically adjusted based on network conditions and device capabilities. This allows the system to transition between strict rate limiting (like leaky bucket) and more flexible burst allowance, resolving the contradiction between reliable control and adaptability to different traffic patterns
2Adaptability or versatility
If a token bucket allows burstiness, then data transmission flexibility is improved, but average rate control may be compromised
Solution Approach 1:
The patent implements feedback mechanisms where the token bucket continuously monitors data transmission rates and adjusts token generation accordingly. When the average rate exceeds thresholds, the system responds by controlling token addition, ensuring both burst allowance and reliable average rate control through continuous feedback loops
3Adaptability or versatility
If the token bucket size is increased to accommodate varying network device capacities, then adaptability is improved, but system complexity increases
Solution Approach 1:
The patent applies parameter changes by allowing the token bucket configuration (bucket size, refresh rate, token values) to be dynamically adjusted based on network conditions and device capabilities. This enables a single system to adapt to varying device capacities without requiring completely different configurations, managing complexity through parameterized adaptability
Data Source
AI summary
Various example embodiments are disclosed. According to an example embodiment, a method may include receiving a token count units instruction, periodically increasing or decreasing a token count based at least in part on a refresh rate, and in response to receiving a packet, decreasing or increasing the token count based at least in part on a size of the packet and the instruction.


