IP Library Granted Patent US 8,966,003
Granted Patent B2
US 8,966,003 · App. 12/563,793 · Granted Feb 24, 2015

Content delivery network stream server vignette distribution

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 8,966,003
App. No.
12/563,793
Granted
Feb 24, 2015
Kind
B2
Abstract

A system and method for delivering content objects over the Internet to an end user system with a content delivery network (CDN) is disclosed. The system and method allow for dynamically storing and distributing a portion of content streams. When a content object is requested by an end user media player, the request is assigned to an edge server within the CDN. Characteristics of the content object are used to determine the portion of the content object where the portion is less than all of the requested content. The portion of content object is then retrieved from the content and is stored within the CDN. The portion of requested content is streamed to the end user media player. Ultimately, the whole content is streamed to the end user media player if the remainder of content is requested by the end user media player.

Claims (69)

1. A method for streaming a content object over the Internet to an end user system with a content delivery network (CDN), which distributes a vignette of the content object to the end user system, the method comprising:

receiving a URL request to stream the content object to the end user system;

assigning the URL request to an edge server within the CDN;

subsequent to receiving the URL request, determining a portion of the content object based, at least in part, on characteristics of the content object, wherein:

the determining the portion of the content object is performed in the application layer,

the characteristics of the content object comprises at least one of storage space required, size of the content object or encoding format of the content object,

the portion is less than all of the content object, and

the content object comprises the portion and a remainder;

retrieving the portion of the content object from a remote location;

storing the portion of the content object away from the remote location without storing the remainder unless subsequently requested;

accessing the portion by the edge server;

streaming the portion of the content object from the edge server to the end user system; and

delaying a request to retrieve the remainder of the content object for loading on the edge server until after streaming the portion of the content object to the end user system, wherein:

delaying the request to retrieve the remainder of the content object is performed in the application layer; and

the edge server avoids loading the remainder of the content object should streaming the portion to the end user system cease during playback of the portion.

2. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the determining comprises: retrieving content object characteristics;

determining storage space per time segment based, at least in part, on the content object characteristics;

identifying start of the portion in the content object; and

identifying end of the portion in the content object.

3. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the vignette comprises an audio or video clip.

4. The method for streaming the content object over the Internet to the end user system with the a CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the assigning is performed through a domain name system (DNS) resolution.

5. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the assigning is performed through an HTTP Redirect function.

6. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the content object comprises an on-demand stream.

7. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the portion of the content object comprises a predetermined period of an on-demand stream.

8. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 7 , wherein the predetermined period starts at a beginning of the on-demand stream.

9. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the remote location comprises an origin server.

10. The method for streaming the content object over the Internet to the end user system with the CDN, which distributes a vignette of the content object to the end user system as recited in claim 1 , wherein the remote location comprises another edge server within the CDN.

11. A content delivery network (CDN) for streaming a content object over the Internet to an end user system, the CDN comprising:

a content object request function that receives a URL request for streaming the content object to the end user system;

an edge server selection function that assigns the URL request to an edge server for streaming content to the end user system;

a stream-request function, wherein the stream-request function:

subsequent to the content object request function receiving the URL request, determines the portion of the content object based, at least in part, on characteristics of the content object, wherein:

the determining the portion of the content object is performed in the application layer,

the characteristics of content object comprises at least one of storage space required, size of the content object or encoding format of the content object,

the portion is less than all of the content object, and

the content object comprises the portion and a remainder;

retrieves the portion of the content object from a remote location;

stores the portion of the content object away from the remote location without storing the remainder unless requested after the portion of the content object is streamed to the end user system;

accesses the portion by the edge server;

delays a request to retrieve the remainder of the content object, wherein delay of the request to retrieve the remainder of the content object is performed in the application layer; and

upon receiving a second request, retrieves the remainder of the content object from the remote location, wherein the edge server avoids loading the remainder of the content object should streaming the portion to the end user system cease during playback of the portion; and

a streaming function that streams the portion of the content object from the edge server to the end user system.

12. The CDN for streaming the content object over the Internet to the end user system as recited in claim 11 , wherein the portion is a first byte of the content object.

13. The CDN for streaming the content object over the Internet to the end user system as recited in claim 11 , wherein the portion is made sticky in a cache of the edge server to avoid automatic purging from the cache.

14. The CDN for streaming the content object over the Internet to the end user system as recited in claim 11 , wherein the remote location is an origin server for the content.

15. A method for delivering at least a portion of a content object over the Internet to an end user system with a content delivery network (CDN), which distributes the portion of the content object to the end user system, the method comprising:

receiving a URL request to deliver the content object to the end user system;

assigning the URL request to an edge server within the CDN;

subsequent to receiving the URL request, determining a portion of the content object based, at least in part, on characteristics of the content object, wherein:

the determining the portion of the content object is performed in the application layer,

the characteristics of content object comprises at least one of storage space required, size of the content object or encoding format of the content object,

the portion is less than all of the content object, and

the content object comprises the portion and a remainder;

retrieving the portion of the content object from a remote location;

storing the portion of the content object away from the remote location without storing the remainder unless subsequently requested after the portion of the content object is streamed to the end user system;

accessing the portion by the edge server;

delivering the portion of the content object from the edge server to the end user system; and

delaying a request to retrieve the remainder of the content object, wherein:

delaying the request to retrieve the remainder of the content object is performed in the application layer; and

the edge server avoids loading the remainder of the content object should delivery of the portion to the end user system cease during playback of the portion.

16. The method for delivering at least the portion of the content object over the Internet to the end user system with the CDN as recited in claim 15 , wherein the delivery of the portion is streaming delivery.

17. The method for delivering at least the portion of the content object over the Internet to the end user system with the CDN as recited in claim 15 , further comprising:

determining that the end user system is no longer receiving the delivery of the portion, and

halting retrieval of whatever is still missing from the portion when the end user is no longer receiving delivery.

18. The method for delivering at least the portion of the content object over the Internet to the end user system with the CDN as recited in claim 15 , further comprising:

determining that the end user system is no longer receiving the delivery of the portion,

determining if the portion is likely to be requested by others within a time frame, and

halting retrieval of whatever is still missing from the portion when the end user is no longer receiving delivery if the portion is unlikely to be requested again.

19. The method for delivering at least the portion of the content object over the Internet to the end user system with the CDN as recited in claim 15 , further comprising determining if a size of the content object is below a threshold or is a bitrate below a threshold and forgoing performance of at least the determining a portion.

Assignments (8)
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0406] Recorded Jul 9, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: UPLYNK, INC. (F/K/A EDGIO, INC.)
Reel/Frame 071875/0105 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0212] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071817/0877 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 068763/0276] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071818/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2025
From: EDGIO, INC.
To: DRNC HOLDINGS, INC.
Reel/Frame 070071/0327 →
CHANGE OF NAME Recorded Sep 9, 2024
From: LIMELIGHT NETWORKS, INC.
To: EDGIO, INC.
Reel/Frame 068898/0281 →
PATENT SECURITY AGREEMENT Recorded Aug 23, 2024
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 068763/0276 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 065597/0212 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 065597/0406 →