Virtual Private Server File Caching via Host OS Hash Redirection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Implementing multiple Virtual Private Servers (VPSs) on a single physical host efficiently is challenging due to the need for separate file systems, which is expensive and inefficient, and existing methods struggle with effectively sharing common files among VPSs.
Innovation Solution
A caching system where the host OS calculates hash values for files, stores them in a database, and redirects VPS processes to a disk cache when identical files are found, allowing shared access without copying files, thus optimizing disk access and resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate physical storage devices are provided for each VPS file system, then each VPS has isolated file access and security, but storage cost and resource efficiency deteriorate
Solution Approach 1:
The patent merges multiple VPS file systems into a single shared storage device, allowing multiple virtual file systems to coexist on the same physical storage. This eliminates the need for separate physical devices for each VPS while maintaining logical isolation through file system structures, directly reducing storage resource consumption while preserving security and isolation requirements.
Solution Approach 2:
The shared storage device serves multiple VPSs simultaneously, making a single storage resource universal for multiple purposes. Each VPS gets its own virtual file system view on the shared storage, allowing the same physical storage to fulfill the file system needs of multiple virtual servers without requiring dedicated devices for each.
2Reliability
If each VPS has its own private file storage area, then file access security is improved, but disk access efficiency deteriorates due to redundant reads of identical files
Solution Approach 1:
Instead of physically copying identical files to each VPS's private storage, the system creates virtual copies through file system redirection. When multiple VPSs need the same file, the system redirects their access requests to a single shared file instance, eliminating redundant disk reads while maintaining the appearance of private file access for each VPS.
Solution Approach 2:
The patent introduces a file system layer as an intermediary between VPS processes and physical storage. This intermediary layer intercepts file access requests, checks for identical files needed by multiple VPSs, and redirects access to shared file instances when appropriate, thereby improving disk access efficiency without compromising security.
3Productivity
If multiple identical VPSs are implemented on a single host, then resource utilization is improved, but file management complexity increases due to handling coincident files
Solution Approach 1:
The system changes the parameter of file identification from unique per-VPS identifiers to content-based identifiers (hash values). By computing hash values of file contents, the system can identify identical files across different VPSs and redirect their access to shared instances, simplifying file management while maximizing resource utilization.
Solution Approach 2:
The patent implements a feedback mechanism where the file system continuously monitors file access patterns across VPSs, identifies coincident files through hash comparison, and dynamically redirects access to shared instances. This automated feedback loop manages file sharing complexity without requiring manual intervention, enabling efficient resource utilization.
Data Source
AI summary
A host runs an operating system kernel. A plurality of virtual private servers (containers) is supported within the kernel. The containers use the same files. A template cache has pre-calculated file checksums. The checksum is calculated each time the file is created and/or modified. Each file has an inode containing an attribute indicating whether the checksum is calculated and stored along with the file. If the checksum is present, the process is redirected to access the file with the same inode in the shared disk cache.


