IP Library Granted Patent US 11,102,267
Granted Patent B2
US 11,102,267 · App. 16/480,149 · Granted Aug 24, 2021

Server- and network-assisted dynamic adaptive streaming over hypertext transport protocol signaling

Inventors: Yifan Yu (Beijing, CN); Ozgur Oyman (Palo Alto, CA); Yuan Zhu (Beijing, CN)
Assignee: Apple Inc.
H04L65/608H04L63/166H04L65/1069H04L67/02H04L67/42
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,102,267
App. No.
16/480,149
Granted
Aug 24, 2021
Kind
B2
Abstract

Embodiments of the present disclosure describe methods and apparatuses for server- and network-assisted dynamic adaptive streaming over hypertext transport protocol signaling.

Claims (50)

1. One or more non-transitory, computer-readable media having instructions that, when executed, cause a server to:

set up a first leg of a transmission control protocol (“TCP”) connection between the server and a streaming client of a user equipment;

set up a second leg of the TCP connection between the server and a hypertext transfer protocol over transport layer security (HTTPS) server;

detect, in a ClientHello message transmitted from the streaming client to the HTTPS server, a transport layer security (“TLS”) extension that indicates presence of a server- and network-assisted dynamic adaptive streaming over hypertext transport protocol (“SAND”) message field in the ClientHello message;

in response to detecting the TLS extension, determining contents of the SAND message field in the ClientHello message; and

modify a media presentation description (“MPD”) file based on the contents of the SAND message field determined from the ClientHello message and cause the MPD file to be transmitted to the user equipment.

2. The one or more non-transitory, computer-readable media of claim 1 , wherein the SAND message field is a first SAND message field and the instructions, when executed, further cause the server to:

forward the ClientHello message to the HTTPS server;

receive, from the HTTPS server, a ServerHello message in response to forwarding the ClientHello message to the HTTPS server;

modify the ServerHello message by inserting, in the ServerHello message, a second SAND message field that includes information responsive to the first SAND message field in the ClientHello message; and

forward the modified ServerHello message to the user equipment.

3. The one or more non-transitory, computer-readable media of claim 2 , wherein the first SAND message field includes a status message or a metrics message and the second SAND message field includes a parameters enhancing reception message.

4. The one or more non-transitory, computer-readable media of claim 1 , wherein the SAND message includes a user equipment authentication/authorization identifier (“UEAA ID”) and a service identifier (“ID”) and the instructions, when executed, further cause the server to:

authenticate or authorize the user equipment (“UE”) or over-the-top (“OTT”) streaming service based on the UEAA ID and the service ID; and

engage a SAND entity in a message exchange based on the authentication or authorization of the UE or OTT streaming service.

5. The one or more non-transitory, computer-readable media of claim 1 , wherein the instructions, when executed, further cause the server to:

extract the SAND message field from the ClientHello message based on detection of the TLS extension.

6. The one or more non-transitory, computer-readable media of claim 1 , wherein the server is a packet-switched streaming service (“PSS”) server.

7. The one or more non-transitory, computer-readable media of claim 1 , wherein the server is a mobile edge computing server.

8. The one or more non-transitory, computer-readable media of claim 1 , wherein the SAND message field includes a service identifier to identify a service registered by a mobile network operator.

9. The one or more non-transitory, computer-readable media of claim 2 , wherein the user equipment is to stream video over a TLS connection based on information included in the contents of the second SAND message field.

10. A user equipment (“UE”) comprising:

processing circuitry to implement an over-the-top (“OTT”) streaming client that is configured to:

establish a transmission control protocol (“TCP”) connection with a hypertext transfer protocol over transport layer security (HTTPS) server;

generate a ClientHello message to establish a secured data path to the HTTPS server, the message including a transport layer security (“TLS”) extension that indicates presence of a server- and network-assisted dynamic adaptive streaming over hypertext transport protocol (“SAND”) message field in the ClientHello message;

cause the ClientHello message to be transmitted to the HTTPS server;

receive a ServerHello message from the HTTPS server in response to transmitting the ClientHello message to the HTTPS server;

detect, in the ServerHello message, a TLS extension indicating presence of a second SAND message field in the ServerHello message; and

upon detecting the TLS extension in the ServerHello message, determining contents of the second SAND message field in the ServerHello message.

11. The UE of claim 10 , wherein the message is a TLS handshaking message.

12. The UE of claim 10 , wherein the OTT streaming client is further to stream video over a TLS connection based on information included in the contents of the second SAND message field.

13. The UE of claim 10 , wherein the SAND message is to include a user equipment authentication/authorization identifier (“UEAA ID”) to identify a specific streaming service in the UE.

14. The UE of claim 10 , wherein the SAND message field is to include a service identifier to identify a service registered by a mobile network operator.

15. The UE of claim 10 , wherein the OTT streaming client is further configured to:

receive a media presentation description (“MPD”) file; and

request media segments based on the MPD file.

16. One or more non-transitory, computer-readable media having instructions that, when executed, cause a device to:

establish a transmission control protocol (“TCP”) connection with a hypertext transfer protocol over transport layer security (HTTPS) server;

generate a ClientHello message to establish a secured data path to the HTTPS server, the message including a transport layer security (“TLS”) extension that indicates presence of a server- and network-assisted dynamic adaptive streaming over hypertext transport protocol (“SAND”) message field in the ClientHello message;

cause the ClientHello message to be transmitted to the HTTPS server;

receive a ServerHello message from the HTTPS server in response to transmitting the ClientHello message to the HTTPS server;

detect, in the ServerHello message, a TLS extension indicating presence of a second SAND message field in the ServerHello message; and

upon detecting the TLS extension in the ServerHello message, determining contents of the second SAND message field in the ServerHello message.

17. The one or more non-transitory, computer-readable media of claim 16 , wherein the message is a TLS handshaking message.

18. The one or more non-transitory, computer-readable media of claim 16 , wherein the instructions, when executed, further cause the device to stream video over a TLS connection based on information included in the contents of the second SAND message field.

19. The one or more non-transitory, computer-readable media of claim 16 , wherein the SAND message field is to include a user equipment authentication/authorization identifier (“UEAA ID”) to identify a specific streaming service in the UE.

20. The one or more non-transitory, computer-readable media of claim 16 , wherein the SAND message field is to include a service identifier to identify a service registered by a mobile network operator.

21. The one or more non-transitory, computer-readable media of claim 16 , wherein the instructions, when executed, further cause the device to:

receive a media presentation description (“MPD”) file; and

request media segments based on the MPD file.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: INTEL CORPORATION
To: APPLE INC.
Reel/Frame 053065/0418 →