Guest Transmit Descriptor Intermediate State Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized computing environments, the limited number of guest transmit descriptors can lead to resource starvation due to long latencies in receiving transmit complete notifications for data transmissions via physical NICs, causing delays or drops in data transmissions to local hosts or other guest OSs.
Innovation Solution
Introducing an intermediate state for guest transmit descriptors allows them to be freed and reused before receiving a transmit complete notification, by copying memory information to a tracking data structure and reassigning the descriptor to the free pool, thus alleviating bottlenecks and preventing resource starvation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If guest transmit descriptors are held in busy state until transmit complete notification is received, then transmission reliability is ensured, but resource availability deteriorates causing resource starvation
Solution Approach 1:
The patent introduces an intermediate state between busy and free states for transmit descriptors. This intermediate state acts as a mediator that allows descriptors to be released from the busy state without waiting for transmit complete notifications, while still maintaining tracking of the ongoing transmissions. The intermediate state enables other transmit operations to proceed using freed descriptors, thus resolving the resource starvation problem while preserving transmission reliability through the tracking mechanism.
2Quantity of substance
If transmit descriptors are freed before receiving transmit complete notification, then resource availability improves, but tracking accuracy deteriorates
Solution Approach 1:
The patent implements a tracking data structure that copies and stores references to transmit descriptors in an intermediate state. When a descriptor moves to the intermediate state, its information is copied to the tracking data structure, allowing the system to maintain accurate transmission status information even after the original descriptor is freed and reused. This copying mechanism prevents information loss while enabling resource reuse.
3Productivity
If intermediate state tracking is implemented, then resource utilization improves, but system complexity increases
Solution Approach 1:
The patent segments the transmit descriptor management into distinct states (free, busy, intermediate) with clear transition rules. By dividing the state management into discrete, well-defined segments, the system can track descriptor status more efficiently despite the added complexity. The segmentation allows for systematic handling of each state transition, making the complexity manageable and the resource utilization improvements achievable.
Data Source
AI summary
Examples include the copy of memory information from a transmit descriptor to a tracking data structure. Some examples include the memory information being copied from a guest transmit descriptor to a tracking data structure of the guest OS and assignment of the guest transmit descriptor back to a free pool, in response to a determination that the guest transmit descriptor is assigned to an intermediate state.


