Entropy Manager for Virtual Machine Boot Stall Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In server virtualization systems, the scarcity of high entropy data leads to delays during the boot process of virtual machines (VMs) as multiple VMs competing for entropy pool resources can starve the pool, causing stalls and unacceptable delays in booting, especially when several VMs power on simultaneously.
Innovation Solution
An entropy manager is introduced to monitor events and apply rules to determine the required entropy level, switching between lower and higher entropy sources accordingly, ensuring efficient distribution of entropy demand and preventing unnecessary stalls during VM initialization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple VMs are booted simultaneously using high entropy data from the entropy pool, then the security quality of random numbers is improved, but the boot process experiences delays and stalls due to entropy pool starvation
Solution Approach 1:
The patent changes the entropy parameter by introducing multiple entropy sources with different entropy levels. When the entropy pool is exhausted, the system transitions from using high-entropy pool data to using lower-entropy alternative sources (such as /dev/urandom or OS-provided entropy), thereby maintaining boot progress while accepting reduced entropy quality as a temporary measure
Solution Approach 2:
The system dynamically selects entropy sources based on the availability of entropy pool data. The entropy manager continuously monitors the entropy pool state and adapts the entropy sourcing strategy in real-time, switching between high-quality pool entropy and alternative sources depending on current system conditions
2Reliability
If the system waits for the entropy pool to be replenished before allowing VMs to boot, then the security quality is maintained, but the productivity and boot speed deteriorate
Solution Approach 1:
The system accepts partial entropy quality by using alternative entropy sources that provide lower but sufficient entropy for non-critical operations. Rather than waiting for complete high-quality entropy replenishment, the system proceeds with available alternative entropy sources, achieving acceptable rather than optimal entropy quality to maintain productivity
3Reliability
If the entropy pool is used exclusively for all VMs, then consistent high-quality random numbers are generated, but the system cannot handle simultaneous boot requests from multiple VMs without stalls
Solution Approach 1:
The patent segments the entropy sourcing strategy into multiple independent sources: the primary entropy pool for high-quality requirements and alternative entropy sources for supplemental needs. This segmentation allows different VMs or cryptographic operations to draw from appropriate sources based on their specific entropy requirements
Solution Approach 2:
The entropy management system provides multi-functionality by serving multiple entropy sources through a unified interface. The same cryptographic routines can access entropy from either the pool or alternative sources depending on availability, making the system adaptable to varying load conditions while maintaining consistent API behavior
Data Source
AI summary
An apparatus for balancing consumption of random data, comprising an entropy manager operable to: responsive to receipt of a request for random data, monitor one or more events associated with a plurality of entities and access one or more rules; determine whether a higher level of entropy associated with the random data is required by analyzing the one or more events in accordance with the one or more rules; responsive to a determination that a higher level of entropy is not required, set an entropy state associated with the entropy to a lower level of entropy and obtain random data from an entropy source having a lower level of entropy; and responsive to a determination that a higher level of entropy is required, switch an entropy state associated with the entropy to a higher level of entropy and obtain random data from an entropy source having a higher level of entropy.


