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

文档序号:9439536阅读:来源:国知局
客户端126还通信地禪合到控制服务器190。
[0056] 服务器130是向客户端120中的一个或多个客户端提供比特率文件或者部分比特 率文件的计算设备。每个服务器130可W是数据中屯、处的计算机、CDN提供的服务器网络、 或者能够提供比特率文件或部分比特率文件的任何其他计算设备。
[0057] 服务器132在站点142处。服务器134在站点144处。服务器136和服务器137 在站点146处。服务器138在站点148处。在图1中示出的实施例中,服务器136和服务 器137都在站点146处,但是在一些实施例中相同网络中的服务器可W在不同站点处。
[005引对等点180是能够减少延时并且增加网络110中包含的元件之间的吞吐量的对等 点。对等点180可W包括服务器138,并且可W包括一个或多个路由器、交换机、或者其他联 网基础设施元件。
[0059] 控制服务器190是向客户端提供U化列表的计算机。在图1中,控制服务器190通 过网络110和对等点180被通信地禪合到客户端120和服务器130。另外,控制服务器190 可W存储表示客户端120和服务器130的状态、容量、或者其他特性的数据,或者具有到运 些数据的访问。控制服务器190可W在会话开始时与任何一个客户端120联系。替代地,控 制服务器190可W调控客户端120,并且可W通过会话调控客户端120的行为(例如,当用 户开始观看或者收听特定的比特率文件时、W及当用户停止观看或者收听特定的媒体时)。
[0060] 2. 3示例性的基于站点的U化选择处理的概述
[0061] 图2示出了根据一个实施例的确定从哪个服务器下载比特率文件的示例性的基 于站点的处理。尽管图2示出了根据一个实施例的示例步骤,但是其他实施例可W省去、添 加、重新排序、和/或修改所示出的任何步骤。出于示出清楚示例的目的,可W参考图1描 述图2,但是在其他实施例中不要求使用图1的特定布置。 阳062]在步骤205,播放特定电影的输入被接收。例如,客户端122接收播放特定电影的 输入。在步骤210,U化列表被接收。例如,客户端122向控制服务器190查询具有特定电 影的比特率文件的服务器130。控制服务器190返回U化列表,其中每个U化指向服务器 130之一上的特定比特率文件。每个U化还包括可W包括每个比特率文件的比特率、每个服 务器的偏好值、W及每个服务器所位于的站点的元数据。 阳06引在步骤220,未经测试的站点处的第一U化被选择。例如,客户端122可W至少部 分地基于客户端122已经确定其应该首先尝试下载的初始比特率、W及与具有初始比特率 的可用比特率文件的每个服务器相关联的偏好,选择下载比特率文件的第一U化。客户端 122可W基于诸如客户端122的设备特性(例如,分辨率和性能)、可用比特率、W及指派给 抓L的偏好和权重之类的多个因素,来确定初始比特率。在选择第一U化后,客户端122开 始从第一U化指向的服务器136下载比特率文件。客户端122可W缓存所下载的内容。 [0064] 在步骤230,处理测试吞吐量是否低于最小阔值;如果是,则控制返回到步骤220, 否则控制变换到步骤290。例如,客户端122确定从站点146处的服务器136接收到的吞吐 量在特定最小阔值W下。因此,客户端122继续到步骤220。最小阔值可W是预定值,或者 可W基于诸如,客户端122正在尝试下载的比特率文件的长期平均比特率、客户端122已经 尝试、或者将要尝试下载的比特率文件的多个部分的实际编码数据尺寸、客户端122上的 缓冲器的尺寸、或者客户端122上的缓冲器的充满程度等的很多因素。 阳0化]在步骤220,示例继续,客户端122确定第二U化指向也处于站点146处的服务器 137 ;但是,客户端122将不尝试从第二U化下载比特率文件,因为站点146已经通过从服务 器136下载比特率文件被测试,并且吞吐量被确定是不充足的。因此,客户端122认为服务 器137将提供同样不充足的吞吐量。相应地,客户端122将选择U化列表中的第SU化(例 如,在运种情况下位于不同的未经测试的站点的服务器132)。客户端122切换到服务器 132,并且继续重新访问步骤230。
[0066] 在重新回到的步骤230,客户端122确定从服务器132接收的吞吐量不在最小阔值W下。因此,客户端122继续到步骤290。
[0067] 在步骤290,流传输继续。例如,客户端122继续从当前U化下载比特率文件。基 于包括但不限于时间间隔、客户端122上的缓冲器的大小、或者客户端122上的缓冲器的充 满程度的多个因素,客户端122可W返回到步骤230,W验证当前站点仍然在递送等于或大 于最小阔值的吞吐量。
[0068] 2. 4 等级
[0069] 为了减轻昂贵且有限的战略服务器(strategicserver)的负载,客户端可W被限 制使用指定的服务器或者站点,除非诸如可用性或者切换之类的一些条件被满足。例如,可 W至少部分地基于是否存在具有期望比特率文件的不太昂贵的服务器,来限制客户端请求 比特率文件。代价不总是指钱;在一些实施例中,可W使用带宽、存储空间、吞吐量、或者会 对花销或者性能产生影响的多个因素来计算代价。还可W至少部分地基于是否存在客户端 可W利用最小吞吐量从其流传输的非战略服务器,来限制客户端请求比特率文件。另外,在 另一示例中,可W至少部分地基于是否存在没有过载的非战略服务器来限制客户端请求比 特率文件。
[0070] 在一个实施例中,站点被与使用等级值来标识的被称为等级的抽象概念相关联。 客户端可W从第一等级站点请求比特率文件。但是,基于包括所选择的比特率文件在第一 等级站点上的可用性、第一等级站点的实际或者估计吞吐量、或者第一等级站点的故障在 内的一个或多个因素,客户端可从第二等级站点请求比特率文件。另外,客户端可W基于包 括前面列出的因素在内的任何因素的组合,从第二等级站点请求比特率文件。客户端还可 W基于包括W下讨论的探测在内的因素的任意组合,在相同等级的站点之间自由切换。
[0071] 其他实施例可W包括两个W上等级。类似地,运些实施例可W出于很多原因、或者 包括但不限于上面已经列出的原因在内的原因的组合,对切换等级施加限制。
[0072] 同一站点针对不同客户端可W被与不同的等级相关联。由于客户端可W位于网 络拓扑中的任意位置,所W特定站点可W更便宜地向相比其他客户端的一些客户端递送内 容。因此,站点可W基于特定客户端、客户端的位置、客户端设备、客户端的类型、或者很多 其他因素,被动态地与等级相关联。
[0073] 针对所有客户端或者客户端的特定集合,站点可W被静态地与特定等级相关联。 但是,其他站点可W被基于特定客户端的位置动态地与特定等级相关联。
[0074] 图3示出了根据实施例的分别针对两个客户端的与等级视图相关联的站点。尽管 图3示出了具有两个客户端的实施例,但是其他实施例可W省去、添加、重新排序、和/或修 改所示出的任何元件。 阳0巧]在图3示出的实施例中,使用图1示出的实施例作为示例,等级视图310和等级视 图320分别示出了针对客户端122和客户端126的不同等级指派。等级视图310包括等级 312、等级314、W及等级316。等级视图320包括等级322、等级324、W及等级326。在实施 例中,等级视图可W包括=个W上或=个W下等级,并且可W具有指派给等级的任意数目 的站点。在实施例中,任意数目的站点可W被指派给等级。
[0076] 至少部分地基于站点142和站点144具有到客户端122的最短路径,站点142和 站点144被指派到作为客户端122的第一等级的等级312。类似地,基于相同的因素,站点 146和站点144被指派到作为客户端126的第一等级的等级322。
[0077] 至少部分地基于站点146具有到客户端122的更大距离,站点146被指派到作为 客户端122的第二等级的等级314。类似地,至少部分地基于相同因素,站点142被指派到 作为客户端126的第二等级的等级324。
[007引至少部分地基于站点148位于对等点180处,站点148被指派到作为客户端122 的第=等级的等级316。尽管客户端122和站点148之间的拓扑可W指示相对于站点146 和客户端122,站点148和客户端122之间存在较短距离,但是维护站点148有可能是更贵 的,并且因此保留站点148用于不存在其他替代时的客户端请求。因此,在图3所示出的实 施例中,站点148可W被静态地指定为所有客户端120的第=等级站点。类似地,至少部分 地基于相同因素,站点148被指派到作为客户端126的第=等级的等级326。
[0079] 在实施例中,客户端自主地遵守在等级内的服务器或者站点之间切换、W及在等 级之间切换的规则。替代地,服务器可W管理客户端,其中客户端被服务器指令哪些服务器 或者站点是客户端被允许从其下载数据的。
[0080] 2. 5示例性的基于站点且基于等级的U化选择处理的概述
[0081] 图4示出了根据一个实施例的确定从哪个服务器下载比特率文件的示例性的基 于站点且基于等级的处理。尽管图4示出了根据实施例的示例步骤,但是其他实施例可W 省去、添加、重新排序、和/或修改所示出的步骤中的任意步骤。
[0082] 出于示出清楚示例的目的,可W使用图1和图3中示出的实施例来描述图4。但 是,其他实施例可W使用客户端、服务器、基础架构、和等级的其他布置。现在参考图4,在步 骤405,播放特定电影的输入被接收。例如,客户端122接收播放特定电影的输入,如前面在 步骤205中所讨论的。在步骤410,U化列表被接收。例如,客户端122接收U化列表,如前 面在步骤210中所讨论的。但是,在步骤410中返回的U化列表还在元数据中包括根据等 级视图310针对客户端122每个站点被指派到的等级。
[0083] 在步骤420,处理选择第一未经测试的等级的未经测试的站点处的第一U化。例 如,客户端122至少部分地基于W下S点选择下载的第一U化:1)客户端122已经确定的 其应该首先尝试下载的初始比特率;2)与指向具有初始比特率的比特率文件的每个URL相 关联的偏好;W及3)被指派到等级312的站点。因此,在步骤420,客户端122开始从位于 站点142处且被指派到站点142的服务器132下载比特率文件,其中,站点142针对客户端 122被指派到第一等级312。与步骤220不同,只要客户端122的第一等级312处的服务器 上存储有可用比特率文件,客户端122就不被允许从位于站点146的服务器136下载比特 率文件,因为站点146被指派到了第二等级314。可用性可W基于比特率文件的U化是否被 包括在U化列表中、或者基于U化指向的服务器是否正在正确地执行。
[0084] 在步骤430,处理测试吞吐量是否低于最小阔值;如果是,则控制变换回步骤420, 否则控制转移到步骤490。例如,客户端122确定从站点142处的服务器132接收的吞吐量 低于最小阔值。因此,客户端122进行到步骤420。 阳0化]在步骤420,客户端122基于与最初在步骤430中讨论的相同因素,选择另一U化。 由于比特率文件的副本没有被存储在服务器134上,所W客户端122被允许从服务器136 下载比特率文件,因为服务器136位于被指派到第二等级314的站点146处。客户端122 继续重新访问步骤430。
[0086] 在重新访问的步骤430,客户端122确定来自位于站点146的服务器136的吞吐量 不低于最小阔值。因此,客户端122进行到步骤490。在步骤490,客户端122继续从站点 146处的服务器136下载比特率文件。
[0087] 3.0收集历史数据
[0088] 历史数据可W是在过去发生的流传输数据传送的吞吐量数据的集合。吞吐量可W 是客户端在特定时间量中从服务器接收的数据量。例如,客户端可W从服务器请求特定比 特率文件的2秒块。吞吐量可W是接收所请求的2秒块所花费的秒数去除所请求的2秒块 的大小。吞吐量数据随后被作为历史数据中的采
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1