IP Library Granted Patent US 11,431,776
Granted Patent B2
US 11,431,776 · App. 17/113,326 · Granted Aug 30, 2022

Customized and extremely low latency streaming from the network edge

Inventors: Bhavesh Upadhyaya (Redondo Beach, CA); Tin Zaw (Santa Monica, CA)
Assignee: Verizon Patent and Licensing 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 11,431,776
App. No.
17/113,326
Granted
Aug 30, 2022
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 (61)

1. A method comprising:

receiving a particular stream from a host in a data network at a caching device located by a particular network edge of the data network, wherein one or more client devices access the data network via the particular network edge;

caching the particular stream in local cache of the caching device prior to receiving a client device request for the particular stream at the caching device;

establishing a network connection between the caching device and a particular client device of the one or more client devices prior to receiving the client device request, wherein the network connection between the caching device and the particular client device is different than another network connection established between the host and the particular client device;

receiving at the caching device, a request for the particular stream originally issued by the particular client device to the host; and

providing the particular stream from the local cache of the caching device to the particular client device in response to receiving the request.

2. The method of claim 1 , wherein receiving the request comprises:

shifting, from the host to the caching device, the request for the particular stream issued by the particular client device.

3. The method of claim 2 , wherein said shifting comprises:

receiving the request at the host prior to receiving the request at the caching device;

determining that the request is directed to the particular stream based on an identifier of the request;

determining that the particular stream is designated for delivery from the particular network edge; and

providing an identification of the caching device to the particular client device.

4. The method of claim 1 , wherein receiving the request comprises:

redirecting the particular client device from the host to the caching device; and

receiving the request from the particular client device at the caching device in response to said redirecting.

5. The method of claim 1 further comprising:

determining that the particular client device accesses the data network via the particular network edge; and

wherein receiving the request comprises shifting the request from the host to the caching device in response to determining that the particular client device accesses the data network via the particular network edge.

6. The method of claim 5 , wherein said determining comprises:

mapping a network address of the particular client device to the particular network edge.

7. The method of claim 5 , wherein said determining comprises:

performing a traceroute from the host to the particular client device; and

identifying a network path of the traceroute as being geographically proximate to the particular network edge.

8. The method of claim 1 ,

wherein caching the particular stream comprises caching one or more of a manifest and a first segment of the particular stream at the caching device prior to receiving the request;

wherein providing the particular stream comprises:

distributing one or more of the manifest and the first segment from the caching device to the particular client device in response to the request; and

prefetching, by the caching device, a next manifest or a next segment of the particular stream from the host.

9. The method of claim 1 further comprising:

receiving, at the caching device from the host, a prioritization message that identifies the particular stream; and

requesting the particular stream from the host in response to receiving the prioritization message from the host.

10. The method of claim 9 , wherein the prioritization message comprises an identifier designating the particular stream for distribution from the particular network edge.

11. The method of claim 9 further comprising:

joining a multicast group with the caching device; and

wherein receiving the prioritization message comprises detecting the prioritization message being sent from the host to the multicast group.

12. The method of claim 1 , wherein receiving the request comprises:

transferring a network connection that the particular client device establishes with the host to the caching device.

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

14. A device that is located by a particular network edge of a data network, wherein one or more client devices access the data network via the particular network edge, the device comprising:

a local cache; and

one or more processors configured to:

receive a particular stream from a host in the data network;

cache the particular stream in the local cache prior to receiving a client device request for the particular stream;

establish a network connection with a particular client device of the one or more client devices prior to receiving the client device request, wherein the network connection with the particular client device is different than another network connection established between the host and the particular client device;

receive a request for the particular stream originally issued by the particular client device to the host; and

provide the particular stream from the local cache to the particular client device in response to receiving the request.

15. The device of claim 14 ,

wherein caching the particular stream comprises caching one or more of a manifest and a first segment of the particular stream prior to receiving the request;

wherein providing the particular stream comprises:

distributing one or more of the manifest and the first segment to the particular client device in response to the request; and

prefetching a next manifest or a next segment of the particular stream from the host.

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

receive from the host, a prioritization message that identifies the particular stream; and

request the particular stream from the host in response to receiving the prioritization message from the host.

17. A non-transitory computer-readable medium, storing a set of processor-executable instructions, which, when executed by one or more processors, cause the one or more processors to:

receive a particular stream from a host in a data network;

cache the particular stream in a local cache prior to receiving a client device request for the particular stream;

establishing a network connection with a particular client device of the one or more client devices prior to receiving the client device request, wherein the network connection with the particular client device is different than another network connection established between the host and the particular client device;

receive a request for the particular stream originally issued by the particular client device to the host; and

provide the particular stream from the local cache to the particular client device in response to receiving the request.

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 7, 2020
From: UPADHYAYA, BHAVESH; ZAW, TIN
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 054562/0739 →
Continuity (2)
Continuation 16230900 · Dec 21, 2018
Related Publication 20210120060A1 · Apr 22, 2021
Cited By (4)
US 12,192,304 US 12,335,828 US 12,627,523 US 12,652,247