Entropy Manager for Virtual Machine Boot Stall Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvesecurity quality of random numbersVSAvoidboot process delay
Core Design Contradiction:
ReliabilityVSLoss of time

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

Inventive Principle:
Principle #35Parameter changes

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

Inventive Principle:
Principle #15Dynamics

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

Engineering Contradiction:
Improveentropy qualityVSAvoidboot speed
Core Design Contradiction:
ReliabilityVSProductivity

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

Inventive Principle:
Principle #16Partial or excessive action

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

Engineering Contradiction:
Improverandom number quality consistencyVSAvoidconcurrent VM boot capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

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

Inventive Principle:
Principle #1Segmentation

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

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9934000B2Balancing consumption of random data
Publication Date: 2018.04.03 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9934000B2 patent drawing
  • US9934000B2 patent drawing
  • US9934000B2 patent drawing

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.