由客户终端获得多媒体内容的内容部分的方法
【技术领域】
[0001 ] 本发明总体上涉及通过例如但不排他地HTTP (超文本传输协议)的自适应流传输技术领域,具体涉及用于通过客户终端获得多媒体内容的内容部分的方法,其中高速缓存器沿客户终端和远程服务器之间的传输路径布置。
【背景技术】
[0002]本节意在向读者介绍本领域中可能与以下描述和/或要求保护的本发明的多个方面相关的多个方面。相信本讨论有助于向读者提供背景信息,以便于更好地理解本发明的各个方面。因此,应当理解,这些陈述应当据此阅读,而并非作为对现有技术的承认。
[0003]通过HTTP的自适应流传输(也称作多比特率切换)正在迅速成为多媒体内容分发的主要技术。在已经使用的HTTP自适应流传输协议中,最有名的是Apple的HTTP直播流传输(HLS)、Microsoft的Silverlight平滑流传输(SSS)、Adobe的Adobe动态流传输(ADS)以及由SA4组内的3GPP开发的HTTP上的动态自适应流传输(DASH)。
[0004]当客户终端希望以自适应流传输方式播放视听内容(或A/V内容)时,首先必须得到描述如何可以获得该A/V内容的文档。通常这经由HTTP协议通过从URL(统一资源定位符)得到描述文件(所谓的清单(manifest))来进行,但是也能够通过其它方式(例如,广播、电子邮件、SMS等)来实现。清单基本地(按照比特率、分辨率和其他属性)列出这种A/V内容的可用表示(也被称为实例或版本);每个质量级别(比特率)一个表示。每个表示由一系列相等持续时间的块(可通过不同的URL访问)组成,并附有一组供客户终端选择的描述元素。所述清单预先产生,并例如通过远程服务器传送到客户终端。
[0005]事实上,与A/V内容相对应的数据流可在HTTP服务器上以不同的质量得到。最高质量与高比特率相关联;最低质量与低比特率相关联。这使得向许多不同终端的分发可能受到高度变化的网络条件的影响。
[0006]每个表示的整个数据流被分成具有相等持续时间的块,这使得客户终端可以在两个块之间平滑地从一个质量级别切换到另一个质量级别。结果,视频质量在播放期间可变化但极少会中断(也称为冻结)。
[0007]在客户终端一侧,基于对传输路径的可用带宽的测量来选择块。具体地,客户终端通常请求与符合所测量带宽的比特率编码相对应且因此与符合所测量带宽的质量相对应的块表不。
[0008]当高速缓存器(cache)沿着客户终端与远程服务器之间频繁出现的传输路径时,在以下情况下给定块的一个表示可能已经存储在所述高速缓存器中:另一客户端先前已经请求了具有相同表示的相同块,或者内容传递网络(CDN)已经在高速缓存器中供应了该块。因此,与块来自远程服务器的情况相比,对针对所述给定块的HTTP请求的响应更快,并且可以避免重复传输,有效节省了网络资源。
[0009]尽管如此,HTTP自适应流传输仍然表现为不是高速缓存器友好的(或者至少与所谓的分层基本切换如H264-SVC相比不那么友好)。确实,如果第一客户终端请求给定块的表示r,第二客户终端(与所述第一客户终端共享传输路径的一部分和高速缓存器)请求所述给定块的表示r’ (质量较高或较低),于是高速缓存器并未命中,导致高速缓存器与服务器之间的网络段上负载较高,存在引起拥塞的风险。从而,高速缓存的益处完全消失,并且高速缓存器当前不能改善这一状况。
[0010]本发明关注防止网络拥塞,尤其尝试对可能位于客户终端与一个或多个远程服务器之间的传输路径上的高速缓存器进行操作。
【发明内容】
[0011 ] 本发明涉及一种由客户终端获得多媒体内容的内容部分的方法,其中高速缓存器沿客户终端和服务器之间的传输路径布置,所述内容部分的若干表示是可用的,其特征在于,该方法包括:
[0012]A)发送针对所述内容部分的第一表示的请求,所述第一表示属于在所述内容部分的所述可用表示中选择的允许表示的集合;
[0013]B)在所述第一表示没有被高速缓存的情况下,从所述高速缓存器接收指示所述第一表示没有被高速缓存的响应消息;
[0014]以及其中,当接收到响应消息时,针对所述内容部分的与所述第一表示不同的备选表示连续重复步骤A)和B),直到所述客户终端从所述高速缓存器接收到一个所请求的备选表示或已经请求了所述集合中的所有允许表示为止。
[0015]从而,由于本发明,能够借助高速缓存减少客户终端(即,HTTP自适应流传输客户终端)和相应的原始服务器之间的端到端流量,该高速缓存目的在于增加高速缓存器命中的数量。为此,客户终端能够被配置为尝试优先获取已经存储在沿传输路径的高速缓存器中的表示。从而,这将导致客户终端和原始服务器之间的流量较小,并从而导致较少的拥塞。从而,由于限制了从服务器下载块的需要,本发明可以向终端用户提供更好的用户体验。
[0016]根据符合本发明的优选实施例,备选表示的对应比特率低于第一表示的比特率。作为变形或补充,备选表示的比特率可大于第一表示的比特率。
[0017]此外,根据所述优选实施例,所述方法还包括以下步骤:对沿客户终端和远程服务器之间的传输路径的带宽进行估计。
[0018]此外,所述集合中的每个允许表示的对应比特率优选地至多等于所估计的带宽。
[0019]有利地,优选表示的比特率刚好低于所估计的带宽。
[0020]在本发明的又一方面中,在所确定的允许表示的集合之内,所述表示可以有利地按照偏爱顺序列出,例如按照从高比特率到低比特率的降序。
[0021]根据所述优选实施例,所述请求有利地包括至少一个指令,使得所述高速缓存器在对所请求的表示进行了高速缓存的情况下返回所请求的表示,或在没有对所述第一表示进行高速缓存的情况下返回所述响应消息。
[0022]具体地,如果所使用的传输协议是HTTP,则所述请求是HTTP请求,并且所述HTTP请求的高速缓存控制报头可以包括指令“only_if_CaChed”。显然,可以备选地使用其他指令来向高速缓存器传递相同意义。
[0023]作为符合本发明的变形或补充,所述请求还可以包括一个附加指令,所述附加指令被配置为:按照偏爱的顺序提供所确定的集合中在没有对第一表示进行高速缓存的情况下可由客户终端请求的备选表示,使得高速缓存器在发送响应消息之前检查是否对所述列表中的备选表示进行了高速缓存。
[0024]此外,如果所使用的传输协议是HTTP,则所述附加指令可包括在所述HTTP请求的高速缓存控制报头内。
[0025]此外,本发明还涉及一种被配置为获得多媒体内容的内容部分的终端,其中高速缓存器沿所述终端和服务器之间的传输路径布置,所述内容部分的若干表示是可用的。
[0026]根据本发明,所述终端包括模块,所述模块被配置为:
[0027]-发送针对所述内容部分的第一表示的请求,所述第一表示属于所确定的允许表示的集合;以及
[0028]-在所述第一表示没有被高速缓存的情况下,从所述高速缓存器接收指示所述第一表示没有被高速缓存的响应消息,
[0029]使得,当从高速缓存器接收到响应消息时,所述模块发送针对所述内容部分的与所述第一表示不同的备选表示的至少一个新请求,直到所述客户终端从所述高速缓存器接收到一个所请求的备选表示或已经请求了所述集合中的