用于自适应流媒体的基于令牌的认证和授权信息的信令通知和交互的制作方法

文档序号:12515999阅读:208来源:国知局
用于自适应流媒体的基于令牌的认证和授权信息的信令通知和交互的制作方法与工艺
关于由联邦政府赞助研究或开发的声明不适用参考缩微胶片附录不适用
背景技术
:媒体内容供应商或分发商可以针对不同设备(例如电视、笔记本电脑,台式计算机和移动手机等)采用不同的加密和/或编码方案向签约用户或者用户分发各种媒体内容。超文本传输协议(HypertextTransferProtocol,简称HTTP)动态自适应流媒体(DynamicAdaptiveStreamingoverHTTP,简称DASH)定义了称为媒体呈现描述(mediapresentationdescriptor,简称MPD)的清单格式,以及用于国际标准化组织(InternationalOrganizationforStandardization,简称ISO)基本媒体文件格式(ISObasemediafileformat,简称ISO-BMFF)和如标题为“信息技术—运动图像及其伴音信息的通用编码:系统”的ISO/国际电工技术委员会(InternationalElectrotechnicalCommission,简称IEC)13818-1中所描述的MPEG-2系列标准下的运动图像专家组(MovingPictureExpertsGroup,简称MPEG)传输流的片段格式。根据2015年12月7日发布的标题为“信息技术—HTTP动态自适应流媒体(DynamicAdaptiveStreamingoverHTTP,简称DASH)—第1部分:媒体描述文件和片段格式”的ISO/IEC23009-1中所描述的DASH标准,其内容通过引用并入本文,可以实现DASH系统。技术实现要素:对于内容供应商来说,内容保护至关重要。一些内容分发业务可以通过数字权限管理(digitalrightmanagement,简称DRM)来加密数据或用数字水印标记数据,以允许来自授权用户的访问。然而,DRM的设计是用于保护静态消耗的可下载文件,DRM不支持存在于内容流媒体中的用户-服务器的动态交互,因此可能不适用于流媒体应用。为了解决此类及其他问题,基于令牌的动态认证和授权信令机制用于在流传输期间保护每个内容片段,下文将具体阐述。在一实施例中,本发明包括一种由配置为流媒体客户端的网元(networkelement,简称NE)实现的方法,所述方法包括:通过所述NE的处理器获得用于访问位于内容服务器上的第一媒体片段的第一授权令牌;通过所述处理器将所述第一授权令牌嵌入用于访问位于所述内容服务器上的所述第一媒体片段的第一内容请求消息中;通过所述NE的发送器向所述内容服务器发送包括所述第一授权令牌的所述第一内容请求消息,以请求所述第一媒体片段;当所述第一授权令牌对于访问位于所述内容服务器上的所述第一媒体片段有效时,通过所述NE的接收器从所述内容服务器接收所述第一媒体片段。在一些实施例中,本发明也包括:通过所述发送器向认证服务器发送认证请求消息,以请求对所述流媒体客户端进行认证,在获得所述第一授权令牌之前,通过所述接收器从所述认证服务器接收包括认证令牌的认证响应消息;和/或在向所述内容服务器发送所述第一内容请求消息之前,将所述认证令牌嵌入所述第一内容请求消息中,其中,当所述认证令牌对于访问所述内容服务器上的所述第一媒体片段有效时,进一步接收所述第一媒体片段;和/或在接收到所述认证响应消息之后,通过所述接收器接收与所述第一媒体片段相关联的媒体呈现描述(mediapresentationdescriptor,简称MPD),所述MPD包括指示当访问所述第一媒体片段时需要替换片段令牌参数的第一查询;将所述第一授权令牌嵌入所述第一内容请求消息中包括:将所述第一授权令牌代入所述片段令牌参数中,将包括所述第一授权令牌的所述片段令牌参数嵌入所述第一内容请求消息中;和/或所述MPD还包括认证和授权(authenticationandauthorization,简称AA)系统标识(identifier,简称ID)和指示当访问所述第一媒体片段时需要替换AA系统ID参数的第二查询,所述方法还包括:将所述AA系统ID代入所述AA系统ID参数中,在发送所述第一内容请求消息之前,将所述AA系统ID参数嵌入所述第一内容请求消息中;和/或所述MPD还包括用于访问位于所述内容服务器上的所述第一媒体片段的所述第一授权令牌,所述第一授权令牌从所述MPD中获得;和/或所述MPD还包括识别授权服务器的统一资源定位符(uniformresourcelocator,简称URL);获得所述第一授权令牌包括:通过所述发送器根据所述URL向所述授权服务器发送授权请求消息,以请求对所述流媒体客户端访问所述第一媒体片段进行授权,通过所述接收器从所述认证服务器接收包括所述第一授权令牌的授权响应消息;和/或所述第一查询还指示所述片段令牌参数是片段相关的,所述方法还包括:通过所述处理器获得用于访问位于所述内容服务器上的第二媒体片段的第二授权令牌,将所述第二授权令牌代入所述片段令牌参数中,通过所述处理器将包括所述第二授权令牌的所述片段令牌参数嵌入用于访问位于所述内容服务器上的所述第二媒体片段的第二内容请求消息中,通过所述发送器向所述内容服务器发送包括所述第二授权令牌的所述第二内容请求消息,以请求所述第二媒体片段,当所述第二授权令牌对于访问位于所述内容服务器上的所述第二媒体片段有效时,通过所述接收器从所述内容服务器接收所述第二媒体片段;和/或所述第一授权令牌和所述第二授权令牌相同。在另一实施例中,本发明包括用于实现流媒体客户端的NE,所述NE包括:处理器,用于获得用于访问位于内容服务器上的第一媒体片段的第一授权令牌,将所述第一授权令牌嵌入用于访问位于所述内容服务器上的所述第一媒体片段的第一内容请求消息中;发送器,与所述处理器耦合,用于向所述内容服务器发送包括所述第一授权令牌的所述第一内容请求消息,以请求所述第一媒体片段;接收器,与所述处理器耦合,用于当所述第一授权令牌对于访问所述内容服务器上的所述第一媒体片段有效时,从所述内容服务器接收所述第一媒体片段。在一些实施例中,本发明也包括:所述发送器还用于向认证服务器发送认证请求消息,以请求对所述流媒体客户端进行认证,所述接收器还用于在获得所述第一授权令牌之前,从所述认证服务器接收包括认证令牌的认证响应消息;和/或所述接收器还用于在接收到所述认证响应消息之后,接收与所述第一媒体片段相关联的MPD,所述MPD包括与检索所述第一授权令牌相关联的信息;所述处理器还用于根据所述MPD中的所述信息获得所述第一授权令牌;和/或所述处理器还用于获得与所述流媒体客户端相关联的客户端授权令牌,所述客户端授权令牌和所述第一授权令牌的有效期不同,在向所述内容服务器发送所述第一内容请求消息之前,将所述客户端授权令牌嵌入所述第一内容请求消息中,其中,当所述客户端授权令牌对于流媒体客户端访问位于所述内容服务器上的所述第一媒体片段有效时,进一步接收所述第一媒体片段;和/或所述第一授权令牌对于访问位于所述内容服务器上的第二媒体片段无效,所述处理器还用于:获得用于访问所述内容服务器上的所述第二媒体片段的第二授权令牌,将所述第二授权令牌嵌入用于访问位于所述内容服务器上的所述第二媒体片段的第二内容请求消息中,所述发送器还用于向所述内容服务器发送包括所述第二授权令牌的所述第二内容请求消息,以请求所述第二媒体片段,所述接收器还用于当所述第二授权令牌对于访问所述内容服务器上的所述第二媒体片段有效时,从所述内容服务器接收所述第二媒体片段;和/或所述处理器还用于获得第三授权令牌,用以获得与位于所述内容服务器上的所述第一媒体片段相关联的DRM许可,将所述第三授权令牌嵌入用于获得所述DRM许可的DRM许可请求消息中,所述发送器还用于发送包括所述第三授权令牌的所述DRM许可请求消息,以请求所述DRM许可,所述接收器还用于当所述第三授权令牌对于获得所述DRM许可有效时,接收所述DRM许可。在又一实施例中,本发明包括用于实现内容服务器的NE,所述NE包括:接收器,用于从请求访问第一媒体片段的流媒体客户端接收第一内容请求消息,所述第一内容请求消息包括第一授权令牌;处理器,与所述接收器耦合,用于获得指示所述第一授权令牌有效的第一验证;发送器,与所述处理器耦合,用于当所述第一授权令牌有效时向所述流媒体客户端发送所述第一媒体片段。在一些实施例中,本发明也包括:所述第一内容请求消息还包括认证令牌,所述处理器还用于获得指示所述认证令牌有效的第二验证,所述发送器还用于当所述认证令牌有效时向所述流媒体客户端发送所述第一媒体片段;和/或所述第一授权令牌在第一时期内有效并且与所述第一媒体片段相关联,所述第一内容请求消息还包括与所述第一媒体片段相关联的在第二时期内有效的第二授权令牌,所述处理器还用于获得指示所述第二授权令牌有效的第三验证,所述发送器还用于当所述第二授权令牌有效时向所述流媒体客户端发送所述第一媒体片段;和/或所述第一授权令牌对于访问第二媒体片段无效,所述接收器还用于从请求访问所述第二媒体片段的所述流媒体客户端接收第二内容请求消息,所述第二内容请求消息包括片段相关的授权令牌,所述处理器还用于获得指示所述片段相关的授权令牌有效的第四验证,所述发送器还用于当所述片段相关的授权令牌有效时,向所述流媒体客户端发送所述第二媒体片段;和/或所述NE是DASH服务器。为表述清楚,任何一个前述实施例都可以与任何一个或多个其他前述实施例结合以创建新的实施例,且落在本发明的保护范围内。上述以及其他特征将在以下结合附图和权利要求进行的详细描述中得以更清楚地理解。附图说明为了更透彻地理解本发明,现参考以下结合附图进行的简单描述和详细描述,其中相同参考标号表示相同部分。图1是一种DASH分发系统的实施例的示意图;图2是一种用于DASH系统的AA架构的实施例的示意图;图3是一种网络中的NE的实施例的示意图;图4是一种在DASH系统中获得AA令牌的方法的实施例的协议图;图5是一种在流传输期间进行授权的方法的实施例的协议图;图6是一种在流传输期间进行AA的方法的另一实施例的协议图;图7是一种在流传输期间进行长期和短期授权的方法的另一实施例的协议图;图8是一种进行授权以获得DRM许可的方法的实施例的协议图;图9示出了在MPD中信令通知AA方案的URL模板的实施例;图10示出了信令通知AA令牌和AA令牌URL的URL模板的实施例;图11示出了指示用于查询片段无关的AA信息的URL查询信息单元的URL模板的实施例;图12示出了指示用于查询片段无关的AA信息的URL查询信息单元的URL模板的另一实施例;图13示出了指示用于查询片段相关的AA信息的URL查询信息单元的URL模板的另一实施例;图14是一种请求媒体内容的方法的实施例的流程图;图15是一种请求认证令牌的方法的实施例的流程图;图16是一种生成内容请求的方法的实施例的流程图;图17是一种生成内容请求的方法的另一实施例的流程图;图18是一种在流传输系统中授予内容访问权的方法的实施例的流程图。具体实施方式首先应当理解,尽管下文提供一项或多项实施例的说明性实施方案,但所公开的系统和/或方法可使用任何数目的技术来实现,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实施方案、附图和技术,包括本文所说明并描述的示例性设计和实施方案,而是可在所附权利要求书的范围以及其等效物的完整范围内修改。图1是一种DASH分发系统100的实施例的示意图。在标题为“信息技术—HTTP动态自适应流媒体(DynamicAdaptiveStreamingoverHTTP,简称DASH)—第1部分:媒体描述文件和片段格式”的ISO/IEC23009-1中描述了系统100。所述系统100包括媒体呈现准备服务器110,MPD服务器120,DASH内容服务器130和DASH客户端140。DASH客户端140通过一个或多个网络(可以包括因特网,有线网络和/或无线网络)通信耦合至DASH内容服务器130和MPD服务器120。媒体呈现准备服务器110通信耦合至DASH内容服务器130和MPD服务器120,并且可以构成内容分发网络(contentdeliverynetwork,简称CDN)的一部分。CDN是指为了分发内容而通过多个骨干网部署在多个数据中心的服务器组成的分布式系统。媒体呈现准备服务器110可以是任一网络设备,如硬件计算机服务器等,用于为采用DASH协议将视频、音频和/或文本等媒体内容以多种表现形式在系统100中分发提供准备。例如,媒体呈现准备服务器110采用各种媒体编码方案对媒体内容进行编码,以生成自适应集并将该自适应集存储在磁盘或任何存储设备上。自适应集包括可对应不同的比特率、视频帧率、空间分辨率、视频格式或其组合的多种媒体表式。媒体呈现准备服务器110将一个媒体表式划分为多个媒体片段,每个媒体片段对应一段短时间播放周期的媒体内容。媒体片段可以存储在DASH内容服务器130中或者缓存在系统100内的任何其它网络节点或服务器131中。另外,媒体呈现准备服务器110生成MPD元数据以描述媒体内容:例如不同的表式、媒体内容的可用性、媒体类型、比特率、分辨率、最小和/或最大带宽、媒体组件的编码备选、可访问性特征和所需的DRM和/或媒体内容的其他特征等。在一实施例中,媒体呈现准备服务器110将MPD元数据存储为可扩展标记语言(ExtensibleMarkupLanguage,简称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的相关信息等。DASH客户端140采用携带的保护信息从DRM系统150获取许可、密钥和其他信息,以管理下载到客户端设备的内容的使用情况。由于DRM主要设计用于保护采用文件下载进行散布的文件的使用情况,用户可以将文件下载到用户设备并且离线使用该下载文件,DRM不处理DASH中服务器-客户端的动态交互,DASH客户端140逐片段地从DASH内容服务器130获取媒体内容以用于会话播放期间的流传输。各实施例中公开了基于令牌的AA信息的信令通知和交互机制,用于基于运动图像专家组(MovingPictureExpertsGroup,简称MPEG)-DASH和DASH-产业论坛(IndustryForum,简称IF)的视频流。认证和授权令牌分别证明客户端或客户端的用户已经在某些预定的AA系统中经过认证和得到授权。在一实施例中,MPD可以包括查询参数,以请求用于访问位于内容服务器上的媒体片段的AA系统ID、各种类型的AA令牌以及AA令牌的各种组合。当客户端接收到MPD时,客户端根据MPD中指示的查询参数通过将所需的认证和/或授权令牌嵌入内容请求中生成内容请求。当内容服务器接收到内容请求时,内容服务器先验证所述内容请求中提供的AA令牌有效,才会授予该内容的访问权。内容服务器可以自己进行AA令牌的验证或请求验证服务器进行验证。客户端可以采用任何类型的协议与AA系统通信,并且可以与不同的AA系统通信以获得不同的AA令牌。虽然所公开的实施例是在DASH系统的背景下进行描述的,但是所公开的实施例适合任何类型的流传输系统。图2是一种用于DASH系统200的AA架构的实施例的示意图。系统200类似于系统100,但是在授予内容访问权时要执行AA。系统200包括通过一个或多个网络(可以包括因特网、有线网络和/或无线网络)彼此通信耦合的认证服务器211,授权服务器212,DASH客户端220,DASH内容服务器231和验证服务器232。DASH客户端220和DASH内容服务器231分别类似于DASH客户端140和DASH内容服务器130,不同的是通过认证服务器211,授权服务器212和验证服务器232进行额外的认证和/或授权,以保护系统200中的流媒体内容。认证服务器211可以是任一网络设备,例如硬件计算机服务器等,用于在接收到来自DASH客户端220的认证请求时对DASH客户端220进行认证。认证是指对客户端的身份和/或凭证(可以包括用户名和密码)进行验证的过程。认证服务器211在认证成功时生成并向DASH客户端220发出认证令牌。认证服务器211可以采用任何合适的认证方案、协议和/或标准。认证令牌可以采用任何合适的格式,例如,被数字编码为不透明的字符串。授权服务器212可以是任一网络设备,例如硬件计算机服务器等,用于在接收到来自DASH客户端220的授权请求时对DASH客户端220进行授权。授权是指确定客户端是否有权访问某些资源(例如媒体内容)的过程。授权服务器212在授权成功时生成并向DASH客户端220发出认证令牌。在一些实施例中,授权过程可以基于认证服务器211对DASH客户端220进行的认证。授权服务器212可以采用任何合适的授权方案、协议和/或标准。授权令牌可以采用任何合适的格式,例如,被数字编码为不透明的字符串。验证服务器232可以是任一网络设备,例如硬件计算机服务器等,用于验证DASH客户端220的认证令牌和授权令牌的有效性和/或真实性。DASH客户端220向认证服务器211请求认证,并从认证服务器211接收认证令牌。类似地,DASH客户端220向授权服务器212请求授权,并接收一个或多个授权令牌。向DASH内容服务器231请求媒体片段时,DASH客户端220将认证和/或授权令牌作为身份和访问权的证明提供给DASH内容服务器231。例如,DASH客户端220将认证令牌和/或授权令牌嵌入每个媒体片段请求中。在一些实施例中,不同的媒体片段或不同的媒体片段集合与不同的授权令牌相关联。因此,DASH客户端220可以从授权服务器212请求和接收多个授权令牌。例如,DASH客户端220动态地从授权服务器212请求和获取用于一个或多个后续片段的授权令牌,以用于会话播放期间的流传输。当DASH客户端220提供有效的认证和/或授权令牌时,DASH内容服务器231允许DASH客户端220访问和流传输媒体内容。例如,在接收到嵌有授权令牌的流媒体内容请求时,DASH内容服务器231请求验证服务器232验证该授权令牌,并且在验证成功后将媒体片段分发给DASH客户端220。通过将每个片段与授权令牌相关联,DASH内容服务器231可以在媒体内容访问方面更精细地控制DASH客户端220。例如,与广告和媒体内容的主要节目相关联的授权令牌可以不同。因此,DASH内容服务器231可以监控DASH客户端220发送广告授权令牌的速率,并且控制验证过程的速度,使得DASH客户端220不可以跳过广告。如图2所示,尽管认证服务器211和授权服务器212为独立的物理服务器,但是认证服务器211和授权服务器212可以是同一个服务器或者同一组服务器。另外,DASH内容服务器231还可以实现令牌验证,无需通过独立的验证服务器232。在一些实施例中,认证服务器211和授权服务器212可以由除了DASH内容服务器231和验证服务器232之外的权威和/或管理实体操控。系统200还可以包括媒体呈现准备服务器(例如媒体呈现准备服务器110)和MPD服务器(例如MPD服务器120)。在一实施例中,授权令牌在MPD服务器120存储的MPD中信令通知。在另一实施例中,例如统一资源定位符(uniformresourcelocator,简称URL)等格式的授权服务器212的位置在MPD服务器存储的MPD中信令通知。例如,在DASH客户端220通过认证服务器211完成认证后,DASH客户端220从MPD服务器下载MPD并解析MPD以获得授权服务器212的URL。随后,DASH客户端220向授权服务器212请求授权令牌。下文具体阐述了AA信息的信令通知和交互机制以及格式。图3是一种网络(例如系统100和200)中的NE300的实施例的示意图。例如,NE300可以充当系统100和200中的媒体呈现准备服务器110,MPD服务器120,DASH内容服务器130和231,DASH客户端140和220,认证服务器211,授权服务器212,验证服务器232,和/或任何其他网络节点。NE300可以用于实现和/或支持本文描述的基于令牌的AA机制和方案。NE300可以在单个节点中实现,或者NE300的功能可以在多个节点中实现。本领域的技术人员应意识到,术语NE包括广泛意义上的设备,NE300仅是其中一个示例。包含在内的NE300是为了表述清楚,并不旨在将本发明的应用限制为特定的NE实施例或某一类NE实施例。本发明所述的至少部分特征/方法在网络装置或组件(如网元300)中实现,例如,本发明中的特征/方法可以采用硬件、固件和/或在硬件上安装运行的软件实现。NE300是通过网络(例如交换机、路由器、网桥、服务器、客户端等)传输数据包的任何设备。如图3所示,NE300包括收发器(transceiver,简称Tx/Rx)310(可以是发送器、接收器或其组合)。Tx/Rx310耦合至多个端口320以用于发送和/或接收来自其他节点的帧。处理器330耦合至每个Tx/Rx310以处理帧和/或确定发送帧至哪个节点。处理器330可以包括一个或多个多核处理器和/或存储器设备332(可以用作数据存储器、缓存器等)。处理器330可以作为通用处理器实现或作为一个或多个专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)和/或数字信号处理器(digitalsignalprocessor,简称DSP)的一部分。处理器330包括AA处理组件333,该AA处理组件333可以进行AA令牌信令通知和交互以进行流传输,并且可以实现将在下文具体阐述的方法400、500、600、700、800、1400、1500、1600和1700,和/或本文所讨论的任何其它流程图、方案和方法。因此,包含的AA处理组件333及相关方法和系统改善了NE300的功能。进一步地,AA处理组件333实现了特定元素(例如网络)向不同状态的切换。在一替代实施例中,AA处理组件333可以作为存储在存储器设备332中的指令得以实现,这些指令可以由处理器330执行。此外,在该替代实施例中,NE300可以包括用于实现方法400、500、700、800、1400、1500、1600和1700的任何其他装置。存储器设备332可以包括用于暂时存储内容的缓存,如随机存取存储器(random-accessmemory,简称RAM)。另外,存储器设备332可以包括用于较长时间存储内容的长期存储器,如只读存储器(read-onlymemory,简称ROM)。例如,所述缓存和长期存储器可以包括动态RAM(dynamicrandomaccessmemory,简称DRAM)、固态磁盘(solid-statedrive,简称SSD)、硬盘或其组合等。根据实施例,存储器设备332用于存储媒体数据、AA令牌和MPD334。可以理解的是,通过编程和/或加载可执行指令至所述NE300,处理器330和/或存储器设备332中的至少一个会发生改变,从而将所述300部分地转换成拥有本发明所述的新颖功能的特定机器或装置,如多核转发架构。对于电气工程和软件工程技术至关重要的是,可通过将可执行软件加载到计算机中来实现的功能能够按照公认的设计规则转换为硬件实现方式。在软件还是硬件中实现某一构思通常取决于待生产单元的设计稳定性和数量方面的考虑,而并不考虑任何涉及从软件领域转换至硬件领域中的问题。通常,仍会发生频繁变化的设计更适合在软件中实现,因为重新设计硬件实现方式要比重新设计软件更加昂贵。通常,稳定性好且大批量生产的设计更适合在ASIC等硬件中实现,因为大批量生产运行使得硬件实现方式比软件实现方式更低廉。通常,一项设计可以以软件的形式进行开发和测试,之后根据公认的设计规则转化为ASIC中等效的硬件实现方式,所述硬件实现方式硬连线至所述软件的指令。按照相同的方式,由新型ASIC控制的机器即为一种特定机器或装置,同样地,已被编程和/或加载有可执行指令的计算机(例如,存储在非瞬时性介质/存储器中的计算机程序产品)也可被视为一种特定的机器或装置。DASH分发系统(例如系统200)可以通过认证和/或授权来允许或限制某些MPD服务器供应商、终端用户、终端用户设备、内容散布系统基于规则和/或协议来运作。在第一种场景下,流传输限制于MPD服务供应商具有散布权限的地理区域。在第二种场景下,流传输限制于可信媒体播放器。例如,流传输可以在视频、MPD和/或通过插入到可信媒体播放器的信令来呈现广告。可信媒体可以返回用于服务计费的准确播放报告。在第三种场景下,流传输限制于终端用户,该终端用户可以是签约用户,或者针对特定时间范围或浏览次数、特定设备、特定保护系统、最大数量的设备或同步流或其组合,已经购买租用权和/或所有权以用于流传输和/或下载特定媒体质量格式(例如标清(standarddefinition,简称SD)、高清(highdefinition,简称HD)和/或超高清(ultra-highdefinition,简称UHD)等)的媒体内容等。在第四种场景下,可以通过联合身份系统(例如无处不在的电视(television,简称TV)(TVEverywhere)、紫外辐射(UltraViolet)、OpenID和各种单点登录(singlesignedon,简称SSO)等)以及联合权限系统(例如数字娱乐内容生态系统(digitalentertainmentcontentecosystem,简称DECE)、KeyChest和无处不在的TV(TVEverywhere)等)启动流传输。图4是一种在DASH系统(例如系统200)中获得AA令牌的方法400的实施例的协议图。方法400在任何一个可以作为NE300实现的MPD服务器(例如MPD服务器120)、认证服务器(例如认证服务器211)、授权服务器(例如授权服务器212)以及DASH客户端(例如DASH客户端220)之间实现。当DASH客户端开始访问系统200时,方法400开始。在步骤410,DASH客户端向认证服务器发送认证请求。例如,当DASH客户端登录到内容流媒体服务网站时启动步骤410。在步骤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)之后请求第一授权令牌,并且将所述认证令牌和所述第一授权令牌都嵌入MPD请求中(步骤440)。随后,DASH客户端根据接收到的MPD响应(步骤450)获得第二授权令牌,并且使用所述第二授权令牌访问媒体片段。访问媒体片段可能需要认证令牌和/或授权令牌的各种组合,下文将具体阐述。图5-7示出了在DASH系统(例如系统200)中在任何一个可以作为NE300实现的DASH客户端(例如DASH客户端220)、DASH内容服务器(例如DASH内容服务器231)以及验证服务器(例如验证服务器232)之间进行AA的几种场景。图5是一种在流传输期间进行授权的方法500的实施例的协议图。在DASH客户端使用方法400获得与一个或多个媒体片段相关联的认证令牌之后,方法500开始。在步骤510,DASH客户端向DASH内容服务器发送媒体片段请求,以请求媒体片段。所述媒体片段请求包括与所请求的媒体片段相关联的授权令牌。在步骤520,在接收到请求时,DASH内容服务器向验证服务器发送验证请求,以请求对所述授权令牌进行验证。在步骤530,验证服务器验证授权令牌有效。在步骤540,验证服务器向DASH内容服务器发送验证响应以指示验证成功。在步骤550,在接收到验证响应之后,DASH内容服务器向DASH客户端发送所请求的媒体片段。应当注意的是,当所述授权令牌验证成功(步骤530)时,DASH内容服务器仅发送所请求的媒体片段。方法500可以在流会话的持续时间内重复进行。DASH客户端可以使用相同的授权令牌来获取所有媒体片段或媒体片段集合,或者针对不同的媒体片段使用不同的令牌。图6是一种在流传输期间进行AA的方法600的另一实施例的协议图。在DASH客户端使用方法400获得与DASH客户端和/或DASH客户端的设备相关联的认证令牌和与一个或多个媒体片段相关联的授权令牌之后,方法600开始。在步骤610,DASH客户端向DASH内容服务器发送媒体片段请求,以请求媒体片段。媒体片段请求包括与DASH客户端相关联的所述认证令牌和与请求中的媒体片段相关联的所述授权令牌。在步骤620,在接收到请求时,DASH内容服务器向验证服务器发送验证响应,以请求对所述认证令牌和所述授权令牌进行验证。在步骤630,验证服务器验证所述认证令牌和所述授权令牌都有效。在步骤640,验证服务器向DASH内容服务器发送验证响应以指示所述认证令牌和所述授权令牌都验证成功。在步骤650,在接收到验证响应之后,DASH内容服务器向DASH客户端发送所请求的媒体片段。应当注意的是,当所述认证令牌和所述授权令牌都验证成功(步骤630)时,DASH内容服务器仅发送所请求的媒体片段。方法600可以在流会话的持续时间内重复进行。DASH客户端可以使用相同的授权令牌来获取所有媒体片段或媒体片段集合,或者针对不同的媒体片段使用不同的令牌。图7是一种在流传输期间进行长期和短期授权的方法700的另一实施例的协议图。在DASH客户端获得长期认证令牌和短期授权令牌之后,方法700开始。根据业务和安全决策,在一些情况下,通过方法400,长期授权令牌与DASH客户端,DASH客户端的设备或流会话相关联,而短期授权令牌与一个或多个媒体片段相关联。在其他情况下,通过方法400,短期授权令牌与DASH客户端,DASH客户端的设备或流会话相关联,而长期授权令牌与一个或多个媒体片段相关联。在步骤710,DASH客户端向DASH内容服务器发送媒体片段请求,以请求媒体片段。所述媒体片段请求包括与DASH客户端、DASH客户端的设备或流会话相关联的长期授权令牌以及与请求中的媒体片段相关联的短期授权令牌。在步骤720,在接收到请求时,DASH内容服务器向验证服务器发送验证请求,以请求对所述长期和短期授权令牌进行验证。在步骤730,验证服务器对长期授权令牌和短期授权令牌的有效性进行验证。在步骤740,验证服务器向DASH内容服务器发送验证响应以指示所述长期和短期授权令牌都验证成功。在步骤750,在接收到验证响应之后,DASH内容服务器向DASH客户端发送所请求的媒体片段。应当注意的是,当所述长期和短期认证令牌都验证成功(步骤730)时,DASH内容服务器仅发送所请求的媒体片段。方法700可以在流会话的持续时间内重复进行。DASH客户端可以使用相同的授权令牌来获取所有媒体片段或媒体片段集合,或者针对不同的媒体片段使用不同的令牌。图8是一种进行授权以获得DRM许可的方法800的实施例的协议图。方法800在任何一个可以作为NE300实现的DASH客户端(例如DASH客户端220)和DRM系统(例如DRM系统150)之间实现。在DASH客户端获得许可获取所需的一些认证和授权令牌之后,方法800开始。在步骤810,DASH客户端向DRM系统发送DRM许可请求,以请求DRM许可。DRM许可请求包括请求中的这些认证和授权令牌。在步骤820,在接收到请求时,DRM系统向验证服务器发送验证请求,以请求对所述认证和授权令牌进行验证。在步骤830,验证服务器对所述认证和授权令牌的有效性进行验证。在步骤840,验证服务器向DASH内容服务器发送验证响应以指示所述认证和授权令牌验证成功。在步骤850,在接收到验证响应之后,DRM系统服务器向DASH客户端发送DRM许可。应当注意的是,当所述认证和授权令牌验证成功(步骤830)时,DRM系统仅发送DRM许可。DASH系统(例如系统200)可以在服务器和客户端之间信令通知和交互AA信息。一个实施例利用在ISO/IEC文件23009-1中描述的认证和授权描述符和URL查询参数插入机制。认证和授权描述符在MPD中信令通知。URL查询参数插入机制将URLQueryInfo元素插入MPD中,以向DASH客户端(例如DASH客户端140和220)请求反馈。例如,认证和授权描述符可以扩展为信令通知可能的AA方案、协议和/或标准和/或可能的用于获得AA令牌的服务器。认证和授权描述符还可以携带AA令牌和/或信令通知URL,当AA令牌或URL可用时可以检索AA令牌。URL查询参数插入机制可以扩展为信令通知在请求媒体片段时需要AA信息。在一实施例中,AA信息包括AA系统标识(ID)和AA令牌。AA系统ID用于识别特定的AA系统(例如AA系统200)。AA令牌由AA系统发布并且包括编码的不透明的字符串。AA系统ID和由AA系统ID识别的AA系统发布的AA令牌一起形成AA标识对。DASH系统可以包括任何数量的AA标识对。MPD可以包括UrlQueryInfo元素以信令通知媒体片段请求所需的AA系统ID和AA令牌。为了便于AA信息的信令通知和交互,AASystemId参数和AAToken参数分别定义为表示AA系统ID和AA令牌。可选地,AASystemId和AAToken参数可以分别包括表示为AAToken{$Number$}和AATokenURL{$Number$}的片段变量,以指示AA令牌和用于检索AA令牌的URL是片段相关的。因此,AAToken、AAToken1、AAToken2、AATokenURL、AATokenURL1和AATokenURL2都是有效的URL参数。UrlQueryInfo元素可以包括URL替换参数标识$AASystemId$和$AAToken$,以请求DASH客户端(例如DASH客户端220)分别用AASystemId和AAToken的值替换$AASystemId$和$AAToken$。URL替换参数的名称和标识汇总在下表中:表1——用于AA的URL替换参数汇总$<Identifier>$替换参数说明$AASystemId$该标识由底层AA系统的标识替换。$AAToken$该标识由底层AA系统中获得的AA令牌替换。表2——用于AA的URL参数名称汇总图9示出了在MPD中信令通知AA方案911、912、913和914的URL模板900的实施例。当采用用于流传输的AA时,URL模板900由媒体呈现准备服务器(例如媒体呈现准备服务器110)生成并且存储为MPD服务器(例如MPD服务器120)中的MPD的一部分,下文中的方法1600将具体阐述。AA方案911、912、913和914分别由AA系统ID921、922、923和924识别。AA方案911-914可以提供与发布AA令牌、AA协议和/或AA标准的AA系统相关联的信息。在一些实施例中,方案911-914可以指示用于认证和授权的独立方案。例如,DASH客户端(例如DASH客户端220)根据方案911-914中的一个向AA系统(例如AA系统200)请求AA令牌。图10示出了信令通知AA令牌1011和AA令牌URL1012的URL模板1000的实施例。当采用用于流传输的AA时,URL模板1000由媒体呈现准备服务器(例如媒体呈现准备服务器110)生成并且存储为MPD服务器(例如MPD服务器120)中的MPD的一部分,下文中的方法1600将具体阐述。AA令牌1011指示AA令牌字符串。AA令牌URL1012指示可以检索到AA令牌的URL。例如,在请求媒体片段时,DASH客户端(例如DASH客户端220)可以向DASH内容服务器(例如DASH内容服务器231)提供AA令牌1011。或者,在请求媒体片段时,DASH客户端可以从AA令牌URL检索AA令牌,并将检索到的AA令牌提供给DASH内容服务器。图11示出了指示用于查询片段无关的AA信息的URL查询信息单元1101的URL模板1100的实施例。当采用用于流传输的AA时,URL模板1100由媒体呈现准备服务器(例如媒体呈现准备服务器110)生成并且存储为MPD服务器(例如MPD服务器120)中的MPD的一部分,下文中的方法1600将具体阐述。URL查询信息单元1101指示当向DASH内容服务器(例如DASH内容服务器231)请求媒体片段时,需要AA系统ID和片段无关的AA令牌。图12示出了指示用于查询片段无关的AA信息的URL查询信息单元1101、1201和1202的URL模板1200的另一实施例。当采用用于流传输的AA时,URL模板1200由媒体呈现准备服务器(例如媒体呈现准备服务器110)生成并且存储为MPD服务器(例如MPD服务器120)中的MPD的一部分,下文中的方法1600将具体阐述。URL查询信息单元1201和1202指示当向DASH内容服务器(例如DASH内容服务器231)请求媒体片段时,需要多个片段无关的令牌。图13示出了指示用于查询片段相关的AA信息的URL查询信息单元1301的URL模板1300的另一实施例。当采用用于流传输的AA时,URL模板1300由媒体呈现准备服务器(例如媒体呈现准备服务器110)生成并且存储为MPD服务器(例如MPD服务器120)中的MPD的一部分,下文中的方法1600将具体阐述。URL查询信息单元1301指示当向DASH内容服务器(例如DASH内容服务器231)请求媒体片段时,需要片段相关的令牌。在一实施例中,DASH客户端(例如DASH客户端220)从MPD服务器(例如MPD服务器120)接收URL模板900、1000和1100。DASH客户端从模板900中选择AA系统ID,例如“urn:org:example:plan-c”,并且从模板1000中选择AA令牌,例如“nitfHRCrtziwO2HwPfWw~yYD”。随后,DASH客户端在构建片段请求URL时分别用所选的AA系统ID和所选的AA令牌替换$AASystemId$和$AAToken$参数,如下所示:http://www.example.com/dash/video_1_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYDhttp://www.example.com/dash/video_2_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYDhttp://www.example.com/dash/video_3_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken=nitfHRCrtziwO2HwPfWw~yYD在另一实施例中,DASH客户端(例如DASH客户端220)从MPD服务器(例如MPD服务器120)接收URL模板900、1000和1300。DASH客户端从模板900中选择AA系统ID,例如“urn:org:example:plan-c”,并且为每个第i媒体片段从模板1000中选择AA令牌,例如“i_nitfHRCrtziwO2HwPfWw~yYD”。随后,DASH客户端在构建片段请求URL时分别用所选的AA系统ID和所选的AA令牌替换$AASystemId$和$AATokeni$参数,如下所示:http://www.example.com/dash/video_1_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken1=1_nitfHRCrtziwO2HwPfWw~yYDhttp://www.example.com/dash/video_2_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken2=2_nitfHRCrtziwO2HwPfWw~yYDhttp://www.example.com/dash/video_3_3000000bps.mp4?AASystemId=urn:org:example:plan-c&AAToken3=3_nitfHRCrtziwO2HwPfWw~yYD图14是一种请求媒体内容的方法1400的实施例的流程图。方法1400由可以作为NE300实现的流媒体客户端(例如DASH客户端140和220)实现。方法1400采用与方法500、600、700和800类似的机制。在流媒体客户端请求媒体片段时实现方法1400。在步骤1410,获得用于访问位于内容服务器(例如DASH内容服务器130和231)上的第一媒体片段的第一授权令牌。在步骤1420,将所述第一授权令牌嵌入用于访问位于所述内容服务器上的所述第一媒体片段的第一内容请求消息中。在步骤1430,向内容服务器发送包括所述第一授权令牌的所述第一内容请求消息,以请求所述第一媒体片段。在步骤1440,当所述第一授权令牌对于访问位于所述内容服务器上的所述第一媒体片段有效时,从内容服务器接收所述第一媒体片段。图15是一种请求认证令牌的方法1500的实施例的流程图。方法1500由可以作为NE300实现的流媒体客户端(例如DASH客户端140和220)实现。方法1500采用与方法400类似的机制。在流媒体客户端可以请求任何媒体内容之前实现方法1500。在步骤1510,向认证服务器发送认证请求消息,以请求对所述流媒体客户端进行认证。在步骤1520,从认证服务器接收包括认证令牌的认证响应消息。图16是一种生成内容请求的方法1600的实施例的流程图。方法1600由可以作为NE300实现的流媒体客户端(例如DASH客户端140和220)实现。方法1600采用URL模板900-1300中描述的信令机制。在流媒体客户端通过采用方法1500完成认证之后实现方法1600。在步骤1610,接收MPD。MPD包括AA系统ID,指示当访问所述第一媒体片段时需要替换片段令牌参数的第一查询,以及当访问所述第一媒体片段时需要替换AA系统ID参数的第二查询。例如,所述第一媒体片段存储在类似于DASH内容服务器130和231的内容服务器上。MPD可以类似于URL模板900-1300。AA系统ID可以类似于AA系统ID921-924。第一查询和第二查询类似于URL查询信息单元1101、1201、1202和1301。在步骤1620,将AA系统ID代入所述AA系统ID参数中。在步骤1630,将第一授权令牌代入所述片段令牌参数中。当MPD携带例如如URL模板1000所示的第一授权令牌时可以直接从MPD检索所述第一授权令牌,AA令牌1011是嵌入在URL模板1000中的编码字符串。或者,MPD可以指示类似于AA令牌URL1012的授权服务器,并且可以从授权服务器获得所述第一授权令牌。在步骤1640,将包括所述第一授权令牌的所述片段令牌参数嵌入第一内容请求消息中。在步骤1650,将包括所述AA系统ID的所述AA系统ID参数嵌入所述第一内容请求消息中。随后,流媒体客户端可以向内容服务器发送所述第一内容请求消息,以请求所述第一媒体片段。应当注意的是,MPD可以包括其他查询参数,以指示例如如方法500-800中所描述的访问内容服务器上的其他片段或获得DRM许可所需的其他令牌。另外,方法1600中的步骤的顺序可以如图所示实现或者根据本领域普通技术人员的决定进行配置,以实现类似功能。一些步骤(例如步骤1620-1650)可以在流会话期间实现。图17是一种生成内容请求的方法1700的另一实施例的流程图。方法1700由可以作为NE300实现的流媒体客户端(例如DASH客户端140和220)实现。方法1700采用如方法500-800中的信令机制。在流媒体客户端通过采用方法1500并且接收包括类似于URL模板900-1300的模板的MPD来获得认证令牌之后实现方法1700。在步骤1710,获得用于访问位于内容服务器(例如DASH客户端服务器130和231)上的第一媒体片段的第一授权令牌。所述第一授权令牌可以从MPD中检索到或从例如由MPD指示的授权服务器中获得。在步骤1720,将所述第一授权令牌嵌入用于访问位于所述内容服务器上的所述第一媒体片段的第一内容请求消息中。在步骤1730,例如根据MPD中的查询(例如URL查询信息单元1101、1201、1202和1301)确定访问所述内容服务器上的所述第一媒体片段是否需要认证令牌。当确定需要认证令牌时,方法1700进行到步骤1740。在步骤1740,将所述认证令牌嵌入用于访问所述第一媒体的所述第一内容请求消息中。例如,步骤1740可以由方法600采用以在步骤610生成媒体片段请求。当确定不需要认证令牌时,方法1700进行到步骤1750。在步骤1750,例如根据MPD中的查询(例如URL查询信息单元1101、1201、1202和1301)确定访问所述内容服务器上的所述第一媒体片段是否需要第二授权令牌。当确定需要第二授权令牌时,方法1700进行到步骤1760。在步骤1760,获得用于访问所述内容服务器上的所述第一媒体片段的第二授权令牌。例如,第一授权令牌可以是与第一媒体片段相关联的长期令牌,第二授权令牌可以是与流媒体客户端或流会话相关联的短期令牌。在步骤1770,将所述第二授权令牌嵌入用于访问所述第一媒体的所述第一内容请求消息中。例如,步骤1760和1770可以由方法700采用以在步骤710生成媒体片段请求。随后,流媒体客户端可以向内容服务器发送所述第一内容请求消息,以请求所述第一媒体片段。可以在流会话期间针对不同的媒体片段重复进行方法1700。当MPD指示访问不同的媒体片段需要片段相关的令牌时,对于不同的媒体片段第一授权令牌可以是不同的。应当注意的是,方法1700中的步骤的顺序可以如图所示实现或者根据本领域普通技术人员的决定进行配置,以实现类似功能。图18是一种在流传输系统(例如系统200)中授予内容访问权的方法1800的实施例的流程图。方法1800由可以作为NE300实现的流媒体内容服务器(例如DASH内容服务器130和231)实现。方法1800采用与方法500-800中类似的机制。方法1800开始于步骤1810,从请求访问位于内容服务器上的第一媒体片段的流媒体客户端接收到内容请求消息。第一内容请求消息包括类似于AA令牌1011的第一授权令牌。在步骤1820,获得第一验证以指示所述第一授权令牌有效。例如,内容服务器可以请求验证服务器验证所述第一授权令牌,验证服务器可以提供如方法500-800所示的验证。在步骤1830,当所述第一授权令牌有效时向流媒体客户端发送所述第一媒体片段。在一实施例中,NE包括:用于获得用于访问位于内容服务器上的第一媒体片段的第一授权令牌的装置;用于将所述第一授权令牌嵌入用于访问位于所述内容服务器上的所述第一媒体片段的第一内容请求消息中的装置;用于向所述内容服务器发送包括所述第一授权令牌的所述第一内容请求消息以请求所述第一媒体片段的装置;用于当所述第一授权令牌对于访问位于所述内容服务器上的所述第一媒体片段有效时,从所述内容服务器接收所述第一媒体片段的装置。在一实施例中,NE包括:用于从请求访问第一媒体片段的流媒体客户端接收第一内容请求消息的装置,第一内容请求消息包括第一授权令牌;用于获得指示所述第一授权令牌有效的第一验证的装置;用于当所述第一授权令牌有效时向所述流媒体客户端发送所述第一媒体片段的装置。虽然本发明中已提供若干实施例,但应当理解,在不脱离本发明的精神或范围的情况下,本发明所公开的系统和方法可以以许多其他特定形式来体现。本发明的实例应被视为说明性而非限制性的,且本发明并不限于本文本所给出的细节。例如,各种单元或部件可以在另一系统中组合或合并,或者某些特征可以省略或不实现。此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或各别的技术、系统、子系统和方法可以与其它系统、模块、技术或方法进行组合或合并。展示或论述为彼此耦合或直接耦合或通信的其它项也可以采用电方式、机械方式或其它方式通过某一接口、设备或中间组件间接地耦合或通信。其他变化、替代和改变的示例可以由本领域的技术人员在不脱离本文精神和所公开的范围的情况下确定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1