基于站点的服务器选择的制作方法_4

文档序号:9439536阅读:来源:国知局
现在参考图5,在步骤505,播放特定电影的 输入被接收。例如,客户端122接收播放特定电影的输入,如先前在步骤205中所讨论的。 在步骤510,U化列表被接收。例如,客户端122接收U化列表,如先前在步骤510中讨论 的。
[0145] 在步骤520,基于偏好和估计吞吐量选择U化。例如,客户端122至少部分地基于 W下S点来选择下载的第一U化:1)客户端122确定其应该首先尝试下载的初始比特率; 2)与指向具有期望初始比特率的比特率文件的每个URL相关联的偏好;W及3)每个URL指 向的每个站点的估计吞吐量(如果可用的话)。客户端122可W基于在步骤220中已经讨 论的多个因素来确定初始比特率。另外,客户端122可W基于U化列表中包括的站点的估 计吞吐量来确定初始比特率。在选择第一U化后,客户端122开始从站点146处的服务器 136下载比特率文件,并且存储所观测到的吞吐量数据。 阳146] 在步骤530,处理测试吞吐量是否低于最小阔值。如果是,则控制变换回步骤520, 否则控制变换到步骤540。例如,客户端122确定从站点146处的服务器136接收的吞吐量 高于特定最小阔值。因此,客户端122进行到步骤540。 阳147] 在步骤540,处理测试更高的比特率是否可用;如果是,则控制变换到步骤520,否 则控制变换到步骤590。例如,客户端122尝试通过针对具有更高比特率的比特率文件的可 用性检查U化列表,来最大化用户的体验质量。客户端122确定更高的比特率在站点144 处的服务器134处可用,则继续进行到步骤520。 阳148] 在步骤520,客户端122选择指向站点144处的服务器134的URL,然后客户端122 切换到站点144处的服务器134。客户端122存储来自站点144处的服务器134的感知吞 吐量数据,实时确定估计吞吐量,并且继续重新访问步骤530。为了公开的目的,实时确定估 计吞吐量意味着:在接收到下一个感知吞吐量数据之前,至少使用最近的感知吞吐量数据 来确定估计吞吐量。
[0149] 在重新访问的步骤530,客户端122确定从站点144处的服务器134接收的吞吐量 低于特定最小阔值。因此,客户端122进行到步骤520。
[0150] 在步骤520,客户端122切换回站点146处的服务器136。客户端122继续下载第 一比特率文件,并且存储来自站点146处的服务器136的感知吞吐量。客户端122随后进 行到重新访问步骤530。 阳151] 在重新访问的步骤530,客户端122确定从站点146处的服务器136接收的吞吐量 高于特定最小阔值。因此,客户端122重新访问步骤540。
[0152] 在重新访问的步骤540,客户端122再次尝试通过针对具有更高比特率的比特率 文件的可用性检查U化列表,来最大化用户的体验质量。即使客户端122确定更高的比特 率在客户端144处的服务器134上可用,客户端122也正确地估计出来自站点144的吞吐 量不足W支持实时下载更高比特率。因此,代替切换,客户端122进行到步骤590。 阳153] 在步骤590,流传输数据传递继续。例如,客户端122继续从当前U化下载比特率 文件,如先前在步骤290中所描述的。
[0154] 4.5具有基于优先级的比特率文件的服务器 阳155] 为了向用户提供最佳的体验质量,设备寻求下载当时具有最高的可用比特率的比 特率文件。将所有比特率文件存储在服务器上也有缺陷。因此,比特率文件可W被赋予优 先级,从而使得最受欢迎的比特率文件被存储在更多的服务器上(尤其是高吞吐量或者低 延时服务器)。实施例可W通过客户端维护基于站点的历史数据并使用W上描述的技术实 时地正确估计吞吐量来最小化较差的质量体验,并且利用已经被选择性地放置在特定服务 器上的比特率文件来进行高效操作。
[0156] 例如,在客户端存储历史吞吐量数据可防止客户端尝试切换回第二服务器,W再 次尝试下载W上实例中描述的第二比特率文件。精确估计第二服务器的吞吐量的技术可防 止客户端尝试从第二服务器下载第二比特率。 阳157] 4. 6探测 阳15引客户端可W探测服务器或者站点,W收集或者更新历史数据。例如,客户端可W连 接到站点处的服务器,W收集历史数据并估计站点的吞吐量(客户端目前还没有针对该站 点的历史数据)。在另一示例中,客户端可W检测到客户端已经改变了在网络拓扑中的位 置,并且探测客户端已经具有其历史数据的站点处的服务器,W更新估计吞吐量。当客户端 的缓冲器足够满W继续实时播放所缓存的媒体时,客户端也可W选择探测服务器或者站点 (即使客户端探测的服务器具有非常差的吞吐量)。
[0159] 5. 0实施机制-硬件概述
[0160] 根据一个实施例,运里描述的技术由一个或多个专用计算设备执行。专用计算设 备可W是执行运些技术的硬连线设备,或者可W包括数字电子设备(例如,被永久性地编 程W执行运些技术的一个或多个专用集成电路(ASIC)或者现场可编程口阵列(FPGA)),或 者可W包括被依照硬件、存储器、其他存储设备、或者组合中的程序指令进行编程W执行运 些技术的一个或多个通用硬件处理器。运些专用计算设备还可W结合定制的硬连线逻辑、 ASIC、或者具有定制的编程W实现运些技术的FPGA。专用计算设备可W是台式计算机系统、 便携式计算机系统、手持设备、计算设备、或者包括硬连线和/或程序逻辑W执行运些技术 的任何其他设备。 阳161]例如,图6是示出可W实现本发明的实施例的计算机系统600的框图。计算机系 统600包括总线602或者用于传送信息的其他通信机构、W及与总线602禪合用于处理信 息的硬件处理器604。硬件处理器604可W是例如,通用微处理器。
[0162] 计算机系统600还包括禪合到总线602的、用于存储信息和将被处理器604执行 的指令的主存储器606 (诸如,随机存取存储器(RAM)或者其他动态存储设备)。主存储器 606还可W被用于在指令被处理器604执行期间存储临时变量或者其他中间信息。运些指 令在被存储在处理器604可访问的非暂态存储设备中时,使得计算机系统600变成被定制 为执行指令规定的操作的专用机器。 阳163] 计算机系统600还包括禪合到总线602、用于存储用于处理器604的指令和静态信 息的只读存储器(ROM) 608或者其他静态存储设备。存储设备610 (例如,磁盘或者光盘) 被提供并且被禪合到总线602,用于存储信息和指令。
[0164] 计算机系统600可W经由总线602被禪合到用于向计算机用户显示信息的显示器 612 (例如,阴极射线管(CRT))。输入设备614 (包括数字字母键和其他键)被禪合到总线 602,用于向处理器604传送信息和命令选择。另一类型的用户输入设备是光标控制616(例 如,鼠标、轨迹球、或者光标方向键),用于向处理器604传送方向信息和命令选择、W及用 于控制显示器612上的光标移动。输入设备一般具有在第一轴(例如,X)和第二轴(例如, y)两个轴中的两个自由度,运使得设备能够指定平面中的位置。 阳1化]计算机系统600可W使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件、和/ 或与计算机系统结合促使或者编程计算机系统600作为专用机器的程序逻辑,实现运里描 述的技术。根据一个实施例,运里的技术由计算机系统600响应于处理器604执行主存储 器606中包含的一个或多个指令的一个或多个序列执行。运些指令可W被从诸如存储设备 610之类的另一存储介质读入主存储器606。包括在主存储器606中的指令序列的执行使 得处理器604执行运里描述的处理步骤。在替代实施例中,硬连线电路可W替代软件指令 被使用、或者可W结合软件指令被使用。
[0166] 运里使用的术语"存储介质"是指存储使得机器W特定方式进行操作的数据和/ 或指令的任何非暂态介质。运种存储介质可W包括非易失性介质和/或易失性介质。非易 失性介质包括例如,诸如存储设备610之类的光盘或磁盘。易失性介质包括诸如主存储器 606之类的动态存储器。常见形式的存储介质包括例如,软盘、柔性盘、硬件、固态驱动、磁 带、或者任何其他磁数据存储介质、CD-ROM、任何其他光数据存储介质、具有孔桐图案的任 何物理介质、RAM、PROM、W及EPROM、FLASH-EPR0M、NVRAM、任何其他存储器忍片或者暗盒。
[0167] 存储介质不同于传输介质,并且可W结合传输介质使用。传输介质参与在存储介 质之间传输信息。例如,传输介质包括同轴线缆、铜线、和光纤(包括包含总线602的线缆)。 传输介质还可W采用声波或光波的形式,在无线电波和红外线数据通信期间生成的声波或 者光波)。
[0168] 各种形式的介质可W被用于将一个或多个指令的一个或多个序列运载到处理器 604供执行。例如,指令最初可W被装载在磁盘或者远程计算机的固态驱动器上。远程计算 机可W将指令加载到其动态存储器中,并且使用调制解调器在电话线上发送指令。计算机 系统600本地的调制解调器可W接收电话线上的数据,并且使用红外发射器将数据转换为 红外信号。红外探测器可W接收红外信号中运载的数据,并且适当的电路可W将数据放置 在总线602上。总线602将数据运载到主存储器606,处理器604从主存储器606提取指令 并执行指令。由主存储器606接收的指令在被处理器604执行之前或者之后可W可选地被 存储在存储设备610上。
[0169] 计算机系统600还包括禪合到总线602的通信接口 618。通信接口 618提供到连 接到本地网络622的网络链路620的双向数据通信禪合。例如,通信接口 618可W是综合 服务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器、或者提供到相应类型的电话线 的数据通信连接的调制解调器。作为另一示例,通信接口 618可W是提供到兼容的LAN的 数据通信连接的局域网(LAN)卡。无线链路也可W被实现。在任何运样的实施方式中,通 信接口 618发送并接收运载表示各种类型的信息的数字数据流的电、电磁、或者光信号。
[0170] 网络链路620 -般通过一个或多个网络提供到其他数据设备的数据通信。例 如,网络链路620可W通过本地网络622提供到主计算机624或者由互联网服务提供商 (ISP)626操作的数据装置的连接。ISP626接着通过现在被统称为"互联网"628的全球分 组数据连接网络来提供数据通信服务。本地网络622和互联网628均使用运载数字数据流 的电、电磁、或者光信号。运载去往或者来自计算机系统600的数字数据的通过各种网络的 信号、网络链路620上的信号、W及通过通信接口 618的信号是传输介质的示例形式。 阳171] 计算机系统600可W通过一个或多个网络、网络链路620、W及通信接口 618发送 消息并接收数据(包括程序代码)。在互联网示例中,服务器630可W通过互联网628、ISP 626、本地网络622、W及通信接口 618来发送对于应用程序的请求代码。 阳172]接收代码在被接收和/或被存储在存储设备610或者其他非易失性存储设备中供 随后执行时,可W由处理器604执行。 阳173] 在前述说明中,已经参考根据实施方式而变化的多个具体细节描述了本发明的实 施例。所W,唯一且排他地指示本发明,并且是申请人意图作为本发明的,是本申请的权利 要求的设置,具体地运些权利要求中包括任何后续的修正。 阳174] 6.0公开的其他方面,
[0175] 在前述说明中,已经参考根据实施方式而变化的多个具体细节描述了本发明的实 施例。所W,唯一且排他地指示本发明,并且是申请人意图作为本发明的,是本申请的权利 要求的设置,具体地运些权利要求中包括任何后续的修正。针对权利要求中包含的术语明 确阐述的任何定义将覆盖权利要求中所使用的运些术语的含义。因此,没有在权利要求 中明确陈述的限制、元件、特性、特征、优点、或者属性不应该W任何方式限制权利要求的范 围。说明书和附图被认为是说明性的而非限制性的。 阳176] 本文描述的主题的多个方面在下面列出的条款中给出:
[0177] 1. 一种方法,包括:接收从具有多个服务器计算机的第一站点处的第一服务器计 算机流传
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1