IP Library › Granted Patent US 12,273,403
Granted Patent B2
US 12,273,403 · App. 18/599,479 · Granted Apr 8, 2025

Selection of CDN and access network on the user device from among multiple access networks and CDNs

Inventors: Antti Heikkinen (Oulu, FI); Mikko Uitto (Tyrnävä, FI)
Assignee: Adeia Guides Inc.
H04L65/61H04L65/80H04W48/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 12,273,403
App. No.
18/599,479
Granted
Apr 8, 2025
Kind
B2
Abstract

Systems and methods for the selection of a network interface/CDN pair from among multiple network interface/CDN pairs are provided. In an embodiment, a method includes retrieving information about sets of CDNs accessible via different network interfaces of a device. A plurality of network interface/CDN pairs are then identified, and performance metrics for each pair are measured. A best pair is selected, and is used to retrieve the next segments of a requested content item.

Claims (61)

1. A method comprising:

receiving, by a device, first information identifying a first set of content delivery networks (CDNs), wherein each CDN of the first set of CDNs is available via a first network for accessing segments of a content item;

receiving, by the device, second information identifying a second set of CDNs, wherein each CDN of the second set of CDNs is available via a second network for accessing the segments of the content item;

identifying, based on the first information and the second information, one or more common CDNs, each common CDN being accessible via the first network and the second network;

identifying one or more multi-network communication paths, each multi-network communication path comprising a communication path between one of the one or more common CDNs and the device via the first network and the second network;

determining a respective performance metric for all of the each multi-network communication paths;

selecting a selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths; and

requesting a transmission of a segment of the content item via the selected multi-network communication path.

2. The method of claim 1 , wherein the selected multi-network communication path comprises the communication path between one of the one or more common CDNs and the device via a first network interface of the device and a second network interface of the device, wherein the first network interface and the second network interface are different.

3. The method of claim 2 , wherein the first network interface comprises a wi-fi internet interface, and the second network interface comprises a cellular internet interface.

4. The method of claim 1 , wherein the selected multi-network communication path comprises the communication path between one of the one or more common CDNs and the device via a first network interface, wherein the first network and the second network are both accessible by the device via the first network interface.

5. The method of claim 1 , wherein the first network comprises a wi-fi internet network, and the second network comprises a cellular internet network.

6. The method of claim 1 , wherein determining the respective performance metric for all of the each multi-network communication paths comprises, for each multi-network communication path:

retrieving a second segment of the content item via the multi-network communication path; and

determining the respective performance metric for the multi-network communication path based on the retrieval of the second segment of the content item.

7. The method of claim 1 , wherein the selected multi-network communication path is a first multi-network communication path, the method further comprising:

in response to determining that the respective performance metric of the first multi-network communication path is below a threshold level, switching to a second multi-network communication path for retrieval of additional segments of the content item.

8. The method of claim 1 , further comprising, at a regular interval:

determining a respective updated performance metric for the each respective multi-network communication path;

selecting an updated selected multi-network communication path based on the respective updated performance metrics; and

requesting a transmission of an additional segment of the content item via the updated selected multi-network communication path.

9. The method of claim 1 , further comprising:

selecting a first selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths;

selecting a second selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths;

requesting a transmission of a first segment of the content item via the first selected multi-network communication path; and

requesting a transmission of a second segment of the content item via the second selected multi-network communication path,

wherein at least a portion of the transmission of the first segment and the second segment occurs at the same time.

10. The method of claim 1 , further comprising determining the first information and the second information based on a manifest file corresponding to the content item.

11. A system comprising:

input/output circuitry configured to:

receive, at a device, first information identifying a first set of content delivery networks (CDNs), wherein each CDN of the first set of CDNs is available via a first network for accessing segments of a content item; and

receive, at the device, second information identifying a second set of CDNs, wherein each CDN of the second set of CDNs is available via a second network for accessing the segments of the content item; and

control circuitry configured to:

identify, based on the first information and the second information, one or more common CDNs, each common CDN being accessible via the first network and the second network;

identify one or more multi-network communication paths, each multi-network communication path comprising a communication path between one of the one or more common CDNs and the device via the first network and the second network;

determine a respective performance metric for all of the each multi-network communication paths; and

select a selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths;

wherein the input/output circuitry is further configured to request a transmission of a segment of the content item via the selected multi-network communication path.

12. The system of claim 11 , wherein the selected multi-network communication path comprises the communication path between one of the one or more common CDNs and the device via a first network interface of the device and a second network interface of the device, wherein the first network interface and the second network interface are different.

13. The system of claim 12 , wherein the first network interface comprises a wi-fi internet interface, and the second network interface comprises a cellular internet interface.

14. The system of claim 11 , wherein the selected multi-network communication path comprises the communication path between one of the one or more common CDNs and the device via a first network interface, wherein the first network and the second network are both accessible by the device via the first network interface.

15. The system of claim 11 , wherein the first network comprises a wi-fi internet network, and the second network comprises a cellular internet network.

16. The system of claim 11 , wherein the control circuitry is further configured to determine the respective performance metric for the each multi-network communication path by, for all of the each multi-network communication paths:

retrieving, via the input/output circuitry, a second segment of the content item via the multi-network communication path; and

determining the respective performance metric for the multi-network communication path based on the retrieval of the second segment of the content item.

17. The system of claim 11 , wherein the selected multi-network communication path is a first multi-network communication path, and wherein the control circuitry is further configured to:

in response to determining that the respective performance metric of the first multi-network communication path is below a threshold level, switch to a second multi-network communication path for retrieval of additional segments of the content item.

18. The system of claim 11 , wherein:

the control circuitry is further configured to, at a regular interval:

determine a respective updated performance metric for the each respective multi-network communication path; and

select an updated selected multi-network communication path based on the respective updated performance metrics; and

the input/output circuitry is further configured to request a transmission of an additional segment of the content item via the updated selected multi-network communication path.

19. The system of claim 11 , wherein:

the control circuitry is further configured to:

select a first selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths; and

select a second selected multi-network communication path based on the respective performance metrics of the one or more multi-network communication paths; and

the input/output circuitry is further configured to:

request a transmission of a first segment of the content item via the first selected multi-network communication path; and

request a transmission of a second segment of the content item via the second selected multi-network communication path,

wherein at least a portion of the transmission of the first segment and the second segment occurs at the same time.

20. The system of claim 11 , wherein the control circuitry is further configured to determine the first information and the second information based on a manifest file corresponding to the content item.

Assignments (2)
SECURITY INTEREST Recorded May 28, 2025
From: ADEIA INC. (F/K/A XPERI HOLDING CORPORATION); ADEIA HOLDINGS INC.; ADEIA MEDIA HOLDINGS INC.; ADEIA IMAGING LLC; ADEIA MEDIA LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA TECHNOLOGIES INC.; ADEIA GUIDES INC.; ADEIA SOLUTIONS LLC; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR INTELLECTUAL PROPERTY LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA PUBLISHING INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 071454/0343 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2024
From: HEIKKINEN, ANTTI; UITTO, MIKKO
To: ADEIA GUIDES INC.
Reel/Frame 066705/0971 →
Continuity (2)
Continuation 18127968 · Mar 29, 2023
Related Publication 20240348674A1 · Oct 17, 2024
References Cited (32)
US 8719399B2 · Harrang · 2014 [cited by examiner]
US 9548874B2 · Joe et al. · 2017 [cited by applicant]
US 10104602B2 · Popiel et al. · 2018 [cited by applicant]
US 10523732B2 · Watson et al. · 2019 [cited by applicant]
US 10904096B2 · Nataraj · 2021 [cited by examiner]
US 11343300B2 · Srinivasan et al. · 2022 [cited by applicant]
US 11658915B2 · Ibrahim · 2023 [cited by examiner]
US 11936710B1 · Heikkinen · 2024 [cited by examiner]
US 11936711B1 · Heikkinen · 2024 [cited by examiner]
US 11956293B1 · Heikkinen et al. · 2024 [cited by applicant]
US 11968128B2 · Ibrahim · 2024 [cited by examiner]
US 20060072583A1 · Sanda et al. · 2006 [cited by applicant]
US 20060274760A1 · Loher · 2006 [cited by applicant]
US 20090024634A1 · Harrang · 2009 [cited by examiner]
US 20130156119A1 · Poulin · 2013 [cited by applicant]
US 20170134253A1 · Wang · 2017 [cited by applicant]
US 20180103423A1 · Popiel et al. · 2018 [cited by applicant]
US 20190089772A1 · Gavade et al. · 2019 [cited by applicant]
US 20190215361A1 · Lohmar et al. · 2019 [cited by applicant]
US 20200204448A1 · Nataraj · 2020 [cited by examiner]
US 20200413111A1 · Varadarajan · 2020 [cited by examiner]
US 20220030308A1 · Bentaleb et al. · 2022 [cited by applicant]
Adhikari et al., “Measurement study of NetFlix Hulu and a tale of three CDNs”, IEEE/ACM Trans. Netw., 23(6):1984-1997 (2015). [cited by applicant]
Adhikari et al., “Unreeling Netflix: Understanding and improving multi-CDN movie delivery,” 2012 Proceedings IEEE INFOCOM, 1620-1628 (2012). [cited by applicant]
Bottger et al., “Open connect everywhere: A glimpse at the Internet ecosystem through the lens of the NetFlix CDN,” ACM SIGCOMM Comput. Commun. Rev., 48(1):28-34 (2018). [cited by applicant]
ISO/IEC 23009-1:2014: Information technology—Dynamic adaptive streaming over HTTP (DASH)—Part 1: “Media presentation description and segment formats” (15 pages). [cited by applicant]
Pantos, “HTTP Live Streaming 2nd Edition”. IETF Draft, [retrieved on Apr. 25, 2023 from URL: https://datatracker.ietf.org/doc/draft-pantos-hls-rfc8216bis/] (73 pages). [cited by applicant]
Sodagar, “The MPEG-DASH Standard for Multimedia Streaming Over the Internet,” IEEE MultiMedia, 18(4):62-67 (2011). [cited by applicant]
Viola et al., “MEC Proxy for Efficient Cache and Reliable Multi-CDN Video Distribution,” 2018 IEEE International Symposium on Broadband Multimedia Systems nd Broadcasting (BMSB), pp. 1-7 (2018). [cited by applicant]
Viola et al., “Predictive CDN Selection for Video Delivery Based on LSTM Network Performance Forecasts and Cost-Effective Trade-Offs,” IEEE Transactions on Broadcasting, vol. 67(1):145-158 (2021). [cited by applicant]
Yang et al., “SSMP: Server Selection for Multipath TCP in CDN Environments,” Globecom 2020—2020 IEEE Global Communications Conference (2020) (6 pages). [cited by applicant]
Zhu et al., “User Mapping Strategy in Multi-CDN Streaming: A Data-Driven Approach,” IEEE Internet of Things Journal, 9(9):6638-6649 (2022). [cited by applicant]