IP Library Granted Patent US 10,567,287
Granted Patent B2
US 10,567,287 · App. 16/153,117 · Granted Feb 18, 2020

System and methods for efficient media delivery using cache

Inventors: Marc Courtemanche (Montreal, CA); Jean Mayrand (Chambly, CA)
Assignee: VANTRIX CORPORATION
H04L47/122H04L67/1095H04L67/2852H04L67/2895
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 10,567,287
App. No.
16/153,117
Granted
Feb 18, 2020
Kind
B2
Abstract

To improve the efficiency of media delivery over the Internet, a system and a method are provided for caching remote media files and retrieving cached media files, comprising hardware and software modules as well as steps for storing a remote media file into the cache and retrieving the cached media file based on a signature created by hashing only discrete parts of the media file. The signature is a key for finding the cached media files in the cache upon subsequent requests for the same media file, even if it is received from a different internet location. Media files may be adapted to the characteristics of different media clients, and adapted media files may be equally cached.

Claims (39)

1. A cache service module, comprising:

a non-transitory computer readable storage medium having computer readable instructions stored thereon for execution by a processor, causing the processor to:

(a) obtain:

(i) a content length of a remote media file;

(ii) a predetermined number of M ranges of bytes, M>=2, at respective predetermined offsets relative to the beginning of the remote media file, each range of bytes having a predetermined byte length, such that a sum of all M ranges of bytes is smaller than the content length of the remote media file;

(b) generate a digital signature for the remote media file using bytes from the obtained M ranges of bytes; and

(c) determine a presence of a copy of the remote media file in a cache memory, including interrogating the cache memory with the digital signature, thereby providing efficient caching and retrieving of media files.

2. The cache service module of claim 1 , wherein the M ranges of bytes are not overlapping and are not adjacent.

3. The cache service module of claim 1 , wherein a first range of bytes is obtained at an offset of zero relative to the beginning of the remote media file.

4. The cache service module of claim 1 , wherein the offsets are specified as proportions of the content length of the remote media file.

5. The cache service module of claim 1 , wherein a different number of bytes is specified for at least some ranges of bytes in the M ranges of bytes.

6. The cache service module of claim 1 , wherein the same number of bytes is specified for each byte range in the M ranges of bytes.

7. The cache service module of claim 1 , wherein the computer readable instructions further cause the processor to concatenate all bytes in the M ranges of bytes into a string of bytes, and generate the digital signature using the string of bytes.

8. The cache service module of claim 1 , wherein the computer readable instructions further cause the processor to obtain and store the copy of the remote media file along with the digital signature in the cache memory upon a number of requests from media client devices for the remote media file exceeding a predetermined threshold.

9. The cache service module of claim 1 , wherein the computer readable instructions further cause the processor to store only the digital signature in the cache memory, provided a number of requests from media client devices for the remote media file is below a predetermined threshold.

10. A system for caching media files, comprising:

at least one processor;

a non-transitory computer readable storage medium having computer readable instructions stored thereon for execution by the at least one processor, causing the at least one processor to:

(a) obtain:

(i) a content length of a remote media file;

(ii) a predetermined number of M ranges of bytes, M>=2, at respective predetermined offsets relative to the beginning of the remote media file, each range of bytes having a predetermined byte length, such that a sum of all M ranges of bytes is smaller than the content length of the remote media file;

(b) generate a digital signature for the remote media file using bytes from the obtained M ranges of bytes; and

(c) determine a presence of a copy of the remote media file in a cache memory, including interrogating the cache memory with the digital signature, thereby providing efficient caching and retrieving of media files.

11. The system of claim 10 , further comprising the cache memory for storing the copy of the remote media file.

12. The system of claim 10 , wherein the M ranges of bytes are not overlapping and not adjacent.

13. The system of claim 10 , wherein the offsets are specified as proportions of the content length of the remote media file.

14. The system of claim 10 , wherein a different number of bytes is specified for at least some ranges of bytes in the M ranges of bytes.

15. A method for caching media files, comprising:

employing at least one processor for:

(a) obtaining:

(i) a content length of a remote media file;

(ii) a predetermined number of M ranges of bytes, M>=2, at respective predetermined offsets relative to the beginning of the remote media file, each range of bytes having a predetermined byte length, such that a sum of all M ranges of bytes is smaller than the content length of the remote media file;

(b) generating a digital signature for the remote media file using bytes from the obtained M ranges of bytes; and

(c) determining a presence of a copy of the remote media file in a cache memory, including interrogating the cache memory with the digital signature, thereby providing efficient caching and retrieving of media files.

16. The method of claim 15 , wherein the M ranges of bytes are not overlapping and not adjacent.

17. The method of claim 15 , wherein the offsets are specified as proportions of the content length of the remote media file.

18. The method of claim 15 , wherein a different number of bytes is specified for at least some ranges of bytes in the M ranges of bytes.

19. The method of claim 15 , further comprising, obtaining and storing the copy of the remote media file in the cache memory, upon a number of requests for the remote media file exceeding a predetermined threshold.

20. The method of claim 15 , further comprising storing only the digital signature in the cache memory, provided a number of requests from media client devices for the remote media file is below a predetermined threshold.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2021
From: VANTRIX CORPORATION
To: MASIMO CORPORATION
Reel/Frame 057394/0452 →
CHANGE OF COMPANY ADDRESS Recorded Nov 26, 2019
From: VANTRIX CORPORATION
To: VANTRIX CORPORATION
Reel/Frame 051136/0113 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2018
From: COURTEMANCHE, MARC; MAYRAND, JEAN
To: VANTRIX CORPORATION
Reel/Frame 047101/0601 →
CHANGE OF ADDRESS Recorded Oct 9, 2018
From: VANTRIX CORPORATION
To: VANTRIX CORPORATION
Reel/Frame 047956/0983 →
Continuity (4)
Continuation 13950562 · Jul 25, 2013
Continuation 12956114 · Nov 30, 2010
Provisional Application 61265676 · Dec 1, 2009
Related Publication 20190044862A1 · Feb 7, 2019