Dynamic Transmit Descriptor Allocation for Network Starvation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In network environments, slower connections hold onto transmit descriptors longer than faster connections, leading to resource depletion and starvation for faster connections, especially when endpoint failures occur, causing delays in data transmission.
Innovation Solution
A method and system for dynamically allocating transmit descriptors based on network traffic volume and connection speeds, ensuring a minimum allocation with additional descriptors allocated proportionally to faster connections to prevent resource depletion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If transmit descriptors are allocated from a pre-allocated pool for all network connections, then resource allocation is simple and fast, but faster connections experience resource starvation due to slower connections holding descriptors longer
Solution Approach 1:
The patent implements connection-specific quality of service by allocating transmit descriptors based on individual connection characteristics (speed, traffic volume, priority) rather than uniform allocation. Each connection receives a tailored allocation from the common pool, ensuring faster connections get proportionally more resources while maintaining simple pool-based management.
Solution Approach 2:
The transmit descriptor allocation is made dynamic through periodic reevaluation of connection parameters and traffic patterns. The system adjusts allocation ratios in real-time based on current network conditions, connection status, and observed performance, allowing the allocation strategy to adapt to changing requirements without restructuring the fundamental pool architecture.
2Device complexity
If a common pool of transmit descriptors is used for all connections, then resource management is simplified, but endpoint failures cause transmit descriptors to be held up indefinitely
Solution Approach 1:
The system implements preliminary timeout mechanisms and failure detection protocols that activate before complete resource starvation occurs. When a connection shows signs of failure or exceeds expected descriptor hold times, the system proactively reclaims descriptors according to predefined policies, preventing indefinite holding while maintaining simple pool management.
Solution Approach 2:
The patent incorporates feedback loops that monitor connection health, descriptor allocation patterns, and transmission performance. This feedback enables the system to detect abnormal descriptor retention patterns indicative of endpoint failures and trigger appropriate recovery actions, balancing simplicity with responsive error handling.
3Ease of operation
If transmit descriptors are allocated uniformly to all connections, then allocation is fair and simple, but slower connections reduce overall network throughput by holding descriptors longer
Solution Approach 1:
The system dynamically changes allocation parameters (descriptor pool size, timeout values, priority weights) based on connection characteristics and network conditions. Faster connections receive larger allocations and shorter timeout periods, while slower connections get smaller allocations with extended timeouts, optimizing throughput without requiring complex manual configuration.
Data Source
AI summary
Method and system for managing transmit descriptors (TDs) for transmitting information over a network connection is provided. The method includes, allocating a minimum number of TDs to plural network connections at any given time; and determining an additional number of TDs for allocation to plural network connections, wherein the additional number of TDs is based on network traffic. The system includes a computing system with an operating system, a system memory and a network device driver; and a network adapter coupled to the computing system, wherein the operating system checks for availability of data for transmission over a plurality of network connections; and the network device driver allocates a minimum number of transmit descriptors (TDs) to the plural network connections at any given time; and determines an additional number of TDs for allocation to the plural network connections, wherein the additional number of TDs is based on network traffic.


