Connect public, paid and private patent data with Google Patents Public Datasets

动态缓存选择方法和系统

Info

Publication number
CN102640472A
CN102640472A CN 200980162918 CN200980162918A CN102640472A CN 102640472 A CN102640472 A CN 102640472A CN 200980162918 CN200980162918 CN 200980162918 CN 200980162918 A CN200980162918 A CN 200980162918A CN 102640472 A CN102640472 A CN 102640472A
Authority
CN
Grant status
Application
Patent type
Prior art keywords
resource
cost
caches
cache
total
Prior art date
Application number
CN 200980162918
Other languages
English (en)
Other versions
CN102640472B (zh )
Inventor
A.约翰逊
A.达莫拉
H.普塔拉特
S.黑尔奎斯特
Original Assignee
瑞典爱立信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • H04L67/1025Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing dynamic adaptation of the criteria on which the server selection is based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Minimizing delay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • H04L67/1004Server selection in load balancing
    • H04L67/101Server selection in load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1097Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for distributed storage of data in a network, e.g. network file system [NFS], transport mechanisms for storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2842Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/2852Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for storing data temporarily at an intermediate stage, e.g. caching involving policies or rules for updating, deleting or replacing the stored data based on network characteristics

Abstract

用于选择在通信网络[80]中连接的多个缓存[14]可用的资源[20]的节点、计算机软件和方法。该方法包括从用户[18]接收对所述资源[20]的请求;标识所述多个缓存[14]中存储所述资源[20]的一个或多个缓存[14a、14b、14c];确定所述用户[18]与存储所述资源[20]的所述一个或多个缓存[14]中的每个缓存[14a、14b、14c]之间的路径所关联的总成本,所述总成本包括反映所述通信网络[80]的拓扑的静态成本[Cf]和指示所述通信网络[80]的变化状况的动态成本[Δ];以及基于一个缓存[14a]的最低总成本从存储所述资源[20]的一个或多个缓存[14a、14b、14c]选择所述一个缓存[14a]。

Description

动态缓存选择方法和系统

技术领域

[0001] 本发明一般涉及系统、软件和方法,以及更具体来说涉及用于动态地选择具有期望内容的缓存的机制和技术。

背景技术

[0002] 在过去数年间,社交网络和内容交付网络(content delivery network, Q)N,其在本文中用于涵盖内容交付和内容分发网络二者)的发展是引人注目的。越来越多的人优选经由社交网络来联系同辈或朋友或经由CDN来下载内容。内容类型包括万维网对象、可下载对象(媒体文件、软件、文档)、应用、实时媒体流和因特网交付的其它组件(DNS、路由和数据库查询)。

[0003] 手持装置(大多数为移动电话)的发展进度使得从CDN下载内容的过程成为很多用户的常见任务。但是,正如接下来论述的,存在CDN智能地将数据文件分配到缓存子集的容量的限制。

[0004] CDN是存储数据的副本的、放置在网络中的各种点以便将用于从遍布网络的客户端访问数据的带宽最大化的计算机的系统。客户端访问接近该客户端的数据副本,与所有客户端访问相同中央服务器相反,以便避免接近该服务器的瓶颈。但是,客户端访问“接近”该客户端的数据的概念并不非常有效率,因为CDN的当前实现似乎缺少智能机制来将数据文件分配到缓存的子集。现有CDN所使用的ー个原理是只能从客户端直接附接到的边缘节点中的缓存提取数据文件。如果客户端需求的数据文件未存储在该边缘节点中,则CDN首先需要将期望的数据文件缓存在那里。

[0005] 为了更好地理解传统⑶N网络,图I示出包括多个节点12和14的真实世界网络10的简化示例。最下一行的圆表示边缘节点14,而其余的圆表示中间节点12。假定每个最终用户计算机(客户端)可以连接到仅ー个边缘节点14。由图I中的从客户端的计算机或移动装置18到对应边缘节点14的虚线来指示这种连接16。还假定仅将内容或数据文件缓存在边缘节点14上。在此特殊示例中,虚线22指示将ー个特定数据文件20存储在三个缓存14a、14b和14c中。注意,虚线22不表示通信链路。

[0006] 网络10中的中间节点12将全世界的边缘节点14彼此连接。节点12和14之间的线是这些节点之间的真实链路。在实践中,所有节点12和14可以是路由器。真实节点12和14之间的每个链路24与由字母“c”指示的通信成本关联。两个边缘节点14之间的通信路径可以取网络10中的不同途径,如图I中所示。

[0007] 因此,当用户18向用户18连接到的边缘节点14d请求数据文件20吋,假定节点14d没有该数据文件,则边缘节点14d需要标识哪个其它节点具有该数据文件,以及哪个节点最接近。现有CDN网络可以将与链路24关联的静态成本納入考虑。但是,在网络的状况中的任何变化未在现有静态成本中反映,因为此成本不会变化,并且因此,现有CDN网络缺乏此信息并且无法精确地描述实况网络。

[0008] 因此,需要找到ー种方法将请求的数据本地化到存储该数据文件的副本的“最接近”缓存。在此情况中,最接近意味着该缓存节点至客户端连接到的边缘节点具有最小成本的路径。现有CDN中所没有的另一个特征是在给定网络中有限存储量的情况下且为了优化网络资源,能够决定将哪个数据文件存储在哪些边缘节点上的智能机制。 [0009] 现有CDN的另一个问题在于,虽然有若干个主动端到端探测方法(用于表征网络链路或路径的能力的通用技术),并且新方法正在持续地开发和精化,但是从此类测量获益的应用经常要求比仅仅端到端估计更多的知识。另一个问题是,对于如何维护和汇总来自若干源的测量数据,则没有明确的协议。例如,CDN实现常常依赖于一些现有方法以推断用于服务内容请求的“最佳”源节点。为了 CDN能够基于网络测量进行智能内容迁移,需要在所有节点之间保持相干测量统计的系统。

[0010] 因此,会期望提供避免前述问题和缺点的装置、系统和方法。

发明内容

[0011] 期望将资产(例如,内容)从对于用户和/或运营商最适合的位置提供到用户。适合的位置可以是对网络的运营商最便宜的位置。以此方式,从对网络的运营商最便宜的位置接收内容释放了网络中的带宽和/或平衡网络的路径。还可以通过优化如流传输媒体的某些应用所要求的路径特征来确定适合的位置。

[0012] 根据一示范实施例,有一种方法用于选择在通信网络中连接的多个缓存可用的资源。该方法包括从用户接收对资源的请求;标识多个缓存中存储该资源的一个或多个缓存;确定用户与存储该资源的一个或多个缓存中的每个缓存之间的路径所关联的总成本,该总成本包括反映通信网络的拓扑的静态成本和指示通信网络的变化状况的动态成本;以及基于一个缓存的最低总成本从存储该资源的一个或多个缓存选择该一个缓存。

[0013] 根据另一个示范实施例,有一种节点用于选择在通信网络中连接的多个缓存可用的资源。该节点包括配置成连接到通信网络的其它节点和/或多个缓存的接口 ;以及连接到该接口的处理器。该处理器配置成从用户接收对资源的请求;标识多个缓存中存储该资源的一个或多个缓存;确定用户与存储该资源的一个或多个缓存中的每个缓存之间的路径所关联的总成本,该总成本包括反映通信网络的拓扑的静态成本和指示通信网络的变化状况的动态成本;以及基于一个缓存的最低总成本从存储该资源的一个或多个缓存选择该一个缓存。

[0014] 根据又一个示范实施例,有一种包括计算机可运行指令的计算机可读介质,所述指令在被运行时,实现一种用于选择在通信网络中连接的多个缓存可用的资源的方法。该方法包括从用户接收对资源的请求;标识多个缓存中存储该资源的一个或多个缓存;确定用户与存储该资源的一个或多个缓存中的每个缓存之间的路径所关联的总成本,该总成本包括反映通信网络的拓扑的静态成本和指示通信网络的变化状况的动态成本;以及基于一个缓存的最低总成本从存储该资源的一个或多个缓存选择该一个缓存。

[0015]目的在于克服前文中论述的一些缺点,以及提供能够发现对于用户更适合位置的缓存的节点。一个或多个独立权利要求有利地提供最佳缓存以响应用户的请求。

附图说明

[0016] 并入本说明书中并构成其一部分的附图示出一个或多个实施例,并且连同描述来说明这些实施例。在附图中:

图I是传统CDN的示意图;

图2是根据一示范实施例的状态矩阵的说明; 图3是发送方和接收方之间的路径的示意图;

图4是彼此连接且具有不同级别的可用带宽的三个不同链路的示意图;

图5是示出网络的节点之间的主动探测方法的示意图;

图6是示出由根据一示范实施例的状态矩阵收集到什么信息的示意图;

图7是根据一示范实施例的状态矩阵的元素的说明;

图8是对应于真实CDN网络的虚拟网络的示意图;

图9示出根据一示范实施例的与可用带宽估计关联的动态成本;

图10示出根据一示范实施例的与链路容量关联的指派成本;

图11示出根据一示范实施例的静态成本与动态成本之间的成本差;

图12示出根据一示范实施例的与成本差关联的可信度函数;

图13示出根据一示范实施例的CDN网络执行的用于向用户提供期望资源的各种步

骤;

图14示出根据一示范实施例的收集有关CDN网络的数据的决策引擎;

图15是示出根据一示范实施例的用于选择期望资源的方法的流程图;以及 图16是配置成实现图14和/或图15中所示的步骤的节点的示意图。

具体实施方式

[0017] 示范实施例的下文描述涉及附图。不同附图中的相同引用号标识相同或相似的单元。下文详细描述并不限制本发明。而是,本发明的范围由所附权利要求书限定。为了简明,下文实施例是关于CDN网络的术语和结构来论述的。但是,接下来要论述的实施例不限于这些网络,而是可以应用于其它现有网络。

[0018] 本说明书通篇对“一个实施例”或“一实施例”的引述意味着结合一实施例描述的特殊特性、结构或特征被包括在本发明的至少一个实施例中。因此,本说明书通篇各种位置中出现的短语“在一个实施例中”或“在一实施例中”不一定全部指相同的实施例。另外,可以任何适合的方式在一个或多个实施例中进行组合特殊特性、结构或特征。

[0019] 根据一示范实施例,一种方法和网络配置成使用捕获网络的一个或多个属性的成本函数。该成本函数包括从主动网络测量推导的成本与网络的真实和/或虚拟节点拓扑的组合。该主动网络测量方法(例如,参见2009年的爱思唯尔计算机网络(EI seVier ComputerNetworks,COMNET)53卷15期2617-2645页的Bergfeldt等人的使用过滤和变化检测的实时可用带宽估计,,其全部内容通过引用并入本文)将测量数据存储在稍后定义的状态矩阵中。主动网络测量将网络的状态纳入考虑。基于测量,将动态成本与边缘节点之间的路径关联,而真实和/或虚拟节点拓扑产生静态成本。可以由运营商修改静态成本,正如接下来论述的。由决策引擎将每个成本组合以形成总成本。因此,在CDN中基于包括动态成本和静态成本的总成本来确定由客户端提取的内容或缓存之间的内容迁移。该决策引擎可以基于状态矩阵、拓扑和可信度函数来执行成本估计,正如接下来论述的。

[0020] 根据另一个示范实施例,引入状态矩阵,并且状态矩阵表示分布式系统的网络测量数据并将其汇总。此信息能够用于选择要在CDN中的两个通信节点之间(例如客户端与缓存节点之间)使用的适合的路径或ー组路径。

[0021] 在论述如何计算CDN中的边缘节点之间的各种路径的总成本并使其为时间相关的之前,本发明示范实施例论述用于生成状态矩阵的各种方式。状态矩阵可以定义成包括从ー组节点(N1, N2, ...,Nn}之间的主动探测或被动监视获得的性能參数估计。在表示多于ー个性能參数的情况中,可 能并行地使用若干状态矩阵,每个性能參数对应于ー个状态矩阵,或单个状态矩阵中每对节点对应于若干元素。性能參数的示例是端到端可用容量、往返时间(RTT)、抖动、IP层拓扑、路径可用容量和丢失(loss)。图2示出状态矩阵的示例,其中元素Xu描述在两个节点Ni和%之间观察到的特定性能參数方面的路径特征。注意,路径Ni至Nj可以具有与反向路径Nj至Ni相比不同的特性。

[0022] 根据ー示范实施例,状态矩阵中的姆个元素Xij包括至少如下參数:性能參数估计、指示何时进行测量的时间戳以及指示何时测量估计到期的超时阈值。可选地,该状态估计可以包括估计的方差。可以使用估计的方差为状态矩阵的用户提供有关其可信度的信息。如稍后将论述的,可以使用其它函数来提供此信息。

[0023] 能够采用各种方式来填充状态矩阵中的元素。下文描述三个示例。但是,正如本领域技术人员将认识到的,还存在其它可能性。第一和第二示例是基于主动探测,并且可以提供如RTT、抖动、延迟、路径可用容量和丢失的性能參数。第三示例是基于被动监视,并且可以提供例如链路负载、队列长度和丢弃分组的其它性能參数。

[0024] 接下来要论述的示例可以使用本领域中已知的技木。为了完整性,现在简要地论述这些技木。主动探测是通过从发送方向接收方发送分组来表征网络链路或路径的ー种通用技木。图3中示出了此方法。更确切地来说,发送方30经由网络32向接收方34发送分组。发送方30将分组间间隔36随机化。接收方34计算新的分组间间隔38,其然后被分析以确定期望的性能參数。能够用此方法测量的性能參数例如是抖动、分组丢失、往返时间和路径可用带宽。測量这类性能參数的传统工具例如是各种版本的试通程序(ping)。測量可用容量是更为复杂的问题。一个这种測量技术是实时可用带宽(BART),并且下ー个段落中对此进行描述。

[0025] 作为本领域中已知的技木,BART是ー种用于估计分组交换网络路径上实时的路径可用容量和其它容量有关參数的方法。图4中示出性能參数容量、利用和可用容量的概念,其示出作为网络路径的一部分的三个链路40、42和44。每个链路具有定义能够发送IP业务的最大速率的标称容量。在任何给定时间点,可以按小于其最大容量来利用链路。这由与每个链路关联的阴影区域来举例说明。对每个链路将可用带宽计算为标称链路带宽与估计的链路利用之差。

[0026] ー个容量有关性能參数是端到端可用容量。此參数定义为一组连续链路的最小链路容量。在图4中,链路40是最小端到端可用容量。BART方法依赖于在网络路径上主动发送探测业务以便确定在哪个探测速率路径显示拥塞的征兆。此速率定义可用容量,即,未被IP业务利用的容量的部分。如图3中所不,BART发送方30正在按随机化的分组间间隔36向接收方34传送IP分组。该间隔受共享网络的其它IP业务的影响。接收方36对每个入局IP分组标记时间戳,并且计算新的分组间间隔38。可以通过卡尔曼过滤器(Kalmanfilter)分析在发送方30和接收方34的分组间间隔,这是一种实时地跟踪不可直接观察的特性的统计方法,并且从该分析的输出是可用容量。

[0027] 可以由上文提到的第一示例,即自动测量系统使用上文论述的主动探测。这种系统的特性是使得给定某个时间段两个节点以某个概率来在彼此之间执行测量。该测量系统在参与节点上作为后台进程来运行测量。如图5中所示,在给定时间点,节点B触发与节点D的测量,而同时节点E触发与节点A的测量。可以触发网络的所有节点执行这类测量,并且最终以每个节点的数据填充状态矩阵。

[0028] 仍基于主动监视的填充状态矩阵的第二示例,使用应用数据作为测量探测。例如,在其中缓存彼此往返地迁移数据的CDN系统中两个节点交换数据时,这些节点能够在应用数据分组中捎带探测信息。当这种方法要求在探测业务方面的更多开销时,该方法可以用于估计端到端可用容量。例如,试通程序和RTT无需再用应用数据。

[0029] 填充状态矩阵的第三示例是基于被动监视,而非主动监视。此方法使用路由器、缓存和其它节点中的业务的被动观察以便确定负载、丢失和相似参数。此方法需要对中间网络节点的访问权以及用于检索数据的标准化协议(例如,简单网络管理协议(SNMP))。因此,这些网络单元需要驻留在运营商自己的域内或运营商需要对所涉及的网络单元的访问权。

[0030] 所有这三个示例以及关联的方法均可以用于填充状态矩阵。根据图6中所示的一示范实施例,状态矩阵60使用(i)自动测量方法62来接收第一组参数,例如RTT、抖动、延迟、丢失、路径可用带宽等(ii)应用数据测量探测方法64以用于确定第二组参数,例如,RTT、抖动、延迟、丢失、路径可用带宽等以及(iii)被动监视方法66以用于确定第三组参数,例如,链路负载、丢弃分组等。

[0031] 根据一示范实施例,可以使用方法62、64和66中的仅一种方法或其组合来填充状态矩阵60。但是,因为来自这些方法的测量可能不是同时进行的,即这些测量可能具有宽时间段内的不同时间戳,所以执行测量的时间和使用测量的时间能够在时间窗口内从数秒改变到数分钟或数小时。还可能的情况是对于特殊路径未实行测量。因此,根据一示范实施例,引入可靠性函数以提供在状态矩阵中考虑测量的时间相关性的方式。换言之,引入可信度函数,其配置成滤出基于时间的相关性。

[0032] 此函数可以基于估计的方差,并且确保性能参数估计的关联性随着时间降低。降低的速率取决于感兴趣的性能参数。例如,RTT估计在时间上比可用容量的估计更稳定。可信度可以由函数f(P,T0, T)表示,其中T是当前时间,Ttl是超时时间,以及p是特定性能参数类型,例如RTT或可用带宽。函数f的特定定义可以取决于应用而改变,正如接下来将论述的。

[0033] 图7中更详细地示出状态矩阵60的元素Xijt5每个元素可以包括给定参数的估计/测量值70、与值70关联且指示测量或估计该值的时间的时间戳72、与估计值/测量值70关联的超时时间To 74以及估计/测量值70的方差76。该方差能够是用于指定图12中的可信度函数的附加参数。如果方差高,则静态成本线上方或下方的曲线更快速地向此线收敛。例如,高方差可以由静态线上方的曲线表示,而低方差能够由静态线下方的曲线来举例 说明。

[0034] 在论述如何将成本函数应用于测量的参数以及该新的智能网络如何能够确定用户所要求内容的最佳缓存之前,论述再一个组成。这涉及上文引入的静态成本。为了确定网络节点之间的链路的静态成本,可以使用分级拓扑逼近技术。分级拓扑逼近技术将图I中所示的真实网络转换成图8中所示的在任何边缘节点对之间具有相同路径成本的分级网络。分级网络的生成在本领域中是已知的,并且可以用两个步骤来实现。

[0035] 第一歩骤是创建分级虚拟拓扑,以及第ニ步骤是以将真实网络与虚拟网络之间的路径成本上的差减到最小的方式为虚拟拓扑中的每个链路生成成本。因为图8的虚拟网络是分级的,所以能够将其建模成类似树形。另外,虚拟网络中任何边缘节点对之间正好存在ー个路径。这两个特征使得使用较不复杂的算法来计算边缘节点之间的静态成本成为可倉^:。

[0036] 在图8中所示的虚拟网络80中,边缘节点14保持与图I的真实网络10中相同,而中间节点82不具有与真实网络10的中间节点12的直接对应性。创建虚拟网络80的特殊方式取决于真实网络、应用和可用技术,如本领域技术人员会认识到的。但是,真实网络由路由器孤岛组成,且ー个孤岛中的路由器较其它孤岛中的路由器更加彼此靠近。这类孤岛可以对应于分级拓扑中的中间节点。更好地理解虚拟网络的比拟是想象真实社区和街道/道路,以及ー个级别上的虚拟节点可以对应于真实城市,下一更高级别上的虚拟节点可以对应于真实地区,并且再下一更高级别上的虚拟节点可以对应于国家的虚拟模型。生成分级网络的此第一歩骤可以由网络操作员手动实现,或通过參照包括所需信息的数据库的计算程序来实现。

[0037] 在第二步骤中,可以使用优化程序来以将分级与真实网络之间的边缘到边缘路径成本上的差最小化的方式对虚拟网络中的链路指派成本。所使用的特殊优化方法取决于真实网络和与运营商有关的其它考虑,正如本领域中已知的各种技木。ー种方式是通过梯度搜索(gradient search)查找误差函数的最小值。该误差函数能够定义为所有路径,即所有可能的边缘节点对之间的所有路径的路径成本上的差的平方和。一旦定义了分级树,应用哪个特殊的树算法就再次是基于问题的更细分细节进行的挑选和审慎选择的问题。

[0038] 系统的分级树表示使得CDN的运营商/提供商能够指派系统的节点之间的静态成本。这些静态成本/权重被⑶N用在决定提取对象/资产的最佳缓存中。这些静态成本是数值,并且可以基于底层链路的一些特征在逻辑上推导。例如,称为开放最短路径优先(OSPF)的技术基于链路的带宽来确定静态成本。通过将參考带宽(缺省为100 Mbps)除以接ロ带宽来计算OSPF中的链路的静态成本。因此,至目的地的总静态成本是至目的地的路径中的个体链路的静态成本之和。

[0039] 因为静态成本是逻辑值,所以通过有意向地修改链路的静态成本而不考虑链路的底层特征,运营商可以影响使用该链路的方式。此能力为运营商运作网络提供更多灵活性。因此,能够将基于底层物理链路的固定特征进行静态成本的初始指派视为指派的成本。如果静态成本是基于运营商内部策略,则可以将此静态成本视为基于策略的成本。基于策略的静态成本也是指派的静态成本。但是,静态成本未将网络可能受到的实况修改纳入考虑,并且因此在决定使用哪个缓存来响应用户的请求时不是精确的參数。

[0040] 根据ー示范实施例,引入对例如由于业务导致的网络的改变敏感的动态成本。可以将动态成本与静态成本组合,从而得到上文提到的新成本函数。可以将总成本定义为取决于静态成本和动态成本。可以通过引入上文论述的可信度函数f来使总成本C为时间相关的。在ー个特殊实施例中,由(i)静态成本以及(ii)动态成本与可信度函数之间的积的和来给出时间相关的总成本C(t)。接下来更详细地论述这些量。[0041] 正如已经论述的,状态矩阵可以存储与关联链路的成本不同的一个或多个测量。因此,可以使用归一化函数将状态矩阵的元素Xij转换成动态成本。换言之,归一化函数将测量的性能参数映射到可以添加到静态成本的动态成本。例如,图9示出链路的可用容量及其关联的动态成本。通过主动测量方法(例如BART)来测量可用容量。生成第二列中的动态成本的归一化函数可以具有各种形式,其取决于应用。图9中所示的动态成本对应于单个测量参数。如果使用多个参数,则可以确定多个动态成本。当链路的性能参数变化时,动态成本变化,并且出于此原因,动态成本更好地反映真实网络的成本。图10在第一列中示出实际容量以及在第二列中示出与此链路容量关联/指派的静态定价。可以使用其它归一化函数。[0042] 基于静态成本和动态成本,可以计算两个成本之差A,如图11中第5列中所示。更确切地来说,对于相同的链路,将差A计算为从固定网络拓扑特征获得的链路容量与从主动测量获得的实际带宽之间的成本上的差。成本差△可以是负的或正的,如图11中所示。因此,成本差A取决于静态(指派的成本)与动态成本二者。

[0043] 该测量系统和状态矩阵提供在操作中时网络的实时性能参数。基于上文论述的归一化函数,成本差△实时地标识节点之间的实际逻辑成本。这使得CDN能够基于网络的实际状态提供更好的响应。

[0044] 在理想状况下,无论何时CDN逻辑需要节点之间的更新读取,测量系统就能够即时地提供该更新读取。但是,在真实世界中,测量花费时间,并且CDN系统可能不等待直到最新结果可用。因此,CDN逻辑需要依赖于上次或最近进行的测量。目前时间与进行测量的时间之间的时间差可能改变,从数秒到很长时间或完全无时间差。

[0045] 因此,根据一示范实施例,引入实现差A的可信度或可靠性的函数,以便提供在CDN中使用时将测量的信息的时间相关性纳入考虑的方式。上文已论述这种函数f。此函数f提供使得实际逻辑成本为时间相关的方式。现在更详细地论述此概念。

[0046] 此函数使用来自网络拓扑的指派成本(6>)作为基线,如图12中所示。如果没有测量信息可用,则基线用作逻辑固定成本。Ti是当前时间(即时时间)以及Ttl (超时时间)是自此后测量值太旧而无法使用的时间。图12提供可信度函数f(T,Ttl)的示例。按运营商认为适合的以及正如本领域技术人员会认识到的,可以使用其它函数。可信度函数的形状可以取决于估计方差或取决于所使用的特定性能参数的固有特性。

[0047] 可信度函数f随时间推移使差A的值减少。如果上次测量刚好在当前时间Ti之前进行,则计算的差△能够从0改变至无限大,如图12中所示。随着测量时间与目前时间之间的间隙变得越来越大,由于测量的可信度减少,所以△的上和下可能值减小。在时间Ttl之后,A不再适用,并且总成本与指派成本Cf相同。A对总成本的影响如何改变的说明仅是一个示例,并且实际实现取决于网络。总成本的另一个示例可以包括(i)静态/指派成本乘以(I - f)与(ii)动态成本乘以f之和,其中可信度函数f在0与I之间改变。在此情况中,如果f = 0,德尔塔(delta)不可信,则总成本等于指派成本,而如果f = I,德尔塔充分可信,则总成本等于动态成本。

[0048] 因此,真实网络10的两个边缘节点i和j之间的总成本Cij 一般可以基于上文定义的个体量来表达,并且具有如下表达式:其中A是指派成本,△是通过归ー化函数从状态矩阵获得的动态成本,以及f是可信度函数。运算符(g)指示可以使用的各种数学运算。上文已论述Cij的特定示例。但是,正如本领域技术人员会认识到的,可以使用其它函数。

[0049] 根据ー示范实施例,关于图13论述用于选择资源的过程。在图13中,用户130在步骤150中向⑶N 132请求资产XtXDN 132可以包括重定向引擎134、成本估计器单元136、虚拟拓扑单元138、状态矩阵単元140等。可以用软件、硬件或其组合来实现这些单元。在一个应用中,可以在单个节点中的处理器中实现所有这些单元。在另ー个应用中,这些单元可以分布在CDN的各种节点,各种处理器中。

[0050] 重定向引擎134在步骤152中确定⑶N 132中是否存在资产X,并且确定是否多个缓存中存在该资产。在步骤154中,重定向引擎134查询成本估计器136对于用户130哪个是最佳缓存。成本估计器136在步骤156中构建至具有资产X的缓存的路径,并将此信息提供到虚拟拓扑单元138。虚拟拓扑单元138将真实网络转换成分级虚拟网络,正如上文论述的。注意,此步骤是可选的,并且CDN网络可以无需虚拟拓扑单元138而执行最佳缓存的评估。在步骤160中将来自虚拟拓扑单元138的信息传递到状态矩阵单元140,状态矩 阵单元140还从网络的测量系统接收測量数据。基于测量数据和虚拟网络,状态矩阵単元140在步骤162中更新矩阵值,并在步骤164中将此数据提供到成本估计器单元136。成本估计器单元136还在步骤166中接收虚拟网络数据,并在步骤168中计算来自用户130连接到的边缘节点和具有资产X的边缘节点的每个路径的总成本。

[0051] 基于总成本对具有资产X的边缘节点评级,并在步骤170中将最佳缓存信息(例如,具有最低成本的缓存)提供到重定向引擎134。基于此数据,在步骤172中,重定向引擎134响应用户130的查询向该用户提供最佳缓存的地址。用户130然后从最佳边缘节点提取资产X或由CDN 132命令用户130连接到的边缘节点从最佳边缘节点提取资产X并将该资产X提供到用户130。

[0052] 根据图14中所示的一示范实施例,可以在⑶N 132中实现决策引擎142以便基于

(i)动态成本144和(ii)静态(指派)成本146来决定内容提取和各种缓存之间的资产迁移。

[0053] 根据图15中所示的一示范实施例,有ー种方法用于选择在通信网络中连接的多个缓存可用的资源。该方法包括从用户接收对资源的请求的步骤1500、标识多个缓存中存储该资源的一个或多个缓存的步骤1502、确定用户与存储该资源的一个或多个缓存中的每个缓存之间的路径所关联的成本的步骤1504(其中该成本包括反映通信网络的拓扑的静态成本和指示通信网络的变化状况的动态成本)、以及基于至ー个缓存的最低成本从存储该资源的一个或多个缓存选择该一个缓存的步骤1506。

[0054] 较之如仅使用指派成本的传统方法的情况,一个或多个论述的示范实施例可以为内容迁移和检索提供精确且动态的成本估计。再有,公开ー种确定网络的测量信息的可信度的新方法、一种用于通过将基于例如时间的可能改变纳入考虑来表示和汇总分布式系统中的网络测量数据的新方法。该新方法提供网络状况的动态画面以便在更新的网络状态信息对于整体性能有益的如CDN的数据交换网络中使用。一个或多个实施例能够用作用于将动态网络状况纳入考虑来实行运营商策略的输入,并且可以使得如BART的測量工具能够被利用来为改善分布式系统中的性能提供建议。

[0055] 图16中示出根据示范实施例的能够实行操作的代表性结构的示例。可以使用硬件、固件、软件或其组合来执行本文描述的各种步骤和操作。适于执行示范实施例中描述的活动的示范装置1600可以包括服务器1601,服务器1601可以包括图13中所示的単元134、136,138和140中的ー个或多个单元。这种服务器1601可以包括耦合到随机存取存储器(RAM) 1604和只读存储器(ROM) 1606的中央处理器(CPU) 1602。ROM 1606还可以是用于存储程序的其它类型的存储媒体,如可编程ROM (PR0 M)、可擦PROM (EPROM)等。处理器1602可以通过输入/输出(I/O)电路系统1608和总线连接(bussing) 1610与其它内部和外部组件通信,以提供控制信号以及诸如此类。处理器1602按软件和/或固件指令所指示的,实行如本领域中已知的各种各样的功能。

[0056] 服务器1601还可以包括ー个或多个数据存储装置,包括硬盘驱动器和软盘驱动器1612、⑶-ROM驱动器1614和能够读取和/或存储如DVD等的信息的其它硬件。在ー个实施例中,可以将用于实行上文论述的步骤的软件存储和分布在CD-ROM 1616、软磁盘1618或能够便携地存储信息的其它形式的媒体上。这些存储媒体可以插入到如⑶-ROM驱动器1614、盘驱动器1612等的装置中并被其读取。服务器1601可以耦合到显示器1620,显示器1620可以是任何类型的已知显示器或呈示屏幕,如IXD显示器、等离子显示器、阴极射线管(CRT)等。提供一种用户输入接ロ 1622,其包括如鼠标、键盘、麦克风(microphone)、触控板、触摸屏、语音识别系统等的一个或多个用户接ロ机制。

[0057] 服务器1601可以经由网络耦合到其它计算装置,如陆上通信线路(Iandline)和/或无线终端和关联的观看器(watcher)应用。该服务器可以是如全球区域网络(GAN)(例如因特网1628)中的更大网络配置的一部分,其允许最终连接到各种陆上通信线路和/或

移动客户端/观看器装置。

[0058] 公开的示范实施例提供用于确定资源的节点、方法和计算机程序产品。应该理解本文描述不打算限制本发明。相反,示范实施例打算涵盖在所附权利要求书定义的本发明的精神和范围中包括的备选、修改和等效。另外,在示范实施例的详细描述中,阐述了许多特定细节以便提供对要求保护的本发明的全面理解。但是,本领域技术人员会理解,没有这类特定细节仍可以实施各种实施例。

[0059] 正如本领域技术人员还将领会的,可以在计算机程序产品中或作为方法在电信网络、无线通信装置中实施示范实施例。相应地,示范实施例可以采用完全硬件实施例的形式或组合硬件和软件方面的实施例的形式。另外,示范实施例可以采取计算机可读存储介质上存储的计算机程序产品的形式,该计算机可读存储介质具有实施在该介质中的计算机可读指令。可以利用任何适合的计算机可读介质,包括硬盘、⑶-ROM、数字多用光盘(DVD)、光存储装置或如软盘或磁带的磁存储装置。计算机可读媒体的其它非限制性示例包括闪存型存储器或其它已知的存储器。

[0060] 虽然在实施例中以特殊组合描述了本发明示范实施例的特性和単元,但是每个特性或単元能够在没有实施例的其它特性和単元的情况下单独地使用或以具有或不具有本文公开的其它特性和単元的各种组合来使用。本申请中提供的方法或流程图可以在计算机可读存储介质中有形地实施的计算机程序、软件 或固件中实现以由专门编程的计算机或处理器来运行。

Claims (20)

1. 一种用于选择在通信网络[80]中连接的多个缓存[14]可用的资源[20]的方法,所述方法包括: 从用户[18]接收对所述资源[20]的请求; 标识所述多个缓存[14]中存储所述资源[20]的一个或多个缓存[14a、14b、14c]; 确定所述用户[18]与存储所述资源[20]的一个或多个缓存[14]中的每个缓存[14a、14b、14c]之间的路径所关联的总成本,其中所述总成本包括反映所述通信网络[80]的拓扑的静态成本[Cf]和指示所述通信网络[80]的变化状况的动态成本[Λ];以及 基于一个缓存[14a]的最低总成本从存储所述资源[20]的一个或多个缓存[14a、14b、14c]选择所述一个缓存[14a]。
2.如权利要求I所述的方法,还包括: 将所述通信网络的节点之间的真实路径转换成在任何缓存对之间包括单个路径的虚拟模型,其中所述节点将所述多个缓存彼此连接。
3.如权利要求2所述的方法,还包括: 对所述虚拟模型中的每个路径赋予指派成本,其中所述指派成本是运营商定义的量且确定所述静态成本。
4.如权利要求3所述的方法,还包括: 接收表征所述真实路径的性能的参数; 生成表征任何缓存对的状态矩阵;以及 基于所接收的参数来生成所述动态成本。
5.如权利要求4所述的方法,其中所接收的参数包括抖动、分组丢失、往返时间、IP层拓扑、路径可用容量等中的一个或多个。
6.如权利要求4所述的方法,还包括: 通过使用以下中的一个或多个来填充所述状态矩阵的元素:(i)自动测量系统,其中给定某个时间段两个节点以某个概率来在彼此之间执行测量;(ii)作为测量探测的应用数据;以及(iii)所述网络的节点的被动监视。
7.如权利要求6所述的方法,其中所述状态矩阵的元素至少包括所述网络的测量参数、所述测量参数的方差、与进行所述测量的时间关联的时间戳以及指示自此后不能够使用所述测量参数的时间的超时参数。
8.如权利要求4所述的方法,还包括: 计算相同路径的动态成本与静态成本之间的差; 对所计算的差应用可信度函数以使所计算的差为时间相关的并确定所计算的差是否在预定范围内;以及 在成本函数中组合与所接收的参数关联的动态成本和与所述指派成本关联的静态成本以确定所述总成本。
9.如权利要求8所述的方法,还包括: 将所述成本函数计算为(i)所述静态成本与(ii)所计算的差与所述可信度函数的积之间的和。
10.如权利要求9所述的方法,还包括: 选择所述可信度函数以产生仅在零与一之间的数。
11. 一种用于选择在通信网络[80]中连接的多个缓存[14]可用的资源[20]的节点[14、1600],所述节点[14、1600]包括: 接口 [1608],配置成连接到所述通信网络[80]的其它节点[12、14]和/或多个缓存[14];以及 处理器[1602],连接到所述接口 [1608]并配置成: 从用户[18]接收对所述资源[20]的请求, 标识所述多个缓存[14]中存储所述资源[20]的一个或多个缓存[14、14b、14c],确定所述用户[18]与存储所述资源[20]的一个或多个缓存[14]中的每个缓存[14、14b、14c]之间的路径所关联的成本,其中所述成本包括反映所述通信网络[80]的拓扑的静态成本[Cf]和指示所述通信网络[80]的变化状况的动态成本[△],&& 基于一个缓存[14a]的最低成本从存储所述资源[20]的一个或多个缓存[14、14b、14c]选择所述一个缓存[14a]。
12.如权利要求11所述的节点,其中所述处理器还配置成: 将所述通信网络的节点之间的真实路径转换成在任何缓存对之间包括单个路径的虚拟模型,其中所述节点将所述多个缓存彼此连接。
13.如权利要求12所述的节点,其中所述处理器还配置成: 对所述虚拟模型中的每个路径赋予指派成本,其中所述指派成本是运营商定义的量且确定所述静态成本。
14.如权利要求13所述的节点,其中所述处理器还配置成: 接收表征所述真实路径的性能的参数; 生成表征任何缓存对的状态矩阵;以及 基于所接收的参数来生成所述动态成本。
15.如权利要求14所述的节点,其中所接收的参数包括抖动、分组丢失、往返时间、IP层拓扑、路径可用容量等中的一个或多个。
16.如权利要求14所述的节点,其中所述处理器还配置成: 通过使用以下中的一个或多个来填充所述状态矩阵的元素:(i)自动测量系统,其中给定某个时间段两个节点以某个概率来在彼此之间执行测量;(ii)作为测量探测的应用数据;以及(iii)所述网络的节点的被动监视。
17.如权利要求16所述的节点,其中所述状态矩阵的元素至少包括所述网络的测量参数、所述测量参数的方差、与进行所述测量的时间关联的时间戳以及指示自此后不能够使用所述测量参数的时间的超时参数。
18.如权利要求14所述的节点,其中所述处理器还配置成: 计算相同路径的动态成本与静态成本之间的差; 对所计算的差应用可信度函数以使所计算的差为时间相关的,以及确定所计算的差是否在预定范围内;以及 在成本函数中组合与所接收的参数关联的动态成本和与所述指派成本关联的静态成本以确定所述总成本。
19.如权利要求16所述的节点,其中所述处理器还配置成: 将所述成本函数计算为(i)所述静态成本与(ii)所计算的差与所述可信度函数的积之间的和
20. 一种包括计算机可运行指令的计算机可读介质,其中所述指令在被运行时实现用于选择在通信网络[80]中连接的多个缓存[14]可用的资源[20]的方法,所述方法包括:从用户[18]接收对所述资源[20]的请求; 标识所述多个缓存[14]中存储所述资源[20]的一个或多个缓存[14a、14b、14c];确定所述用户[20]与存储所述资源[20]的一个或多个缓存[14]中的每个缓存[14a、14b、14c]之间的路径所关联的成本,其中所述成本包括反映所述通信网络[80]的拓扑的静态成本[Cf]和指示所述通信网络[80]的变化状况的动态成本[Λ];以及 基于一个缓存[14a]的最低成本从存储所述资源[20]的一个或多个缓存[14a、14b、14c]选择所述一个缓存[14a]。
CN 200980162918 2009-12-14 2009-12-14 动态缓存选择方法和系统 CN102640472B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2009/007753 WO2011073707A1 (en) 2009-12-14 2009-12-14 Dynamic cache selection method and system

Publications (2)

Publication Number Publication Date
CN102640472A true true CN102640472A (zh) 2012-08-15
CN102640472B CN102640472B (zh) 2016-09-14

Family

ID=42734584

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200980162918 CN102640472B (zh) 2009-12-14 2009-12-14 动态缓存选择方法和系统

Country Status (4)

Country Link
US (2) US9049199B2 (zh)
CN (1) CN102640472B (zh)
EP (1) EP2514171A1 (zh)
WO (1) WO2011073707A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105210335A (zh) * 2013-03-15 2015-12-30 微软技术许可有限责任公司 用于数据分发的网络路由修改

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874845B2 (en) * 2012-04-10 2014-10-28 Cisco Technology, Inc. Cache storage optimization in a cache network
FR2995487A1 (fr) * 2012-09-11 2014-03-14 France Telecom Technique de traitement d'une requete de distribution de contenu
WO2015001392A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Limited Methods and systems for sending and receiving information data
US20150271072A1 (en) * 2014-03-24 2015-09-24 Cisco Technology, Inc. Method and apparatus for rate controlled content streaming from cache
GB201409853D0 (en) * 2014-06-03 2014-07-16 Arm Ip Ltd Methods of accessing and providing access to a remote resource from a data processing device
CN105227535A (zh) * 2014-07-01 2016-01-06 思科技术公司 Cdn缩小
US20160204916A1 (en) * 2015-01-08 2016-07-14 Ngoc-Dung DAO System and method for joint optimization of source selection and traffic engineering
US20160283480A1 (en) * 2015-03-26 2016-09-29 Linkedin Corporation Assigning content objects to delivery networks
US20160366055A1 (en) * 2015-06-09 2016-12-15 Fastly, Inc. Mobile conditions aware content delivery network
CN105978807A (zh) * 2016-04-19 2016-09-28 乐视控股(北京)有限公司 节点间距离的度量方法及系统
WO2017188871A1 (en) * 2016-04-28 2017-11-02 Telefonaktiebolaget Lm Ericsson (Publ) Server, client device and methods therein for handling cached content resources

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754543A (en) * 1996-07-03 1998-05-19 Alcatel Data Networks, Inc. Connectivity matrix-based multi-cost routing
US6052718A (en) 1997-01-07 2000-04-18 Sightpath, Inc Replica routing
US6034946A (en) * 1997-04-15 2000-03-07 International Business Machines Corporation Selection of routing paths in data communications networks to satisfy multiple requirements
US7565450B2 (en) * 2000-03-16 2009-07-21 Adara Networks Inc. System and method for using a mapping between client addresses and addresses of caches to support content delivery
US6981055B1 (en) * 2000-08-22 2005-12-27 Internap Network Services Corporation Method and system for optimizing routing through multiple available internet route providers
WO2002025463A1 (en) 2000-09-19 2002-03-28 Conxion Corporation Method and apparatus for dynamic determination of optimum connection of a client to content servers
US7355977B1 (en) * 2002-08-16 2008-04-08 F5 Networks, Inc. Method and system for a weighted allocation table
JPWO2004073269A1 (ja) * 2003-02-13 2006-06-01 富士通株式会社 伝送システム,配信経路制御装置,負荷情報収集装置および配信経路制御方法
US7215928B2 (en) * 2003-05-02 2007-05-08 Nortel Networks Limited Path selection in wireless networks
US7779065B2 (en) * 2003-09-18 2010-08-17 Sanyogita Gupta Dynamic cost network routing
US7756021B2 (en) * 2006-07-26 2010-07-13 Mitsubishi Electric Research Laboratories, Inc. Method for finding minimal cost paths under uncertainty
FR2908575B1 (fr) * 2006-11-09 2009-03-20 At & T Corp Methode et appareil pour fournir un equilibrage de charge base sur le flux
GB0819529D0 (en) * 2007-12-26 2008-12-03 Contendo Inc CDN balancing and sharing platform
US8949533B2 (en) 2010-02-05 2015-02-03 Telefonaktiebolaget L M Ericsson (Publ) Method and node entity for enhancing content delivery network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105210335A (zh) * 2013-03-15 2015-12-30 微软技术许可有限责任公司 用于数据分发的网络路由修改

Also Published As

Publication number Publication date Type
US20150215396A1 (en) 2015-07-30 application
CN102640472B (zh) 2016-09-14 grant
US9049199B2 (en) 2015-06-02 grant
US20120290677A1 (en) 2012-11-15 application
US9462051B2 (en) 2016-10-04 grant
EP2514171A1 (en) 2012-10-24 application
WO2011073707A1 (en) 2011-06-23 application

Similar Documents

Publication Publication Date Title
Madhyastha et al. iPlane: An information plane for distributed services
US9021127B2 (en) Updating routing information based on client location
US7561517B2 (en) Passive route control of data networks
Lowekamp et al. A hierarchy of network performance characteristics for grid applications and services
Gueye et al. Constraint-based geolocation of internet hosts
US20100080226A1 (en) Service path selection in a service network
US20030079005A1 (en) System and method for efficient wide area network routing
US7251688B2 (en) Method for generating a network map
US20020073199A1 (en) Method for extending a network map
US20050201278A1 (en) Reconfiguring a multicast tree
US20140173018A1 (en) Content Based Traffic Engineering in Software Defined Information Centric Networks
Liu et al. Optimizing cost and performance for content multihoming
US7734815B2 (en) Global load balancing across mirrored data centers
US7174382B2 (en) Interest-based connections in peer-to-peer networks
US20110131278A1 (en) Systems and methods for peer-to-peer bandwidth allocation
Shaikh E cient precomputation of quality-of-service routes
US20100278069A1 (en) Flow Path Discovery In Network To Guarantee Multiple Metric QoS Constraints
US20100293294A1 (en) Peer-to-peer communication optimization
US8745177B1 (en) End-to-end monitoring and optimization of a content delivery network using anycast routing
Miller et al. Collecting network status information for network-aware applications
Vu et al. Dmap: A shared hosting scheme for dynamic identifier to locator mappings in the global internet
US20050198328A1 (en) Identifying a service node in a network
Pathan et al. A taxonomy of CDNs
US20050198286A1 (en) Selecting nodes close to another node in a network using location information for the nodes
Can et al. Sort: A self-organizing trust model for peer-to-peer systems

Legal Events

Date Code Title Description
C06 Publication
C10 Entry into substantive examination
C14 Grant of patent or utility model