JP6384699B2 - アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり - Google Patents

アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり Download PDF

Info

Publication number
JP6384699B2
JP6384699B2 JP2017519781A JP2017519781A JP6384699B2 JP 6384699 B2 JP6384699 B2 JP 6384699B2 JP 2017519781 A JP2017519781 A JP 2017519781A JP 2017519781 A JP2017519781 A JP 2017519781A JP 6384699 B2 JP6384699 B2 JP 6384699B2
Authority
JP
Japan
Prior art keywords
media segment
authorization token
token
server
authorization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017519781A
Other languages
English (en)
Other versions
JP2017530484A (ja
Inventor
シン・ワン
Original Assignee
ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ホアウェイ・テクノロジーズ・カンパニー・リミテッド filed Critical ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Publication of JP2017530484A publication Critical patent/JP2017530484A/ja
Application granted granted Critical
Publication of JP6384699B2 publication Critical patent/JP6384699B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/108Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとりに関する。
メディアコンテンツプロバイダまたは配信者は、異なるデバイス(たとえば、テレビジョン、ノートブックコンピュータ、デスクトップコンピュータ、およびモバイルハンドセット)に適した異なる暗号化および/または符号化方式を使用して加入者またはユーザに様々なメディアコンテンツを配信する可能性がある。ハイパーテキスト転送プロトコル(HTTP、hypertext transfer protocol)上の動的アダプティブストリーミング(DASH、dynamic adaptive streaming over hypertext transfer protocol)は、メディアプレゼンテーションディスクリプタ(MPD、media presentation descriptor)と呼ばれるマニフェストフォーマットと、国際標準化機構(ISO、International Organization for Standardization)ベースメディアファイルフォーマット(BMFF、Base Media File Format)、および「Information Technology -- Generic Coding of Moving Pictures and Associated Audio Information: Systems」と題されたISO/国際電気標準会議(IEC、International Electrotechnical Commission) 13818-1に記載されたMPEG-2規格の系統の動画専門家グループ(MPEG、Moving Picture Expert Group)トランスポートストリームのためのセグメントフォーマットとを定義する。
DASHシステムは、参照により組み込まれる「Information Technology -- Dynamic Adaptive Streaming over HTTP (DASH、dynamic adaptive streaming over hypertext transfer protocol) -- part 1: Media Presentation Description and Segment Formats」と題されたISO/IEC 23009-1、2015年12月7日に記載のDASH規格に従って実装され得る。
コンテンツの保護は、コンテンツプロバイダにとって重要である。あるコンテンツ配信サーバは、認可されたユーザからのアクセスを可能にするために、デジタル著作権管理(DRM、digital right management)を使用してデータを暗号化するかまたはデータにデジタルウォーターマークを付ける可能性がある。しかし、DRMは、静的に消費されるダウンロード可能なファイルを保護するために設計されている。DRMは、コンテンツのストリーミングに存在する動的なユーザ-サーバインタラクションをサポートせず、したがって、ストリーミングアプリケーションにおける使用に適さない可能性がある。これらのおよびその他の問題を解決するために、以下でより完全に説明されるように、動的なトークンに基づく認証および認可シグナリングメカニズムが、ストリーミング中に各コンテンツセグメントを保護するために使用される。
一実施形態において、本開示は、ストリーミングクライアントとして構成されたネットワーク要素(NE、network element)によって実施される方法であって、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンをNEのプロセッサによって取得するステップと、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに第1の認可トークンをプロセッサによって埋め込むステップと、第1のメディアセグメントを要求するために、第1の認可トークンを含む第1のコンテンツ要求メッセージをNEの送信機によってコンテンツサーバに送信するステップと、第1の認可トークンがコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするために有効であるときに、第1のメディアセグメントをコンテンツサーバからNEの受信機によって受信するステップとを含む、方法を含む。一部の実施形態において、本開示は、ストリーミングクライアントの認証を要求する認証要求メッセージを送信機によって認証サーバに送信するステップ、第1の認可トークンを取得する前に、認証トークンを含む認証応答メッセージを認証サーバから受信機によって受信するステップ、および/またはコンテンツサーバに第1のコンテンツ要求メッセージを送信する前に第1のコンテンツ要求メッセージに認証トークンを埋め込むステップであって、第1のメディアセグメントが、認証トークンがコンテンツサーバ上の第1のメディアセグメントにアクセスするために有効であるときにさらに受信される、ステップ、および/または認証応答メッセージを受信した後に第1のメディアセグメントに関連するメディアプレゼンテーションディスクリプタ(MPD、media presentation descriptor)を受信機を介して受信するステップをさらに含み、MPDが、第1のメディアセグメントにアクセスするときにセグメントトークンパラメータの代入が必要とされることを示す第1の問い合わせを含み、第1のコンテンツ要求メッセージに第1の認可トークンを埋め込むステップが、第1の認可トークンをセグメントトークンパラメータに代入することと、第1の認可トークンを含むセグメントトークンパラメータを第1のコンテンツ要求メッセージに埋め込むこととを含み、ならびに/またはMPDが、認証および認可(AA、authentication and authorization)システム識別子(ID、identifier)と、第1のメディアセグメントにアクセスするときにAAシステムIDパラメータの代入が必要とされることを示す第2の問い合わせとをさらに含み、方法が、AAシステムIDをAAシステムIDパラメータに代入するステップと、第1のコンテンツ要求メッセージを送信する前に第1のコンテンツ要求メッセージにAAシステムIDパラメータを埋め込むステップとをさらに含み、ならびに/またはMPDが、コンテンツサーバ上の第1のメディアセグメントにアクセスするための第1の認可トークンをさらに含み、第1の認可トークンが、MPDから取得され、ならびに/またはMPDが、認可サーバを特定するユニフォームリソースロケータ(URL、uniform resource locator)をさらに含み、第1の認可トークンを取得するステップが、第1のメディアセグメントにアクセスするためにストリーミングクライアントの認可を要求する認可要求メッセージを、URLに従って認可サーバに送信機によって送信することと、第1の認可トークンを含む認可応答メッセージを認証サーバから受信機によって受信することとを含み、ならびに/または第1の問い合わせが、セグメントトークンパラメータがセグメントに依存することをさらに示し、方法が、コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするための第2の認可トークンをプロセッサによって取得するステップと、第2の認可トークンをセグメントトークンパラメータに代入するステップと、コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするための第2のコンテンツ要求メッセージに第2の認可トークンを含むセグメントトークンパラメータをプロセッサによって埋め込むステップと、第2のメディアセグメントを要求するための第2の認可トークンを含む第2のコンテンツ要求メッセージを送信機によってコンテンツサーバに送信するステップと、第2の認可トークンがコンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするために有効であるときにコンテンツサーバからの第2のメディアセグメントをコンテンツサーバから受信機によって受信するステップとをさらに含み、ならびに/または第1の認可トークンおよび第2の認可トークンが、同じである。
別の実施形態において、本開示は、ストリーミングクライアントを実装するように構成されたNEであって、プロセッサであって、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを取得し、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに第1の認可トークンを埋め込むように構成された、プロセッサと、プロセッサに結合され、第1のメディアセグメントを要求するために、第1の認可トークンを含む第1のコンテンツ要求メッセージをコンテンツサーバに送信するように構成された送信機と、プロセッサに結合され、第1の認可トークンがコンテンツサーバ上の第1のメディアセグメントにアクセスするために有効であるときに、第1のメディアセグメントをコンテンツサーバから受信するように構成された受信機とを含む、NEを含む。一部の実施形態において、本開示は、送信機が、ストリーミングクライアントの認証を要求する認証要求メッセージを認証サーバに送信するようにさらに構成され、受信機が、第1の認可トークンを取得する前に、認証トークンを含む認証応答メッセージを認証サーバから受信するようにさらに構成され、および/または受信機が、認証応答メッセージを受信した後に第1のメディアセグメントに関連するMPDを受信するようにさらに構成され、MPDが、第1の認可トークンの取り出しに関連する情報を含み、プロセッサが、MPD内の情報に従って第1の認可トークンを取得するようにさらに構成され、ならびに/またはプロセッサが、ストリーミングクライアントに関連するクライアント認可トークンを取得することであって、クライアント認可トークンおよび第1の認可トークンが、異なる継続時間の間有効である、取得することと、コンテンツサーバに第1のコンテンツ要求メッセージを送信する前に、第1のコンテンツ要求メッセージにクライアント認可トークンを埋め込むこととを行うようにさらに構成され、ストリーミングクライアントがコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするためにクライアント認可トークンが有効であるときに第1のメディアセグメントがさらに受信され、および/または第1の認可トークンが、コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするために有効でなく、プロセッサが、コンテンツサーバ上の第2のメディアセグメントにアクセスするために第2の認可トークンを取得し、コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするための第2のコンテンツ要求メッセージに第2の認可トークンを埋め込むようにさらに構成され、送信機が、第2のメディアセグメントを要求するための第2の認可トークンを含む第2のコンテンツ要求メッセージをコンテンツサーバに送信するようにさらに構成され、受信機が、第2の認可トークンがコンテンツサーバ上の第2のメディアセグメントにアクセスするために有効であるときに第2のメディアセグメントをコンテンツサーバから受信するようにさらに構成され、および/またはプロセッサが、コンテンツサーバ上に置かれた第1のメディアセグメントに関連するDRMライセンスを得るための第3の認可トークンを取得し、DRMライセンスを得るためのDRMライセンス要求メッセージに第3の認可トークンを埋め込むようにさらに構成され、送信機が、DRMライセンスを要求するための第3の認可トークンを含むDRMライセンス要求メッセージを送信するようにさらに構成され、受信機が、第3の認可トークンがDRMライセンスを取得するために有効であるときにDRMライセンスを受信するようにさらに構成されることも含む。
さらに別の実施形態において、本開示は、コンテンツサーバを実装するように構成されたNEであって、第1のメディアセグメントへのアクセスを要求するストリーミングクライアントから第1のコンテンツ要求メッセージを受信するように構成された受信機であって、第1のコンテンツ要求メッセージが、第1の認可トークンを含む、受信機と、受信機に結合され、第1の認可トークンが有効であることを示す第1の検証を得るように構成されたプロセッサと、プロセッサに結合され、第1の認可トークンが有効であるときにストリーミングクライアントに第1のメディアセグメントを送信するように構成された送信機とを含む、NEを含む。一部の実施形態において、本開示は、第1のコンテンツ要求メッセージが、認証トークンをさらに含み、プロセッサが、認証トークンが有効であることを示す第2の検証を取得するようにさらに構成され、送信機が、認証トークンが有効であるときにストリーミングクライアントに第1のメディアセグメントを送信するようにさらに構成され、および/または第1の認可トークンが、第1のメディアセグメントに関連する第1の期間の間有効であり、第1のコンテンツ要求メッセージが、第1のメディアセグメントに関連する第2の認可トークンをさらに含み、第2の期間の間有効であり、プロセッサが、第2の認可トークンが有効であることを示す第3の検証を取得するようにさらに構成され、送信機が、第2の認可トークンが有効であるときにストリーミングクライアントに第1のメディアセグメントを送信するようにさらに構成され、および/または第1の認可トークンが、第2のメディアセグメントにアクセスするために有効でなく、受信機が、第2のメディアセグメントへのアクセスを要求するストリーミングクライアントから第2のコンテンツ要求メッセージを受信するようにさらに構成され、第2のコンテンツ要求メッセージが、セグメントに依存する認可トークンを含み、プロセッサが、セグメントに依存する認可トークンが有効であることを示す第4の検証を取得するようにさらに構成され、送信機が、セグメントに依存する認可トークンが有効であるときにストリーミングクライアントに第2のメディアセグメントを送信するようにさらに構成され、および/またはNEが、DASHサーバであることも含む。
理解しやすいように、上述の実施形態の任意の1つが、本開示の範囲内の新しい実施形態を生成するためにその他の上述の実施形態のうちの任意の1つまたは複数と組み合わされる可能性がある。
これらのおよびその他の特徴は、以下の詳細な説明を添付の図面および請求項と併せて理解することによってより明確に理解されるであろう。
本開示をより完全に理解するために、同様の参照番号が同様の部分を表す添付の図面および詳細な説明に関連して解釈される以下の簡単な説明がここで参照される。
DASH配信システムの実施形態の概略図である。 DASHシステムのためのAAアーキテクチャの実施形態の概略図である。 ネットワーク内のNEの実施形態の概略図である。 DASHシステムにおいてAAトークンを得る方法の実施形態のプロトコルの図である。 ストリーミング中に認可を実行する方法の実施形態のプロトコルの図である。 ストリーミング中にAAを実行する方法の別の実施形態のプロトコルの図である。 ストリーミング中に長期的な認可と短期的な認可との両方を実行する方法の別の実施形態のプロトコルの図である。 DRMライセンスを得るために認可を実行する方法の実施形態のプロトコルの図である。 MPD内でAA方式をシグナリングするURLテンプレートの実施形態を示す図である。 AAトークンおよびAAトークンURLをシグナリングするURLテンプレートの実施形態を示す図である。 セグメントに依存しないAA情報を問い合わせるためのURL問い合わせ情報要素を示すURLテンプレートの実施形態を示す図である。 セグメントに依存しないAA情報を問い合わせるためのURL問い合わせ情報要素を示すURLテンプレートの別の実施形態を示す図である。 セグメントに依存するAA情報を問い合わせるためのURL問い合わせ情報要素を示すURLテンプレートの別の実施形態を示す図である。 メディアコンテンツを要求する方法の実施形態の流れ図である。 認証トークンを要求する方法の実施形態の流れ図である。 コンテンツ要求を生成する方法の実施形態の流れ図である。 コンテンツ要求を生成する方法の別の実施形態の流れ図である。 ストリーミングシステムにおいてコンテンツアクセスを許可する方法の実施形態の流れ図である。
1つまたは複数の実施形態の例示的な実装が以下で与えられるが、開示されるシステムおよび/または方法は、現在知られているのかまたは存在しているのかにかかわらず任意の数の技術を使用して実装され得ることを最初に理解されたい。本開示は、本明細書において例示され、説明される例示的な設計および実装を含む、以下で示される例示的な実装、図面、および技術にまったく限定されるべきでなく、添付の請求項の均等物の全範囲と併せたそれらの請求項の範囲内で修正され得る。
図1は、DASH配信システム100の実施形態の概略図である。システム100は、「Information Technology -- Dynamic Adaptive Streaming over HTTP (DASH、Dynamic Adaptive Streaming over HTTP) -- part 1: Media Presentation Description and Segment Formats」と題されたISO/IEC 23009-1に記載されている。システム100は、メディアプレゼンテーション準備サーバ110、MPDサーバ120、DASHコンテンツサーバ130、およびDASHクライアント140を含む。DASHクライアント140は、インターネット、有線ネットワーク、および/またはワイヤレスネットワークを含み得る1つまたは複数のネットワークを介してDASHコンテンツサーバ130およびMPDサーバ120に通信可能なように結合される。メディアプレゼンテーション準備サーバ110は、DASHコンテンツサーバ130およびMPDサーバ120に通信可能なように結合され、コンテンツデリバリネットワーク(CDN、content delivery network)の一部を形成する可能性がある。CDNは、コンテンツを配信することを目的として複数のバックボーン上の複数のデータセンターに展開されるサーバの分散型システムを指す。
メディアプレゼンテーション準備サーバ110は、ビデオ、オーディオ、および/またはテキストを含み得るメディアコンテンツを、DASHプロトコルを使用してシステム100において配信するために複数の表現で準備するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。たとえば、メディアプレゼンテーション準備サーバ110は、様々なメディア符号化方式を使用してメディアコンテンツを符号化して、アダプテーション(adaptation)を生成し、アダプテーションセット(adaptation set)をディスクまたは任意のストレージデバイスに記憶する。アダプテーションセットは、異なるビットレート、ビデオフレームレート、空間解像度、ビデオフォーマット、またはこれらの組合せに対応する可能性がある複数のメディア表現を含む。メディアプレゼンテーション準備サーバ110は、メディア表現を、メディアコンテンツの短い再生間隔にそれぞれが対応する複数のメディアセグメントに分ける。メディアセグメントは、DASHコンテンツサーバ130に記憶されるか、またはシステム100内のその他のネットワークノードもしくはサーバ131にキャッシュされる可能性がある。加えて、メディアプレゼンテーション準備サーバ110は、異なる表現、メディアコンテンツの可用性、メディアタイプ、ビットレート、解像度、最小および/もしくは最大帯域幅、メディアコンポーネントの符号化された代替、アクセシビリティの特徴および必要とされるDRM、ならびに/またはメディアコンテンツのその他の特徴などのメディアコンテンツを説明するためのMPDメタデータを生成する。一実施形態において、メディアプレゼンテーション準備サーバ110は、MPDメタデータを拡張可能マークアップ言語(XML)ファイルとして記憶する。
MPDサーバ120は、DASHクライアント140からの要求に応じてDASHクライアント140にMPDメタデータを配信するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。DASHコンテンツサーバ130は、DASHクライアント140からの要求に応じてDASHクライアント140にメディアセグメントを配信するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。図1は別々のサーバ上に実装されたメディアプレゼンテーション準備機能、セグメント配信機能、およびMPD配信機能を示すが、メディアプレゼンテーション準備機能、セグメント配信機能、およびMPD配信機能は、代替的に、同様の機能を実現するために当業者によって決定された通りに構成され得る。
DASHクライアント140は、MPDサーバ120から利用可能なメディアコンテンツの情報を取り出し、DASHコンテンツサーバ130からのメディアコンテンツの配信を要求するように構成されたノートブックコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、またはモバイル電話などの任意のユーザデバイスである可能性がある。DASHクライアント140は、MPDサーバ120からMPDメタデータをダウンロードすることから始める。DASHクライアント140は、ネットワークの状態を判定し、MPDメタデータから取り出された情報、ネットワークの状態、および/またはDASHクライアント140のデバイスの能力に応じてメディアコンテンツの適切な符号化されたバージョンを選択する。ストリーミング再生中に、DASHクライアント140は、ネットワークの状態に基づいて最も高い可能な品質レベルの表現から次のメディアセグメントを適応的に選択し得る。一実施形態において、DASHコンテンツサーバ130は、HTTPサーバであり、DASHクライアント140は、HTTPクライアントである。そのような実施形態において、DASHクライアント140は、HTTP要求によってDASHサーバ130からのメディアセグメントを要求し、DASHコンテンツサーバ130は、HTTP応答によってメディアセグメントを配信する。
一実施形態において、システム100は、DRMシステム150を使用して、メディアプレゼンテーション準備サーバ110によって準備されたメディアコンテンツを保護する。そのような実施形態において、DRMシステム150は、メディアプレゼンテーション準備サーバ110、MPDサーバ120、およびDASHクライアント150に通信可能なように結合される。DRMシステム150は、暗号化されたデータが認可されたユーザによってアクセスされ得るようにデータを暗号化すること、またはコンテンツが自由に配信され得ないようにコンテンツにデジタルウォーターマークを付けることによってコンテンツを保護する。そのような実施形態において、MPDメタデータは、DASHクライアント140などのユーザに権利を与えるDRMシステム150に関連する情報、暗号化鍵、暗号化鍵の場所、またはこれらの組合せなどのコンテンツ保護情報を運ぶコンテンツ保護ディスクリプタ(content protection descriptor)を含む。DASHクライアント140は、運ばれた保護情報を使用して、クライアントデバイスにダウンロードされたコンテンツの使用を管理するためにDRMシステム150からライセンス、鍵、およびその他の情報を獲得する。DRMは、主として、ファイルのダウンロードを使用して配信されたファイルの使用を保護するために設計されており、ユーザが、ファイルをユーザデバイスにダウンロードし、ダウンロードされたファイルをオフラインで消費し得るので、DRMは、DASHクライアント140が再生セッション中にストリーミングのためにセグメントごとにDASHコンテンツサーバ130からメディアコンテンツを取得するDASHにおける動的なサーバ-クライアントのストリーミングのインタラクションに対処しない。
本明細書において開示されるのは、動画専門家グループ(MPEG、moving picture experts group)-DASHおよびDASH-産業フォーラム(IF、Industry Forum)に基づくビデオストリーミングのためのトークンに基づくAA情報のシグナリングおよびやりとりの様々な実施形態である。認証および認可トークンは、何らかの予め決められたAAシステムにおいてクライアントまたはクライアントのユーザがそれぞれ認証および認可された証拠である。一実施形態において、MPDは、AAシステムIDを要求するための問い合わせパラメータ、様々な種類のAAトークン、およびコンテンツサーバ上にあるメディアセグメントにアクセスするためのAAトークンの様々な組合せを含み得る。クライアントは、MPDを受信するとき、必要とされる認証および/または認可トークンをコンテンツ要求に埋め込むことによって、MPD内に示された問い合わせパラメータに従ってコンテンツ要求を生成する。コンテンツサーバは、コンテンツ要求を受信するとき、コンテンツへのアクセスを許可する前に、コンテンツ要求によって与えられたAAトークンが有効であることを検証する。コンテンツサーバは、AAトークンの検証を実行するか、または検証を実行するように検証サーバに要求する可能性がある。クライアントは、任意の種類のプロトコルを使用してAAシステムと通信する可能性があり、異なるAAトークンを得るために異なるAAシステムと通信する可能性がある。開示される実施形態は、DASHシステムに関連して説明されるが、任意の種類のストリーミングシステムに好適である。
図2は、DASHシステム200のためのAAアーキテクチャの実施形態の概略図である。システム200は、システム100と同様であるが、コンテンツへのアクセスを許可するときにAAを実施する。システム200は、インターネット、有線ネットワーク、および/またはワイヤレスネットワークを含む可能性がある1つまたは複数のネットワークを介して互いに通信可能なように結合される認証サーバ211、認可サーバ212、DASHクライアント220、DASHコンテンツサーバ231、および検証サーバ232を含む。DASHクライアント220およびDASHコンテンツサーバ231は、それぞれ、DASHクライアント140およびDASHコンテンツサーバ130と同様であるが、システム200においてストリーミングコンテンツを保護するために認証サーバ211、認可サーバ212、および検証サーバ232によって追加的な認証および/または認可を実行する。
認証サーバ211は、DASHクライアント220からの認証要求に応じてDASHクライアント220を認証するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。認証は、ユーザ名およびパスワードを含み得るクライアントの識別情報および/または資格証明情報(credential)を確認するプロセスを指す。認証サーバ211は、認証が成功すると、認証トークンを生成し、DASHクライアント220に発行する。認証サーバ211は、任意の好適な認証方式、プロトコル、および/または規格を使用し得る。認証トークンは、任意の好適なフォーマットで、たとえば、不透明文字列(opaque string)としてデジタル式に符号化される可能性がある。
認可サーバ212は、DASHクライアント220からの認可要求に応じてDASHクライアント220を認可するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。認可は、クライアントがメディアコンテンツなどの特定のリソースにアクセスするためのパーミッションを有するかどうかを判定するプロセスを指す。認可サーバ212は、認可が成功すると、認可トークンを生成し、DASHクライアント220に発行する。一部の実施形態において、認可プロセスは、認証サーバ211によって実行されるDASHクライアント220の認証に依拠する可能性がある。認可サーバ212は、任意の好適な認可方式、プロトコル、および/または規格を使用し得る。認可トークンは、任意の好適なフォーマットで、たとえば、曖昧文字列としてデジタル式に符号化される可能性がある。
検証サーバ232は、DASHクライアント220の認証トークンおよび認可トークンの有効性および/または信憑性を検証するように構成されたハードウェアコンピュータサーバなどの任意のネットワークデバイスである可能性がある。
DASHクライアント220は、認証サーバ211からの認証を要求し、認証サーバ211から認証トークンを受信する。同様に、DASHクライアント220は、認可サーバ212からの認可を要求し、1つまたは複数の認可トークンを受信する。DASHクライアント220は、DASHコンテンツサーバ231からのメディアセグメントを要求するときに、識別情報およびアクセスパーミッションの証拠としてDASHコンテンツサーバ231に認証トークンおよび/または認可トークンを提供する。たとえば、DASHクライアント220は、各メディアセグメント要求に認証トークンおよび/または認可トークンを埋め込む。一部の実施形態においては、異なるメディアセグメントまたはメディアセグメントの異なる集合が、異なる認可トークンに関連付けられる。したがって、DASHクライアント220は、認可サーバ212からの複数の認可トークンを要求し、認可サーバ212から複数の認可トークンを受信し得る。たとえば、DASHクライアント220は、再生セッション中にストリーミングのために、認可サーバ212からの1つまたは複数の次のセグメントのための認可トークンを動的に要求し、取得する。
DASHコンテンツサーバ231は、DASHクライアント220が有効な認証トークンおよび/または認可トークンを提供するときに、DASHクライアント220がメディアコンテンツにアクセスし、ストリーミングすることを可能にする。たとえば、認可トークンを埋め込まれたストリーミングコンテンツ要求を受信すると、DASHコンテンツサーバ231は、認可トークンを検証するように検証サーバ232に要求し、検証が成功すると、DASHクライアント220にメディアセグメントを配信する。各セグメントを認可トークンに関連付けることによって、DASHコンテンツサーバ231は、メディアコンテンツアクセスの点でDASHクライアント220をより詳細に制御し得る。たとえば、メディアコンテンツの広告および主プログラムに異なる認可トークンが関連付けられる可能性がある。したがって、DASHコンテンツサーバ231は、DASHクライアント220が広告を飛ばし得ないように、DASHクライアント220が広告のための認可トークンを送信するレートを監視し、検証プロセスのペースを制御し得る。
図2は認証サーバ211および認可サーバ212を別々のサーバとして示すが、認証サーバ211および認可サーバ212は、同じサーバであるか、または代替的にサーバのグループである可能性がある。加えて、別個の検証サーバ232を使用する代わりに、DASHコンテンツサーバ231が、トークンの検証をさらに実施する可能性がある。一部の実施形態において、認証サーバ211および認可サーバ212は、DASHコンテンツサーバ231および検証サーバ232とは異なる認証および/または認可の主体によって運用される可能性がある。
システム200は、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバおよびMPDサーバ120などのMPDサーバをさらに含み得る。一実施形態において、認可トークンは、MPDサーバ120に記憶されるMPD内でシグナリングされる。別の実施形態において、たとえば、ユニフォームリソースロケータ(URL、uniform resource locator)のフォーマットの認可サーバ212の位置が、MPDサーバに記憶されるMPD内でシグナリングされる。たとえば、DASHクライアント220は、認証サーバ211による認証を完了した後、MPDサーバからMPDをダウンロードし、MPDを解析して認可サーバ212のURLを得る。その後、DASHクライアント220は、認可サーバ212からの複数の認可トークンを要求する。AA情報のシグナリングおよびやりとりのメカニズムおよびフォーマットの詳細は、以下でより完全に説明される。
図3は、システム100および200などのネットワーク内のNE 300の実施形態の概略図である。たとえば、NE 300は、メディアプレゼンテーション準備サーバ110、MPDサーバ120、DASHコンテンツサーバ130および231、DASHクライアント140および220、認証サーバ211、認可サーバ212、検証サーバ232、ならびに/またはシステム100および200内の任意のその他のネットワークノードとして働く可能性がある。NE 300は、本明細書において説明されるトークンに基づくAAメカニズムおよび方式を実装および/またはサポートするように構成され得る。NE 300は、単一のノードに実装される可能性があり、またはNE 300の機能は、複数のノードに実装される可能性がある。当業者は、用語NEが広範なデバイスを包含し、NE 300がそのようなデバイスの例であるに過ぎないことを認めるであろう。NE 300は、議論を明瞭にすることを目的として含まれており、本開示の応用を特定のNEの実施形態またはNEの実施形態の部類に限定するようにまったく意図されていない。
本開示において説明される特徴/方法の少なくとも一部は、NE 300などのネットワーク装置または構成要素に実装される。たとえば、本開示の特徴/方法は、ハードウェア、ファームウェア、および/またはハードウェア上で実行するためにインストールされたソフトウェアを使用して実装される可能性がある。NE 300は、ネットワークを通じてパケットを転送する任意のデバイス、たとえば、スイッチ、ルータ、ブリッジ、サーバ、クライアントなどである。図3に示されるように、NE 300は、送信機、受信機、またはこれらの組合せである可能性があるトランシーバ(Tx/Rx) 310を含む。Tx/Rx 310は、フレームを送信するためおよび/またはその他のノードからフレームを受信するための複数のポート320に結合される。
フレームを処理するためおよび/またはどのノードにフレームを送信するべきかを決定するために各Tx/Rx 310にプロセッサ330が結合される。プロセッサ330は、1つもしくは複数のマルチコアプロセッサ、および/またはデータストア、バッファなどとして機能し得るメモリデバイス332を含み得る。プロセッサ330は、汎用プロセッサとして実装される可能性があり、または1つもしくは複数の特定用途向け集積回路(ASIC、application specific integrated circuits)および/もしくはデジタル信号プロセッサ(DSP、digital signal processors)の一部である可能性がある。プロセッサ330は、ストリーミングのためにAAトークンのシグナリングおよびやりとりを実行する可能性があり、下でより完全に検討される方法400、500、600、700、800、1400、1500、1600、および1700、ならびに/または本明細書において検討されるその他の流れ図、方式、および方法を実装する可能性があるAA処理構成要素333を含む。したがって、AA処理構成要素333ならびに関連する方法およびシステムを含めることは、NE 300の機能を改善する。さらに、AA処理構成要素333は、特定の製品(たとえば、ネットワーク)の異なる状態への変換を実現する。代替的な実施形態において、AA処理構成要素333は、プロセッサ330によって実行され得る、メモリデバイス332に記憶された命令として実装される可能性がある。さらに、代替的な実施形態において、NE 300は、方法400、500、700、800、1400、1500、1600、および1700を実装するための任意のその他の手段を含み得る。
メモリデバイス332は、コンテンツを一時的に記憶するためのキャッシュ、たとえば、ランダムアクセスメモリ(RAM、random-access memory)を含み得る。加えて、メモリデバイス332は、比較的長くコンテンツを記憶するための長期的ストレージ、たとえば、読み出し専用メモリ(ROM、read-only memory)を含み得る。たとえば、キャッシュおよび長期的ストレージは、ダイナミックRAM (DRAM、dynamic random-access memory)、ソリッドステートドライブ(SSD、solid-state drives)、ハードディスク、またはこれらの組合せを含む可能性がある。メモリデバイス332は、実施形態に応じてメディアデータ、AAトークン、およびMPD 334を記憶するように構成される。
実行可能な命令をプログラミングすることおよび/または実行可能な命令をNE 300にロードすることによって、プロセッサ330および/またはメモリデバイス332のうちの少なくとも一方が変更され、本開示によって教示される新規性のある機能を有する特定のマシンまたは装置、たとえば、マルチコア転送アーキテクチャへとNE 300を部分的に変換することが理解される。実行可能なソフトウェアをコンピュータにロードすることによって実施され得る機能が、よく知られている設計規則によってハードウェアの実装に変換され得ることは、電気工学およびソフトウェア工学の基本である。概して、概念をソフトウェアで実装することと概念をハードウェアで実装することと間の判断は、ソフトウェアドメインからハードウェアドメインへの変換にかかわるいかなる問題よりも設計の安定性および生産される単位数の考慮に左右される。概して、ハードウェアの実装を再設計することはソフトウェアの設計を再設計するよりも高価であるので、やはり頻繁に変更される設計はソフトウェアで実装される方がよい可能性がある。概して、大量生産工程(large production run)に関しては、ハードウェアの実装がソフトウェアの実装よりも安価である可能性があるので、安定しており、大量に生産される設計はハードウェア、たとえば、ASICで実装される方がよい可能性がある。多くの場合、設計は、ソフトウェアの形態で開発され、試験され、ソフトウェアの命令を配線するASICにおける同等のハードウェアの実装に、よく知られている設計規則によって後で変換される可能性がある。新しいASICによって制御されるマシンが特定のマシンまたは装置であるのと同じように、実行可能な命令(たとえば、非一時的媒体/メモリに記憶されたコンピュータプログラム製品)によってプログラミングされたかおよび/または実行可能な命令(たとえば、非一時的媒体/メモリに記憶されたコンピュータプログラム製品)をロードされたコンピュータは、同様に、特定のマシンまたは装置と見なされ得る。
システム200などのDASH配信システムは、特定のMPDサーバのプロバイダ、エンドユーザ、エンドユーザデバイス、コンテンツ配信システムが規則および/もしくは合意に基づいて動作することを可能にするか、または特定のMPDサーバのプロバイダ、エンドユーザ、エンドユーザデバイス、コンテンツ配信システムが規則および/もしくは契約に基づいて動作するように制約するために認証および/または認可を使用する可能性がある。第1の筋書きにおいて、ストリーミングは、MPDサービスプロバイダが配信の権利を有する地理的な領域に制約される。第2の筋書きにおいて、ストリーミングは、信頼できるメディアプレイヤーに制約される。たとえば、ストリーミングは、ビデオ、MPD内の広告を提示する、および/または信頼できるメディアプレイヤーに挿入をシグナリングすることによって広告を提示する可能性がある。信頼できるメディアは、サービスの課金のために正確な再生レポートを送り返す可能性がある。第3の筋書きにおいて、ストリーミングは、特定のデータ範囲もしくは視聴回数、特定のデバイス、特定の保護システム、デバイスもしくは同時ストリームの最大数、またはこれらの組合せに関して、加入者であるか、またはたとえば、標準画質(SD、standard definition)、高精細(HD、high definition)、および/もしくは超高精細(UHD、ultra-high definition)などの特定のメディア品質フォーマットのメディアコンテンツをストリーミングおよび/もしくはダウンロードするための購入されたレンタル権および/もしくは所有権を有するエンドユーザに制約される。第4の筋書きにおいて、ストリーミングは、テレビジョン(TV、television) Everywhere (television (TV) Everywhere)、UltraViolet、OpenID、および様々なシングルサインオン(SSO、single signed on)などの連合識別情報システム(federated identity system)と、デジタルエンターテインメントコンテンツエコシステム(DECE、digital entertainment content ecosystem)、KeyChest、およびTV Everywhereなどの連合権利システムとを使用して可能にされ得る。
図4は、システム200などのDASHシステムにおいてAAトークンを得る方法400の実施形態のプロトコルの図である。方法400は、MPDサーバ120などのMPDサーバと、認証サーバ211などの認証サーバと、認可サーバ212などの認可サーバと、DASHクライアント220などのDASHクライアントとの間で実施され、これらの構成要素のいずれも、NE 300として実装され得る。方法400は、DASHクライアントがシステム200にアクセスし始めるときに開始する。ステップ410においては、DASHクライアントが、認証サーバに認証要求を送信する。たとえば、ステップ410は、DASHクライアントがコンテンツストリーミングサービスウェブサイトにログオンするときに開始される。ステップ420においては、認証サーバが、DASHクライアントおよび/またはDASHクライアントのメディアプレイヤーを認証する。たとえば、認証サーバは、DASHクライアントの加入契約および/またはメンバーシップに基づいて認証を実行し得る。ステップ430においては、認証が成功すると、認証サーバが、DASHクライアントに認証トークンを送信する。ステップ440においては、DASHクライアントが、MPDサーバにMPD要求を送信する。ステップ450においては、MPDサーバが、DASHクライアントにMPD応答を送信する。ステップ460においては、MPD応答を受信すると、DASHクライアントが、MPD応答を解析して、認可サーバのURLを含み得る認可情報を取り出す。認可情報のシグナリングは、以下でより完全に説明される。ステップ470においては、DASHクライアントが、認可サーバに認可要求を送信する。ステップ480においては、認可が成功すると、認可サーバが、DASHクライアントに認可トークンを送信する。認証トークンおよび認可トークンを取得した後、DASHクライアントは、認証トークンおよび/または認可トークンを使用してシステム内でメディアコンテンツをストリーミングし得る。ステップ470および480は、ストリーミングセッションの前におよびストリーミングセッションの間、繰り返される可能性があることに留意されたい。ステップ460〜480は、以下でより完全に説明されるようにDRMのための認可トークンを得るためにやはり使用され得る。さらに、一部の実施形態において、MPDの取り出しは、認証トークンに加えて認可トークンを必要とする。そのような実施形態において、DASHクライアントは、ステップ430において認証トークンを受信した後に第1の認可トークンを要求し、ステップ440においてMPD要求に認証トークンと第1の認可トークンとを埋め込む。その後、DASHクライアントは、ステップ450において受信されたMPD応答に従って第2の認可トークンを取得し、第2の認可トークンを使用してメディアセグメントにアクセスする。メディアセグメントのアクセスは、以下でより完全に説明されるように、認証トークンおよび/または認可トークンの様々な組合せを必要とする可能性がある。
図5〜図7は、DASHクライアント220などのDASHクライアントと、DASHコンテンツサーバ231などのDASHコンテンツサーバと、検証サーバ232などの検証サーバとの間で、システム200などのDASHシステムにおいてAAを実行するいくつかのユースケースの筋書きを示し、これらの構成要素のいずれも、NE 300として実装され得る。図5は、ストリーミング中に認可を実行するための方法500の実施形態のプロトコルの図である。方法500は、DASHクライアントが方法400を使用して1つまたは複数のメディアセグメントに関連する認証トークンを取得した後に始まる。ステップ510においては、DASHクライアントが、メディアセグメントを要求するメディアセグメント要求をDASHコンテンツサーバに送信する。メディアセグメント要求は、要求されるメディアセグメントに関連する認可トークンを含む。ステップ520においては、要求を受信すると、DASHコンテンツサーバが、認可トークンの検証を要求する検証要求を検証サーバに送信する。ステップ530においては、検証サーバが、認可トークンが有効であることを検証する。ステップ540においては、検証サーバが、検証が成功したことを示す検証応答をDASHコンテンツサーバに送信する。ステップ550においては、検証応答を受信した後、DASHコンテンツサーバが、要求されるメディアセグメントをDASHクライアントに送信する。DASHコンテンツサーバは、ステップ530において認可トークンの検証が成功するとき、要求されるメディアセグメントを送信するだけである可能性があることに留意されたい。方法500は、ストリーミングセッションの継続時間の間、繰り返される可能性がある。DASHクライアントは、すべてのメディアセグメントもしくはメディアセグメントの集合を取得するために同じ認可トークンを使用するか、または異なるメディアセグメントのために異なるトークンを使用する可能性がある。
図6は、ストリーミング中にAAを実行する方法600の別の実施形態のプロトコルの図である。方法600は、DASHクライアントが方法400を使用してDASHクライアントおよび/またはDASHクライアントのデバイスに関連する認証トークンと、1つまたは複数のメディアセグメントに関連する認可トークンとを取得した後に始まる。ステップ610においては、DASHクライアントが、メディアセグメントを要求するメディアセグメント要求をDASHコンテンツサーバに要求する。メディアセグメント要求は、DASHクライアントに関連する認証トークンと、メディアセグメントに関連する認可トークンとの両方を要求に含む。ステップ620においては、要求を受信すると、DASHコンテンツサーバが、認証トークンと認可トークンとの両方の検証を要求する検証要求を検証サーバに送信する。ステップ630においては、検証サーバが、認証トークンと認可トーンとの両方が有効であることを検証する。ステップ640においては、検証サーバが、認証トークンと認可トークンとの両方の検証が成功したことを示す検証応答をDASHコンテンツサーバに送信する。ステップ650においては、検証応答を受信した後、DASHコンテンツサーバが、要求されるメディアセグメントをDASHクライアントに送信する。DASHコンテンツサーバは、ステップ630において認証トークンと認可トークンとの両方の検証が成功するとき、要求されるメディアセグメントを送信するだけである可能性があることに留意されたい。方法600は、ストリーミングセッションの継続時間の間、繰り返される可能性がある。DASHクライアントは、すべてのメディアセグメントもしくはメディアセグメントの集合を取得するために同じ認可トークンを使用するか、または異なるメディアセグメントのために異なるトークンを使用する可能性がある。
図7は、ストリーミング中に長期的な認可と短期的な認可との両方を実行する方法700の別の実施形態のプロトコルの図である。方法700は、DASHクライアントが長期的認証トークンおよび短期的認可トークンを取得した後に始まる。ビジネス上およびセキュリティ上の判断に応じて、場合によっては、方法400を使用して、長期的認可トークンは、DASHクライアント、DASHクライアントのデバイス、またはストリーミングセッションに関連付けられ、短期的認可トークンは、1つまたは複数のメディアセグメントに関連付けられ、その他の場合、方法400を使用して、短期的認可トークンは、DASHクライアント、DASHクライアントのデバイス、またはストリーミングセッションに関連付けられ、長期的認可トークンは、1つまたは複数のメディアセグメントに関連付けられる。ステップ710においては、DASHクライアントが、メディアセグメントを要求するメディアセグメント要求をDASHコンテンツサーバに送信する。メディアセグメント要求は、DASHクライアント、DASHクライアントのデバイス、またはストリーミングセッションに関連する長期的認可トークンと、メディアセグメントに関連する短期的認可トークンとの両方を要求に含む。ステップ720においては、要求を受信すると、DASHコンテンツサーバが、長期的認可トークンと短期的認可トークンとの両方の検証を要求する検証要求を検証サーバに送信する。ステップ730においては、検証サーバが、長期的認可トークンと短期的認可トークンとの両方の有効性を検証する。ステップ740においては、検証サーバが、長期的認可トークンと短期的認可トークンとの両方の検証が成功したことを示す検証応答をDASHコンテンツサーバに送信する。ステップ750においては、検証応答を受信した後、DASHコンテンツサーバが、要求されるメディアセグメントをDASHクライアントに送信する。DASHコンテンツサーバは、ステップ730において長期的認証トークンと短期的認証トークンとの両方の検証が成功するとき、要求されるメディアセグメントを送信するだけである可能性があることに留意されたい。方法700は、ストリーミングセッションの継続時間の間、繰り返される可能性がある。DASHクライアントは、すべてのメディアセグメントもしくはメディアセグメントの集合を取得するために同じ認可トークンを使用するか、または異なるメディアセグメントのために異なるトークンを使用する可能性がある。
図8は、DRMライセンスを得るために認可を実行する方法800の実施形態のプロトコルの図である。方法800は、DASHクライアント220などのDASHクライアントとDRMシステム150などのDRMシステムとの間で実施され、これらの構成要素のいずれも、NE 300として実装され得る。方法800は、DASHクライアントがライセンスの獲得のために必要とされる何らかの認証トークンおよび認可トークンを取得した後に始まる。ステップ810においては、DASHクライアントが、DRMライセンスを要求するDRMライセンス要求をDRMシステムに送信する。DRMライセンス要求は、これらの認証トークンおよび認可トークンを要求に含む。ステップ820においては、要求を受信すると、DRMシステムが、認証トークンおよび認可トークンの検証を要求する検証要求を検証サーバに送信する。ステップ830においては、検証サーバが、認証トークンおよび認可トークンの有効性を検証する。ステップ840においては、検証サーバが、認証トークンおよび認可トークンの検証が成功したことを示す検証応答をDASHコンテンツサーバに送信する。ステップ850においては、検証応答を受信した後、DRMシステムのサーバが、DASHクライアントにDRMライセンスを送信する。DRMシステムは、ステップ830において認証トークンおよび認可トークンの検証が成功するとき、DRMライセンスを送信するだけである可能性があることに留意されたい。
システム200などのDASHシステムは、サーバとクライアントとの間でAA情報をシグナリングし、やりとりし得る。1つの実施形態は、ISO/IEC文書23009-1に記載の認証ディスクリプタ(authentication descriptor)および認可ディスクリプタ(authorization descriptor)ならびにURL問い合わせパラメータ挿入メカニズムを利用することである。認証ディスクリプタおよび認可ディスクリプタは、MPD内でシグナリングされる。URL問い合わせパラメータ挿入メカニズムは、DASHクライアント140および220などのDASHクライアントからのフィードバックを要求するためにMPDにURLQueryInfo要素を挿入する。たとえば、認証ディスクリプタおよび認可ディスクリプタは、AAトークンを取得するための可能なAA方式、プロトコル、および/もしくは規格、ならびに/または可能なサーバをシグナリングするように拡張される可能性がある。認証ディスクリプタおよび認可ディスクリプタは、AAトークンまたはURLが利用可能であるときに、AAトークンを運ぶ、および/またはAAトークンが取り出され得るURLをシグナリングする可能性もある。URL問い合わせパラメータ挿入メカニズムは、メディアセグメントを要求するときにAA情報が必要とされることをシグナリングするように拡張される可能性がある。
一実施形態において、AA情報は、AAシステム識別子(ID、identifier)およびAAトークンを含む。AAシステムIDは、AAシステム200などの特定のAAシステムを特定するために使用される。AAトークンは、AAシステムによって発行され、符号化された曖昧文字列を含む。AAシステムIDと、AAシステムIDによって特定されたAAシステムによって発行されたAAトークンとは、一緒に、AA識別ペア(AA identification pair)を形成する。DASHシステムは、任意の数のAA識別ペアを含み得る。
MPDは、AAシステムIDおよびAAトークンがメディアセグメント要求のために必要とされることをシグナリングするためにUrlQueryInfo要素を含み得る。AA情報のシグナリングおよびやりとりを容易にするために、AASystemIdパラメータおよびAATokenパラメータが、それぞれ、AAシステムIDおよびAATokenを表すために定義される。AASystemIdおよびAATokenパラメータは、AAトークンおよびAAトークンを取り出すためのURLがセグメントに依存することを示すために、それぞれ、AAToken{$Number$}およびAATokenURL{$Number$}と表記されるセグメント変数(segment variant)を含む可能性がある。したがって、AAToken、AAToken1、AAToken2、AATokenURL、AATokenURL1、およびAATokenURL2は、有効なURLパラメータである。UrlQueryInfo要素は、$AASystemId$および$AAToken$にAASystemIdおよびAATokenの値をそれぞれ代入するようにDASHクライアント220などのDASHクライアントに要求するためのURL代入パラメータ識別子$AASystemId$および$AAToken$を含み得る。URL代入パラメータ名および識別子は、下の表にまとめられる。
Figure 0006384699
Figure 0006384699
図9は、MPD内でAA方式911、912、913、および914をシグナリングするURLテンプレート900の実施形態を示す。URLテンプレート900は、以下で方法1600においてより完全に説明されるように、ストリーミングのためにAAを使用するときに、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバによって生成され、MPDサーバ120などのMPDサーバにMPDの一部として記憶される。AA方式911、912、913、および914は、それぞれ、AAシステムID 921、922、923、および924によって特定される。AA方式911〜914は、AAトークンを発行するAAシステム、AAプロトコル、および/またはAA規格に関連する情報を提供し得る。一部の実施形態において、方式911〜914は、認証および認可のために別々の方式を示す可能性がある。たとえば、DASHクライアント220などのDASHクライアントは、方式911〜914のうちの1つに従ってAAシステム200などのAAシステムからのAAトークンを要求する。
図10は、AAトークン1011およびAAトークンURL 1012をシグナリングするURLテンプレート1000の実施形態を示す。URLテンプレート1000は、以下で方法1600においてより完全に説明されるように、ストリーミングのためにAAを使用するときに、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバによって生成され、MPDサーバ120などのMPDサーバにMPDの一部として記憶される。AAトークン1011は、AAトークン文字列を示す。AAトークンURL 1012は、AAトークンがトリガされ得るURLを示す。たとえば、DASHクライアント220などのDASHクライアントは、メディアセグメントを要求するときに、DASHコンテンツサーバ231などのDASHコンテンツサーバにAAトークン1011を提供する可能性がある。代替的に、DASHクライアントは、メディアセグメントを要求するときに、AAトークンURLからAAトークンを取り出し、取り出されたAAトークンをDASHコンテンツサーバに提供する可能性がある。
図11は、セグメントに依存しないAA情報を問い合わせるためのURL問い合わせ情報要素1101を示すURLテンプレート1100の実施形態を示す図である。URLテンプレート1100は、下で方法1600においてより完全に説明されるように、ストリーミングのためにAAを使用するときに、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバによって生成され、MPDサーバ120などのMPDサーバにMPDの一部として記憶される。URL問い合わせ情報要素1101は、DASHコンテンツサーバ231などのDASHコンテンツサーバからのメディアセグメントを要求するとき、AAシステムIDおよびセグメントに依存しないAAトークンが必要とされることを示す。
図12は、セグメントに依存しないAA情報を問い合わせるためのURL問い合わせ情報要素1101、1201、および1202を示すURLテンプレート1200の別の実施形態を示す。URLテンプレート1200は、下で方法1600においてより完全に説明されるように、ストリーミングのためにAAを使用するときに、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバによって生成され、MPDサーバ120などのMPDサーバにMPDの一部として記憶される。URL問い合わせ情報要素1201および1202は、DASHコンテンツサーバ231などのDASHコンテンツサーバからのメディアセグメントを要求するとき、複数のセグメントに依存しないトークンが必要とされることを示す。
図13は、セグメントに依存するAA情報を問い合わせるためのURL問い合わせ情報要素1301を示すURLテンプレート1300の別の実施形態を示す。URLテンプレート1300は、以下で方法1600においてより完全に説明されるように、ストリーミングのためにAAを使用するときに、メディアプレゼンテーション準備サーバ110などのメディアプレゼンテーション準備サーバによって生成され、MPDサーバ120などのMPDサーバにMPDの一部として記憶される。URL問い合わせ情報要素1301は、DASHコンテンツサーバ231などのDASHコンテンツサーバからのメディアセグメントを要求するとき、セグメントに依存するトークンが必要とされることを示す。
一実施形態においては、DASHクライアント220などのDASHクライアントが、MPDサーバ120などのMPDサーバからURLテンプレート900、1000、および1100を受信する。DASHクライアントは、テンプレート900からAAシステムID、たとえば、「urn:org:example:plan-c」を選択し、テンプレート1000からAAトークン、たとえば、「nitfHRCrtziwO2HwPfWw~yYD」を選択する。その後、DASHクライアントは、以下に示されるように、それぞれ、セグメント要求URLを構築するときに$AASystemId$および$AAToken$パラメータに選択されたAAシステムIDおよび選択されたAAトークンを代入する。
http://www.example.com/dash/video_1_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYD
http://www.example.com/dash/video_2_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYD
http://www.example.com/dash/video_3_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYD
別の実施形態においては、DASHクライアント220などのDASHクライアントが、MPDサーバ120などのMPDサーバからURLテンプレート900、1000、および1300を受信する。DASHクライアントは、テンプレート900からAAシステムID、たとえば、「urn:org:example:plan-c」を選択し、それぞれの第iのメディアセグメントに関してテンプレート1000からAAトークン、たとえば、「i_nitfHRCrtziwO2HwPfWw~yYD」を選択する。その後、DASHクライアントは、以下に示されるように、それぞれ、セグメント要求URLを構築するときに$AASystemId$および$AATokeni$パラメータに選択されたAAシステムIDおよび選択されたAAトークンを代入する。
http://www.example.com/dash/video_1_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken1=1_nitfHRCrtziwO2HwPfWw~yYD
http://www.example.com/dash/video_2_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken2=2_nitfHRCrtziwO2HwPfWw~yYD
http://www.example.com/dash/video_3_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken3=3_nitfHRCrtziwO2HwPfWw~yYD
図14は、メディアコンテンツを要求する方法1400の実施形態の流れ図である。方法1400は、NE 300として実装され得るDASHクライアント140および220などのストリーミングクライアントによって実施される。方法1400は、方法500、600、700、および800と同様のメカニズムを使用する。方法1400は、ストリーミングクライアントがメディアセグメントを要求するときに実施される。ステップ1410においては、第1の認可トークンが、DASHコンテンツサーバ130および231などのコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするために取得される。ステップ1420においては、第1の認可トークンが、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに埋め込まれる。ステップ1430においては、第1の認可トークンを含む第1のコンテンツ要求メッセージが、第1のメディアセグメントを要求するためにコンテンツサーバに送信される。ステップ1440においては、第1の認可トークンがコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするために有効であるときに、第1のメディアセグメントがコンテンツサーバから受信される。
図15は、認証トークンを要求する方法1500の実施形態の流れ図である。方法1500は、NE 300として実装され得るDASHクライアント140および220などのストリーミングクライアントによって実施される。方法1500は、方法400と同様のメカニズムを使用する。方法1500は、ストリーミングクライアントが任意のメディアコンテンツを要求し得るよりも前に実施される。ステップ1510においては、ストリーミングクライアントの認証を要求する認証要求メッセージが、認証サーバに送信される。ステップ1520においては、認証トークンを含む認証応答メッセージが、認証サーバから受信される。
図16は、コンテンツ要求を生成する方法1600の実施形態の流れ図である。方法1600は、NE 300として実装され得るDASHクライアント140および220などのストリーミングクライアントによって実施される。方法1600は、URLテンプレート900〜1300において説明されたシグナリングメカニズムを使用する。方法1600は、方法1500を使用することによってストリーミングクライアントが認証を完了した後に実施される。ステップ1610においては、MPDが受信される。MPDは、AAシステムIDと、第1のメディアセグメントにアクセスするときにセグメントトークンパラメータの代入が必要とされることを示す第1の問い合わせと、第1のメディアセグメントにアクセスするときにAAシステムIDパラメータの代入を必要とする第2の問い合わせとを含む。たとえば、第1のメディアセグメントは、DASHコンテンツサーバ130および231と同様のコンテンツサーバに記憶される。MPDは、URLテンプレート900〜1300と同様である可能性がある。AAシステムIDは、AAシステムID 921〜924と同様である可能性がある。第1の問い合わせおよび第2の問い合わせは、URL問い合わせ情報要素1101、1201、1202、および1301と同様である。
ステップ1620においては、AAシステムIDが、AAシステムIDパラメータに代入される。ステップ1630においては、第1の認可トークンが、セグメントトークンパラメータに代入される。第1の認可トークンは、たとえば、AAトークン1011がURLテンプレート1000に埋め込まれる符号化された文字列であるURLテンプレート1000に示されたように、MPDが第1の認可トークンを運ぶとき、MPDから直接取り出され得る。代替的に、MPDが、AAトークンURL 1012と同様に認可サーバを示す可能性があり、第1の認可トークンが、認可サーバから取得される可能性がある。
ステップ1640においては、第1の認可トークンを含むセグメントトークンパラメータが、第1のコンテンツ要求メッセージに埋め込まれる。ステップ1650においては、AAシステムIDを含むAAシステムIDパラメータが、第1のコンテンツ要求メッセージに埋め込まれる。その後、ストリーミングクライアントは、第1のメディアセグメントを要求するためにコンテンツサーバに第1のコンテンツ要求メッセージを送信し得る。MPDは、たとえば、方法500〜800において説明されたように、コンテンツサーバ上のその他のセグメントにアクセスするかまたはDRMライセンスを取得するためにその他のトークンが必要とされることを示すためのその他の問い合わせパラメータを含む可能性があることに留意されたい。加えて、方法1600のステップの順序は、示された通り実施されるか、または代替的に、同様の機能を実現するために当業者によって決定された通りに構成される可能性がある。ステップ1620〜1650などのステップの一部は、ストリーミングセッション中に実施され得る。
図17は、コンテンツ要求を生成する方法1700の別の実施形態の流れ図である。方法1700は、NE 300として実装され得るDASHクライアント140および220などのストリーミングクライアントによって実施される。方法1700は、方法500〜800と同様のシグナリングメカニズムを使用する。方法1700は、方法1500を使用し、URLテンプレート900〜1300と同様のテンプレートを含むMPDを受信することによってストリーミングクライアントが認証トークンを取得した後に実施される。ステップ1710においては、第1の認可トークンが、DASHコンテンツサーバ130および231などのコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするために取得される。第1の認可トークンは、MPDから取り出されるか、またはたとえば、MPDによって示される認可サーバから取得される可能性がある。ステップ1720においては、第1の認可トークンが、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに埋め込まれる。
ステップ1730においては、たとえば、URL問い合わせ情報要素1101、1201、1202、および1301などのMPD内の問い合わせに従って、コンテンツサーバ上の第1のメディアセグメントにアクセスするために認証トークンが必要とされるかどうかの判定がなされる。認証トークンが必要とされると判定するとき、方法1700は、ステップ1740に進む。ステップ1740においては、認証トークンが、第1のメディアにアクセスするための第1のコンテンツ要求メッセージに埋め込まれる。たとえば、ステップ1740は、ステップ610においてメディアセグメント要求を生成するために方法600によって使用される可能性がある。
認証トークンが必要とされないと判定するとき、方法1700は、ステップ1750に進む。ステップ1750においては、たとえば、URL問い合わせ情報要素1101、1201、1202、および1301などのMPD内の問い合わせに従って、コンテンツサーバ上の第1のメディアセグメントにアクセスするために第2の認可トークンが必要とされるかどうかの判定がなされる。第2の認可トークンが必要とされると判定するとき、方法1700は、ステップ1760に進む。ステップ1760においては、第2の認可トークンが、コンテンツサーバ上の第1のメディアセグメントにアクセスするために取得される。たとえば、第1の認可トークンは、第1のメディアセグメントに関連する長期的トークンである可能性があり、第2の認可トークンは、ストリーミングクライアントまたはストリーミングセッションに関連する短期的トークンである可能性がある。ステップ1770においては、第2の認可トークンが、第1のメディアにアクセスするための第1のコンテンツ要求メッセージに埋め込まれる。たとえば、ステップ1760および1770は、ステップ710においてメディアセグメント要求を生成するために方法700によって使用される可能性がある。その後、ストリーミングクライアントは、第1のメディアセグメントを要求するためにコンテンツサーバに第1のコンテンツ要求メッセージを送信し得る。方法1700は、ストリーミングセッション中に異なるメディアセグメントに関して繰り返され得る。異なるメディアセグメントにアクセスするためにセグメントに依存するトークンが必要とされることをMPDが示すとき、第1の認可トークンは、異なるメディアセグメントに関して異なる可能性がある。方法1700に示されたステップの順序は、示された通り実施されるか、または代替的に、同様の機能を実現するために当業者によって決定された通りに構成される可能性があることに留意されたい。
図18は、システム200などのストリーミングシステムにおいてコンテンツアクセスを許可する方法1800の実施形態の流れ図である。方法1800は、NE 300として実装され得るDASHコンテンツサーバ130および231などのストリーミングコンテンツサーバによって実施される。方法1800は、方法500〜800と同様のメカニズムを使用する。方法1800は、コンテンツサーバ上に置かれた第1のメディアセグメントへのアクセスを要求するストリーミングクライアントからコンテンツ要求メッセージが受信されるときにステップ1810において始まる。第1のコンテンツ要求メッセージは、AAトークン1011と同様の第1の認可トークンを含む。ステップ1820においては、第1の認可トークンが有効であることを示す第1の検証が得られる。たとえば、方法500〜800に示されたように、コンテンツサーバが、第1の認可トークンが有効であるか確認するように検証サーバに要求する可能性があり、検証サーバが、検証を行う可能性がある。ステップ1830においては、第1の認可トークンが有効であるとき、第1のメディアセグメントがストリーミングクライアントに送信される。
実施形態においては、NEが、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを取得するための手段と、コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに第1の認可トークンを埋め込むための手段と、第1のメディアセグメントを要求するために、第1の認可トークンを含む第1のコンテンツ要求メッセージをコンテンツサーバに送信するための手段と、第1の認可トークンがコンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするために有効であるときに、第1のメディアセグメントをコンテンツサーバから受信するための手段とを含む。
実施形態においては、NEが、第1のメディアセグメントへのアクセスを要求するストリーミングクライアントから第1のコンテンツ要求メッセージを受信するための手段であって、第1のコンテンツ要求メッセージが、第1の認可トークンを含む、手段と、第1の認可トークンが有効であることを示す第1の検証を得るための手段と、第1の認可トークンが有効であるとき、ストリーミングクライアントに第1のメディアセグメントを送信するための手段とを含む。
いくつかの実施形態が本開示において与えられたが、開示されたシステムおよび方法は、本開示の精神または範囲を逸脱することなく多くのその他の特定の形態で具現化される可能性があることを理解されたい。これらの例は、例示的であって限定的でないと考えられるべきであり、意図は、本明細書において与えられた詳細に限定されるべきでない。たとえば、様々な要素もしくは構成要素が、組み合わされるかもしくは別のシステムに統合される可能性があり、または特定の特徴が、省略されるかもしくは実装されない可能性がある。
様々な実施形態において分離しているまたは別々であるものとして説明され、図示された技術、システム、サブシステム、および方法は、本開示の範囲を逸脱することなくその他のシステム、モジュール、技術、または方法と組み合わされるかまたは統合される可能性がある。互いに結合されるかもしくは直接結合されるか、または互いに通信しているものとして示されたかまたは検討されたその他のものが、電気的であるか、機械的であるか、またはそれ以外であるかにかかわらず何らかのインターフェース、デバイス、または中間構成要素を通じて間接的に結合されるかまたは通信している可能性がある。変更、置き換え、および改変のその他の例が、当業者によって解明可能であり、本明細書において開示された精神および範囲を逸脱することなくなされ得る。
100 DASH配信システム
110 メディアプレゼンテーション準備サーバ
120 MPDサーバ
130 DASHコンテンツサーバ
131 サーバ
140 DASHクライアント
150 DRMシステム
200 DASHシステム
211 認証サーバ
212 認可サーバ
220 DASHクライアント
231 DASHコンテンツサーバ
232 検証サーバ
300 NE
310 トランシーバ(Tx/Rx)
320 ポート
330 プロセッサ
332 メモリデバイス
333 AA処理構成要素
334 メディアデータ、AAトークン、およびMPD
400 方法
500 方法
600 方法
700 方法
800 方法
900 URLテンプレート
911 AA方式
912 AA方式
913 AA方式
914 AA方式
921 AAシステムID
922 AAシステムID
923 AAシステムID
924 AAシステムID
1000 URLテンプレート
1011 AAトークン
1012 AAトークンURL
1100 URLテンプレート
1101 URL問い合わせ情報要素
1200 URLテンプレート
1201 URL問い合わせ情報要素
1202 URL問い合わせ情報要素
1300 URLテンプレート
1301 URL問い合わせ情報要素
1400 方法
1500 方法
1600 方法
1700 方法
1800 方法

Claims (20)

  1. ストリーミングクライアントとして構成されたネットワーク要素(NE、network element)によって実施される方法であって、
    コンテンツサーバとは異なる認可サーバから、前記コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを前記NEのプロセッサによって取得するステップであって、前記認可サーバは、前記第1のメディアセグメントに関連するメディアプレゼンテーションディスクリプタ(MPD、media presentation descriptor)において特定される、ステップと、
    前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに前記第1の認可トークンを前記プロセッサによって埋め込むステップと、
    前記第1のメディアセグメントを要求するために、前記第1の認可トークンを含む前記第1のコンテンツ要求メッセージを前記NEの送信機によって前記コンテンツサーバに送信するステップと、
    前記第1の認可トークンが前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするために有効であるときに、前記第1のメディアセグメントを前記コンテンツサーバから前記NEの受信機によって受信するステップと
    を含む、方法。
  2. 前記ストリーミングクライアントの認証を要求する認証要求メッセージを前記送信機によって認証サーバに送信するステップと、
    前記第1の認可トークンを取得する前に、認証トークンを含む認証応答メッセージを前記認証サーバから前記受信機によって受信するステップと
    をさらに含む請求項1に記載の方法。
  3. 前記コンテンツサーバに前記第1のコンテンツ要求メッセージを送信する前に前記第1のコンテンツ要求メッセージに前記認証トークンを埋め込むステップであって、前記第1のメディアセグメントが、前記認証トークンが前記コンテンツサーバ上の前記第1のメディアセグメントにアクセスするために有効であるときにさらに受信される、ステップをさらに含む請求項2に記載の方法。
  4. 前記認証応答メッセージを受信した後に前記第1のメディアセグメントに関連する前記MPDを、前記受信機を介して受信するステップをさらに含み、前記MPDが、前記第1のメディアセグメントにアクセスするときにセグメントトークンパラメータの代入が必要とされることを示す第1の問い合わせを含み、前記第1のコンテンツ要求メッセージに前記第1の認可トークンを埋め込むステップが、
    前記第1の認可トークンを前記セグメントトークンパラメータに代入するステップと、
    前記第1の認可トークンを含む前記セグメントトークンパラメータを前記第1のコンテンツ要求メッセージに埋め込むステップと
    を含む請求項2に記載の方法。
  5. 前記MPDが、認証および認可(AA、authentication and authorization)システム識別子(ID、identifier)と、前記第1のメディアセグメントにアクセスするときにAAシステムIDパラメータの代入が必要とされることを示す第2の問い合わせとをさらに含み、前記方法が

    前記AAシステムIDを前記AAシステムIDパラメータに代入するステップと、
    前記第1のコンテンツ要求メッセージを送信する前に前記第1のコンテンツ要求メッセージに前記AAシステムIDパラメータを埋め込むステップと
    をさらに含む請求項4に記載の方法。
  6. 前記MPDが、前記コンテンツサーバ上の前記第1のメディアセグメントにアクセスするための前記第1の認可トークンをさらに含み、前記第1の認可トークンが、前記MPDから取得される請求項4に記載の方法。
  7. 前記MPDが、前記認可サーバを特定するユニフォームリソースロケータ(URL、uniform resource locator)をさらに含み、前記第1の認可トークンを取得するステップが、
    前記第1のメディアセグメントにアクセスするために前記ストリーミングクライアントの認可を要求する認可要求メッセージを、前記URLに従って前記認可サーバに前記送信機によって送信するステップと、
    前記第1の認可トークンを含む認可応答メッセージを前記認可サーバから前記受信機によって受信するステップと
    を含む請求項4に記載の方法。
  8. 前記第1の問い合わせが、前記セグメントトークンパラメータがセグメントに依存することをさらに示し、前記方法が、
    前記コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするための第2の認可トークンを前記プロセッサによって取得するステップと、
    前記第2の認可トークンを前記セグメントトークンパラメータに代入するステップと、
    前記コンテンツサーバ上に置かれた前記第2のメディアセグメントにアクセスするための第2のコンテンツ要求メッセージに前記第2の認可トークンを含む前記セグメントトークンパラメータを前記プロセッサによって埋め込むステップと、
    前記第2のメディアセグメントを要求するための前記第2の認可トークンを含む前記第2のコンテンツ要求メッセージを前記送信機によって前記コンテンツサーバに送信するステップと、
    前記第2の認可トークンが前記コンテンツサーバ上に置かれた前記第2のメディアセグメントにアクセスするために有効であるときに前記コンテンツサーバからの前記第2のメディアセグメントを前記コンテンツサーバから前記受信機によって受信するステップと
    をさらに含む請求項4に記載の方法。
  9. 前記第1の認可トークンおよび前記第2の認可トークンが同じである請求項8に記載の方法。
  10. ストリーミングクライアントを実装するように構成されたネットワーク要素(NE、network element)であって、
    プロセッサであって、
    コンテンツサーバとは異なる認可サーバから、前記コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを取得し、前記認可サーバは、前記第1のメディアセグメントに関連するメディアプレゼンテーションディスクリプタ(MPD、media presentation descriptor)において特定され、
    前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに前記第1の認可トークンを埋め込む
    ように構成された、プロセッサと、
    前記プロセッサに結合され、前記第1のメディアセグメントを要求するために、前記第1の認可トークンを含む前記第1のコンテンツ要求メッセージを前記コンテンツサーバに送信するように構成された送信機と、
    前記プロセッサに結合され、前記第1の認可トークンが前記コンテンツサーバ上の前記
    第1のメディアセグメントにアクセスするために有効であるときに、前記第1のメディアセグメントを前記コンテンツサーバから受信するように構成された受信機と
    を含む、NE。
  11. 前記送信機が、前記ストリーミングクライアントの認証を要求する認証要求メッセージを認証サーバに送信するようにさらに構成され、前記受信機が、前記第1の認可トークンを取得する前に、認証トークンを含む認証応答メッセージを前記認証サーバから受信するようにさらに構成される請求項10に記載のNE。
  12. 前記受信機が、前記認証応答メッセージを受信した後に前記第1のメディアセグメントに関連する前記MPDを受信するようにさらに構成され、前記MPDが、前記第1の認可トークンの取り出しに関連する情報を含み、前記プロセッサが、前記MPD内の前記情報に従って前記第1の認可トークンを取得するようにさらに構成される請求項11に記載のNE。
  13. ストリーミングクライアントを実装するように構成されたネットワーク要素(NE、network element)であって、
    プロセッサであって、
    コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを取得し、
    前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに前記第1の認可トークンを埋め込む
    ように構成された、プロセッサと、
    前記プロセッサに結合され、前記第1のメディアセグメントを要求するために、前記第1の認可トークンを含む前記第1のコンテンツ要求メッセージを前記コンテンツサーバに送信するように構成された送信機と、
    前記プロセッサに結合され、前記第1の認可トークンが前記コンテンツサーバ上の前記
    第1のメディアセグメントにアクセスするために有効であるときに、前記第1のメディアセグメントを前記コンテンツサーバから受信するように構成された受信機と
    を含み、
    前記プロセッサが、
    前記ストリーミングクライアントに関連するクライアント認可トークンを取得することであって、前記クライアント認可トークンおよび前記第1の認可トークンが、異なる継続時間の間有効である、取得することと、
    前記コンテンツサーバに前記第1のコンテンツ要求メッセージを送信する前に、前記第1のコンテンツ要求メッセージに前記クライアント認可トークンを埋め込むことと
    を行うようにさらに構成され、
    前記ストリーミングクライアントが前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするために前記クライアント認可トークンが有効であるときに前記第1のメディアセグメントがさらに受信されるNE。
  14. 前記第1の認可トークンが、前記コンテンツサーバ上に置かれた第2のメディアセグメントにアクセスするために有効でなく、前記プロセッサが、
    前記コンテンツサーバ上の前記第2のメディアセグメントにアクセスするために第2の認可トークンを取得し、
    前記コンテンツサーバ上に置かれた前記第2のメディアセグメントにアクセスするための第2のコンテンツ要求メッセージに前記第2の認可トークンを埋め込む
    ようにさらに構成され、
    前記送信機が、前記第2のメディアセグメントを要求するための前記第2の認可トークンを含む前記第2のコンテンツ要求メッセージを前記コンテンツサーバに送信するようにさらに構成され、
    前記受信機が、前記第2の認可トークンが前記コンテンツサーバ上の前記第2のメディアセグメントにアクセスするために有効であるときに前記第2のメディアセグメントを前記コンテンツサーバから受信するようにさらに構成される請求項10に記載のNE。
  15. ストリーミングクライアントを実装するように構成されたネットワーク要素(NE、network element)であって、
    プロセッサであって、
    コンテンツサーバ上に置かれた第1のメディアセグメントにアクセスするための第1の認可トークンを取得し、
    前記コンテンツサーバ上に置かれた前記第1のメディアセグメントにアクセスするための第1のコンテンツ要求メッセージに前記第1の認可トークンを埋め込む
    ように構成された、プロセッサと、
    前記プロセッサに結合され、前記第1のメディアセグメントを要求するために、前記第1の認可トークンを含む前記第1のコンテンツ要求メッセージを前記コンテンツサーバに送信するように構成された送信機と、
    前記プロセッサに結合され、前記第1の認可トークンが前記コンテンツサーバ上の前記
    第1のメディアセグメントにアクセスするために有効であるときに、前記第1のメディアセグメントを前記コンテンツサーバから受信するように構成された受信機と
    を含み、
    前記プロセッサが、
    前記コンテンツサーバ上に置かれた前記第1のメディアセグメントに関連するデジタル著作権管理(DRM)ライセンスを得るための第3の認可トークンを取得し、
    前記DRMライセンスを得るためのDRMライセンス要求メッセージに前記第3の認可トークンを埋め込むようにさらに構成され、
    前記送信機が、前記DRMライセンスを要求するための前記第3の認可トークンを含む前記DRMライセンス要求メッセージを送信するようにさらに構成され、
    前記受信機が、前記第3の認可トークンが前記DRMライセンスを取得するために有効であるときに前記DRMライセンスを受信するようにさらに構成されるNE。
  16. コンテンツサーバを実装するように構成されたネットワーク要素(NE、network element)であって、
    第1のメディアセグメントへのアクセスを要求するストリーミングクライアントから第1のコンテンツ要求メッセージを受信するように構成された受信機であって、前記第1のコンテンツ要求メッセージが、第1の認可トークンを含み、前記第1の認可トークンは、前記コンテンツサーバとは異なる認可サーバから取得され、前記認可サーバは、前記第1のメディアセグメントに関連するメディアプレゼンテーションディスクリプタ(MPD、media presentation descriptor)において特定される、受信機と、
    前記受信機に結合され、前記第1の認可トークンが有効であることを示す第1の検証を得るように構成されたプロセッサと、
    前記プロセッサに結合され、前記第1の認可トークンが有効であるときに前記ストリーミングクライアントに前記第1のメディアセグメントを送信するように構成された送信機と
    を含む、NE。
  17. 前記第1のコンテンツ要求メッセージが、認証トークンをさらに含み、前記プロセッサが、前記認証トークンが有効であることを示す第2の検証を取得するようにさらに構成され、前記送信機が、前記認証トークンが有効であるときに前記ストリーミングクライアントに前記第1のメディアセグメントを送信するようにさらに構成される請求項16に記載のNE。
  18. コンテンツサーバを実装するように構成されたネットワーク要素(NE、network element)であって、
    第1のメディアセグメントへのアクセスを要求するストリーミングクライアントから第1のコンテンツ要求メッセージを受信するように構成された受信機であって、前記第1のコンテンツ要求メッセージが、第1の認可トークンを含む、受信機と、
    前記受信機に結合され、前記第1の認可トークンが有効であることを示す第1の検証を得るように構成されたプロセッサと、
    前記プロセッサに結合され、前記第1の認可トークンが有効であるときに前記ストリーミングクライアントに前記第1のメディアセグメントを送信するように構成された送信機と
    を含み、
    前記第1の認可トークンが、前記第1のメディアセグメントに関連する第1の期間の間有効であり、前記第1のコンテンツ要求メッセージが、前記第1のメディアセグメントに関連する第2の認可トークンをさらに含み、第2の期間の間有効であり、前記プロセッサが、前記第2の認可トークンが有効であることを示す第3の検証を取得するようにさらに構成され、前記送信機が、前記第2の認可トークンが有効であるときに前記ストリーミングクライアントに前記第1のメディアセグメントを送信するようにさらに構成されるNE。
  19. 前記第1の認可トークンが、第2のメディアセグメントにアクセスするために有効でなく、前記受信機が、前記第2のメディアセグメントへのアクセスを要求する前記ストリーミングクライアントから第2のコンテンツ要求メッセージを受信するようにさらに構成され、前記第2のコンテンツ要求メッセージが、セグメントに依存する認可トークンを含み、前記プロセッサが、前記セグメントに依存する認可トークンが有効であることを示す第4の検証を取得するようにさらに構成され、前記送信機が、前記セグメントに依存する認可トークンが有効であるときに前記ストリーミングクライアントに前記第2のメディアセグメントを送信するようにさらに構成される請求項16に記載のNE。
  20. 前記NEが、ハイパーテキスト転送プロトコル(HTTP、hypertext transfer protocol)上の動的アダプティブストリーミング(DASH、dynamic adaptive streaming over hypertext transfer protocol)サーバである請求項16に記載のNE。
JP2017519781A 2015-05-26 2016-05-25 アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり Active JP6384699B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562166589P 2015-05-26 2015-05-26
US62/166,589 2015-05-26
US15/161,039 2016-05-20
US15/161,039 US10104065B2 (en) 2015-05-26 2016-05-20 Token-based authentication and authorization information signaling and exchange for adaptive streaming
PCT/CN2016/083309 WO2016188431A1 (en) 2015-05-26 2016-05-25 Token-based authentication and authorization information signaling and exchange for adaptive streaming

Publications (2)

Publication Number Publication Date
JP2017530484A JP2017530484A (ja) 2017-10-12
JP6384699B2 true JP6384699B2 (ja) 2018-09-05

Family

ID=57392495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017519781A Active JP6384699B2 (ja) 2015-05-26 2016-05-25 アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり

Country Status (6)

Country Link
US (1) US10104065B2 (ja)
EP (1) EP3138313B1 (ja)
JP (1) JP6384699B2 (ja)
KR (1) KR101965273B1 (ja)
CN (1) CN106797563B (ja)
WO (1) WO2016188431A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI680947B (zh) 2015-01-07 2020-01-01 大陸商廣州新致晟環保科技機械設備有限公司 用於底部通氣的污泥乾化裝置的橋形件及污泥乾化裝置
TWI683792B (zh) 2015-01-07 2020-02-01 大陸商廣州新致晟環保科技機械設備有限公司 底部乾燥式污泥乾化裝置和方法
CN105819650B (zh) * 2015-01-07 2023-03-28 广州优特利环保科技有限公司 底部干燥式污泥干化装置和方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9918045B1 (en) * 2015-07-07 2018-03-13 S2 Security Corporation Networked monitor appliance
EP3179688A1 (en) * 2015-12-11 2017-06-14 Koninklijke KPN N.V. Updating part of a manifest file on the basis of patches
US10432685B2 (en) * 2016-05-31 2019-10-01 Brightcove, Inc. Limiting key request rates for streaming media
US10348713B2 (en) * 2016-09-16 2019-07-09 Oracle International Corporation Pluggable authentication for enterprise web application
EP3394782B1 (en) * 2016-12-14 2020-07-29 Pivotal Software, Inc. Distributed validation of credentials
US10511670B2 (en) * 2016-12-21 2019-12-17 Apple Inc. Techniques for providing authentication information to external and embedded web browsers
US10447702B2 (en) * 2017-03-20 2019-10-15 Screening Room Media, Inc. Digital credential tiers
WO2018197542A1 (en) * 2017-04-26 2018-11-01 Koninklijke Kpn N.V. Personalized multicast content
US10911812B2 (en) 2017-09-18 2021-02-02 S2 Security Corporation System and method for delivery of near-term real-time recorded video
US20190090005A1 (en) * 2017-09-21 2019-03-21 Comcast Cable Communications, Llc Low Latency Adaptive Bitrate Linear Video Delivery System
US11245679B1 (en) * 2017-11-15 2022-02-08 Veritas Technologies Llc Securing external access to runtime services in appliances
US11409893B2 (en) * 2017-12-28 2022-08-09 Teradata Us, Inc. Security for diverse computing environments
US10866963B2 (en) 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
CN113455009B (zh) * 2019-01-11 2024-05-10 诺基亚技术有限公司 用于认证和授权基于网络的媒体处理的方法和装置
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
WO2022087420A1 (en) * 2020-10-24 2022-04-28 Attn.Live Llc Live voice and media publishing and distribution platform
US11570227B2 (en) * 2020-12-04 2023-01-31 Tencent America LLC Set up and distribution of immersive media to heterogenous client end-points
CN113038196A (zh) * 2021-03-17 2021-06-25 大陆投资(中国)有限公司 在通信网络中传输媒体数据的发送方设备和接收方设备
US20220335795A1 (en) * 2021-04-16 2022-10-20 Dice Corporation Hyperlinked digital video alarm electronic document

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7356838B2 (en) 2001-06-06 2008-04-08 Yahoo! Inc. System and method for controlling access to digital content, including streaming media
JP5579073B2 (ja) 2007-11-16 2014-08-27 トムソン ライセンシング ストリーミング・メディアのセッション管理を行なうシステムおよび方法
WO2010127697A1 (en) * 2009-05-06 2010-11-11 Nokia Siemens Networks Oy Admission control to a femto access point
US8862515B2 (en) * 2010-05-04 2014-10-14 Sony Corporation Geographic internet asset filtering for internet video client
US8793492B2 (en) * 2011-01-13 2014-07-29 Adobe Systems Incorporated Methods and systems for scalable distribution of protected content
CN103166783A (zh) 2011-12-14 2013-06-19 华为技术有限公司 资源的控制方法及装置
US20130179199A1 (en) * 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US9026782B2 (en) 2012-04-24 2015-05-05 Verizon Patent And Licensing Inc. Token-based entitlement verification for streaming media decryption
FR2996715A1 (fr) 2012-10-09 2014-04-11 France Telecom Heritage de parametres d'identifiant universel de ressource (uri)
US9607132B2 (en) 2012-10-22 2017-03-28 Koninklijke Kpn N.V. Token-based validation method for segmented content delivery
US8984010B2 (en) * 2012-11-06 2015-03-17 Business Objects Software Ltd. Build pooled data source based on hana SAML login
US9497180B2 (en) 2013-10-21 2016-11-15 Intel IP Corporation Content access authentication for dynamic adaptive streaming over hypertext transfer protocol

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI680947B (zh) 2015-01-07 2020-01-01 大陸商廣州新致晟環保科技機械設備有限公司 用於底部通氣的污泥乾化裝置的橋形件及污泥乾化裝置
TWI683792B (zh) 2015-01-07 2020-02-01 大陸商廣州新致晟環保科技機械設備有限公司 底部乾燥式污泥乾化裝置和方法
CN105819650B (zh) * 2015-01-07 2023-03-28 广州优特利环保科技有限公司 底部干燥式污泥干化装置和方法

Also Published As

Publication number Publication date
EP3138313B1 (en) 2018-09-12
EP3138313A1 (en) 2017-03-08
CN106797563A (zh) 2017-05-31
US20160366118A1 (en) 2016-12-15
KR101965273B1 (ko) 2019-04-03
US10104065B2 (en) 2018-10-16
CN106797563B (zh) 2019-11-26
KR20170007427A (ko) 2017-01-18
JP2017530484A (ja) 2017-10-12
EP3138313A4 (en) 2017-04-19
WO2016188431A1 (en) 2016-12-01

Similar Documents

Publication Publication Date Title
JP6384699B2 (ja) アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり
US10057277B2 (en) System and method for partial URL signing with applications to dynamic adaptive streaming
US10425427B2 (en) Template uniform resource locator signing
US9794240B2 (en) System and method for signaling and verifying URL signatures for both URL authentication and URL-based content access authorization in adaptive streaming
US9900306B2 (en) Device authentication for secure key retrieval for streaming media players
JP5861220B2 (ja) テンプレートモードにおける短期暗号期間用の効果的な支援のためのシステム及び方法
US9648027B2 (en) Segment authentication for dynamic adaptive streaming
US8555367B2 (en) Method and system for securely streaming content
KR20140146664A (ko) 어댑티브 스트리밍을 위한 세그먼트 암호화 및 키 유도를 시그널링하기 위한 시스템 및 방법
US8166132B1 (en) Systems and methods for client-side encoding of user-generated content
US10708326B2 (en) Secure media casting bypassing mobile devices
US20200364317A1 (en) Method and system for identifying a user terminal in order to receive streaming protected multimedia content
EP3092780B1 (en) Signaling and handling of forensic marking for adaptive streaming
CN112203118B (zh) 多媒体资源分发方法、装置、电子装置和存储介质
CN111506883A (zh) 用于电影***的数字权利管理

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180424

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180710

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180724

R150 Certificate of patent or registration of utility model

Ref document number: 6384699

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250