CN107852403B - Dash缓存代理应用 - Google Patents

Dash缓存代理应用 Download PDF

Info

Publication number
CN107852403B
CN107852403B CN201680037181.2A CN201680037181A CN107852403B CN 107852403 B CN107852403 B CN 107852403B CN 201680037181 A CN201680037181 A CN 201680037181A CN 107852403 B CN107852403 B CN 107852403B
Authority
CN
China
Prior art keywords
mpd file
media
cache
client
mpd
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
CN201680037181.2A
Other languages
English (en)
Other versions
CN107852403A (zh
Inventor
巴托兹·巴拉任斯克
李君�
迪巴舍希·帕卡亚斯塔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vid Scale Inc
Original Assignee
Vid Scale Inc
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 Vid Scale Inc filed Critical Vid Scale Inc
Publication of CN107852403A publication Critical patent/CN107852403A/zh
Application granted granted Critical
Publication of CN107852403B publication Critical patent/CN107852403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • 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
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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
    • 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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/643Communication protocols
    • H04N21/64322IP

Abstract

所公开的是用于能够缓存例如使用HTTP动态自适应流传输(DASH)协议递送的多媒体内容的媒体缓存代理技术(例如应用)的系统、方法和手段。从客户机可以接收关于与媒体内容相关联的媒体呈现描述(MPD)文件的请求。该媒体内容可以包括多个媒体分段。MPD文件可以从缓存中被接收。存储在缓存内部的媒体内容的多个媒体分段的子集可被确定。回程链路上的可用带宽可被确定。基于MPD文件、存储在中间盒平台的缓存内部的媒体内容的多个媒体分段的子集和/或回程链路上的可用带宽,可以生成动态MPD文件。该动态MPD文件可被传送给客户机。

Description

DASH缓存代理应用
交叉引用
本申请要求享有2015年6月29日提交的美国临时申请62/186,281的权益,其中作为参考,在这里以全面阐述的方式全面引入该申请。
背景技术
具有竞争性客户机应用(例如媒体播放器)的网络有可能会导致不同会话之间的不稳定性和不公平性。例如,当一些客户机与其他客户机相比遭遇到更大网络延迟时,不公平性有可能会尤其明显。相比于其他媒体传输协议,DASH协议有可能并不适合下载条件可变的环境。举例来说,流传输客户机(例如DASH客户机)可以基于其所体验的吞吐量来请求媒体内容分段。然而,缓存中间盒可以驻留在流传输媒体客户机与源服务器之间,以便在缓存设备上保存一些但并非所有分段。缓存设备可经由回程链路连接至源服务器。如果回程链路和/或源服务器的吞吐量低于客户机和缓存设备之间的连接,流传输客户机可能无法在存在缓存设备的时候精确地确定返回到源服务器的吞吐量。而这将会导致非预期地降低体验质量(QoE)。
发明内容
所公开的是用于与所递送的多媒体内容的缓存处理(例如使用HTTP动态自适应流传输(DASH)协议)相关联的媒体缓存代理技术(例如借助缓存代理应用)的系统、方法和手段。媒体分段的可用性可以由缓存实体(例如与DASH缓存之类的缓存设备相关联的DASH缓存代理应用)进行确定和传递。此类管理可以以缓存内容(例如关于缓存中当前存在哪些内容的知识)和/或回程链路拥塞等级为基础。所述管理可以包括考虑被缓存分段的可用性,考虑回程链路上的负载,以及作为响应,修改媒体清单的内容(例如DASH媒体呈现描述(MPD)文件)。举例来说,媒体清单可被修改,以便传递当前可以借助缓存得到和/或可以借助回程从内容服务器得到的内容表示(例如处于不同比特率或分辨率的媒体分段)。作为示例,该处理可被周期性执行,以便考虑回程链路上的不断变化的状况和/或缓存上的分段可用性。客户机可以周期性地请求媒体清单,而这将会导致客户机具有关于分段可用性的最新信息。举例来说,客户机可以在每一次下载了分段之后执行此类媒体清单刷新处理。刷新媒体清单的客户机可以阻止该客户机选择降低体验质量和/或导致回程链路拥塞的媒体分辨率。所公开的特征可以适用于移动边缘计算(MEC)和其他环境。示例可以是针对DASH缓存代理应用提供的。
所公开的是用于能够缓存所递送的多媒体内容(例如使用HTTP动态自适应流传输(DASH)协议)的媒体缓存代理技术(例如应用)的系统、方法和手段。从客户机可以接收关于与媒体内容相关联的媒体呈现描述(MPD)文件的请求。该媒体内容可以包括多个媒体分段。MPD文件可以从缓存中被取回和/或接收。该缓存可以包括可以驻留在一个或多个存储器和/或磁盘上的一个或多个缓存单元。一个或多个缓存单元可以驻留在单个设备上,和/或一个或多个缓存单元可以驻留在多个设备上。举例来说,MPD文件可被存储在“MPD缓存”中,和/或媒体分段可被存储在“媒体缓存”中。MPD缓存和媒体缓存可以驻留在相同缓存存储器(例如物理缓存器)中,和/或MPD缓存与媒体缓存可以驻留在不同的缓存存储器内部(例如驻留在相同设备内部和/或不同设备上的不同存储器内部)。
缓存可以是中间盒平台的一部分,和/或缓存可以是不同于中间盒平台的设备的一部分。举例来说,MPD文件可以是从中间盒平台取回和/或接收的,和/或MPD文件可以是从不同于中间盒平台的设备取回和/或接收的。设备(例如中间盒平台)可以从中间盒平台的存储器中取回和/或接收MPD文件,和/或设备(例如中间盒平台)可以从不同于中间盒平台的设备中取回和/或接收MPD文件。
存储在缓存内部的媒体内容的多个媒体分段的子集可被确定。回程链路上的可用带宽可被确定。基于MPD文件、存储在中间盒平台的缓存内部的媒体内容的多个媒体分段的子集和/或回程链路上的可用带宽,可以生成动态MPD文件。该动态MPD文件可被传送给客户机。
附图说明
图1显示了关于HTTP动态自适应流传输(DASH)协议操作的示例。
图2显示了关于清单的例示结构。
图3显示了关于应用感知性能优化的示例。
图4显示了用于DASH或其他媒体内容递送协议的媒体缓存代理技术的示例。
图5显示了包含DASH缓存代理应用和MEC/缓存中间盒平台的高级系统架构的示例。
图6显示了关于DASH ON/OFF循环的示例。
图7显示了关于DASH会话拦截处理的示例。
图8显示了基于ON/OFF循环值的媒体呈现描述(MPD)文件刷新周期的示例。
图9显示了关于MPD请求的示例。
图10显示了关于媒体分段请求处理的示例。
图11A是可以实施所公开的技术的例示通信系统的系统图示。
图11B是可以在图11A所示的通信系统内部使用的例示无线发射/接收单元(WTRU)的系统图示。
图11C是可以在图11A所示的通信系统内部使用的例示无线电接入网络和例示核心网络的系统图示。
图11D是可以在图11A所示的通信系统内部使用的例示无线电接入网络和例示核心网络的系统图示。
图11E是可以在图11A所示的通信系统内部使用的例示无线电接入网络和例示核心网络的系统图示。
具体实施方式
现在将参考不同附图来描述说明性实施例的具体实施方式。虽然本描述提供了关于可能的实施方式的详细示例,然而应该指出的是,这些细节应该是例示性的,并且没有以任何方式对本申请的范围构成限制。
所公开的是能够缓存所递送的多媒体内容的媒体缓存代理技术(例如应用)的系统、方法和手段。作为示例,所公开的是用于能够缓存使用HTTP动态自适应流传输(DASH)协议所递送的多媒体内容的媒体缓存代理技术的系统,方法和手段。针对客户机的媒体分段的可用性和/或递送吞吐量可被管理。媒体分段可以包括媒体内容分段。作为示例,针对客户机的媒体分段的可用性和/或递送吞吐量可以基于缓存内容和/或回程链路拥塞等级而被管理。该管理可以包括:考虑被缓存的分段的可用性,和/或考虑回程链路上的负载,以及修改媒体清单(例如DASH媒体呈现描述(MPD)文件)内容。作为示例,回程链路上的负载可以包括吞吐量和/或会话数量。回程链路上的负载可用于确定从源服务器下载媒体分段的容量。该管理可以包括考虑回程链路上的负载和/或修改媒体清单的内容,以便防止客户机选择可能会降低体验质量和/或引发回程链路拥塞的媒体分辨率。这些技术可以适用于移动边缘计算(MEC)和/或其他环境。示例可以是针对MEC DASH缓存代理应用提供的。
DASH协议可以依靠超文本传输协议(HTTP)而使客户机能够下载以不同速率和/或分辨率编码的媒体内容。举例来说,DASH协议可以依靠超文本传输协议(HTTP)而使客户机能够依照流行的和/或当前的网络条件来下载以各种速率和/或分辨率编码的媒体内容。媒体可被分成一个或多个分段。每一个分段都可以被编码成一个或多个版本(例如不同的内容表示)。每一个编码分段版本都可以代表在相同的媒体内容时段中以一定的速率(例如不同速率)和/或一定的分辨率(例如不同分辨率)编码的分段。分段版本(例如不同版本)可以具有一定的大小(例如不同的大小)。举例来说,分段版本大小可能与编码分辨率成比例,其中举例来说,较高的分辨率会导致较大的大小。分段版本(例如不同版本)可以使用资源量(例如不同资源量),例如存储和/或通信(例如下载)吞吐量。
客户机(例如运行在客户机上的应用)可以基于一个或多个因素来选择(例如选择下载)适当大小(例如大小最适当)的分段版本(例如分段表示)。作为示例,这些因素可以包括用户体验、先前下载的分段版本和/或所估计的可用吞吐量(例如由客户机测量)。客户机可以选择分段(例如下一个分段)。举例来说,客户机可以通过将分段的带宽与估计的(例如近似)带宽(例如可用带宽)相匹配来选择下一个分段。可用带宽可被确定。举例来说,可用带宽可以是通过观察当前和/或先前分段的下载参数而被确定的。
客户机可被告知一个或多个媒体服务器上的分段的可用性和/或位置。举例来说,客户机可以通过媒体清单文件(例如清单)而被告知一个或多个媒体服务器上的分段的可用性和/或位置。关于清单的一个示例是媒体呈现描述(MPD)文件。清单可以提供关于可用分段版本(例如表示)的盘点和/或该可用分段版本的名称、位置、分辨率、带宽等等。所述清单可以通过一种或多种技术来得到。举例来说,所述清单可以通过使用一种或多种通信技术来得到,例如文件传输协议(FTP)、电子邮件、HTTP等等。HTTP访问在服务器和/或客户机上提供灵活性、网络地址转换(NAT)防火墙穿越和/或普适性。这里的示例可以使用借助HTTP访问的MPD文件来提供,但是这些技术也可适用于通过HTTP和/或其他技术访问的其他清单。
图1显示了例示的DASH协议操作。如所示,媒体内容可以分成分段(例如多个分段,比方说n个分段)和/或时段。举例来说,媒体内容可被分成分段120a、120b、120n。虽然在图中没有显示,但是也可以使用内容的其他属性(例如比特率和/或帧速率)来取代或补充分辨率。每一个分段1-n可以包括所述内容的时段104和/或分辨率102。每一个分段可以以一个或多个(例如五个)不同的分辨率来编码。分段的分辨率将会导致产生图1所示的文件大小(例如不同的文件大小)。举例来说,如图1所示,代表分段版本的矩形的大小可以指示分段版本的分辨率(举例来说,随着分段大小增加,分辨率也会增大)。作为示例,高分辨率分段106的大小可以大于低分辨率分段108的大小。
客户机可以以下载以分辨率102(例如最低分辨率,比方说最小的文件)编码的第一分段(例如分段120a和/或分段120a内部的110)为开始。客户机可以估计下载带宽(例如可用下载带宽),和/或确定可以下载与分段相比具有更高分辨率(例如高于分段版本110)的分段。如从第一下载分段到第二下载分段的对角箭头所示,客户机可以选择下载以可用的第四最高分辨率编码的分段120b(例如分段120b内的分段版本112)。客户机可以降低下一个分段的分辨率(例如选择分段版本113)。举例来说,客户机可以通过确定该客户机先前高估了可用带宽而降低下一个分段的分辨率。如从第二下载分段(例如分段版本112)到第三下载分段(例如分段版本113)的对角箭头所示,客户机可以选择下载以可用的第三最高分辨率编码的分段。该估计可用带宽和/或使用可用带宽来选择所要下载的分段表示的处理可以继续进行直至媒体末端的最后一个分段(例如分段120n)。
图2显示了关于清单的例示结构。该清单可以是MPD文件。该清单可以用XML来规定。举例来说,MPD文件可以用XML来规定。MPD文件(例如“MPD”)的最高层可以指定媒体呈现描述(MPD)节点202。MPD可被分为一个或多个时段204。时段204(例如每一个时段)可以覆盖全部或部分媒体。时段可被细分成自适应集合206。自适应集合(例如每一个自适应集合)206可以与媒体类型(例如音频和/或视频)相关联。自适应集合206可以包括一个或多个(例如不同的)表示208。表示208(例如每一个表示208)可以对应于分段的特定分辨率和/或编码速率。表示208可以包括媒体分段定义、容器文件引用、访问地址和/或位置等等。表示元素208可以单独和/或在其他项或元素中指定带宽。举例来说,表示元素208可以单独和/或在其他项或元素中指定用于回放所引用的媒体分段的带宽。MPD中的信息210(例如媒体分段表示带宽)可以是选择一个或多个媒体分段表示的过程中的一个因素。例如,媒体分段表示带宽可能是选择一个或多个媒体分段表示的过程中的一个因素。
MPD节点202可以提供定义媒体类型的能力。举例来说,媒体类型可被定义成静态和/或动态。静态媒体可以是不随时间改变的媒体。用于静态媒体的MPD文件可以在媒体下载(例如每一次下载媒体)的过程中被读取。关于静态媒体的示例可以是以原始形式存储在服务器上的电影。动态媒体可以是随时间演变的媒体。动态媒体可以具有可能发生变化的持续时间和/或分段可用性。用于动态媒体的MPD文件会在媒体下载过程中被更新。举例来说,用于动态媒体的MPD文件可以在媒体下载过程中被更新,以便与演进的持续时间和/或分段可用性相适配。MPD文件更新频率可以在MPD文件中被指定。现场直播可以是动态媒体的一个示例。
移动边缘计算(MEC)可以使用超低时延、高带宽网络接入和/或无线电网络信息访问来向无线电接入网络(RAN)提供信息技术(IT)和/或云计算能力,其中应用可以使用所述技术和/或能力来提供与上下文相关的服务。MEC实施的应用感知性能优化处理可以提升网络效率和/或增强用户/顾客体验。
图3显示了关于应用感知性能优化的一个示例。MEC可以定义一个能向被托管的应用提供一个或多个(例如不同)服务的平台。MEC平台可被置于网络304的“边缘”。网络的“边缘”可以位于和/或邻近于LTE宏基站(eNB)场所、多技术(3G/LTE)小区聚集场所、和/或无线电网络控制器(RNC)场所。位于RAN“边缘”的应用感知MEC服务器可以允许性能增强的应用,例如增强的媒体流传输应用。作为示例,位于和/或邻近于LTE基站的应用感知MEC服务器302可以允许增强的性能应用,例如增强的媒体流传输应用。
媒体内容传送部署可以利用中间件和/或中间盒缓存。举例来说,用于DASH和/或其它媒体内容递送协议的媒体缓存代理技术(例如应用)可被部署。作为示例,用于DASH和/或其他媒体内容递送协议的媒体缓存代理技术(例如应用)可被部署在RAN的边缘附近的MEC平台上。媒体缓存代理技术可以在多种场景和/或场所中被部署和/或实施。举例来说,媒体缓存代理技术可以在各种场景和场所中被部署和/或实施,无论所述场景和区域是分布式和/或集中式的、具有或不具有DASH的、以及具有和/或不具有MEC的。
媒体缓存代理可以增强用户体验。举例来说,媒体缓存代理可以通过改进和/或最大化高容量RAN的使用和/或缓存接近于用户的媒体来增强用户体验。媒体缓存代理可以减小共享回程的负载和/或成本。媒体缓存代理可以提升并发的DASH会话之间的公平性。
媒体递送协议可以被适配或者不被适配成在下载条件可变的环境中提供最佳性能。举例来说,DASH协议不会被适配成下载条件可变的环境中提供最佳性能。在缓存部署环境中,媒体分段可被存储(例如以更接近于用户的方式存储,比方说缓存)。举例来说,在缓存部署环境中,一些媒体分段可以以更靠近用户的方式存储,以便经由吞吐量更高的路径来提供媒体分段访问,而其他分段则可以被远程存储(例如保存在远端源服务器中),由此可以通吞吐量较低的路径访问。缓存和/或远端存储器中的分段分布会导致高吞吐量与低吞吐量之间的媒体播放器下载振荡,由此会导致播放器不稳定和/或用户体验质量低下。
针对所述振荡的客户端(例如媒体播放器)增强处理可以使用指数回退机制来探测分段(例如下一个分段)的可用性。客户机可能缺少对于缓存代理到媒体服务器(例如回程)之外的网络状况的精确理解,和/或可能具有或不具有关于缓存代理上的媒体分段可用性的信息。
媒体文件碎片有可能导致下载是零星的,由此会创建开/关模式。具有竞争性客户机应用(例如媒体播放器)的网络可能会加剧所述开/关模式,而这将会导致会话(例如不同会话)之间的不稳定性和/或不公平性。不公平性有可能是非常显著的。举例来说,如果一个或多个客户机与其他客户机相比遭遇到更大的网络延迟,那么不公平性将是显而易见的。所述不公平可被追踪。举例来说,不公平性可被追溯至传输控制协议(TCP)会话,其中所述会话属于在慢启动时段耗费更多时间(例如因为延迟和/或其他客户机产生的业务量)和/或很少(作为示例,或者从未)达到拥塞避免传输模式的客户机。
由具有延迟(例如较长延迟)的客户机实施的客户机带宽可用性量度可以指示(例如系统性地指示)比可用带宽更低的带宽。关于低带宽可用性的指示(例如错误指示)会导致遭遇到较高延迟的客户机系统性地选择较低分辨率的分段。举例来说,由于对于延迟较低的客户机选择媒体分段没有进行限制,因此,具有较低延迟的客户机有可能会最终从遭遇到较高延迟的客户机中“窃取”带宽。
图4显示了关于媒体缓存代理实施方式400的示例。这里描述的特征可以借助缓存代理来实施。举例来说,这里描述的特征可以借助缓存代理以及借助缓存服务器(例如借助位于缓存服务器的应用)来实施。缓存代理可以适用于DASH和/或其他媒体内容递送协议。缓存代理402(例如DASH缓存代理,比方说DASH缓存代理应用)可以作为中间件和/或中间盒404部署(例如安置或放置)在无线电接入网络(RAN)406(例如高性能多接入网络RAT)与共享回程接入网络408(例如受限的共享回程接入网络)之间。回程可以包括分组核心网络(PCN)的开销,其中该网络可以具有与移动网络的移动性和操作相关联的各种服务器。
回程网络限制会在客户机414和/或源服务器412之间的数据路径上产生吞吐量和/或延迟方面的瓶颈410。在家庭节点B网络和/或其他家庭网络部署中会出现网络布局约束。
缓存代理402(例如DASH缓存代理)可以确定和/或传递媒体分段和/或媒体分段递送的可用性。缓存代理402可以管理由无法可靠地估计缓存内容和回程限制的客户机发布的DASH请求。
管理(例如关于DASH请求的管理)可以考虑被缓存分段的可用性、考虑回程链路上的负载、和/或修改清单(例如MPD文件)内容。回程链路可以包括位于核心网与分层网络边缘的子网络之间的链路(例如通信链路)。作为示例,回程链路可以包括中间盒平台与源服务器之间的链路(例如通信链路)。清单是可以被修改的。举例来说,清单可以基于缓存分段的可用性和/或回程链路上的负载而被修改。客户机可以基于经过修改的MPD来执行操作。举例来说,客户机可以基于经过修改的MPD而不是初始(例如未做修改的)MPD来执行操作。缓存服务器可以指示客户机刷新(例如定期刷新)其清单。例如,缓存服务器可以指示客户机在每一次接收到内容部分(例如分段)之后刷新其清单。缓存服务器可以设置到期时间。该到期时间可用于实施缓存服务器确定的刷新周期。举例来说,缓存服务器可以在修改MPD文件时设置到期时间。该到期时间可以在MPD文件中被设置,和/或该到期时间可以在MPD文件以外设置。缓存服务器可以在到期时间终止时发送事件。举例来说,缓存服务器可以在到期时间终止时向客户机发送刷新其清单的指令。在到期时间终止以及缓存服务器向客户机发送了刷新其清单的指令之后,客户机可以刷新其清单。
缓存服务器可以指示客户机周期性地刷新其清单。举例来说,缓存服务器可以指示客户机每隔T秒和/或每隔M个下载分段(作为示例,其中M>1)刷新其清单。缓存服务器可以确定刷新周期(例如T秒)和/或M个下载分段。举例来说,缓存服务器可以基于在缓存中添加新内容分段的频率来确定刷新周期和/或M个下载分段。作为示例,如果缓存内容稳定,那么T和/或M值可以更大,或者如果频繁地用新的内容段更新缓存,那么T和/或M的值可以更小。缓存服务器可以基于回程链路的吞吐量是否稳定和/或回程链路的吞吐量是否经常改变来确定刷新周期(例如T秒)和/或M个分段。举例来说,如果判定回程链路吞吐量和/或负载稳定或者不经常改变,那么T和/或M值可以更大。如果判定回程链路吞吐量和/或负载更加多变或正在快速或以不可预测的方式变化,那么T和/或M的值可以更小。客户机可以依照指示来刷新清单,据此具有最新的可用性信息(例如关于被缓存的内容分段的可用性的信息)。
实施一种或多种缓存代理技术的一个或多个设备和/或系统可以监视一个或多个参数(例如回程拥塞和缓存内容),以便为客户机(一个或多个)提供供其在选择分段表示的过程中使用的更精确的信息。所述实施一种或多种缓存代理技术的一个或多个设备和/或系统可以为一个或多个客户机做出部分和/或全部决定。举例来说,所述实施一种或多种缓存代理技术的一个或多个设备和/或系统可以通过改变分段表示(例如可用分段表示)列表来从清单中选择,由此可以为一个或多个客户机做出部分和/或全部决定,该分段表示(列表可能限制访问和/或可用性和/或可以将客户机引导至一个或多个分段表示。
缓存代理技术可以开放和/或增强媒体访问和/或递送协议。举例来说,缓存代理技术可以开放和/或增强媒体访问和/或递送协议,以便利用缓存设备(例如中间盒)。这里的示例是从可以使用MEC平台以及中间盒缓存代理的DASH缓存代理的角度提供的,但是这些缓存代理技术也可以适用于其他场景及实施方式。
缓存代理技术可以被单独使用,和/或与客户机和/或服务器端的增强处理结合使用。缓存代理技术可以改进客户机和/或服务器端解决方案。举例来说,缓存代理技术可以通过向端到端系统提供附加信息来改进客户机和/或服务器端解决方案。
缓存代理实施方式可以以中间盒为中心。缓存代理可以利用MEC/缓存中间盒平台。代理可以知悉缓存内容、回程负载、进行中的DASH会话等等。媒体服务器(例如源服务器)可以将DASH会话重定向到DASH缓存代理应用。缓存代理可以避免修改客户机(例如DASH客户机)的操作,这样做可以允许缓存代理技术与多个不同的客户机合作。缓存代理不会对业务量进行优先排序。DASH净荷可被视为与其他传输会话相似或相同。实施缓存代理的系统可以假设一些或所有会话可以具有对可用吞吐量的相等部分的接入。
缓存代理(例如DASH缓存代理应用)可以执行以下的一项或多项(例如借助缓存代理应用)。缓存代理可以通过操作来测量(例如连续或周期性测量)回程链路上的负载(例如吞吐量和/或会话数量)。该处理可以用于确定(例如计算或估计)从源服务器下载媒体分段的容量。缓存代理可以追踪缓存(例如本地缓存)中的分段的可用性。缓存代理可以追踪进行中的DASH会话(例如编号、进程)。缓存代理可以束缚、限制或引导客户机的分段选择。举例来说,缓存代理可以通过修改与会话(例如每一个会话)相关联的一个或多个清单(例如MPD文件)来束缚、限制或引导客户机的分段选择。缓存代理可以致使客户机更新从清单(例如MPD文件)获得的信息。例如,缓存代理可以通过将静态MPD文件转换成动态MPD文件和/或通过调整MPD文件的更新频率来致使客户机更新从清单获得的信息。
缓存代理的设计和实施可以取决于一个或多个因素。举例来说,缓存代理的设计和实施可以取决于服务器能力、客户机能力、网络类型和能力、媒体访问和递送协议等等。以下的一项或多项都是适用的。源服务器能够(作为示例,和/或可被配置成)确定请求源于何处。源服务器能够(例如被配置成)重定向到DASH缓存代理应用(例如最近的DASH缓存代理应用)。作为示例,源服务器能够通过使用统一资源定位符(URL)改写和/或HTTP重定向来重定向到DASH缓存代理应用。不安全的HTTP可用于传送DASH。例如,不安全的HTTP可以用于传输DASH,以便允许中间盒拦截会话。在一个或多个(例如全部)链路上可以实施公平排队处理(例如随机公平排队)。举例来说,在一个或多个链路上可以实施公平排队,以便在传输会话之间提供全局性的链路级公平性。回程链路特性(例如带宽、延迟)可以是固定和/或已知的。回程有可能是确定超出缓存代理的来自DASH服务器的吞吐量的瓶颈(例如唯一瓶颈)。MEC/缓存中间盒平台可以向应用提供针对一个或多个媒体分段选择参数的访问。作为示例,MEC/缓存中间盒平台可以向应用提供针对业务量测量(例如总吞吐量和/或连接追踪)、被缓存的分段的表示等等的访问。
图5显示了包含MEC/缓存中间盒平台504和/或缓存代理应用502(例如DASH缓存代理应用)的高级系统架构的示例。MEC/缓存中间盒平台504可以包括缓存代理应用502,和/或MEC/缓存中间盒平台504可以独立于缓存代理应用502。图5显示了可以在MEC/缓存中间盒平台504和/或DASH缓存代理应用502中提供的一个或多个分量的示例。
诸如MEC/缓存中间盒平台504之类的平台能够(例如被配置成)为缓存代理提供信息(例如用户业务量)访问。举例来说,MEC/缓存中间盒平台504能够向DASH缓存代理应用502提供针对诸如用户业务量之类的信息的访问。DASH缓存代理可以使用信息。例如,DASH缓存代理可以使用信息来终止和/或观察(例如计量)用户和/或源服务器会话。
MEC/缓存中间盒平台504可以提供应用平台服务集合(例如标准化集合)。应用平台服务集合可以包括一个或多个特征。例如,应用平台服务集合可以包括基础设施服务(例如通信服务、服务注册)、无线电网络信息服务和/或业务量卸载功能(TOF)中的一个或多个。业务量卸载功能(TOF)可以提供具有监视和/或业务量终止能力的上行链路和/或下行链路用户平面访问。
缓存代理(例如DASH缓存代理)可以包括以下的一个或多个。以下的一个或多个可以在缓存代理应用和/或MEC/缓存中间盒平台中实施。举例来说,在图5的示例中显示的计量506可以执行(例如连续执行)一个或多个任务。作为示例,计量506可以执行关于访问链路上的分段ON/OFF循环时间的估计。估计值可被使用。举例来说,估计值可以被用作MPD文件刷新周期的基准值。计量处理可以执行主动传输会话跟踪。计量处理可以执行关于(例如一个或多个)非DASH传输会话所用的回程带宽的计算,其中所述会话可以包括由代理平台自身(例如MEC/缓存中间盒平台504)使用的会话。计量处理可以执行关于(例如一个或多个)DASH传输会话所用回程带宽的计算。计量处理可以执行关于回程链路上的可供(例如下一个)DASH会话使用的带宽的计算(例如估计)。计量处理可以在访问侧链路上执行带宽估计。关于访问侧链路带宽的估计可被执行。举例来说,关于访问侧链路带宽的估计可以通过客户机实施方式来执行。计量处理506可以经由访问侧接口508和/或回程侧接口510来进行通信。
缓存代理应用502(例如DASH缓存代理应用)可以包括MPD管理512。该MPD管理512可以与DASH会话管理514进行通信。DASH会话管理514可以与HTTP会话拦截/终止516进行通信。作为示例,在DASH会话管理514与HTTP会话拦截/终止516之间可以发送DASH会话请求。DASH会话管理514可以与计量506进行通信。举例来说,在DASH会话管理514与计量506之间可以发送传输度量(例如这里描述的传输度量)。如图5所示,DASH会话管理514可以与缓存518进行通信。作为示例,在DASH会话管理514与缓存518之间可以发送MPD分段。缓存518可以与MPD/分段取回520进行通信。举例来说,缓存518可以与MPD/分段取回520进行通信,以便取回MPD/缺失分段。MPD/分段取回520可以经由DASH协议来与MEC/缓存中间盒平台504进行通信。HTTP会话拦截/终止516可以经由HTTP协议来与MEC/缓存中间盒平台504通信。
分段ON/OFF循环时间以及DASH传输会话吞吐量估计都是可以提供的。
图6显示了关于DASH ON/OFF循环600的示例。用于指定传输会话Tc的ON/OFF循环时间可以包括ON阶段Ton 602和OFF阶段Toff 604。传输会话Tc可以由等式1给出:
Tc=Ton+Toff 等式1
作为示例,在ON阶段,客户机可以主动下载所要回放的分段n+1,而在OFF阶段,客户机可以等待分段n结束播放,和/或等待客户机缓冲区的充满度低于某个阈值。客户机可以对所要回放的一个或多个分段进行排队。ON和OFF阶段可以由一个或多个事件(例如分段下载请求消息608和/或传输会话终止610(例如TCP FIN))来界定。一个或多个分段下载请求消息可被执行,和/或一个或多个传输会话终止可以被执行。作为示例,后续的分段下载请求612可被执行。所述后续分段下载请求612可以终止OFF阶段和/或开始后续的ON阶段。
在访问侧链路上可以评估ON/OFF循环时间606。举例来说,通过在访问侧链路上评估ON/OFF循环时间606,可以在从缓存下载媒体分段的时候执行评估。
会话Tc值可以取决于媒体回放。举例来说,会话Tc值可能取决于媒体回放而与网络条件无关。会话Tc值可以对应于(例如直接对应于)媒体组块覆盖的时间帧。会话Tc值可被追踪(例如被连续追踪)。举例来说,如果所下载的组块的时间帧特性在DASH会话期间发生变化,那么可以追踪会话Tc值。
在回程链路上可以为使用回程链路的一个或多个(例如所有的已有)会话执行传输会话带宽估计。多种类型的传输会话都是可以执行的。举例来说,后台传输会话和/或DASH传输会话都是可以使用的。
后台传输会话可以包括在回程链路上进行的会话。系统可能不具有关于使用后台传输会话的应用的信息。对于活动的后台会话来说,一个或多个(例如每一个)会话的业务量(例如在下行链路方向上)Vd可以被累积。在会话开始时起经过了时间T之后,会话使用的带宽可以由等式2给出:
Figure BDA0001522327420000161
当后台传输会话脱离活动模式时,信息有可能会被丢弃,并且后台传输会话将不再是会话计数(例如总会话计数)的一部分。举例来说,当TCP会话切换到TIME_WAIT状态时,信息可被丢弃,并且TCP会话将不再是总会话计数的一部分。
DASH传输会话可以是由DASH客户机建立的传输会话。DASH传输会话可以由系统识别。DASH传输会话可以遵循ON/OFF模式。举例来说,DASH传输会话可以遵循图6的示例中显示的ON/OFF模式。带宽使用率可以在整个传输会话Tc时段上被计算。当会话脱离活动传输状态时,会话不会被清除(例如不会被立即清除)。举例来说,在DASH会话到期之前可以一直保持会话。DASH传输会话可能是总的会话计数的一部分,直至DASH会话到期。
关于带宽利用率估计的潜在问题是计算值在ON/OFF循环结束之后才会变得可用。当ON/OFF循环结束时,新的循环将会开始。新循环的开始会使带宽估计值过时。关于带宽利用率的近似值可以被计算。举例来说,通过计算带宽利用率的近似值,可以避免这种过时。带宽利用率的当前值可以根据何时请求所述值来提供。以下的一项或多项都是适用的。
在(例如第一个)ON/OFF循环期间可以产生关于带宽估计值的请求。会话使用的带宽BWsession可被设置成是MPD文件规定的近似值。举例来说,会话使用的带宽BWsession可被设置成是在第一ON/OFF循环期间发出请求的时候由MPD文件规定的近似值。
在第n个ON/OFF循环的Ton阶段可以产生关于带宽估计值的请求。当在第n个ON/OFF循环的Ton阶段产生关于带宽估计值的请求时,会话使用的带宽BWsession可被设置成各种值。会话使用的带宽BWsession可被设置成是MPD文件指定的值。举例来说,当所下载的分段的分辨率不同于先前分段时,会话使用的带宽BWsession可被设置成是MPD文件指定的值。会话使用的带宽BWsession可被设置成是在先前的分段下载过程中为该DASH会话计算的BWsession值。举例来说,当所下载的分段与前一分段具有相同分辨率时,会话使用的带宽BWsession可被设置成是先前的分段下载过程中为该DASH会话计算的BWsession值。
在第n个ON/OFF周期的Toff阶段可以产生关于带宽估计值的请求。会话使用的带宽BWsession可被设置成
Figure BDA0001522327420000183
其中来自前一个循环的Tc值可被使用,而Vd则可以对应于在ON阶段累积的数据量。
可用带宽是可以被计算的。BWbackhaul可以是回程链路上的可用带宽。N可以是活动的传输会话(DASH和非DASH)的数量。每一个已有传输会话都可以使用等式3给出的可用带宽:
Figure BDA0001522327420000181
会话使用的带宽BWsession有可能没有充分利用可用带宽(例如BWsession<BWmax_current)。举例来说,会话使用的带宽BWsession可能会因为客户机服务器路径上的瓶颈(例如其他地方的瓶颈)和/或因为较低的吞吐量会话需求和/或应用层负载而没有充分利用可用带宽。如果没有充分使用,那么有可能会为能够利用该未被充分利用的带宽的会话的附加吞吐量创建关于空间。
用于下载下一个DASH分段的可用带宽可被估计。举例来说,用于下载下一个DASH分段的可用带宽可以使用以下的一项或多项来估计:(i)用于下载下一个DASH分段的可用带宽可以通过计算逐个会话的可用带宽BWmax_current来估计(例如以等式3所示的方式);(ii)用于下载下一个DASH分段的可用带宽可以通过计算每一个已有会话的逐个会话带宽使用率值BWsession来估计(例如以等式2所示的方式);和/或(iii)用于下载下一个DASH分段的可用带宽可以通过识别和计数每一个未充分使用的会话BWUsession(n)<BWmax_current而被估计,其中UC可以是关于未充分利用的会话的计数。下一个DASH分段的可用带宽BWDASH可由等式4给出:
Figure BDA0001522327420000182
链路可能具有大小为10Mbps且具有4个传输会话的全双工能力。每一个会话的可用带宽都可以被计算。举例来说,每一个会话的可用带宽可以依照公式3并以如下方式来计算:
Figure BDA0001522327420000191
四个传输会话中的两个传输会话可以使用1Mbps,例如未充分利用,其中未充分利用计数UC=2,而另外两个会话则会使用4Mbps,例如过度使用。用于下载下一个DASH分段的可用带宽可以依照公式4并以如下方式来计算:
Figure BDA0001522327420000192
计量处理可以依赖于一个或多个平台功能,和/或计量处理可以通过监视IP业务量来实施计量。作为在普通的Linux系统上实施的平台的示例,诸如IPTABLES、NFQUEUE和/或CONNTRACK之类的子系统可被用作实施计量处理的基础。计量系统的实施方式会随着平台而变化。举例来说,计量系统的实施方式可以随着在平台上和/或使用平台实施的计量系统的一部分相比于作为应用一部分的计量系统部分而改变。
HTTP会话拦截/终止可以终止和/或拦截一个或多个HTTP会话。关于HTTP会话终止的示例可以包括可以触发应用子系统(例如应用的剩余子系统)运行的HTTP服务器。多种多平台HTTP服务器可以终止和/或拦截一个或多个HTTP会话。举例来说,Apache服务器可以终止和/或拦截一个或多个HTTP会话。
会话拦截有可能会涉及附加处理。例如,会话拦截有可能涉及与终止相关联的附加处理。会话拦截可能涉及与平台相关的IP业务量拦截机制。作为Linux平台的示例,IPTABLES模块可以允许拦截传输会话,该会话可被转发到定制的服务器模块。TCP/IP协议层可能无法将所述拦截局限于特定的资源集合(例如仅仅是DASH会话)。考虑到TCP/IP协议层无法将拦截局限于特定的资源集合,有可能会存在一个问题。在应用级,可以指定(例如URL)一个可用于处理(例如在本地处理)请求的资源集合(例如表格),而其他请求则可以被转发到目标资源位置。通过指定资源集合和/或转发请求,可以解决上述问题。在应用层,DASH会话可以从其他会话中被识别出来。举例来说,在应用层,通过遵循一个或多个启发式规则(例如以下的一项或多项),可以在其他会话中识别出DASH会话。DASH会话(例如每一个DASH会话)可以通过请求MPD文件而启动(例如始终启动)。MPD文件可以通过其扩展名和/或其内容而被识别。后续的请求可以以MPD文件中指定的分段为目标。会话可被转发到目标资源。举例来说,当请求并非以MPD文件或MPD文件中指定的分段为目标时,这时可以将会话转发到目标资源。如果识别了分段请求,那么可能拦截业务量和/或可以终止会话。
图7显示了关于DASH会话拦截700的示例。DASH会话拦截700的一个或多个要素可以通过TCP/IP层处理、HTTP服务器处理和/或应用层处理来执行。在702,会话可以被终止。例如,缓存代理和/或该缓存代理的部件(例如缓存代理的HTTP会话截取/终止部件)可以充当会话终点和/或端点。作为示例,在702,HTTP端口的TCP/IP会话可以被终止。举例来说,HTTP端口的TCP/IP会话可以被TCP/IP层处理终止。该会话可以作为图9显示的例示MPD请求900中的处理和/或图10所示的例示媒体分段请求处理的结果而被终止。在704,资源可被请求和/或可以提取所请求的资源。举例来说,资源可被请求和/或可以通过HTTP服务器处理来提取所请求的资源。
在706,资源集合可被搜索。举例来说,在706,DASH资源集合可被搜索,和/或可以对规则(例如启发式规则)进行核实。在708,可以确定资源是否为DASH相关资源。如果资源不是DASH相关资源,那么在712,可以使用被请求的资源来建立会话。数据流可能通过被终止的会话来桥接。在708,如果该资源是DASH相关资源,那么在710,该请求可被传递到会话管理(例如DASH会话管理)(例如DASH会话管理514)。
分段取回可以下载分段(例如所需要的分段)。举例来说,分段取回可以是MPD/分段取回520。分段取回可以从缓存系统(例如缓存518)接收关于MPD和/或媒体分段文件的请求。该请求可被转换成DASH HTTP请求。分段取回处理可以被实施。举例来说,分段取回处理可以用一个或多个HTTP客户机库(例如任何可用的HTTP客户机库)来实施。
缓存处理可以管理关于MPD和/或媒体分段文件的缓存。缓存处理可以提供以下的一项或多项。缓存处理可以提供可用于查询分段存在性的URL到文件映射。分段可被映射到特定的MPD文件URL。举例来说,一个或多个分段(例如每一个分段)可被映射到相关联的MPD。作为示例,一个或多个分段可被映射到可用于取回分段的MPD文件内部的URL。
缓存处理可以提供MPD文件所引用的分段的驱逐去优先化处理(eviction de-prioritization)。驱逐去优先化处理可以降低驱逐一个或多个分段(例如将其从缓存中移除)的可能性。举例来说,在请求(例如输入的分段请求)中标识的分段可被映射到MPD文件(例如相关联的MPD文件)。来自MPD文件(例如相同MPD文件)的其它分段可被识别。举例来说,来自相同MPD文件且预计后续将被请求的其他分段可以被识别。驱逐去优先化消息可被发送。举例来说,通过发送驱逐去优先化处理消息,可以减小从缓存中驱逐其他这些分段的可能性。
缓存处理可以提供MPD文件替换。MPD文件替换特征可以(例如可能需要)支持原始的动态MPD文件。旧版本的MPD文件可以被新的MPD文件取代。作为示例,在下载新的MPD时,旧版本的MPD文件可以被新的MPD文件取代。MPD文件与已存储的媒体分段之间的关系可以保持和/或变更。缓存分段有可能会过时。举例来说,当媒体分段规范发生变化和/或MPD文件与已存储的媒体分段的关系无效时,被缓存的分段将会过时。系统可以驱逐无效分段(例如以显性的方式)和/或可以依靠缓存老化过程。
保存在缓存中的伪像(artifact)(例如每一个伪像)可以用一个或多个值来描述。例如,保存在缓存中的伪像可以通过URL、上次请求时间、请求数量、伪像类型(例如MPD或媒体)、所引用的MPD文件的URL(例如用于媒体分段伪像)、缓存中的当前媒体分段的列表(例如用于MPD文件伪像)等等来描述。作为示例,媒体文件可以在单个请求或者在多个字节范围请求中被请求。缓存处理可以单独管理被请求的分段(例如针对字节范围请求)。
MPD文件管理可以负责将MPD文件解析成数据结构(例如内部数据结构)。举例来说,MPD文件管理可以是MPD管理512。MPD文件管理可以从内部数据结构生成MPD文件。MPD文件管理可以提供以下的一项或多项。
MPD文件管理可以提供从静态到动态的MPD文件转换。静态MPD文件可被转换成动态MPD文件。举例来说,静态MPD文件可被转换成动态MPD文件,以使客户机可以周期性地重新下载MPD文件,以便顾及一个或多个变化。作为示例,处于动态的MPD文件可以指示客户机刷新(例如周期性刷新)MPD文件(例如以文件中的刷新周期所指示的方式)。
MPD文件管理可以执行表示集合的适配处理。客户机可被引导至一个或多个分段表示和/或分段集合。举例来说,通过修改表示定义集合,可以将客户机引导至一个或多个分段表示和/或分段集合。关于可用分段的修改可以取决于回程带宽(例如可用的回程带宽)和/或缓存中的分段可用性(例如缓存内容)。
分段表示既可以被缓存,也可以不被缓存。回程可以提供5Mbps。MPD文件(例如原始和/或先前修改的MPD文件)可以提供处于具有大小为6Mbps、2Mbps和/或300kbps的下载带宽的分辨率(例如不同分辨率)上的分段表示。缓存应用中的MPD文件管理可以修改MPD文件。举例来说,缓存应用中的MPD文件管理可以通过消除6Mbps带宽的分段表示和/或向客户机提供经过修改的MPD文件(例如借助MPD文件的定期更新)来修改MPD文件,由此基于可用回程带宽和/或缓存中的分段的可用性来管理分段可用性。
6Mbps带宽的分段表示可被缓存。回程可以提供1Mbps。MPD文件(例如原始和/或先前修改的MPD文件)可以提供处于具有大小为6Mbps、2Mbps和/或300kbps的下载带宽的分辨率(例如不同分辨率)上的分段表示。缓存应用中的MPD文件管理可以修改MPD文件。举例来说,缓存应用中的MPD文件管理可以通过消除2Mbps带宽的分段表示和/或将经过修改的MPD文件提供给客户机(例如借助MPD文件的定期更新)来修改MPD文件,由此基于可用回程带宽以及缓存中的分段可用性来管理分段可用性。
MPD文件管理可以提供媒体分段URL提取。在这里可以提供指向MPD文件所引用的媒体文件的URL的列表。举例来说,在这里可以基于各种可能的查询来提供指向MPD文件所引用的媒体文件的URL的列表。媒体分段URL提取可以允许为处于跟随(例如特定)媒体分段文件URL的一个或多个(例如全部)分辨率上的媒体分段文件推导出URL。
DASH会话管理可以管理DASH会话。作为示例,DASH会话管理可以通过引导客户机选择媒体分段(例如适当的媒体分段)来管理DASH会话。客户机可以通过考虑当前本地分段的可用性(例如在缓存服务器中)和/或当前的回程条件来选择适当的媒体分段。DASH会话管理可以包括以下的一项或多项。DASH会话管理可以包括DASH会话追踪。DASH会话管理可以包括动态MPD文件转换。DASH会话管理可以包括MPD文件刷新。DASH会话管理可以包括请求处理(例如MPD请求、媒体分段请求)。DASH会话管理可以包括会话终止和/或预取协调。
DASH会话追踪可以通过客户机活动来执行。举例来说,DASH会话跟踪可以通过客户机活动(例如MPD文件刷新和/或对MPD文件所引用的媒体分段进行下载)来执行。会话可被视为已经完成。举例来说,如果在无活动定时器的持续时间(例如一个或多个ON/OFF循环)中没有收到MPD刷新和/或分段下载请求,那么可以认为会话结束。无活动计时器可被重新启动。举例来说,如果发生MPD刷新和/或分段下载请求,那么可以重新启动无活动定时器。定时器可以被设置成是会话Tc的ON/OFF循环时间的最新估计值的倍数。在这里可以使用一个默认值(例如数秒)。作为示例,如果最近的估计值不可用(例如在会话开始的时候),那么可以使用默认值。
DASH会话管理(例如图5的DASH会话管理514)可以向缓存单元(例如图5的缓存单元518)发送驱逐去优先化命令。作为示例,在接收到(例如每一次接收到)关于活动DASH会话的事件时,DASH会话管理可以将驱逐去优先化命令发送到缓存单元。所述驱逐去优先话命令可以减小跟随在分段之后的分段被驱逐的可能性。作为示例,驱逐去优先化命令可以减小跟随在被下载和/或播放的分段之后的分段被驱逐的可能性。所述驱逐去优先化处理会影响分段表示(例如所有可用的分段表示,比方说分辨率)。
会话状态结构可以描述DASH会话的状态。会话状态结构可以包括以下的一个或多个。会话状态结构可以包括客户机标识(例如客户机IP地址)。会话状态结构可以包括MPD文件URL。会话状态结构可以包括会话无活动计时器(作为示例,当该计时器到期时,会话可以终止)。会话状态结构可以包括会话ON/OFF循环时间。会话状态结构可以包括关于动态MPD文件刷新处理的引用(例如在原始MPD文件是动态的时候)。会话状态结构可以包括媒体的URL(例如客户机下载的媒体分段,比方说最近的客户机请求)。
静态MPD文件(例如原始的静态MPD文件)可被修改,以便生成动态MPD文件。该动态文件可以向客户机指示和/或迫使客户机刷新(例如定期刷新)MPD文件的客户机版本。所产生的MPD文件可以适配于当前(例如流行的)网络状况。附加的MPD刷新处理可以被创建。举例来说,如果MPD文件(例如原始MPD)文件是动态的,那么可以创建附加的MPD刷新处理。附加的MPD刷新处理可以管理关于MPD文件(例如原始的动态MPD文件)的变化。以下的一项或多项可以应用于刷新处理。
MPD刷新处理可以从源服务器取回(例如周期性取回)原始动态MPD文件版本(例如新版本)。刷新周期可被设置成是原始动态MPD文件中指定的值。MPD文件的先前版本有可能会被从缓存中驱逐,并且被替换成新版本。举例来说,在刷新时(例如每次刷新时),MPD文件的先前版本可被从缓存中驱逐,并且会用新版本替换。所产生的动态MPD文件刷新周期可能短于原始动态MPD文件中指定的周期。引用原始动态MPD文件的DASH会话可以与刷新处理相匹配。刷新处理有可能会被终止。举例来说,如果引用原始动态MPD文件的(例如每一个)DASH会话都已经结束,那么可以终止刷新处理。
MPD文件刷新是可以提供的。新的动态MPD文件可被产生。举例来说,一旦出现来自客户机的请求(例如来自客户机的每一个请求),那么可以产生新的动态MPD文件。所产生的MPD文件的内容可以以原始MPD文件为基础,和/或可以适配于当前缓存内容和/或当前网络条件。
客户机可以下载动态MPD文件(例如可以周期性地下载动态MPD文件)。作为示例,客户机可以根据MPD文件中指定的刷新周期来周期性地下载动态MPD文件。刷新值可被设置成是分段ON/OFF循环时间Tc的持续时间。
图8显示了基于ON/OFF循环值的MPD文件刷新周期800的示例。如图8所示,关于MPD文件的请求802会在关于分段的请求804之前出现。一个或多个MPD文件请求和/或一个或多个分段下载请求可以被执行。作为示例,后续的MPD文件请求(例如806)和/或后续的分段下载请求(诸如808)可被执行。如图8所示,如果将所述周期设置成Tc,那么可以确保客户机在确定所要请求的下一个分段的表示之前获知媒体分段可用性。某一个值可以使用默认值。举例来说,在Tc值不可用时(例如最初不可用)可以将默认值用于某一个值。刷新时间可以(例如可能必须)小于或等于在原始MPD中提供的MPD值。举例来说,如果原始MPD是动态的,那么刷新时间可以小于或等于原始MPD中提供的MPD值。
DASH会话管理可以提供请求处理,例如MPD文件刷新和/或媒体分段请求处理。
图9显示了可以提供所例证的一个或多个特征的MPD请求的示例。图9描述了在处理MPD请求的过程中的一个或多个组件(例如不同组件)之间的交互的示例。在这里对交互示例进行了描述,但是可能并未描述内部操作。虽然所述交互被显示成涉及特定组件,但是本领域技术人员将会理解,所述交互可以涉及图9所示的一个或多个组件。举例来说,虽然905取回MPD被显示成是从DASH会话管理中进行推导直至在缓存处理结束,但是905取回MPD也可以通过图9所示的一个或多个组件(例如MPD管理)来执行。并且,或者作为替换,所述交互还可以涉及图9中未显示的一个或多个组件。
在901,缓存代理应用930(例如缓存代理应用502,比方说DASH缓存代理应用)可以接收来自客户机的HTTP请求。来自客户机的HTTP请求可以被HTTP拦截/终止接收(作为示例,其可以处于缓存代理应用930内部)。在901处的HTTP请求可以是针对适合在DASH流传输会话中使用的MPD的请求。在902,HTTP拦截/终止可以发送MPD请求。在902处的MPD请求可以是响应于在901处的HTTP请求而被发送的。在902处的MPD请求可以是以HTTP拦截/终止确定在901接收到的HTTP请求是关于MPD的请求为基础而被发送的。作为示例,这种确定可以用图7所示的处理来执行。在902处的MPD请求可以被DASH会话管理接收。在903,DASH会话(例如新的DASH会话)可以被创建。举例来说,在903,如果MPD文件请求不属于已有DASH会话,那么可以创建DASH会话(例如新的DASH会话)。新的会话可以被注册,以便对其进行监视,并且可以创建会话状态结构。在904,会话状态结构可以被取回,例如从缓存中取回。举例来说,在904,如果MPD文件请求属于已有DASH会话,那么可以获取会话状态结构。在905,MPD可被从缓存中取回,和/或在905',MPD可被从源服务器取回。作为示例,在905,MPD可被从缓存中取回,和/或在905’,如果MPD(例如MPD的当前的未过期版本)不在缓存之中,那么可以从源服务器取回MPD。在906,在缓存(例如本地缓存)中可以查询分段(例如媒体分段,比方说下一个媒体分段)的一个或多个表示(例如每一个表示和/或分辨率)的可用性。举例来说,一个或多个媒体分段的子集可被存储在缓存(例如本地缓存,比方说中间盒平台的缓存)内部。下一个分段可以是第一分段。举例来说,如果发生新的DASH会话,那么下一个分段可以是第一分段。在会话状态结构中可以存储当前正在为进行中的会话下载的分段的URL。基于所述值,可以推导出下一个分段参考。在907,从计量可以获取可用的回程带宽BWDash
在908,MPD文件可被修改。以下一项或多项是可以应用的。引用是可以移除的。举例来说,从MPD中可以移除关于未被缓存并且所需要的回程带宽(BWDash)超出了可用带宽的分段的引用。静态MPD类型可以变成动态MPD。刷新周期可以依照一个或多个刷新规则来设置。关于刷新规则的一个示例是针对第一ON/OFF循环尚未结束的新的会话(例如Tc不可用),以下取值中的最小值可被使用:(i)默认(例如任意)刷新值以及(ii)在MPD文件中指定的刷新值(例如在原始MPD为动态的时候)。关于刷新规则的一个示例是针对已有会话(例如Tc值可用),以下值中的最小值可被使用:(i)计算得到的ON/OFF循环时间Tc,以及(ii)在MPD文件中指定的刷新值(例如在原始MPD是动态的时候)。
在909,会话无活动计时器可被启动和/或重启。在910,MPD文件可被递送到HTTP会话拦截/终止。在911,HTTP会话拦截/终止可以完成客户机请求。举例来说,在911,响应于客户机请求901,可以将经过修改的MPD文件递送到客户机。图7所示的例示DASH会话拦截700可以与图9所示的例示MPD请求900和/或与图10所示的例示媒体分段请求处理结合使用。
图10显示了可以提供一个或多个例证特征的媒体分段请求处理的示例。图10描绘了媒体分段请求处理过程中的不同组件示例之间的交互的示例。在这里对交互示例进行了描述,但是并未描述内部操作。虽然所述交互被显示成涉及特定组件,但是本领域的技术人员将会理解,所述交互可以涉及图10所示的一个或多个组件。
在1001,来自客户机的HTTP请求可被缓存代理应用1030(例如缓存代理应用502,比方说DASH缓存代理应用)接收。来自客户机的HTTP请求可以被HTTP拦截/终止接收。在1002,HTTP拦截/终止可以发送媒体分段请求。所述HTTP拦截/终止可以响应于在1001接收的来自客户机的HTTP请求而发送媒体分段请求。所述HTTP拦截/终止可以以确定位于1001的来自客户机的HTTP请求是关于媒体分段的请求为基础来发送媒体分段请求。作为示例,所述确定可以使用图7所示的过程来执行。DASH会话管理可以接收在1002处的媒体分段请求。在1003,请求可以与已有的被监视DASH会话(例如会话状态结构)相匹配。在1004,会话状态结构中的被请求分段URL可被更新。举例来说,会话状态中的分段URL可被更新成指示已经产生了请求、所述请与已有的被监视DASH会话相匹配和/或该请求会有怎样的结果(例如是否将所述分段的缓存版本返回给请求方)。在1005,分段(例如被请求的分段)可被从缓存中取回。举例来说,如1005所示,分段(例如被请求的分段)可以在可用时被从缓存中取回。在1005',可以从源服务器取回分段(例如被请求的分段)。举例来说,在1005',如果分段在缓存中不可用,那么可以从源服务器取回分段(例如被请求的分段)。在1006,媒体分段(例如被请求的段)可被递送到HTTP会话拦截/终止。在1007,HTTP会话拦截/终止可以完成客户机请求。例如,HTTP会话拦截/终止可以响应于客户机在步骤1001发送的HTTP请求而将媒体分段传送到客户机。
会话终止可被提供(例如由DASH会话管理提供)。MPD文件可以指定媒体分段文件名称。举例来说,MPD文件可以根据具有包含递增分段计数的通配符的模板而指定媒体分段文件名称。MPD文件可以将或者不将时间帧与每一个周期相关联。检测媒体结束的处理有可能会非常简单。举例来说,在关联时间帧时,检测媒体结束的处理将会非常简单。媒体结束可以通过404HTTP错误代码指示给客户机。举例来说,在没有指定时间帧时,媒体结束可以通过404HTTP错误代码而被指示给客户机。DASH缓存代理应用可以向客户机桥接可能接收到的错误(例如任何错误)。举例来说,DASH缓存代理应用可以向客户机桥接其在尝试下载和/或预取媒体分段(例如所需要的媒体分段)时可能接收到的错误。
预取协调是可以提供的(例如由DASH会话管理提供)。媒体分段预取处理可以增强用户体验。预取规则可以被应用。举例来说,通过应用预取规则,可以避免在预取处理与活动会话下载的媒体分段之间引起竞争(例如不必要的竞争)。以下一项或多项都是可以应用的。
关于预取规则的示例可以包括为客户机请求的分段之前的分段执行预取处理(例如仅仅为其执行)。
关于预取规则的示例可以包括为活动的DASH会话执行预取处理(例如仅仅为其执行)。
关于预取规则的示例可以包括为属于某个时间帧(例如尚未缓存的时间帧)分段优先排序预取处理(例如与预取用于相同时间帧的分段(例如更高质量的分段)的处理相比较)。如果缓存了低质量的分段并且由此覆盖了媒体的第一时间帧,那么系统可以尝试预取覆盖后续时间帧的分段(例如具有最高的可能质量的分段)。
关于预取规则的示例可以包括引用公共MPD文件的会话可被优先排序。举例来说,如果存在一个或多个(例如四个)活动会话,并且在这些活动会话中有一个或多个(例如两个)会话引用的是相同的MPD文件X(作为示例,其他会话(例如其他两个会话)分别引用的是Y和/或Z MPD文件),那么可以预取MPD文件X引用的媒体分段。
关于预取规则的示例可以包括为一个或多个会话执行预取处理,例如在多个预取操作允许检索媒体分段(例如具有最高的可能质量的媒体分段)的时候。举例来说,如果存在一个或多个(例如四个)会话(作为示例,两个会话引用了MPD X,并且两个会话引用了MPDY),那么可以为一个或多个(例如所有的两个)MPD文件引用的分段执行预取处理(例如仅仅为其执行)(例如在可以取回可供所有的两个MPD文件使用的最佳质量的分段的时候)。会话(例如任一会话)可以是随机和/或依照策略选取的。
关于预取规则的示例可以包括在没有从源服务器下载任何分段的DASH会话的时候发生(例如仅仅在此时发生)的预取处理。
关于预取规则的示例可以包括在媒体分段上发生(例如仅仅在其上发生)的预取处理(例如整个媒体分段,例如不为字节范围请求执行预取处理)。
关于预取规则的示例可以包括跟随在(例如必须跟随在)某个处理之后的预取处理。举例来说关于,关于预取规则的示例可以包括跟随在与请求处理相同的处理之后的预取处理,但是该请求可以是由DASH代理应用发布的,而不是由客户机发布的。
DASH协议能使客户机下载媒体内容(例如以渐进的方式下载媒体内容),并且有可能从不同的内容表示(例如用不同分辨率、比特率或其他属性预备的内容版本)中进行选择。这些内容表示可以与下载带宽(例如不同的下载带宽)相关联。客户机可以选择表示。举例来说,客户机可以基于所估计的带宽来选择特定分辨率的内容版本。内容表示的可用性可以通过媒体呈现描述(MPD)文件而被告知客户机,其中所述媒体呈现描述(MPD)文件可以在下载媒体内容之前被下载。
DASH缓存代理应用可被放置。例如,DASH缓存代理应用可以作为高性能接入网络(例如高性能RAN)与受限共享回程链路(例如ADSL线路)之间的中间盒来安置。回程链路限制可能会导致客户机与源服务器之间的数据路径上出现吞吐量瓶颈和/或延迟。DASH缓存代理应用可以缓存DASH内容,并且可以管理由那些没有可靠的技术来估计缓存内容和回程限制的客户机发出的DASH请求。请求管理可以包括考虑被缓存分段的可用性和/或回程链路上的负载。举例来说,请求管理可以包括在修改原始DASH MPD文件内容的同时考虑被缓存分段的可用性和/或回程链路上的负载。修改MPD文件可以阻止客户机选择有可能会降低体验质量和/或在回程链路上引发拥塞的媒体分辨率。
图11A是例示通信系统100的图示。该通信系统100可以是为多个无线用户提供语音、数据、视频、消息传递、广播等内容的多址接入系统。该通信系统100通过共享包括无线带宽在内的系统资源来允许多个无线用户访问此类内容。作为示例,通信系统100可以使用一种或多种信道接入方法,例如码分多址(CDMA)、时分多址(TDMA)、频分多址(FDMA)、正交FDMA(OFDMA)、单载波FDMA(SC-FDMA)等等。
如图11A所示,通信系统100可以包括无线发射/接收单元(WTRU)102a、102b、102c和/或102d(其通常可被统称为WTRU 102),无线电接入网络(RAN)103/104/105,核心网络106/107/109,公共交换电话网络(PSTN)108,因特网110以及其他网络112,但是应该了解,所公开的实施例设想了任意数量的WTRU、基站、网络和/或网络部件。每一个WTRU 102a、102b、102c、102d可以是被配置成在无线环境中工作和/或通信的任何类型的设备。例如,WTRU 102a、102b、102c、102d可以被配置成发射和/或接收无线信号,并且可以包括用户设备(UE)、移动站、固定或移动订户单元、寻呼机、蜂窝电话、个人数字助理(PDA)、智能电话、膝上型计算机、上网本、个人计算机、无线传感器以及消费类电子设备等等。
通信系统100还可以包括基站114a和基站114b。每一个基站114a、114b可以是被配置成通过与WTRU 102a、102b、102c、102d中的至少一个无线对接来促使接入一个或多个通信网络的任何类型的设备,所述网络则可以是核心网络106/107/109、因特网110和/或网络112。作为示例,基站114a、114b可以是基地收发信台(BTS)、节点B、e节点B、家庭节点B、家庭e节点B、站点控制器、接入点(AP)、无线路由器等等。虽然每一个基站114a、114b都被描述成是单个部件,但是应该了解,基站114a、114b可以包括任何数量的互连基站和/或网络部件。
基站114a可以是RAN 103/104/105的一部分,并且所述RAN还可以包括其他基站和/或网络部件(未显示),例如基站控制器(BSC)、无线电网络控制器(RNC)、中继节点等等。基站114a和/或基站114b可以被配置成在名为小区(未显示)的特定地理区域内部发射和/或接收无线信号。小区可被进一步划分成小区扇区。例如,与基站114a关联的小区可分为三个扇区。由此,在一个示例中,基站114a可以包括三个收发信机,也就是说,每一个收发信机对应于小区的一个扇区。在一个示例中,基站114a可以使用多输入多输出(MIMO)技术,由此可以为小区的每个扇区使用多个收发信机。
基站114a、114b可以经由空中接口115/116/117来与一个或多个WTRU 102a、102b、102c、102d进行通信,该空中接口可以是任何适当的无线通信链路(例如射频(RF)、微波、红外线(IR)、紫外线(UV)、可见光等等)。所述空中接口115/116/117可以用任何适当的无线电接入技术(RAT)来建立。
更具体地说,如上所述,通信系统100可以是多址接入系统,并且可以使用一种或多种信道接入方案,例如CDMA、TDMA、FDMA、OFDMA、SC-FDMA等等。举例来说,RAN 103/104/105中的基站114a与WTRU 102a、102b、102c可以实施诸如通用移动电信系统(UMTS)陆地无线电接入(UTRA)之类的无线电技术,并且该技术可以使用宽带CDMA(WCDMA)来建立空中接口115/116/117。WCDMA可以包括诸如高速分组接入(HSPA)和/或演进型HSPA(HSPA+)之类的通信协议。HSPA则可以包括高速下行链路分组接入(HSDPA)和/或高速上行链路分组接入(HSUPA)。
在一个示例中,基站114a与WTRU 102a、102b、102c可以实施演进型UMTS陆地无线电接入(E-UTRA)之类的无线电技术,该技术可以使用长期演进(LTE)和/或先进LTE(LTE-A)来建立空中接口115/116/117。
在一个示例中,基站114a与WTRU 102a、102b、102c可以实施IEEE802.16(全球微波接入互操作性(WiMAX))、CDMA2000、CDMA2000 1X、CDMA2000EV-DO、临时标准2000(IS-2000)、临时标准95(IS-95)、临时标准856(IS-856)、全球移动通信系统(GSM)、用于GSM增强数据速率演进(EDGE)、GSM EDGE(GERAN)等无线电接入技术。
作为示例,图11A中的基站114b可以是无线路由器、家庭节点B、家庭e节点B或接入点,并且可以使用任何适当的RAT来促成局部区域中的无线连接,例如营业场所、住宅、交通工具、校园等等。在一个示例中,基站114b与WTRU 102c、102d可以通过实施诸如IEEE802.11之类的无线电技术来建立无线局域网(WLAN)。在一个示例中,基站114b与WTRU102c、102d可以通过实施诸如IEEE 802.15之类的无线电技术来建立无线个人局域网(WPAN)。在一个示例中,基站114b和WTRU 102c、102d可以通过使用基于蜂窝的RAT(例如WCDMA、CDMA2000、GSM、LTE、LTE-A等等)来建立微微小区或毫微微小区。如图11A所示,基站114b可以直接连接到因特网110。由此,基站114b未必需要经由核心网络106/107/109来接入因特网110。
RAN 103/104/105可以与核心网络106/107/109通信,所述核心网络可以是被配置成向一个或多个WTRU 102a、102b、102c、102d提供语音、数据、应用和/或借助网际协议的语音(VoIP)服务的任何类型的网络。例如,核心网络106/107/109可以提供呼叫控制、记账服务、基于移动位置的服务、预付费呼叫、因特网连接、视频分发等等,和/或执行用户验证之类的高级安全功能。虽然在图11A中没有显示,但是应该了解,RAN103/104/105和/或核心网络106/107/109可以直接或间接地和其他那些与RAN103/104/105使用相同RAT或不同RAT的RAN进行通信。例如,除了与使用E-UTRA无线电技术的RAN103/104/105连接之外,核心网络106/107/109还可以与别的使用GSM无线电技术的RAN(未显示)通信。
核心网络106/107/109还可以充当供WTRU 102a、102b、102c、102d接入PSTN 108、因特网110和/或其他网络112的网关。PSTN 108可以包括提供简易老式电话服务(POTS)的电路交换电话网络。因特网110可以包括使用公共通信协议的全球性互联计算机网络设备系统,所述协议可以是TCP/IP互连网协议族中的传输控制协议(TCP)、用户数据报协议(UDP)和网际协议(IP)。网络112可以包括由其他服务供应商拥有和/或运营的有线或无线通信网络。例如,网络112可以包括与一个或多个RAN相连的另一个核心网络,所述一个或多个RAN可以与RAN 103/104/105使用相同RAT或不同RAT。
通信系统100中一些或所有WTRU 102a、102b、102c、102d可以包括多模能力,换言之,WTRU 102a、102b、102c、102d可以包括在不同无线链路上与不同无线网络通信的多个收发信机。例如,图11A所示的WTRU102c可以被配置成与使用基于蜂窝的无线电技术的基站114a通信,以及与可以使用IEEE 802无线电技术的基站114b通信。
图11B是例示WTRU 102的系统图示。如图11B所示,WTRU 102可以包括处理器118、收发信机120、发射/接收部件122、扬声器/麦克风124、数字键盘126、显示器/触摸板128、不可移除存储器130、可移除存储器132、电源134、全球定位系统(GPS)芯片组136以及其他周边设备138。应该了解的是,WTRU 102还可以包括前述部件的任何子组合。这里的实施例还设想基站114a和114b和/或基站114a和114b所代表的节点可以包括在图11B中描绘以及在这里描述的一些或所有部件,特别地,基站114a和114b所代表的节点可以是收发信台(BTS)、节点B、站点控制器、接入点(AP)、家庭节点B、演进型家庭节点B(e节点B)、家庭演进型节点B(HeNB)、家庭演进型节点B网关以及代理节点,但其并不局限于此。
处理器118可以是通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核心关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、其他任何类型的集成电路(IC)、状态机等等。处理器118可以执行信号编码、数据处理、功率控制、输入/输出处理和/或其他任何能使WTRU102在无线环境中工作的功能。处理器118可以耦合至收发信机120,收发信机120可以耦合至发射/接收部件122。虽然图11B将处理器118和收发信机120描述成是独立组件,但是应该了解,处理器118和收发信机120可以集成在一个电子组件或芯片中。
发射/接收部件122可以被配置成经由空中接口115/116/117来发射或接收去往或来自基站(例如基站114a)的信号。举个例子,在一个示例中,发射/接收部件122可以是被配置成发射和/或接收RF信号的天线。在一个示例中,作为示例,发射/接收部件122可以是被配置成发射和/或接收IR、UV或可见光信号的放射器/检测器。在一个示例中,发射/接收部件122可以被配置成发射和接收RF和光信号。应该了解的是,发射/接收部件122可以被配置成发射和/或接收无线信号的任何组合。
此外,虽然在图11B中将发射/接收部件122描述成是单个部件,但是WTRU 102可以包括任何数量的发射/接收部件122。更具体地说,WTRU102可以使用MIMO技术。因此,在一个示例中,WTRU 102可以包括两个或多个经由空中接口115/116/117来发射和接收无线电信号的发射/接收部件122(例如多个天线)。
收发信机120可以被配置成对发射/接收部件122将要发射的信号进行调制,以及对发射/接收部件122接收的信号进行解调。如上所述,WTRU 102可以具有多模能力。因此,收发信机120可以包括允许WTRU 102借助诸如UTRA和IEEE 802.11之类的多种RAT来进行通信的多个收发信机。
WTRU 102的处理器118可以耦合至扬声器/麦克风124、数字键盘126和/或显示器/触摸板128(例如液晶显示器(LCD)显示单元或有机发光二极管(OLED)显示单元),并且可以接收来自这些部件的用户输入数据。处理器118还可以向扬声器/麦克风124、数字键盘126和/或显示器/触摸板128输出用户数据。此外,处理器118可以从任何适当的存储器(例如不可移除存储器130和/或可移除存储器132)中存取信息,以及将信息存入这些存储器。所述不可移除存储器130可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘或是其他任何类型的记忆存储设备。可移除存储器132可以包括订户身份模块(SIM)卡、记忆棒、安全数字(SD)记忆卡等等。在其他实施例中,处理器118可以从那些并非实际位于WTRU 102的存储器访问信息,以及将数据存入这些存储器,其中举例来说,所述存储器可以位于服务器或家庭计算机(未显示)。
处理器118可以接收来自电源134的电力,并且可以被配置分发和/或控制用于WTRU 102中的其他组件的电力。电源134可以是为WTRU 102供电的任何适当的设备。举例来说,电源134可以包括一个或多个干电池组(如镍镉(Ni-Cd)、镍锌(Ni-Zn)、镍氢(NiMH)、锂离子(Li-ion)等等)、太阳能电池、燃料电池等等。
处理器118还可以与GPS芯片组136耦合,该芯片组可以被配置成提供与WTRU 102的当前位置相关的位置信息(例如经度和纬度)。作为来自GPS芯片组136的信息的补充或替换,WTRU 102可以经由空中接口115/116/117接收来自基站(例如基站114a、114b)的位置信息,和/或根据从两个或多个附近基站接收的信号定时来确定其位置。应该了解的是,WTRU102可以借助任何适当的定位方法来获取位置信息。
处理器118还可以耦合到其他周边设备138,这其中可以包括提供附加特征、功能和/或有线或无线连接的一个或多个软件和/或硬件模块。例如,周边设备138可以包括加速度计、电子指南针、卫星收发信机、数码相机(用于照片或视频)、通用串行总线(USB)端口、振动设备、电视收发信机、免提耳机、
Figure BDA0001522327420000371
模块、调频(FM)无线电单元、数字音乐播放器、媒体播放器、视频游戏机模块、因特网浏览器等等。
图11C是RAN 103和核心网络106的系统图示。如上所述,RAN 103可以使用UTRA无线电技术并经由空中接口115来与WTRU 102a、102b、102c进行通信。RAN 103还可以与核心网络106通信。如图11C所示,RAN103可以包括节点B 140a、140b、140c,其中每一个节点B都可以包括经由空中接口115与WTRU 102a、102b、102c通信的一个或多个收发信机。节点B140a、140b、140c中的每一个都可以关联于RAN 103内部的特定小区(未显示)。RAN 103还可以包括RNC 142a、142b。应该了解的是,RAN 103可以包括任何数量的节点B和RNC。
如图11C所示,节点B 140a、140b可以与RNC 142a进行通信。此外,节点B 140c还可以与RNC 142b进行通信。节点B 140a、140b、140c可以经由Iub接口来与相应的RNC 142a、142b进行通信。RNC 142a、142b彼此则可以经由Iur接口来进行通信。每一个RNC 142a、142b都可以被配置成控制与之相连的相应节点B 140a、140b、140c。另外,每一个RNC 142a、142b都可被配置成执行或支持其他功能,例如外环功率控制、负载控制、许可控制、分组调度、切换控制、宏分集、安全功能、数据加密等等。
图11C所示的核心网络106可以包括媒体网关(MGW)144、移动交换中心(MSC)146、服务GPRS支持节点(SGSN)148、和/或网关GPRS支持节点(GGSN)150。虽然前述每个部件都被描述成是核心网络106的一部分,但是应该了解,核心网络运营商之外的其他实体也可以拥有和/或运营这其中的任一部件。
RAN 103中的RNC 142a可以经由IuCS接口连接到核心网络106中的MSC 146。MSC146则可以连接到MGW 144。MSC 146和MGW 144可以为WTRU 102a、102b、102c提供针对PSTN108之类的电路交换网络的接入,以便促成WTRU 102a、102b、102c与传统陆线通信设备间的通信。
RAN 103中的RNC 142a还可以经由IuPS接口连接到核心网络106中的SGSN 148。所述SGSN 148则可以连接到GGSN 150。SGSN 148和GGSN 150可以为WTRU 102a、102b、102c提供针对因特网110之类的分组交换网络的接入,以便促成WTRU 102a、102b、102c与启用IP的设备之间的通信。
如上所述,核心网络106还可以连接到网络112,该网络可以包括其他服务供应商拥有和/或运营的其他有线或无线网络。
图11D是RAN 104以及核心网络107的系统图示。如上所述,RAN 104可以使用E-UTRA无线电技术并经由空中接口116来与WTRU 102a、102b、102c进行通信。此外,RAN 104还可以与核心网络107通信。
RAN 104可以包括e节点B 160a、160b、160c,但是应该了解,RAN104可以包括任何数量的e节点B。每一个e节点B 160a、160b、160c可以包括一个或多个收发信机,以便经由空中接口116来与WTRU 102a、102b、102c通信。在一个示例中,e节点B 160a、160b、160c可以实施MIMO技术。由此,举例来说,e节点B 160a可以使用多个天线来向WTRU 102a发射无线信号,以及接收来自WTRU 102a的无线信号。
每一个e节点B 160a、160b、160c可以关联于特定小区(未显示),并且可以被配置成处理无线电资源管理决策、切换决策、上行链路和/或下行链路中的用户调度等等。如图11D所示,e节点B 160a、160b、160c彼此可以在X2接口上进行通信。
图11D所示的核心网络107可以包括移动性管理网关(MME)162、服务网关164以及分组数据网络(PDN)网关166。虽然上述每一个部件都被描述成是核心网络107的一部分,但是应该了解,核心网络运营商之外的其他实体同样可以拥有和/或运营这其中的任一部件。
MME 162可以经由S1接口来与RAN 104中的每一个e节点B 160a、160b、160c相连,并且可以充当控制节点。例如,MME 162可以负责验证WTRU 102a、102b、102c的用户,激活/去激活承载,在WTRU 102a、102b、102c的初始附着过程中选择特定服务网关等等。所述MME162还可以提供控制平面功能,以便在RAN 104与使用了GSM或WCDMA之类的其他无线电技术的其他RAN(未显示)之间执行切换。
服务网关164可以经由S1接口连接到RAN 104中的每一个e节点B160a、160b、160c。该服务网关164通常可以路由和转发去往/来自WTRU 102a、102b、102c的用户数据分组。此外,服务网关164还可以执行其他功能,例如在e节点B间的切换过程中锚定用户面,在下行链路数据可供WTRU 102a、102b、102c使用时触发寻呼,管理和存储WTRU 102a、102b和/或102c的上下文等等。
服务网关164还可以连接到PDN网关166,该PDN网关可以为WTRU102a、102b、102c提供针对诸如因特网110之类的分组交换网络的接入,以便促成WTRU 102a、102b、102c与启用IP的设备之间的通信。
核心网络107可以促成与其他网络的通信。例如,核心网络107可以为WTRU 102a、102b、102c提供针对PSTN 108之类的电路交换网络的接入,以便促成WTRU 102a、102b、102c与传统陆线通信设备之间的通信。作为示例,核心网络107可以包括IP网关(例如IP多媒体子系统(IMS)服务器)或与之通信,其中所述IP网关充当了核心网络107与PSTN 108之间的接口。此外,核心网络107还可以为WTRU 102a、102b、102c提供针对网络112的接入,其中该网络可以包括其他服务供应商拥有和/或运营的其他有线或无线网络。
图11E是RAN 105和核心网络109的系统图示。RAN 105可以是通过使用IEEE802.16无线电技术而在空中接口117上与WTRU 102a、102b、102c通信的接入服务网络(ASN)。如以下进一步论述的那样,WTRU 102a、102b、102c,RAN 105以及核心网络109的不同功能实体之间的通信链路可被定义成参考点。
如图11E所示,RAN 105可以包括基站180a、180b、180c以及ASN网关182,但是应该了解,RAN 105可以包括任何数量的基站及ASN网关。每一个基站180a、180b、180c都可以关联于RAN 105中的特定小区(未显示),并且每个基站都可以包括一个或多个收发信机,以便经由空中接口117来与WTRU 102a、102b、102c进行通信。在一个示例中,基站180a、180b、180c可以实施MIMO技术。由此,举例来说,基站180a可以使用多个天线来向WTRU 102a发射无线信号,以及接收来自WTRU 102a的无线信号。基站180a、180b、180c还可以提供移动性管理功能,例如切换触发、隧道建立、无线电资源管理、业务量分类、服务质量(QoS)策略实施等等。ASN网关182可以充当业务量聚集点,并且可以负责实施寻呼、订户简档缓存、针对核心网络106的路由等等。
WTRU 102a、102b、102c与RAN 105之间的空中接口117可被定义成是实施IEEE802.16规范的R1参考点。另外,每一个WTRU 102a、102b、102c都可以与核心网络109建立逻辑接口(未显示)。WTRU 102a、102b、102c与核心网络109之间的逻辑接口可被定义成R2参考点,该参考点可以用于验证、许可、IP主机配置管理和/或移动性管理。
每一个基站180a、180b、180c之间的通信链路可被定义成R8参考点,该参考点包含了用于促成WTRU切换以及基站之间的数据传送的协议。基站180a、180b、180c与ASN网关182之间的通信链路可被定义成R6参考点。所述R6参考点可以包括用于促成基于与每一个WTRU102a、102b、102c相关联的移动性事件的移动性管理。
如图11E所示,RAN 105可以连接到核心网络109。RAN 105与核心网络109之间的通信链路可以被定义成R3参考点,作为示例,该参考点包含了用于促成数据传送和移动性管理能力的协议。核心网络109可以包括移动IP家用代理(MIP-HA)184、验证许可记帐(AAA)服务器186以及网关188。虽然前述每个部件都被描述成是核心网络109的一部分,但是应该了解,核心网络运营商以外的实体也可以拥有和/或运营这其中的任一部件。
MIP-HA可以负责实施IP地址管理,并且可以允许WTRU 102a、102b、102c在不同的ASN和/或不同的核心网络之间漫游。MIP-HA 184可以为WTRU 102a、102b、102c提供针对因特网110之类的分组交换网络的接入,以便促成WTRU 102a、102b、102c与启用IP的设备之间的通信。AAA服务器186可以负责实施用户验证以及支持用户服务。网关188可以促成与其他网络的互通。例如,网关188可以为WTRU 102a、102b、102c提供对于PSTN 108之类的电路交换网络的接入,以便促成WTRU 102a、102b、102c与传统陆线通信设备之间的通信。另外,网关188还可以为WTRU 102a、102b、102c提供针对网络112的接入,其中该网络可以包括其他服务供应商拥有和/或运营的其他有线或无线网络。
虽然在图11E中没有显示,但是应该了解,RAN 105可以连接到其他ASN,并且核心网络109可以连接到其他核心网络。RAN 105与其他ASN之间的通信链路可被定义成R4参考点,该参考点可以包括用于协调WTRU102a、102b、102c在RAN 105与其他ASN之间的移动的协议。核心网络109与其他核心网络之间的通信链路可以被定义成R5参考点,该参考点可以包括用于促成归属核心网络与被访核心网络之间互通的协议。
虽然在上文中描述了采用特定组合的特征和要素,但是本领域普通技术人员将会认识到,每一个特征或要素既可以单独使用,也可以与其他特征和要素进行任何组合。此外,这里描述的方法可以在引入计算机可读介质中以供计算机或处理器运行的计算机程序、软件或固件中实施。关于计算机可读媒体的示例包括电信号(经由有线或无线连接传送)以及计算机可读存储介质。关于计算机可读存储媒体的示例包括但不局限于只读存储器(ROM)、随机存取存储器(RAM)、寄存器、缓冲存储器、半导体存储设备、磁介质(例如内部硬盘和可拆卸磁盘)、磁光介质、以及光介质(例如CD-ROM碟片和数字多用途碟片(DVD))。与软件关联的处理器可以用于实施在WTRU、UE、终端、基站、RNC或任何计算机主机使用的射频收发信机。

Claims (22)

1.一种用于管理客户机的超文本传输协议(HTTP)动态自适应流传输(DASH)会话的服务器,所述服务器包括:
存储器;以及
处理器,被配置为:
从所述客户机接收关于与媒体内容相关联的媒体呈现描述(MPD)文件的请求,所述媒体内容包括多个媒体分段;
检索所述MPD文件;
确定存储在所述服务器的缓存内部的所述多个媒体分段的子集;
确定回程链路上的可用带宽;
产生动态MPD文件,其中该产生的动态MPD文件的内容基于所述MPD文件、所述多个媒体分段的所述子集以及所述回程链路上的所述可用带宽;以及
将所述产生的动态MPD文件传送至所述客户机。
2.如权利要求1所述的服务器,其中所述处理器还被配置为从所述缓存检索所述MPD文件。
3.如权利要求1所述的服务器,其中所述处理器还被配置为从源服务器检索所述MPD文件。
4.如权利要求1所述的服务器,其中所述处理器还被配置为基于所述媒体内容存储于所述缓存内的频率,确定刷新周期。
5.如权利要求1所述的服务器,其中所述处理器还被配置为基于回程可靠性测量,确定刷新周期。
6.如权利要求1所述的服务器,其中所述处理器还被配置为基于所述客户机请求所述媒体分段的频率,确定刷新周期。
7.如权利要求1所述的服务器,其中所述MPD文件是静态MPD文件。
8.如权利要求1所述的服务器,其中所述处理器进一步被配置成:
接收附加媒体分段;
将所述附加媒体段存储在所述缓存中;
确定刷新周期;以及
一旦所述刷新周期期满:
基于所述缓存中存储的所述附加媒体分段来更新所述产生的动态MPD文件;以及
将经过更新的动态MPD文件发送到所述客户机。
9.如权利要求1所述的服务器,其中所述缓存是中间盒平台的缓存。
10.如权利要求1所述的服务器,其中所述处理器还被配置为基于从源服务器接收的所述MPD文件,将所述缓存处的之前版本的所述MPD文件替换为新版本的所述MPD文件。
11.如权利要求1所述的服务器,其中所述MPD文件是周期性地被接收的。
12.一种用于管理客户机的超文本传输协议(HTTP)动态自适应流传输(DASH)会话的方法,所述方法包括:
从所述客户机接收关于与媒体内容相关联的媒体呈现描述(MPD)文件的请求,所述媒体内容包括多个媒体分段;
检索所述MPD文件;
确定存储在服务器的缓存内部的所述多个媒体分段的子集;
确定回程链路上的可用带宽;
产生动态MPD文件,其中该产生的动态MPD文件的内容基于所述MPD文件、所述多个媒体分段的所述子集以及所述回程链路上的所述可用带宽;以及
将所述产生的动态MPD文件传送至所述客户机。
13.如权利要求12所述的方法,其中所述MPD文件是是从所述缓存内检索出的。
14.如权利要求12所述的方法,其中所述MPD文件是从源服务器检索出的。
15.如权利要求12所述的方法,其中基于所述媒体内容存储于所述缓存内的频率,确定刷新周期。
16.如权利要求12所述的方法,其中基于回程可靠性测量,确定刷新周期。
17.如权利要求12所述的方法,其中基于所述客户机请求所述媒体分段的频率,确定刷新周期。
18.如权利要求12所述的方法,其中所述MPD文件是静态MPD文件。
19.如权利要求12所述的方法,进一步包括:
接收附加媒体分段;
将所述附加媒体段存储在所述缓存中;
确定刷新周期;以及
一旦所述刷新周期期满:
基于所述缓存中存储的所述附加媒体分段来更新所述产生的动态MPD文件;以及
将经过更新的动态MPD文件发送到所述客户机。
20.如权利要求12所述的方法,其中所述缓存是中间盒平台的缓存。
21.如权利要求12所述的方法,进一步包括:基于从源服务器接收的所述MPD文件,将所述缓存处的之前版本的所述MPD文件替换为新版本的所述MPD文件。
22.如权利要求12所述的方法,其中所述MPD文件是周期性地被接收的。
CN201680037181.2A 2015-06-29 2016-06-29 Dash缓存代理应用 Active CN107852403B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562186281P 2015-06-29 2015-06-29
US62/186,281 2015-06-29
PCT/US2016/040085 WO2017004196A1 (en) 2015-06-29 2016-06-29 Dash caching proxy application

Publications (2)

Publication Number Publication Date
CN107852403A CN107852403A (zh) 2018-03-27
CN107852403B true CN107852403B (zh) 2021-02-19

Family

ID=56555754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680037181.2A Active CN107852403B (zh) 2015-06-29 2016-06-29 Dash缓存代理应用

Country Status (4)

Country Link
US (1) US10735546B2 (zh)
EP (1) EP3314850A1 (zh)
CN (1) CN107852403B (zh)
WO (1) WO2017004196A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
HUE043713T2 (hu) * 2013-03-29 2019-09-30 Intel Ip Corp Minõségtudatos sebességillesztési technikák DASH streameléshez
US20170257446A1 (en) * 2016-03-01 2017-09-07 Comcast Cable Communications, Llc Delivering notification information
CN107302762B (zh) * 2016-04-14 2019-11-19 大唐移动通信设备有限公司 一种业务访问及其控制方法、装置
US10715880B2 (en) * 2017-08-24 2020-07-14 Skitter, Inc. Method for creation and distribution of segmented video over distributed multicast-aware sparse networks with low latency
CN109818868B (zh) * 2017-11-20 2021-06-22 中兴通讯股份有限公司 一种实现边缘网络能力开放的方法、装置、设备及存储介质
US10904642B2 (en) * 2018-06-21 2021-01-26 Mediatek Singapore Pte. Ltd. Methods and apparatus for updating media presentation data
CN109121141B (zh) * 2018-07-24 2021-02-23 北京邮电大学 一种基于mec服务器的星地两级边缘网络及其协作方法
US10609546B2 (en) 2018-08-08 2020-03-31 Verizon Patent And Licensing Inc. Unified radio access network (RAN)/multi-access edge computing (MEC) platform
CN109120953B (zh) * 2018-09-29 2020-10-02 北京邮电大学 基于sdn及ec技术的自适应流视频处理系统及方法
US10728138B2 (en) 2018-12-21 2020-07-28 At&T Intellectual Property I, L.P. Analytics enabled radio access network (RAN)- aware content optimization using mobile edge computing
US10805652B1 (en) * 2019-03-29 2020-10-13 Amazon Technologies, Inc. Stateful server-less multi-tenant computing at the edge
US11222121B2 (en) * 2019-04-02 2022-01-11 Motional Ad Llc Secure boot of vehicular processors
GB2586442B (en) * 2019-06-26 2024-03-27 Univ Dublin City A method and system for encoding and decoding to enable adaptive delivery of mulsemedia streams
US11374776B2 (en) 2019-09-28 2022-06-28 Intel Corporation Adaptive dataflow transformation in edge computing environments
CN110856144B (zh) * 2019-10-22 2021-09-07 西安交通大学 一种移动边缘计算网络中基于lt码的雾化缓存方法
US11212595B1 (en) * 2020-08-17 2021-12-28 Cognizant Technology Solutions India Pvt. Ltd. System and method for watermarking over the top (OTT) content delivered through OTT platform
CN112543357B (zh) * 2020-11-26 2023-09-08 郑州铁路职业技术学院 一种基于dash协议的流媒体数据传输方法
US11589100B1 (en) * 2021-03-31 2023-02-21 Amazon Technologies, Inc. On-demand issuance private keys for encrypted video transmission
US11496776B1 (en) * 2021-07-19 2022-11-08 Intrado Corporation Database layer caching for video communications

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101176079A (zh) * 2005-03-16 2008-05-07 航空照片技术有限公司 在服务器和客户机之间分配计算的方法
CN103299595A (zh) * 2010-11-01 2013-09-11 捷讯研究有限公司 用于更新http内容描述的方法和设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US8914835B2 (en) * 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
WO2011139305A1 (en) * 2010-05-04 2011-11-10 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
GB201010456D0 (en) 2010-06-22 2010-08-04 Vodafone Ip Licensing Ltd Congestion control for streaming data
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US20130042013A1 (en) 2011-08-10 2013-02-14 Nokia Corporation Methods, apparatuses and computer program products for enabling live sharing of data
JP5908984B2 (ja) 2011-10-21 2016-04-26 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 情報資源管理概念
US20130182643A1 (en) * 2012-01-16 2013-07-18 Qualcomm Incorporated Method and system for transitions of broadcast dash service receptions between unicast and broadcast
US9246842B2 (en) 2012-04-27 2016-01-26 Intel Corporation QoE-aware radio access network architecture for http-based video streaming
US20150006621A1 (en) * 2013-07-01 2015-01-01 Futurewei Technologies, Inc. Adaptive Video Streaming for Information Centric Networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101176079A (zh) * 2005-03-16 2008-05-07 航空照片技术有限公司 在服务器和客户机之间分配计算的方法
CN103299595A (zh) * 2010-11-01 2013-09-11 捷讯研究有限公司 用于更新http内容描述的方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IS-DASH: Consolidated Use Cases on Server and Network-assisted DASH;Qualcomm Incorporated;《3GPP》;20130927;第2-4,6-9页 *

Also Published As

Publication number Publication date
US20180367637A1 (en) 2018-12-20
US10735546B2 (en) 2020-08-04
CN107852403A (zh) 2018-03-27
EP3314850A1 (en) 2018-05-02
WO2017004196A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
CN107852403B (zh) Dash缓存代理应用
US11399293B2 (en) System and method of network policy optimization
TWI584662B (zh) 內容傳遞網路互連(cdni)機制
TWI575948B (zh) 內容分配及接收方法及裝置
US10904827B2 (en) User plane system selection based on latency
US9253015B2 (en) Transparent proxy architecture for multi-path data connections
US20180167436A1 (en) Adaptive video streaming over preference-aware multipath
JP6582014B2 (ja) ビデオストリーミングに対する電力認識適応
EP2838230A2 (en) Scalable policy-controlled packet inspection systems and methods for advanced application interface
TW201633825A (zh) 增強無線網路應用QoE之頻寬預測及預取
EP2875616B1 (en) Content optimization based on real time network dynamics
JP6073448B2 (ja) 通信ネットワーク内でコンテンツストレージサブシステムを管理するための方法および装置
WO2013036453A1 (en) Methods, system and apparatus for packet routing using a hop-by-hop protocol in multi-homed environments
Liu et al. Improving the expected quality of experience in cloud-enabled wireless access networks
EP3000198A1 (en) Method and apparatus for optimization of video transmissions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant