IP Library Granted Patent US 10,862,939
Granted Patent B2
US 10,862,939 · App. 16/230,900 · Granted Dec 8, 2020

Customized and extremely low latency streaming from the network edge

Inventors: Bhavesh Upadhyaya (Redondo Beach, CA); Tin Zaw (Santa Monica, CA)
Assignee: Verizon Digital Media Services Inc.
H04L65/605H04L65/608H04L65/80H04L67/18
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,862,939
App. No.
16/230,900
Granted
Dec 8, 2020
Kind
B2
Abstract

Streaming improvements are provided by using computing, caching, and/or other resources that are provided at different network edges in a Multi-access Edge Computing (“MEC”) enhanced network. A MEC device, at a network edge, may customize a stream passing to a client device via the network edge by identifying a break in an original stream manifest passing to the client device, and by inserting a link for the client device to request and play content that is selected by the MEC device during the break. The MEC device then passes the modified stream manifest, instead of the original stream manifest, to the client device. The MEC device may also be triggered, via a prioritization message from a host in the network, to prefetch, cache, and serve a stream from the network edge to a client device accessing the network via that network edge.

Claims (68)

1. A device comprising:

one or more processors configured to:

monitor network traffic passing between a data network and one or more client devices that access the data network from a particular network edge;

detect, at the particular network edge, an original manifest of a stream from said monitoring of the network traffic;

identify a break in the original manifest, at which presentation of the stream is interrupted, prior to playback of the stream reaching the break, wherein the original manifest comprises links to a set of next segments of the stream, and wherein the break is located in the original manifest and starts between the links to a first next segment and a second next segment of the set of next segments;

select content from a plurality of secondary content based on a geographic location of the particular network edge;

modify, at the particular network edge, the original manifest by inserting a link to the content in between the link to the first next segment and the link to the second next segment; and

provide a modified manifest, instead of the original manifest, to a client device via the particular network edge, wherein the modified manifest comprises the link to the content inserted in between the link to the first next segment and the link to the second next segment of the stream.

2. The device of claim 1 , wherein the one or more processors are further configured to:

detect a second original manifest of the stream;

determine that the second original manifest does not include a break in the presentation of the stream; and

provide the second original manifest unmodified to the client device via the particular network edge.

3. The device of claim 1 , wherein the content is first content from the plurality of secondary content, and wherein the one or more processors are further configured to:

detect the original manifest of the stream that is intended for a particular client device accessing the data network via a second network edge, wherein the second network edge is located at a different geographic location than the particular network edge;

select different second content from the plurality of secondary content based on the different geographic location of the second network edge; and

provide a modified manifest comprising a link to the second content, instead of the first content, to the particular client device accessing the data network via the second network edge.

4. The device of claim 1 , wherein the one or more processors are further configured to:

cache the content into local memory or local storage of the device prior to the client device requesting the content; and

provide the content from the local memory or the local storage of the device in response to a request for the content from the client device.

5. The device of claim 4 , wherein the one or more processors are further configured to:

provide one or more metrics, that are related to said providing the content, to a stream host, that sends the original manifest.

6. The device of claim 4 , wherein the caching the content comprises:

requesting the content from a third-party server prior to the client device requesting the content from the device; and

storing the content in the local memory or the local storage in response to receiving the content from the third-party server.

7. The device of claim 1 , wherein the original manifest is sent from a stream host, and wherein the link to the content comprises a Uniform Resource Locator (“URL”) with a domain name or address of the device instead of the stream host.

8. The device of claim 1 , wherein identifying the break comprises:

detecting a playlist of one or more segments that are directed to primary content of the stream; and

detecting within the playlist a tag, link, or segment that is directed to secondary content that is different than the primary content.

9. The device of claim 1 , wherein the particular network edge corresponds to a Radio Access Network (“RAN”) of a telecommunications wireless network, and wherein the device is located near a base station of the RAN.

10. The device of claim 1 , wherein the content is an advertisement for an entity within a specified distance from the particular network edge.

11. The device of claim 1 , wherein the one or more processors are further configured to:

block transmission of the original manifest from passing through the particular network edge to the client device.

12. The device of claim 1 , wherein detecting the original manifest comprises:

determining that the stream associated with the original manifest is one of a set of streams that is configured for network edge content replacement, or is from one of a set of stream hosts that has requested network edge content placement.

13. The device of claim 12 , wherein the one or more processors are further configured to:

detect a second manifest of a second stream;

identify a break in the second manifest at which presentation of the second stream is interrupted; and

provide the second manifest unmodified to a particular client device via the particular network edge based on the second stream not being one of the set of streams and a stream host providing the second stream not being one of the set of stream hosts.

14. A method comprising:

monitoring network traffic passing between a data network and one or more client devices that access the data network from a particular network edge;

detecting, at the particular network edge, an original manifest of a stream from said monitoring of the network traffic;

identifying a break in the original manifest, at which presentation of the stream is interrupted, prior to playback of the stream reaching the break, wherein the original manifest comprises links to a set of next segments of the stream, and wherein the break is located in the original manifest and starts between the links to a first next segment and a second next segment of the set of next segments;

selecting content from a plurality of secondary content based on a geographic location of the particular network edge;

modifying, at the particular network edge, the original manifest by inserting a link to the content in between the link to the first next segment and the link to the second next segment; and

providing a modified manifest, instead of the original manifest, to a client device via the particular network edge, wherein the modified manifest comprises the link to the content inserted in between the link to the first next segment and the link to the second next segment of the stream.

15. The method of claim 14 further comprising:

detecting a second original manifest of the stream;

determining that the second original manifest does not include a break in the presentation of the stream; and

providing the second original manifest unmodified to the client device via the particular network edge.

16. The method of claim 14 , wherein the content is first content from the plurality of secondary content, the method further comprising:

detecting the original manifest of the stream that is intended for a particular client device accessing the data network via a second network edge, wherein the second network edge is located at a different geographic location than the particular network edge;

selecting different second content from the plurality of secondary content based on the different geographic location of the second network edge; and

providing a modified manifest comprising a link to the second content, instead of the first content, to the particular client device accessing the data network via the second network edge.

17. The method of claim 14 further comprising:

caching the content into local memory or local storage prior to the client device requesting the content; and

providing the content from the local memory or the local storage in response to a request for the content from the client device.

18. A device comprising:

one or more processors configured to:

monitor network traffic passing between a data network and one or more client devices that access the data network from a particular network edge;

detect an original manifest of a first stream from said monitoring of the network traffic;

determine that the first stream associated with the original manifest is one of a set of streams that is configured for network edge content replacement, or is from one of a set of stream hosts that has requested the network edge content placement;

identify a break in the original manifest at which presentation of the first stream is interrupted;

select content from a plurality of secondary content based on a geographic location of the particular network edge;

modify the original manifest to include a link to the content at the break;

provide a modified manifest comprising the link to the content to a first client device via the particular network edge;

detect a second manifest of a second stream;

identify a break in the second manifest at which presentation of the second stream is interrupted; and

provide the second manifest unmodified to a second client device via the particular network edge based on the second stream not being one of the set of streams, and a stream host providing the second stream not being one of the set of stream hosts.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2021
From: VERIZON DIGITAL MEDIA SERVICES INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057352/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2018
From: UPADHYAYA, BHAVESH; ZAW, TIN
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 047846/0583 →