IP Library Granted Patent US 9,060,192
Granted Patent B2
US 9,060,192 · App. 13/262,881 · Granted Jun 16, 2015

Method of and a system for providing buffer management mechanism

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,060,192
App. No.
13/262,881
Granted
Jun 16, 2015
Kind
B2
Abstract

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.

Claims (37)

1. A method for managing buffers configured in a streaming server in an on-Demand environment, wherein a plurality of buffers are allocated in a memory pool of the streaming server to store sections of on-Demand files, the method comprising:

setting a 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, the lifetime of the buffer being determined when the state of the buffer is changed from ACTIVE to INACTIVE, the lifetime of the buffer being calculated based on at least a total number of users requesting the file section when the buffer is in the state of ACTIVE and an influence coefficient comprising a number of sections following the file section;

changing the state of the buffer from INACTIVE to FREE when the lifetime decreases to zero, and

wherein the lifetime of the buffer storing the file section of the on-Demand file is determined as follows:

tl=tc +PeakUser*influence coefficient* ts

wherein t1 represents the lifetime of the buffer, tc represents a current lifetime of the buffer, PeakUser is the total number of users requesting the file section when the buffer is in the state of ACTIVE and ts is an interval to decrease tl.

2. The method as defined in claim 1 , wherein the file section in the buffer is not releasable when the buffer is in a state of ACTIVE or INACTIVE, and the file section in the buffer is releasable when the buffer is in a state of FREE.

3. The method as defined in claim 1 , wherein the buffer in INACTIVE state can be recalled by any users requesting the file section stored in the buffer; and the buffer in FREE state can be refilled with any file sections when being requested.

4. The method as defined in claim 1 , wherein the lifetime pauses immediately when the state of the buffer is changed from INACTIVE to ACTIVE and remains unchangeable during the buffer being in ACTIVE state.

5. The method as defined in claim 1 , wherein the lifetime decreases by a predetermined time td per interval ts during the buffer being in INACTIVE state.

6. The method as defined in claim 5 , wherein time td and the interval ts are determined according to a size of the file section, a size of the memory pool and a popularity of the content contained in the file section.

7. The method as defined in claim 1 , wherein the lifetime of one referred buffer storing one referred file section following the section in the on-Demand file is determined according to the following formula at the time when the state of the buffer storing the file section is changed from ACTIVE to INACTIVE,

tln=tcn +PeakUser*(influence coefficient− n )* ts

wherein tln represents the lifetime of the referred buffer, tcn represents the current lifetime of the referred buffer, n is the distance between the file section and the referred file section, wherein 0<n<influence coefficient−1.

8. The method as defined in claim 7 , wherein the lifetime tln of the referred buffer is added to the current lifetime tcn when the state of the referred buffer is changed from ACTIVE to INACTIVE.

9. The method as defined in claim 1 , wherein the value of PeakUser is set to be zero when the state of the buffer is changed from ACTIVE to INACTIVE.

10. The method as defined in claim 1 , wherein the lifetime of the buffer is assigned to tc when the state of the buffer is changed from INACTIVE to ACTIVE.

11. A non-transitory computer-readable medium including logic for managing buffers configured in a streaming server in an on-Demand environment, wherein a plurality of buffers are allocated in a memory pool of the streaming server to store sections of on-Demand files, the logic configured to be executed by a computer to:

set the state of a buffer to be ACTIVE when a file section stored in the buffer is requested by any users;

set 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 being configured with a lifetime, the lifetime of the buffer being determined when the state of the buffer is changed from ACTIVE TO INACTIVE, the lifetime of the buffer being calculated based on at least a total number of users requesting the file section when the buffer is in the state of ACTIVE and an influence coefficient comprising a number of sections following the file section;

change the state of the buffer from INACTIVE to FREE when the lifetime decreases to zero, and

wherein the lifetime of the buffer storing the file section of the on-Demand file is determined as follows:

tl=tc +PeakUser*influence coefficient* ts

wherein t1 represents the lifetime of the buffer, tc represents a current lifetime of the buffer, PeakUser is the total number of users requesting the file section when the buffer is in the state of ACTIVE and ts is an interval to decrease tl.

12. The system as defined in claim 11 , wherein a buffer data information memory is configured in each buffer to keep information about a value of current users as well as the lifetime of buffer in INACTIVE state, the value of the current users being detected by the detector when the detector detects the total number of the users requesting the file section stored in the buffer.

13. The system as defined in claim 11 , wherein the processor determines that the file section in the buffer is not releasable if the buffer is in a state of ACTIVE or INACTIVE, and the processor determines that the file section in the buffer is releasable if the buffer is in a state of FREE.

14. The system as defined in claim 11 , wherein the processor determines that the buffer in INACTIVE state can be recalled by any users requesting the file section stored in this buffer; and the processor determines the buffer in FREE state can be refilled with any file sections when being requested.

15. The system as defined in claim 11 , wherein the lifetime pauses immediately when the state setting unit changes the state of this buffer from INACTIVE to ACTIVE and the state of this buffer remains unchangeable during the buffer being in ACTIVE state.

16. The system as defined in claim 11 , further comprising a timer connected with the memory pool for the purpose of decreasing the lifetime by a predetermined time td per interval ts during the buffer being in INACTIVE state.

17. The system as defined in claim 16 , wherein the processor determines time td and the interval ts according to a size of the file section, a size of the memory pool and a popularity of the content contained in the file section.

18. The system as defined in claim 11 , wherein the processor determines the lifetime of one referred buffer storing one referred file section following the section in the on-Demand file according to the following formula at the time when the state setting unit changes the state of the buffer storing the file section from ACTIVE to INACTIVE,

tln=tcn +PeakUser*(influence coefficient− n )* ts

wherein tln represents the lifetime of the referred buffer, tcn represents the current lifetime of the referred buffer, n is the distance between the file section and the referred file section, wherein 0<n<influence coefficient−1.

19. The system as defined in claim 18 , wherein the current lifetime tc0 is zero when the state setting unit changes the state of the buffer from ACTIVE to INACTIVE for the first time.

20. The system as defined in claim 11 , wherein the value of PeakUser decreases to zero when the state setting unit changes the state of the buffer from ACTIVE to INACTIVE.

21. The system as defined in claim 11 , wherein the processor assigns the lifetime of the buffer to tc when the state setting unit changes the state of the buffer from INACTIVE to ACTIVE.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2025
From: CITIBANK, N.A., AS AGENT
To: MK SYSTEMS USA INC.
Reel/Frame 073070/0114 →
SECURITY INTEREST Recorded Oct 10, 2025
From: MK SYSTEMS USA INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 073062/0487 →
SECURITY INTEREST Recorded Apr 3, 2020
From: MK SYSTEMS USA INC.
To: CITIBANK, N.A., AS AGENT
Reel/Frame 052312/0567 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2019
From: MK SYSTEMS US SUB-HOLDCO INC.
To: MK SYSTEMS USA INC.
Reel/Frame 050277/0946 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2019
From: MK SYSTEMS US HOLDCO INC.
To: MK SYSTEMS US SUB-HOLDCO INC.
Reel/Frame 050272/0448 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2019
From: LEONE MEDIA INC.
To: MK SYSTEMS US HOLDCO INC.
Reel/Frame 050265/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
To: LEONE MEDIA INC.
Reel/Frame 050220/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2011
From: CHEN, KUN; LING, JIE; TANG, WENHU; XIE, JINYANG
To: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Reel/Frame 027013/0058 →