用于边缘服务器选择的增强任播的制作方法

文档序号:7914859阅读:134来源:国知局
专利名称:用于边缘服务器选择的增强任播的制作方法
技术领域
本公开总体上涉及路由传递,并且但是不是限制地涉及改善用于存在点(POP)的分布式组的任播路由。
背景技术
⑶N提供了具有许多优化的内容的增强传递。一种优化是分配近处的POP来传递请求,使得在网络意义上,发送者和接收者接近得相距几跳、小的延迟,并且/或者仍然另外限定了服务质量(QoS)。可以使用任播来允许因特网向近处的POP分配请求。在一些情况下,使用任播向终端使用者分配的POP可能不是接收内容的最有利的位置。例如,在凤凰城中的用户可以在一些情况下使用可能提供弱于最佳的QoS的在纽约的POP。内容的传递被较宽的因特网如何实时地或近乎实时地作为大大地影响。存在向因特网提供被收集并且周期地使得可获得的健康信息的服务。这可以在某种程度上有益,但是未提供用于CDN或因特网的其他大型使用者提供高QoS水平所需的许多决定的足够近来的信息。通过不频繁的更新提供的一般趋势未提供用于进行一些传递决定的及时信息。

发明内容
在一些实施例中,本公开描述了用于收集分布式的信息以改善使用任播来在多个在地理上远离的存在点(POP)之间分配传递的路由的系统和方法。POP共享同一因特网协议(IP)地址。根据任播解析,因特网有助于初始向POP分配内容请求。从多个POP的传递和可能的其他来源收集传递统计量。当确定任播找到错误的POP时,向另一个POP重新分配该内容请求。在另一个实施例中,本公开描述了一种内容传递网络(⑶N),用于使用多个POP利用因特网来传递其他方的内容。⑶N包括第一和第二 POP以及交换结构。能够使用因特网协议(IP)地址来访问第一 POP。第一 POP包括多个第一边缘服务器,所述多个第一边缘服务器每一个被配置来向终端使用者装置传递内容。能够使用IP地址来访问所述第二 POP。所述多个POP包括所述第一 POP和所述第二 Ρ0Ρ,其中,所述第二 POP与所述第一 POP在地理上分离。所述第二 POP包括多个第二边缘服务器,所述多个第二边缘服务器每一个被配置来向终端使用者装置传递内容。当确定所述第二POP有可能提供对于在所述第一POP处接收的内容的请求的内容对象的改善的传递时,所述交换结构向所述多个第二边缘服务器之一分配所述请求。在另一个实施例中,本公开描述了一种用于在多个POP之间分配在CDN中的传递资源的方法。接收用于向在第一 POP处的终端使用者传递内容对象的请求。所述第一 POP包括多个第一边缘服务器。所述多个POP包括所述第一 POP和第二 POP。所述第一 POP在地理上远离所述第二 POP。确定所述第二 POP可能与所述第一 POP相比较而言向所述终端使用者提供所述内容对象的改善的传递。所述第二 POP包括多个第二边缘服务器。使用同一 IP地址从因特网访问所述第一POP和所述第二POP。向所述多个第二边缘服务器之一分配所述请求。在另一个实施例中,本公开描述了一种用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法。接收用于向第一 POP处的终端使用者传递内容对象的请求。所述多个POP包括所述第一 POP和第二 POP。确定所述第二POP可能与所述第一 POP相比较而言向所述终端使用者提供所述内容对象的改善的传递。所述多个POP包括所述第一 POP和所述第二 Ρ0Ρ,其中,第一和第二 POP共享同一 IP地址。所述 第一 POP在地理上远离所述第二 POP。使用同一 IP地址从因特网访问所述第一 POP和所述第二 POP。向所述第二 POP重新分配向所述终端用户传递所述内容对象的请求。通过以下提供的详细描述,本公开的另外的适用领域将变得清楚。应当明白,详细说明和具体示例在指示不同的实施例的同时意欲仅用于说明的目的,而不意欲必然地限制本公开的范围。


结合附图描述本公开;图I描述了内容分发系统的实施例的框图;图2描述了数据处理系统的实施例的框图;图3描述了演示数据流的实施例的图;图4描述了处理环的实施例的框图;图5描述了详细描述内容传递网络(CDN)的部分的实施例的框图;图6图示用于数据处理系统的操作的处理的实施例的流程图;图7图示配置内部处理用户的处理的实施例的流程图;图8图示用于设置数据代理并且使用该数据代理来向消息队列报告信息的处理的实施例的流程图;以及图9A和9B图不用于改善任播路由的处理的实施例的流程图。在附图中,类似部件和/或特征可以具有相同的附图标记。而且,可以通过在附图标记后跟随划线和在类似的部件之间区分的第二标记来区分相同类型的各个部件。如果仅在说明书中使用第一附图标记,则该描述适用于具有同一第一附图标记的类似部件的任何一种,而与第二附图标记无关。
具体实施例方式接下来的说明仅提供了优选示例性实施例,并且不意欲限制本公开的范围、适用性或配置。而是,接下来的优选示例性实施例的说明向本领域内的技术人员提供了用于使得能够实现优选示例性实施例的说明。可以明白,在不偏离在所附权利要求中给出的精神和范围的情况下,可以在元件的功能和布置上进行各种改变。首先参见图1,示出内容分发系统100的实施例的框图。在这个实施例中,内容始发者106向内容传递网络(⑶N) 110卸下内容对象的传递。内容始发者106产生和/或分发内容对象,并且包括内容提供者108、内容站点116和源服务器112。⑶N 110可以在各个实施例中高速缓存、重新分发和/或容纳第三方的内容,以卸下传递,并且通常提供较好的服务质量(QoS)。在这个实施例中,内容分发系统100定位内容对象(或其多个部分),并且向终端使用者102或处理用户(未示出)分发内容对象。内容对象在CDN 110内动态地被高速缓存或处理,以改善QoS,而不复制整个内容对象,除非随后被终端使用者128请求。内容对象是任何内容文件或内容流,并且可以例如包括视频、图片、数据、音频、软件和/或文本。例如,内容对象可以是收集的信息或来自消息队列的内容流。内容对象可以是现场的、延迟的或存储的。内容对象可以是收集的信息,该收集的信息实时或近乎实时地被流传送CDN 110至或自CDN 110流传送。贯穿本说明书,可以参考内容对象、内容、内容流和/或内容文件,但是应当明白,那些术语每当它们可以出现时可以可交换地被使用。许多内容提供者108使用⑶N 110通过因特网104向终端使用者128传递内容对象。⑶N 110包括多个存在点(P0P)120,该多个POP 120在地理上遍布内容分发系统100,以传递内容。各个实施例可以在⑶N 110内具有任何数量的POP 120,该任何数量的POP 120通常分布在因特网104周围接近终端使用者系统102的各个位置。多个POP 120使用同一IP地址,使得任播路由方案用于对于每一个请求找到在网络含义上可能接近终端使用者的POP 120。除了因特网104之外,广域网(WAN)114或其他主干网可以将POP 120彼此耦合,并且也将POP 120与⑶N 110的其他部分耦合。当终端使用者128通过其各自的终端使用者系统102请求网页时,将对于网页的请求经由因特网104直接地或间接地传送到内容始发者106。内容始发者106是内容对象的来源或再分发者。内容站点116是终端使用者系统102可访问的网站。在一个实施例中,内容站点116可以是其中使用万维网浏览器能够观看内容的网站。在其他实施例中,可以使用应用软件而不是万维网浏览器来访问内容站点116。在这个实施例中,内容提供者108将内容请求在其作出后引导到CDN 110,或者通过将传递路径嵌入网页的URL内来形成传递路径。在任何情况下,在这个实施例中,通过使用与两个或更多POP 120对应的任播IP地址来向⑶N 110移交对于内容的请求。—旦对于内容对象的请求被传送到⑶N 110,则该请求与在使用任播路由方案的⑶N 110内的特定POP 120相关联。特定POP 120可以检索内容对象的来自内容提供者108的部分。替代地,内容提供者108可以通过预先填充,即在第一请求之前,直接地向⑶N 110和其相关联的POP 120提供内容对象。在这个实施例中,内容对象被提供到CDN 110,并且 被存储在一个或多个CDN服务器中,使得可以从CDN 110供应所请求的内容的部分。CDN服务器包括实际处理终端使用者请求的边缘服务器。源服务器112保存内容始发者106的每一个内容对象的拷贝。周期地,源服务器112的内容可以通过高速缓存、容纳和/或预先填充算法与⑶N 110—致。一些内容提供者可以使用在⑶N 110内的源服务器来容纳内容,并且避免维持拷贝的必要。一旦⑶N 110从源服务器112检索到内容对象,则将内容对象存储在特定的POP120内,并且从那个POP 120向终端使用者系统102供应该内容对象。流内容对象可以具有实时或近乎实时的信息或可以被预先存储。终端使用者系统102接收内容对象,并且处理它以由终端使用者128或自动化处理系统使用。终端使用者系统102可以是个人计算机、媒体播放机、手持计算机、因特网设备、电话、IPTV机顶盒、万维网服务器、处理系统、流无线电或接收和/或播放内容对象的任何其他装置。在一些实施例中,多个终端使用者系统102可以联网在一起。虽然这个实施例仅示出单个内容始发者106和单个CDN 110,但是应当明白,在各个实施例中可以有每种的许多个。这个⑶N 110允许有效地收集实时信息以在⑶N 110之内或⑶NllO之外分发。外部数据代理可以向在不同城市中的不同POP 120提供信息,该信息被⑶N 110通过从近处的POP 120接收内容流而聚集为来自消息队列226的内容流,以在另一个位置中处理。当在实施例中在POP 120之间分发内容时,WAN 114可以有效和安全得多。另外,处理用户可以获得在内容流中可获得类似信息的益处,以提供信息的较宽采样,以将处理决定基于它。 参见图2,示出数据处理系统200的实施例,数据处理系统200使用⑶N 110基础架构来实时地或近乎实时地高效共享信息。在这个实施例中,数据处理系统200与外部数据收集和处理一起执行流内容的内部数据收集和处理。其他实施例可以具有或者全部外部或者全部内部数据收集。数据处理系统200允许及时向报告方或其他方报告可能感兴趣的及时信息。数据处理系统200可以监控从几个来源收集的信息,以允许它基于那个信息及时地作出商务和/或处理决定。例如,可以从多个来源收集和向数据处理系统200报告关于在因特网上的各个链路的健康的报告,以允许数据处理系统200将传递请求路由到相对没有因特网拥塞的边缘服务器。在一个实施例中,通过从许多来源收集信息,所收集的信息的可靠性在聚集中增加,使得用户可以使用聚集的信息或内容流来进行较好的决定。⑶N 110用于多个目的,包括如上所述的收集的信息的聚集和分发。另外,在这个实施例中,CDN 110执行收集的信息的处理以用于内部目的或作为用于其他方面的服务。虽然在图2中未详细描述,但是CDN 110可以执行更多的传统任务,例如,通过高速缓存来自源服务器的内容或作为源服务器容纳内容来对于其他方面分发内容。在图2中所示的CDN 110中未详细描述与分发内容相关联的那些块。CDN的其他实施例可以不执行传统的内容传递,而是将CDN聚焦在作为在处理和聚集的各个阶段中用于收集的信息的交换中心执行。内部地,⑶N 110从一个或多个内部数据代理208B收集信息。内部数据代理208B收集与诸如传递性能、资源装载、带宽消耗、客户服务、商业智能等的事务相关的信息。图2为了简单而示出单个内部和外部数据代理208,但是应当明白,可以有任何数量的内部和外部数据代理208。内部数据代理208B可以实时地、近乎实时地或沿着另一条时间线报告收集的信息。为了说明在报告信息中的任何延迟,时间戳或陈旧指示符可以向其他方面通知信息多及时地被采样。⑶N 110可以选择允许第三方通过用于第三方的外部处理用户212A的预订来使用在CDN 110内聚集的内部或外部收集的信息。命令和控制(CC)接口 238配置收集的输入信息到⑶N 110和从⑶NI 10输出内容流。用于接受收集的信息并且提供内容流的API被提供到在CDN 110外部的、要预订内容流的第三方。⑶N 110或第三方可以被设计为使用CC接口 238的还未定义的API。⑶N 110也可以定义使用CC接口 238的授权和认证参数,诸如认证、授权、登录和/或数据加密。在这个实施例中,CC信息通过与收集的信息或内容流分离的信道被传送到各个数据代理208和处理用户212,但是其他实施例可以将CC信息嵌入在这些通信信道中。CC信息允许调节信息报告频率、指定信息和内容流的格式、停止数据代理208或处理用户212、更新认证和授权等。可以通过CC接口 238来研究和探索可获得的各种内容流。特定处理用户212的那些内容流选择被存储在队列预订信息222中。CDN 110然后将所选择的内容流路由到已经选择了给定内容流的传递的处理用户212。另外,⑶N 110也支持由档案数据代理208C收集的、在历史数据存储区234中存储的各种内容流的历史查询。档案数据代理208C支持相对于历史消息队列信息运行假设查询,以测 试在处理用户212处运行的算法如何对于例如在过去收集的内容流作出反应。通过CC接口 238,可以选择各种内容流来归档到历史数据存储区234内。外部数据代理208A也可以实时地、近乎实时地或沿着另一条时间线来收集向⑶N110报告的信息。在数据代理208和⑶N 110之间存在定义的API。由⑶N 110收集的每种类型的信息或变量落在定义的API或多个API内。在一些情况下,CC接口 238用于定义另外的变量以修改可能为处理用户212使用的API。另外的变量可以被传送到所有的处理用户212或仅子集。例如,数据代理208可以报告获得的最后一英里带宽和与测试相关联的用户标识符,但是将用户标识符定义为私有变量,该私有变量将不被传送到在其域之外的处理用户212。在其域内的处理用户212将与由其本身的数据代理208报告的带宽报告一起接收用户标识符。内容流或子流的加密和/或唯一寻址可以用于将私有变量隐藏在消息队列内。一些类型的信息可以具有标准API。当表征和提供新的信息源时,开发者可以通过CC接口 238指定或提出新的API。报告传递健康信息的API的示例可以是接受源IP地址、目的地IP地址、流速率、延迟、可靠性和采样时间的API。在足够的数据代理208从⑶N110内或外部报告传递健康的情况下,可以将那个信息的聚集用于任何数量的目的。一些实施例对于通过外部处理用户212A接收内容流收费。计价可以是每一个记录、每一个字节或每一个预订。一些实施例相对于向外部处理用户212A的内容流的收费对于从外部数据代理208A提供的收集的信息抵消信贷。例如,在一个实施例中,每向CDN 110提供的每一个收集的信息的记录将导致来自内容流的一个免费数据记录。通常,在聚集的内容流中的数据对于报告信息的越多实体变为越可靠的采样。CDN 110可以通过经由CC接口 238可访问的成本核算信息来协商所提供的信息和所消耗的信息的计价。外部数据代理208A通过接口或数据输入适配器230与⑶N 110进行通信。图2仅示出单个外部数据代理208A,但是应当明白,在不同的实施例中,可以存在几百、几千或几百万个外部数据代理208。与数据输入适配器230的通信可以被加密或不加密。例如,可以使用利用TCP连接的套接字。除了 TCP之外,可以在一些实施例中使用诸如SCTP和UDP的其他传输层协议来吸收收集的信息。诸如SSL的协议可以用于保护在TCP连接上的信息。可以对于与⑶N 110对接的任何外部数据代理208A执行认证和授权。数据输入适配器230通过提供API和任何加密、授权和/或认证来从外部数据代理208A接收信息。在一些情况下,数据输入适配器230重新格式化或重新布置来自外部数据代理208A的信息。虽然未示出,但是一些实施例可以使用数据输入适配器230来用于内部数据代理208B。⑶N 110具有多个POP 120,该多个POP 120在地理上分布使得大多数外部数据代理208A和处理用户212A与POP 120较为接近。使用任播、DNS解析、重定向或其他方法将外部数据代理208A和外部处理用户212A分配到特定的POP 120,以使用具有足够的QoS的近处的POP 120。用于收集的信息或内容流的POP 120可以被选择来减少发送特定流的POP 120的数量,限制POP 120的加载、在信息的收集或流传送中的速度延迟或满足其他要求。处理环可以被固定到指定的Ρ0Ρ,以用于每一个数据代理208和处理用户212。消息队列226从数据代理208获取所有的信息,并且向已经从消息队列226请求内容流的任何处理用户212分发作为内容流的收集的信息。消息队列226可以在单个POP120中、中心位置或分布在多个POP 120之间。如果全部被接收,则仅仅特定处理用户212已经预订的在消息队列226内的内容流可以被那个处理用户212读取。被发送到消息队列226的收集的信息被消息队列226在一秒的一部分中处理和在内容流中返回。可以使用各 或多个单播的协议可以用于在消息队列226内分发流。另外,可以在各个实施例中使用诸如TCP、SCTP和UDP的传输层协议。通过CC接口 238,可以向外部或内部处理用户212A、212B分配在消息队列226内的一个或多个内容流。内容流是在特定类别中的特定类型的消息。例如,6个数据代理208可以全部报告作为通过消息队列226向给定的内容流内传送的信息的内容传递度量。一个或多个处理用户212可以预订和接收内容流,以处理信息并且作出决定和/或供应作为被反馈回消息队列226内的收集的信息的来自处理的输出。通过CC接口 238,开发者可以搜索可获得的内容流或指定新的内容流和其API。可以通过使用处理用户212处理多个现有的内容流来确定新的内容流。⑶N 110具有内部处理用户212B,该内部处理用户212B处理所分配的内容流以执行在⑶N 110内的功能。内部处理用户212B可以基于来自消息队列226的一个或多个内容流来执行诸如提供新帐户或改善路由的功能。处理规则216-2被提供到内部处理用户212B,以提供限定如何处理预订的内容流的算法、规则、指令和/或软件。处理规则216-2可以确定来自内容流的记录的滤波和加权。在基于内容流的分析而作出决定的情况下,例如每一个数据记录被加上时间戳,以反映何时收集该信息,使得可以向最近的结果提供附加的可信性。其他实施例可以滤除来自不可靠来源或陈旧的内容流中的记录。例如,信息的特定贡献者可以证明具有次于最佳的收集的信息,并且该信息可以被很低地加权或一起去除。对于外部处理用户212A,可以通过数据输出适配器242来进行滤波,以减少从⑶N 110通过的带宽。内部处理用户212B可以另外处理一个或多个内容流,以提供不同信息以反馈到消息队列226来作为不同内容流的一部分。例如,成百的外部数据代理208可以提供在地理上相关的温度测量,该温度测量被置于在消息队列226上的内容流内。内部处理用户212B可以接收内容流,并且将其处理为地形热图,该地形热图被作为传送到消息队列226上的收集的信息被提供回以用于其他内部和外部处理用户212可能的使用。以链状排列的各种数据代理208和处理用户212形成处理环路。
外部处理用户212A与内部处理用户212A类似地作为,但是是对于不是⑶N 110的一部分的第三方如此作为。外部处理用户212A通过数据输出适配器242来与⑶N 110对接。数据输出适配器242可以执行认证、授权、重新格式化、滤波、加密等。外部处理用户212A可以从消息队列226吸收内容流,但是它们也可以在一些情况下通过向消息队列226内返回处理的信息来作为外部数据代理。处理规则216-1定义了外部处理用户212A如何处理所预订的内容流。如上所述,CC接口 238允许⑶N 110查询历史消息队列226信息。档案数据代理208C收听消息队列226,以在历史数据库234中存储内容流。历史数据库234可以将内容流存储不同的时间量,并且可以不存储所有的内容流。不同的内容流可以被存储不同的时间量。例如,冰箱的温度读取可以被置于消息队列226上,但是仅在超过对应于故障的某个阈值的情况下被存储。参考图3,示出用于演示数据流的图300的实施例。来自多个数据代理208 (未示出)的收集的信息304被发送到⑶N 110。如上所述,内部数据代理208B可以在⑶N 110内收集附加的收集的信息304。具有多个内容流308的⑶N 110产生消息队列226。在⑶N110之外和之内的处理用户212 (未示出)实时地或近乎实时地接收流308。接下来参见图4,示出处理环400的一个实施例的框图。处理环400的这个示例从η个数据代理208收集信息304。信息304的一些在达到处理环的尾部之前通过多达三轮处理。处理用户212-2、212-3、212-m、212-5的一些不向消息队列提供回它们的进一步处理的信息,以作为信息流的终点,这些处理用户在此有时被称为“收听用户”。虽然示出三个消息队列226,但是应当明白,这些可以是相同的消息队列或任何数量的不同的消息队列。在不同的实施例中,消息队列226可以全部位于⑶N 110内或部分地位于⑶N 110之外。当然,外部处理用户212A能够访问作为内容流308的消息队列226的部分。在一个示例中,数据代理208可以报告它查验(ping)给定地址所花费的时间。这个收集的信息304被实时(S卩,小于I秒)或近乎实时地(S卩,在收集后不到10秒)被报告,并且耦合到消息队列226。在大多数情况下,收集的信息304被加上时间戳,以指示原始信息的新鲜度。例如,执行测试的时间可以被存储在时间戳中。在这个示例中,每一个数据代理208向消息队列226报告其地址,要查验的给定地址、查验的时间和何时完成查验测试。各种数据代理208可以在⑶N 110的几个POP 120和耦合到⑶NI 10的第三方系统中,例如,容纳内容的源服务器可以报告从其位置查验的响应能力。在这个示例中,通过许多查验结果的聚集,可以实时地或近乎实时地监控因特网的健康。在这个示例中,存在收听正在报告查验结果的内容流308的两个处理用户212-1、212-2。第二处理用户212-2是不向消息队列226提供另外的信息而是获取流308并使用它来例如更新路由器的路由表的收听用户。例如,可以通过第二处理用户212-2来更新路由表,以实时地或近乎实时地指定哪些最可能是在因特网上的最有响应能力的路由。第一处理用户212从多个数据源获取具有查验结果的流308,并且通过按照自治系统(AS)号码分组结果来进一步处理它,并且向消息队列226内报告回收集和处理的信息304。通过AS号码分组的平均结果是需要很少的带宽来向其他方面报告并且避免处理用户212必须进一步沿着处理环400查看在内容流308中的每一个记录的收集的信息。存在收听由AS号码汇总的查验结果的内容流308的m个处理用户212。第四处理用户212-4通过增加用于AS号码的地理信息来进一步处理流308。这个处理将查验结果与用于AS号码的地理估计相关。那个收集的信息304被提供回消息队列226。第五消息队列212-5收听来自消息队列226的内容流308,以接收在地理上相关的查验结果。虽然这个处理环400具有三个处理级,但是其他实施例可以具有更多或更少。另外,数据代理208可以提供在处理中使用的 任何数量的不同信息304。接下来参见图5,图5是详细描述⑶N 110的部分的框图的实施例。⑶N 110的这个实施例示出两个POP 120,但是通常有在因特网104上分布的更多的POP 120,以增加P0P120(在网络意义上)接近终端使用者系统102、外部处理用户212A或外部数据代理208A的可能。每一个P0P120可以使用因特网104和WAN 114之间POP 120传送请求、内容对象、状态信息、收集的信息304、内容流308等。在这个实施例中,WAN 114使用私有的主干线来将POP 120耦合在一起,但是在其他实施例中,WANl 14可以包括公共网络。每一个POP 120包括服务于来自终端使用者系统102的请求的多个边缘服务器530。通过任播路由方案,对于内容的请求找到有可能在网络意义上接近请求者的⑶N 110的POP 120。这经常是良好地适合于提供内容对象的POP 120,但是在一些情况下另一个POP因为某种原因而更好地适合。例如,因特网服务提供商(ISP)可以使用在地理上远离终端使用者系统102的位置的代理,这使得当使用任播解析来寻找近处POP 120时,对于内容的请求找到接近代理的POP 120,而不是接近终端使用者系统102的POP 120。边缘服务器530供应内容对象、接收生成的信息304并且中继内容流308。在这个实施例中,可以在边缘服务器530内实现数据输入适配器230和数据输出适配器242功能。通常以未滤波的形式从WAN 114可获得消息队列226。在这个实施例中,被预订的那些单独的内容流308被边缘服务器530提供到外部处理用户212A。在实用的情况下,预订给定的内容流308的处理用户212可以被分组到单个边缘服务器530。在这个实施例中,交换结构540接收对于内容对象的请求,并且分配通常位于原始接收该请求的POP 120中的边缘服务器530,但是不必然如此。交换结构540可以或者向在另一个POP 120中的边缘服务器530分配请求。在交换结构540内的表格指示用于特定IP地址、AS号码和/或IP地址范围的喜好POP 120。当没有指示的喜好的POP或原始接收该请求的喜好的POP时,假定任播正确地作为,并且接收请求的POP 120将该请求路由到边缘服务器530以完成。内部数据代理208B监控进入的对于内容的请求,并且记录任播如何解析。其他实施例可以使用其他方式来向POP 120解析,诸如单级DNS、双级DNS、请求重定向等。内部数据代理208B记录请求者的IP地址、解析技术和请求的时间以向消息队列226报告那个收集的信息308。虽然未示出,但是外部数据代理208A可以观察任播如何对于来自不同IP地址的请求解析,并且向消息队列226报告收集的信息304。收集的信息在每一个记录中包括请求的IP地址、使用任播找到的POP 120的位置、在请求中使用的协议、特定请求、接收请求的时间和延迟、带宽、分组损失、抖动和与传递相关的其他QoS因素。向消息队列226的API用于收集记录。为了确定未原始接收对于内容对象的请求的POP 120是否更好地适用于供应内容对象,存在用于选择更好的POP 120的多种技术。第三方位置服务提供了用于IP地址、AS号码和/或IP地址的部分的近似地理位置。当IP地址、AS号码和/或IP地址组与地理位置相关时,具有位置服务的外部数据代理208A提供信息304。由于服务进行在位置和IP地址之间的相关,所以外部数据代理208A提供收集的信息304。内部处理用户212B与来自报告任播解析的、在每一个POP 120中的内部数据代理208B的内容流一起从位置服务接收内容流308。除了使用在⑶N 110外部的第三方位置服务之外,来自传递的反馈可以用于确定用于特定IP地址和/或地址范围的更好POP 120。在每一个边缘服务器530内的内部数据代理208B (未示出)可以确定用于从POP 120和边缘服务器530至特定IP地址的特定传递的延迟、带宽、分组丢失、抖动和其他QoS因素。可以将那个收集的信息304封装到被内部处理用户212B接收的内容流308内。另外,使用其本身的服务器或使用另一个CDN在CDN110外部进行传递的第三方可以使用通过消息队列226耦合到内部处理用户212B的外部数据代理208A来提供信息。交换结构540可以根据位置服务的建议来路由,并且当没有建议时,交换结构可以基于来自内容流308的信息将请求路由到提供对于那个IP地址或类似IP地址的最佳QoS的POP 120。在这个实施例中,内部处理用户212B从一个或多个地理位置服务接收内容流308,另外,在一个或多个流308中向在每一个POP 120中的内部处理用户212B发送来自在⑶N 110之内或之外的单独传递的收集的信息304。处理规则516指示如何解释流308。例如,可以在处理规则中存在加权以推崇在⑶N 110内收集的传递结果,而不是在⑶N 110之外收集的传递结果。在一个实施例中,来自传递或来自地理位置服务的结果可以老化,以有利于因为在因特网104上的改变的条件导致的更新结果。权利要求
1.一种用于使用多个存在点(POP)利用因特网来传递其他方的内容的内容传递网络(⑶N),所述⑶N包括 第一 POP,能够使用因特网协议(IP)地址来访问所述第一 POP,其中第一 POP包括多个第一边缘服务器,所述多个第一边缘服务器每一个被配置来向终端使用者装置传递内容;第二 P0P,能够使用所述IP地址来访问所述第二 P0P,其中 所述多个POP包括所述第一 POP和所述第二 P0P, 所述第二 POP与所述第一 POP在地理上分离,以及 所述第二 POP包括多个第二边缘服务器,所述多个第二边缘服务器每一个被配置来向终端使用者装置传递内容;以及 交换结构,当确定所述第二 POP有可能提供对于在所述第一 POP处接收的内容的请求的内容对象的改善的传递时,所述交换结构向所述多个第二边缘服务器之一分配所述请求。
2.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,其中所述第一和第二 POP根据任播路由方案来共享同一 IP地址。
3.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,其中所述交换结构是分布式的,其多个部分在所述第一 POP和所述第二 POP两者内部。
4.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,进一步包括 第一数据代理,用于收集由所述第一 POP服务的请求的传递统计量; 第二数据代理,用于收集由所述第二 POP服务的请求的传递统计量;以及消息队列,其聚集来自所述第一数据代理和所述第二数据代理的传递统计量,其中所聚集的传递统计量被流传送到所述交换结构,以影响所述请求的分配。
5.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,进一步包括消息队列,所述消息队列收集来自所述第一 POP和所述第二 POP的传递统计量以产生流,所述流影响所述交换结构如何在所述多个POP之间分配请求。
6.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,进一步包括消息队列,所述消息队列收集来自所述第一 POP和/或所述第二 POP的至少一个与未在所述CDN的控制下或未在所述CDN的域内的第三方的传递统计量以产生传递统计量的流,所述流影响所述交换结构如何在所述多个POP之间分配请求。
7.根据权利要求I所述的用于使用多个POP利用因特网来传递其他方的内容的CDN,进一步包括处理用户,所述处理用户接收在所述CDN之内和之外收集的信息,以影响所述交换结构如何向POP分配请求。
8.一种用于在多个POP之间分配在⑶N中的传递资源的方法,所述方法包括 接收用于向第一 POP处的终端使用者传递内容对象的请求,其中 所述第一 POP包括多个第一边缘服务器, 所述多个POP包括所述第一 POP和第二 P0P,以及 所述第一 POP在地理上远离所述第二 POP ; 确定所述第二 POP可能与所述第一 POP相比而言向所述终端使用者提供所述内容对象的改善的传递,其中所述第二 POP包括多个第二边缘服务器,以及 使用同一 IP地址从因特网访问所述第一 POP和所述第二 POP ;以及 向所述多个第二边缘服务器之一分配所述请求。
9.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,进一步包括处理在所述CDN之内和之外收集的信息,以影响所述确定。
10.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,其中所述分配所述请求包括向终端使用者系统发出重定向,以向所述多个第二边缘服务器之一分配所述请求。
11.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,其中所述确定考虑所述请求的始发者与所述多个POP的网络接近度。
12.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,进一步包括 将来自所述第一 POP的第一传递结果和来自所述第二 POP的第二传递结果收集为流;以及 将所述流耦合到路由结构,所述路由结构在所述多个POP之间分配所述请求。
13.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,其中所述第一和第二 POP根据任播路由方案共享同一 IP地址。
14.根据权利要求8所述的用于在多个POP之间分配在CDN中的传递资源的方法,进一步包括 收集来自所述第一 POP和所述第二 POP的传递统计量,以产生流;以及 处理所述流以在所述多个POP之间分配请求。
15.一种机器可读介质,具有机器可执行指令,所述机器可执行指令被配置来执行权利要求8的用于在多个POP之间分配在CDN中的传递资源的机器可实现方法。
16.一种用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法,所述方法包括 接收用于向第一 POP处的终端使用者传递内容对象的请求,其中所述多个POP包括所述第一 POP和第二 POP ; 确定所述第二 POP可能与所述第一 POP相比较而言向所述终端使用者提供所述内容对象的改善的传递,其中 所述多个POP包括所述第一 POP和所述第二 P0P, 第一和第二 POP共享同一 IP地址, 所述第一 POP在地理上远离所述第二 P0P,以及 使用同一 IP地址从因特网访问所述第一 POP和所述第二 POP ;以及 向所述第二 POP重新分配向所述终端使用者传递所述内容对象的请求。
17.根据权利要求16所述的用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法,进一步包括处理在所述分布式传递网络之内和之外收集的信息,以影响所述确定。
18.根据权利要求16所述的用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法,其中所述确定考虑所述请求的始发者与所述多个POP的网络接近度。
19.根据权利要求16所述的用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法,进一步包括 将来自所述第一 POP的第一传递结果和来自所述第二 POP的第二传递结果收集为流;以及 将所述流耦合到路由结构,所述路由结构在所述多个POP之间分配所述请求。
20.根据权利要求16所述的用于在使用任播来帮助分配内容请求的、具有多个POP的分布式传递网络中分配传递资源的方法,进一步包括 收集来自所述第一 POP和所述第二 POP的传递统计量,以产生流;以及 处理所述流以在所述多个POP之间分配请求。
全文摘要
公开了用于收集分布式信息以改善使用任播来在多个在地理上远离的存在点(POP)之间分配传递的路由的系统和方法。POP共享同一因特网协议(IP)地址。根据任播解析,因特网有助于初始向POP分配内容请求。从多个POP的传递和可能的其他来源收集传递统计量。当确定任播找到错误的POP时,向另一个POP重新分配该内容请求。
文档编号H04L12/58GK102640467SQ201080054413
公开日2012年8月15日 申请日期2010年10月1日 优先权日2009年10月2日
发明者内森·F·拉奇博尔斯基, 布赖恩·D·布莱克, 怀利·斯旺森, 科林·雷泽, 艾伯特·P·托比, 雅各布·S·罗厄斯马 申请人:杰出网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1