具有错误故障转移过程的支持大量客户端的媒体递送服务协议的制作方法

文档序号:9439482阅读:343来源:国知局
具有错误故障转移过程的支持大量客户端的媒体递送服务协议的制作方法
【专利说明】具有错误故障转移过程的支持大量客户端的媒体递送服务协议
[0001]优先权要求
[0002]本专利申请要求于2013年3月14日提交的美国临时专利申请61/783,811的优先权,该专利申请的全部内容以引用方式并入本文。
【背景技术】
[0003]本公开涉及媒体流的实时编码和广播,诸如直播媒体。
[0004]当前,可获得支持实时媒体馈送的编码视频的递送(诸如直播媒体)的基于网络的媒体递送服务。那些媒体递送服务通常将输入视频序列(在本文中被称为“媒体流”)编码为已被解析为多个独立递送的片段的编码视频数据。每个片段可表示源媒体流的一部分,例如媒体流的五秒钟或十秒钟增量。媒体递送服务可包括对来自网络上的其他设备(在本文中称为“客户端”)的请求进行响应并响应于那些请求而提供编码片段的HTTP服务器。这些请求通常通过地址诸如统一资源定位符(常称为“URL”)来识别所请求的片段。公共服务器可同时对来自多个不同客户端设备的服务请求进行响应。就这一点而言,服务器和客户端的请求-响应操作表示由服务器管理的多个重叠的单播传输。
[0005]服务器-客户端通信的单播实质可以是有利的,因为如果出现导致所传输的分组在被客户端接收之前丢失的网络通信错误,则客户端可识别此类错误并重新请求丢失的分组。但是,单播传输也具有相关联的成本。对于网络内的受欢迎的媒体流,进行请求的客户端的数量可能超过服务器提供服务的能力。此外,由于为每个进行请求的客户端提供其各自的编码片段的副本,所以支持多次单播传输还可能在服务器和客户端之间消耗网络内的不必要的带宽。因此,使用单播传输可能限制媒体递送服务器可服务的客户端设备的数量。
[0006]联网协议还支持广播递送协议,其中服务器在被分配给网络上的多个设备共有的广播信道中提供数据。使用广播信道可降低服务器上的负载,但这可能是不利的,因为其没有为进行接收的设备提供从丢失的分组中恢复的机制。在编码视频数据的情况下,不能从丢失的分组中恢复可能尤其有问题,因为编码视频的多个部分(诸如参考帧)在编码视频的其他部分可被解码之前必须被成功地接收和解码。如果表示参考帧的数据丢失,则即使其他帧的数据被成功接收,但是依赖于参考帧的那些其他帧的数据也不能被解码。因此,使用广播信道在媒体递送系统中可能是不利的。
[0007]发明者认识到在现有技术中需要一种媒体递送系统允许递送服务器超过其提供单播服务的能力而为客户端设备提供服务并且仍然允许从可能例如由于分组丢失而发生的传输错误中恢复。
【附图说明】
[0008]为了能够理解本发明的特征,下面描述了多个附图。然而,应当注意,附图仅示出了本发明的特定实施例,因此不应被认为对本发明的范围进行限制,因为本发明可涵盖其他相同效果的实施例。
[0009]图1示出了根据本发明的实施例的流式传输系统的功能框图。
[0010]图2示出了根据本发明的实施例的视频流的编码架构。
[0011]图3示出了根据本发明的实施例的代理高速缓存的操作方法。
[0012]图4示出了根据本发明的实施例的媒体源、代理高速缓存和客户端之间的示例性通?目流。
[0013]图5Α和5Β示出了根据本发明的实施例的数据报的示例性协议。
【具体实施方式】
[0014]本发明的实施例提供了一种包括媒体源、代理高速缓存和一个或多个客户端设备的媒体递送服务。媒体源可从输入媒体流生成编码片段,并形成识别片断的网络位置的播放列表。媒体源还可在广播信道中将编码片段及其存储位置广播到一个或多个代理高速缓存。代理高速缓存可存储成功接收的编码片段,并且还形成识别片段的网络位置的映射表。
[0015]当客户端访问编码媒体流时,其可从媒体源下载播放列表。其可将识别所请求的片段的网络位置的请求引导到代理高速缓存,只要代理高速缓存存储所请求的片段,代理高速缓存便将提供该所请求的片段。如果代理高速缓存不存储所请求的片段,则其可就此通知客户端,并且客户端可从媒体源请求该片段。
[0016]在一个实施例中,代理高速缓存可以是拦截客户端与媒体源之间的通信的透明代理高速缓存。基于通信,透明代理高速缓存可为客户端请求和存储编码片段。
[0017]就这一点而言,在媒体源服务器处可缓解加载问题,因为服务器在广播信道中将编码视频提供给代理高速缓存。媒体源服务器在传输错误干扰代理高速缓存处的片段的接收时还直接从客户端设备接收请求,但在实践中,这些请求对于服务器应表示比与大量客户端设备的单播传输的直接服务小得多的负载问题。客户端设备应首先从代理高速缓存(或者从可分布于整个网络的多个代理高速缓存)接收编码片段。
[0018]图1示出了根据本发明实施例的流式传输系统100的功能框图。该系统可包括经由通信网络140互连的媒体源110、代理高速缓存120和一个或多个客户端设备130。
[0019]媒体源110可包括源服务器112和存储系统114。源服务器112可代表媒体源110执行处理操作。这些操作可包括将源媒体流编码为编码视频数据的片段118.1-118.η。这些操作还可包括形成和维护识别存储在媒体源110处的片段118.1-118.η的存储位置的播放列表116。源服务器112可在广播信道142中将编码视频片断传输至其他系统部件(例如代理高速缓存120)。源服务器112还可执行履行其他系统部件(例如客户端设备130)对媒体源110进行的服务请求。
[0020]存储系统114可存储播放列表116和编码片段118.1-118.η。播放列表116可识别当前存在于存储系统114中的片段118.1-118.no任选地,播放列表116可识别支持对媒体源110所存储的片段118.1-118.η进行高速缓存的一个或多个代理高速缓存120的网络位置。
[0021]代理高速缓存120可包括代理服务器122和存储系统124。代理服务器122可代表代理高速缓存120执行处理操作。这些操作可包括从一个或多个媒体源110 “调谐”到广播信道以及将编码片段126.1-126.η的数据报本地高速缓存在代理高速缓存120处。代理服务器122的操作还可包括履行其他系统部件(例如一个或多个客户端设备130)对代理高速缓存120进行的服务请求。
[0022]存储系统124可存储编码片段126.1-126.η以及将片段与URL相关联的索引表128,该片段可从该URL在媒体源110处被下载。
[0023]—个或多个客户端设备130可表示从媒体源110或代理高速缓存120下载编码片段(如上所述)、对编码片段进行解码并呈现它们以用于回放的媒体播放器。代表性客户端设备包括智能电话、平板电脑、膝上型计算机、个人计算机、机顶盒和被设计用于解码和呈现编码视频的其它消费电子产品。
[0024]在操作期间,媒体源110可接收输入媒体流并将该输入媒体流编码为多个编码片段118.1-118.η,并且可生成播放列表116以识别媒体源110的服务器112所存储的片段。媒体源110可在广播信道142中将编码片段118.1-118.η传输至通信网络140上的实体。对于涉及直播视频的流式传输应用程序,媒体源110可存储预定时间量的编码视频片段(例如5分钟的源视频),因此旧片段在新片段被生成和存储时可从存储装置114逐出。类似地,播放列表116可随时间推移而更新,以反映新片段的生成和旧片段的逐出。
[0025]代理高速缓存120可接收广播信道142,并且可将编码片段126.1-126.η本地高速缓存在存储装置124中。代理高速缓存120还可形成映射表128,该映射表识别片段118.1-118.η在被媒体源110存储时的地址。代理高速缓存130可在从广播信道142接收新片段时存储新片段,并将其他片段从存储装置124逐出。
[0026]—个或多个客户端设备130可从代理高速缓存120或媒体源110下载编码片段,以用于进行解
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1