Network Packet Scheduling Mechanism for Fine-Grained Rate Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current transport-layer scheduling mechanisms face challenges in making fine-grained rate adjustments and achieving cycle-granularity inter-packet spacing due to coarse-grained and variable iteration durations of the scheduler loop, which prevents precise regulation of packet flow.
Innovation Solution
The proposed solution involves scheduling mechanisms that approximate fine-grained rate adjustments and cycle-granularity inter-packet spacing by determining whether the next packet is due or if a proximity condition is satisfied, allowing for dynamic adjustments based on network feedback and probabilistic or compensatory approaches to ensure packets are transmitted with target inter-packet gap values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a coarse-grained scheduler loop with variable iteration duration is used, then the scheduling mechanism is simpler to implement, but the ability to achieve fine-grained rate adjustments and cycle-granularity inter-packet spacing is lost
Solution Approach 1:
The patent applies partial action by accepting that exact cycle-granularity inter-packet spacing cannot be achieved with coarse-grained scheduling, so it uses approximation methods that provide sufficient precision for practical purposes. The scheduler performs partial rate adjustments that are good enough to achieve the desired throughput while maintaining simplicity of the scheduling mechanism.
Solution Approach 2:
The patent changes the parameter of inter-packet spacing from exact cycle-granularity precision to approximate spacing that is sufficient for practical rate control. By adjusting the tolerance parameters and using probabilistic approaches, the system achieves acceptable precision without requiring complex timing mechanisms.
2Measurement precision
If fine-grained rate adjustments are attempted with a coarse-grained scheduler loop, then transmission rate control precision is improved, but the scheduler loop iteration duration becomes variable and harder to control
Solution Approach 1:
The patent makes the scheduler loop dynamic by allowing variable iteration durations that adapt to network conditions. The scheduler can extend or shorten iterations based on the need for rate adjustments, using probabilistic methods to control the duration while maintaining overall system simplicity.
Solution Approach 2:
The patent implements feedback mechanisms where the scheduler monitors transmission results and adjusts iteration duration accordingly. Based on feedback about packet delivery and network conditions, the scheduler dynamically modifies the loop duration to achieve desired rate control precision without excessive complexity.
3Adaptability or versatility
If probabilistic or compensatory approaches are used to approximate inter-packet spacing, then fine-grained rate regulation is achieved, but the transmission timing becomes less predictable
Solution Approach 1:
The patent uses feedback to compensate for the probabilistic nature of timing adjustments. By monitoring actual transmission results and comparing them with target rates, the scheduler adjusts future transmissions to maintain consistency while preserving flexibility in rate regulation.
Solution Approach 2:
The patent applies beforehand cushioning by pre-calculating compensation factors that account for probabilistic variations in transmission timing. These compensation factors are built into the scheduling algorithm to ensure that timing inconsistencies are corrected in advance, maintaining transmission stability while allowing flexible rate adjustment.
Data Source
AI summary
Innovations in packet scheduling, which allow a scheduling mechanism to approximate fine-grained rate adjustments and cycle-granularity inter-packet spacing for packets of a flow, are described herein. For example, in an iteration of a scheduler loop, a sender determines whether a proximity condition is satisfied for the next packet of a flow. The proximity condition depends at least in part on how long a target next send time is after a current time. The next packet is scheduled for transmission if the next packet is due or if the proximity condition is satisfied for the next packet. When the next packet is scheduled for transmission, the sender sends the next packet and updates the target next send time based at least in part on a target transmission rate.


