Buffer Management Mechanism for VoD Server I/O Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current buffer management mechanisms in Video-on-Demand (VoD) streaming servers lead to high repeatable disk I/O due to the immediate release of popular content sections, resulting in increased CPU usage and disk I/O burdens, especially during peak traffic when popular content is reloaded from disk.
Innovation Solution
Implementing a buffer management system that allocates buffers in a memory pool with states (ACTIVE, INACTIVE, and FREE) based on user demand, where popular content sections are kept in memory for a calculated lifetime, preventing immediate release and allowing for efficient reusage, thereby reducing repeatable disk I/O.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the buffer releases content sections when no users need them, then memory is freed for other uses, but popular content sections are reloaded from disk causing high repeatable disk I/O
Solution Approach 1:
The patent applies preliminary action by pre-loading content sections into the buffer before they are actually needed. When a user requests a content section, the system checks if it's already in the buffer and loads it in advance if not, thereby avoiding repeated disk I/O operations during peak usage periods.
Solution Approach 2:
The patent implements dynamics by dynamically adjusting the buffer management strategy based on content popularity and usage patterns. The system distinguishes between popular and non-popular content sections, applying different retention policies: popular sections are kept in buffer longer or pre-loaded, while less popular sections are released when not in use.
2Quantity of substance
If all buffers are released during idle time, then memory is completely freed, but all content sections must be reloaded from disk when traffic increases
Solution Approach 1:
During idle periods, the system performs preliminary actions by pre-loading popular content sections into the buffer based on historical usage data and popularity metrics. This ensures that when traffic increases, these popular sections are already available in memory, reducing the reload time and maintaining high productivity.
Solution Approach 2:
The patent applies skipping by bypassing the disk I/O step for content sections that have been pre-loaded into the buffer. When user requests arrive for these pre-loaded sections, the system serves them directly from memory, skipping the time-consuming disk read operation and thus improving server response time.
3Use of energy by moving object
If direct I/O is used to bypass operating system cache, then CPU usage is reduced, but repeatable disk I/O increases without application level cache
Solution Approach 1:
The patent introduces an application-level cache as an intermediary between the disk I/O subsystem and the application logic. This cache layer intercepts read requests for popular content sections, serving them from memory without requiring CPU intervention for disk I/O operations, thus maintaining low CPU usage while reducing repeatable disk I/O.
Solution Approach 2:
The system creates copies of popular content sections and stores them in the application-level buffer. Instead of repeatedly reading from disk, the system serves these in-memory copies, eliminating the need for repeated disk I/O operations while keeping CPU usage low since the copying operation occurs during off-peak times.
Data Source
AI summary
The present invention provides a method of and a system for providing buffer management mechanism in an on-Demand environment to keep the popular content sections in server memory so as to reduce the repeatable disk I/O and improve the server performance. The method comprises: setting the state of a buffer to be ACTIVE when a file section stored in the buffer is requested by any users; setting the state of the buffer to be INACTIVE when users no longer request the file section stored in the buffer, the buffer in INACTIVE state having a lifetime; changing the state of the buffer from INACTIVE to FREE when the lifetime decreases to zero. The system comprises at least one detector for detecting the number of the users requesting a file section stored in the buffer and providing the detection results for a processor, one processor for determining the state of the buffer according to the detection results and providing instructions for at least one state setting unit, and at least one state setting unit for setting the state of the buffer based on instructions from the processor.


