CN106031130A - 具有边缘代理的内容传送网络架构 - Google Patents
具有边缘代理的内容传送网络架构 Download PDFInfo
- Publication number
- CN106031130A CN106031130A CN201580008829.9A CN201580008829A CN106031130A CN 106031130 A CN106031130 A CN 106031130A CN 201580008829 A CN201580008829 A CN 201580008829A CN 106031130 A CN106031130 A CN 106031130A
- Authority
- CN
- China
- Prior art keywords
- content file
- request
- content
- network
- cryptographic hash
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开的方案涉及用于利用在请求设备和内容传送网络(CDN)的边缘集群之间的一个或多个代理高速缓存设备的CDN架构的系统、方法、计算机程序产品等。代理高速缓存设备相比于构成一个或多个边缘集群的各种可能的设备是相对高速的设备。因此,如果代理已经高速缓存所请求的内容,其能够直接服务于客户端的内容请求,比从边缘集群提供内容速率更快。否则,代理高速缓存可以响应于对内容的附加请求,向边缘集群请求内容并存储内容以便快速检索。在一个实施例中,代理高速缓存可以执行对请求或一系列请求的分析,以确定内容是否被高速缓存在代理高速缓存设备处。
Description
相关申请交叉引用
本专利合作条约(PCT)专利申请要求2014年2月19日提交的名为“CONTENT DELIVERY NETWORK ARCHITECTURE WITHEDGE PROXY”的美国临时专利申请No.61/941,576以及2015年1月30日提交的名为“PROXY SERVER FAILOVER AND LOADCLUSTERING”的美国临时专利申请No.62/110,119的优先权,二者通过引用将其整体并入本文。
技术领域
本发明的实施例大体涉及用于实现电信网络的系统和方法,更具体地,涉及用于包括边缘代理高速缓存的内容传送网络的系统和方法,其中所述边缘代理高速缓存用于高速缓存流行内容并将针对内容的请求切分(slice)在内容存储设备中。
背景技术
内容传送网络(CDN)越来越多地用于代表一个或多个内容提供商向终端用户分发内容,例如视频、多媒体、图像、音频文件、文档、软件、和其他电子资源。使用CDN允许内容提供商在没有部署附加基础设施的情况下提高内容传送的速度和可靠性。此外,CDN允许通过一个或多个现有网络进行内容分发而不需要在现有网络内存储内容。
通常,CDN包括多个内容服务器,内容可以从内容服务器提供给提出请求的终端用户。在一个示例中,这些内容服务器可以通过与终端用户进行通信的电信网络而被访问。网络可以包括任何数目的组件以方便终端用户和所请求的内容(例如路由器、互联网服务提供商网络、其它中间网络等)进行连接。通常,可从CDN获得的内容被存储在一个或多个连接CDN或其它上游内容提供商的边缘集群。然后针对内容的请求经由CDN发送到边缘集群或内容提供商,以向提出请求的用户提供该内容。然而,CDN通常几乎不对由哪个上游内容存储设备响应于所接收的针对内容的请求向终端用户提供内容进行控制。
考虑到这些和其它问题,开发了本公开的各种方案。
发明内容
本公开的一个实施方式可以采取内容传送网络的形式。内容传送网络包括与接入网络进行通信的路由器,接入网络被配置为发送来自与接入网络连接的用户设备的针对内容文件的请求,代理高速缓存设备与路由器进行通信并被配置为从路由器接收针对内容文件的请求,且多个边缘服务器通过本地网络与代理高速缓存设备进行通信,多个边缘服务器的每一个被配置为响应于接收到针对内容文件的请求来获得内容文件。此外,代理高速缓存设备还被配置为至少基于针对内容文件的请求来计算哈希值;至少基于所计算的哈希值,从多个边缘服务器中选择第一边缘服务器;并向所选择的边缘服务器发送针对内容文件的请求。
本公开的另一实施方式可以采取用于操作内容传送网络的方法的形式。该方法可以包括以下操作:在第一代理高速缓存设备处从路由器接收针对内容文件的第一请求,与接入网络进行通信的路由器被配置为发送来自与接入网络连接的用户设备的针对内容文件的第一请求,并至少基于针对内容文件的第一请求来计算第一哈希值。此外,操作可以包括:至少基于所计算的第一哈希值,从多个边缘服务器中选择第一边缘服务器,多个边缘服务器通过本地网络与代理高速缓存设备进行通信,并配置为响应于接收到针对内容文件的第一请求来获得内容文件;以及向所选择的边缘服务器发送针对内容文件的第一请求。
本公开的另一实施方式可以采取用于通过电信网络提供内容文件的方法的形式。该方法可以包括:在第一代理高速缓存设备处接收来自与电信网络进行通信的多个终端用户设备中的第一终端用户设备的针对内容文件的第一请求;至少基于针对内容文件的第一请求来计算第一哈希值;至少基于所计算的第一哈希值,从多个边缘服务器中选择第一边缘服务器,所述多个边缘服务器被配置为响应于接收到针对内容文件的第一请求来获得内容文件;以及向所选择的边缘服务器发送针对内容文件的第一请求。该方法还可以包括:在第二代理高速缓存设备处接收来自与电信网络进行通信的多个终端用户设备中的第二终端用户设备的针对内容文件的第二请求;至少基于针对内容文件的第二请求来计算第二哈希值;至少基于所计算的第二哈希值,从多个边缘服务器中选择第一边缘服务器;以及向所选择的边缘服务器发送针对内容文件的第二请求。
附图说明
图1是通过内容传送网络(CDN)分发内容的示例网络环境。
图2是将针对内容的请求路由到网络的代理服务器或代理高速缓存的示例逻辑网络环境。
图3是示出了CDN利用切分功能确定边缘服务器以向提出请求的用户设备提供内容的方法的流程图。
图4是示出了CDN利用代理高速缓存设备向提出请求的用户提供内容设备的方法的流程图。
图5是示出了可用于实现本公开实施例的计算系统的示例图。
具体实施方式
本公开的方案涉及用于利用在网络边缘处且在请求设备和内容传送网络(CDN)的边缘集群之间的一个或多个代理高速缓存设备和/或代理服务器的CDN架构的系统、方法、计算机程序产品等。在一个示例中,代理接收针对要由CDN提供的内容的客户端请求。内容的范围可以从软件补丁到数字电影,包括许多其他形式的内容。代理高速缓存设备相比于构成一个或多个边缘集群的各种可能设备是相对高速的设备。因此,如果代理已经高速缓存所请求的内容,其可以直接服务于客户端内容请求,比从边缘集群提供内容速率更快。否则,代理高速缓存可以响应于对内容的附加请求,向边缘集群请求内容并存储内容以便快速检索。在一个实施例中,代理高速缓存可以执行对请求或一系列请求的分析,以确定内容是否被高速缓存在代理高速缓存设备处。
此外,当代理没有所请求内容的高速缓存副本时,代理高速缓存可以执行哈希操作,并可被配置为将内容请求切分在可用的边缘集群中。通过这种方式,内容的多个副本不需要存储在CDN的不同边缘集群中。例如,当针对内容A的请求在第一边缘代理高速缓存处被哈希,该代理高速缓存基于哈希操作的结果向多个边缘集群之一请求内容。如果边缘集群没有内容副本,则该边缘集群从存储设备中检索副本,存储副本并向提出请求的代理高速缓存传送所请求的内容。倘若之后在第二代理高速缓存处接收到针对该内容的请求,第二代理高速缓存将对所请求的内容运行哈希操作,并基于哈希结果将第二代理高速缓存引导向边缘集群。现在,边缘集群具有内容副本并可以立即满足该请求并将副本返回到第二代理高速缓存。同样地,第二代理高速缓存可以直接向第一代理请求内容(只要内容保持被高速缓存),而不是向边缘集群请求内容。特别地,可以用相对小的和一致的内容类型(如定期调度的软件补丁)利用这种场景。
图1是基于来自用户设备的针对内容的请求向一个或多个用户分发内容的示例网络环境100。在一种实施方式中,CDN 102可通信地耦接到一个或多个接入网络106。通常,CDN 102包括:一个或多个内容服务器(以下作为边缘集群或边缘服务器更详细地讨论);一个或多个代理高速缓存服务器和路由器,其均被配置为针对请求向用户提供内容;以及下层IP网络,通过其接收请求并提供内容。与CDN服务器相关联的下层IP网络可以具有被配置为通过该网络发送和接收通信的任一类型基于IP的通信网络的形式,并且可以包括任何数目和类型的通信组件。通过这种方式,基于CDN的组件可以被添加到现有的基于IP的通信网络,以便该组件接收针对内容的请求、从存储设备中检索内容、并通过支持IP的网络向提出请求的设备提供内容。为了简单起见,除非另有指示,贯穿本公开的术语“CDN”的使用指代一个或多个内容服务器和用于处理并发送通信的下层IP网络的组合。
在一个实施例中,接入网络106可以由一个或多个实体(例如一个或多个提供对CDN 102的接入的互联网服务提供商(ISP))控制或操作/维持。因此,例如,接入网络106可以提供到用户设备104的互联网接入。此外,接入网络106可以包括与CDN 102的IP网络的多个连接。例如,接入网络106包括接入点120。同时,用户设备104可以连接任何数目的接入网络106,以便接入CDN 102可以通过另一个接入网络发生。通常,接入CDN102(或与CDN相关联的下层IP网络)可以通过任意数目的接入网络经到CDN的任意数目的入端口发生。
CDN 102能够向用户设备104提供内容,通常用户设备104可以是任何形式的计算设备,例如个人计算机、移动设备、平板电脑(例如,iPad)或类似物。内容可以包括但不限于:视频、多媒体、图像、音频文件、文本、文档、软件和其它电子资源。用户设备104被配置为请求、接收、处理和呈现内容。在一个实施方式中,用户设备104包括互联网浏览器应用,通过互联网浏览器应用可以选择或进入到内容项的链接(例如,超链接),使得请求被发送到CDN 102中的目录服务器110。
针对内容的请求可以在CDN的路由器110处接收。在一个具体实施例中,在路由器处接收请求之前,通过IP网络的多个组件发送该请求。此外,CDN102可以包括被配置为通过提供可以获得与所选择的链接相关联的内容的网络地址(例如在IP网络内的IP地址)来响应请求的目录服务器。目录服务器将链接名称(例如,URL或其它标识符)解析为用户设备104可以从中检索内容的关联网络地址。在一个具体实施例中,目录服务器向网络的一个或多个代理服务器或代理高速缓存提供IP地址以响应内容请求。
在一个实施例中,CDN 102包括一个或多个边缘服务器112(当多个边缘服务器聚集在一起时,有时也称为“边缘集群”),所述边缘服务器112可以高速缓存来自另一个网络的内容,以使其可在地理上或逻辑上更接近路由器110和/或用户设备104的位置处获得。边缘集群112可以减少网络负载、释放容量、降低传送成本、和/或降低内容下载时间。边缘服务器112被配置为向请求方提供所请求的内容,请求方可以是用户设备104或例如在接入网络106中的中间设备。在一个实施方式中,边缘集群112中的一个或多个提供本地存储在高速缓存中的所请求的内容。在另一实施方式中,边缘集群112从另一个源(如媒体访问服务器(MAS),例如,内容提供商网络118的内容分发服务器或内容源服务器116)中检索所请求的内容。然后响应于请求,向用户设备104提供内容。
通常,CDN 102通过以下方式向终端用户104提供内容。首先,CDN 102通过接入网络106从用户104接收针对内容的请求。CDN利用包括一个或多个目录服务器的域名系统(DNS),所述目录服务器确定向终端用户传送所请求内容的至少一个合适的边缘集群112或其他上游内容网络118。然后DNS向终端用户设备104返回针对所选择的边缘集群112或内容网络118的IP地址,以便终端用户设备通过用户的接入网络106连接边缘集群112以开始接收所请求的内容。更具体地,在IP网络102的路由器110处接收针对从由IP地址识别的边缘集群112提供给用户设备104的内容的请求。在一个实施例中,路由器110通过IP网络102向边缘集群112发送请求,以便边缘集群向用户设备104提供内容。
通常,由DNS响应于针对内容的请求所提供的IP地址将用户设备连接到主伺针对特定内容主机实体的全部或部分内容的服务器。换言之,由DNS提供的IP地址可以不直接将终端用户连接到所请求的内容文件,而是连接到存储多个内容文件的特定内容文件(例如来自内容提供商网络118)的服务器(例如边缘集群的边缘服务器),或连接到可以访问针对多个内容文件的的特定内容文件(例如来自内容提供商网络118)的服务器。然后边缘服务器112或内容提供商网络118向终端用户104提供所请求的内容文件。因此,由于许多边缘集群或边缘服务器可以访问内容提供商网络118,DNS可以向任何边缘服务器或集群分配IP地址以访问内容提供商网络来满足内容请求。在一个实施例中,分配边缘集群112或内容提供商网络118以向终端用户104提供内容,该分配可以在本地区域的能够满足请求的每个边缘集群112中随机进行。
在CDN 102的一个具体实施例中,代理服务器或代理高速缓存设备114可以逻辑位于路由器110和边缘集群112之间。通常,代理高速缓存114是可以将内容切分在本地区域中的多个边缘集群112上和/或高速缓存对终端用户请求可用的流行内容的高性能高速缓存。因此,在一个实施方式中,代理高速缓存114可以响应于所接收的针对流行内容的请求而充当内容提供商。触发在代理高度缓存114处对内容的存储的内容的流行度可以基于任何标准,例如接收请求的数目、网络102的自定义选择、网络配置程序等。在另一个实施方式中,代理高速缓存114可以确定能够提供内容的特定边缘服务器112,因此减少了由CDN 102存储的内容副本的数量。例如,在网络102的特定区域或部分(例如CDN 102的城域网部分)中的所有的代理高速缓存114可以满足针对来自城域网的同一边缘集群112的内容的请求,而不是具有在多个边缘集群上存储的相同内容的多个副本。以下将更详细讨论CDN 102架构中的代理高速缓存设备114的操作。
尽管图1所示为包括与接入网络106进行通信的路由器110,应当理解,在网络102的任何电信设备可以接收来自用户104的请求并向代理服务器114或边缘集群112发送请求。在另一个实施例中,用户设备104可以不使用接入网络106而直接与网络102进行通信.在这个实施例中,用户请求可以被直接发送到代理服务器114或边缘集群112。如下面更详细地进一步解释,代理服务器114可以在与用户设备104通信的接入网络106中实例化。因此,通常,代理服务器114可以逻辑上位于沿本文描述的通信链路的任何地方。
图2是将针对内容的请求路由到网络的代理服务器或代理高速缓存的示例逻辑网络环境。通常,图2的逻辑网络环境200的组件与以上讨论的相对于图1的组件相同。具体地,网络环境200包括接入网络或ISP106,终端用户设备通过该接入网络或ISP 106与CDN连接。尽管在图2中示出为包括ISP 106的几个实例,应当理解,ISP可以是相同的逻辑网络。ISP 106连接与CDN网络相关联的一个或多个路由器202-208。而且,与ISP 106相同,图2示出的路由器202-208可以是与CDN102相关联的一个路由器或几个路由器。如上讨论,路由器202-208可以接收针对可通过CDN获得的内容的请求,这些请求由通过其可获得内容的边缘集群或内容提供商网络的IP地址识别。在一个实施例中,然后路由器202-208可以通过本地网络(例如城域IP网络210)将请求路由到与所接收的请求中的IP地址相关联的边缘集群212-218。城域IP网络210提供局域网(LAN)以将一个或多个边缘集群212-218连接到CDN 102。此外,尽管未在图2示出,边缘集群212-218可以连接或可以以其它方式访问来自内容提供商网络118的MAS 116的内容。
在另一个实施例中,针对CDN的DNS可以响应于内容,提供与网络的代理高速缓存设备220-226相关联的IP地址。例如,DNS可被配置为针对所接收的与特定城域IP网络210相关联的内容请求,提供代理高速缓存220-226的IP地址。在另一个实施例中,接收的部分而非全部内容请求可以被发送到可用代理高速缓存220-226中的一个。是否所接收的内容请求通过代理高速缓存220-226路由可以由网络或CDN管理员通过网络配置来确立。
为了便于通过网络200的一个或多个代理高速缓存220-226路由请求,一个或多个代理高速缓存可以逻辑上位于边缘集群212-218和通过ISP 106的用户设备之间。在一个实施例中,代理高速缓存202-208逻辑上位于电信网络的路由器202-208和城域IP网络210之间。代理高速缓存202-208可以在代理高速缓存和一个或多个路由器202-208之间提供20千兆字节的连接以用于内容的高速传输。此外,如下面更详细地解释,代理高速缓存220-226被配置为将内容跨区域中的几个边缘集群112进行切分,和/或高速缓存终端用户请求可获得的流行内容。
如上所述,代理高速缓存220-226可以位于沿图2示出的逻辑链路的任何位置。例如,代理高速缓存220-226可在ISP 106中实例化,并通过路由器204或其它电信设备从用户设备104接收内容请求或直接从用户设备接收内容请求。在另一个实施例中,代理高速缓存220-226可在城域IP网络210中实例化。通常,代理高速缓存220-226可以逻辑上位于用户设备和边缘集群212-218之间的任何位置。图2的网络配置不过是利用代理高速缓存220-226的网络的一个示例。
考虑图2的逻辑网络配置或结构,图3是示出了针对CDN利用切分功能确定边缘集群以向提出请求的用户设备提供内容的方法的流程图。通常,由网络的代理高速缓存220-226中的一个或多个通过执行一个或多个指令和/或通过代理高速缓存的一个或多个基于硬件的电路来执行图3的操作。如下面更详细地解释,图3的方法通过减少由城域网络210的边缘集群212-218存储的内容副本的数量提高了CDN 102的性能,以便一个对等高速缓存可以向与城域网相关联或与之进行通信的每个代理高速缓存220-226提供内容。
开始于操作302,在第一代理高速缓存处接收针对可通过CDN102获得的内容的请求。在一个示例中,可以在ISP 106从终端用户设备接收请求,并基于由CDN DNS设备提供的IP地址将该请求路由到路由器202。作为响应,然后路由器202可以向与所提供的代理高速缓存的IP地址相关联的网络200的代理高速缓存220发送请求,以进一步由代理高速缓存进行处理。
通常,与城域IP网络210进行通信的每个边缘集群212-218被配置为获得内容,并服务于在城域IP网络210处接收到的针对内容的请求。然而,针对特定内容文件的请求由多个边缘集群212-218服务,然后内容的多个副本可以由边缘集群存储以用于将来的针对内容的请求。因此,如果选择特定边缘集群212-218以针对在城域IP网络210处接收的每个请求提供所请求的内容,则CDN 102的效率和速度可被改善。这样,在操作304中,代理高速缓存220执行哈希值计算以确定可以响应于所述请求通过其提供内容的边缘集群212-218。通常代理高速缓存220可以执行任何计算以确定哈希值。在一个具体实施例中,代理高速缓存220可以利用所接收的请求,以可重复的方式计算哈希值,从而针对每个针对特定内容文件的请求返回相同的哈希值。例如,代理高速缓存220可以利用包括在针对内容的请求内的统一资源定位符(URL)地址来计算哈希值。因此,由于包括在请求中的IP地址与所请求的内容文件相关,可以针对每个针对内容文件的请求计算同一哈希值。请求的其它方面可以被用以计算哈希值,例如客户端设备的标识符(IP地址、网络标识等)、其它路由路径信息、可由内容URL识别的内容文件名称、路由器标识符、对可用于向CDN提供内容的服务器数量等。然而,为了确保内容文件的多个副本不在边缘集群212-218存储,哈希值计算是可重复的,使得在环境200中的接收针对该特定内容文件的请求的每个代理高速缓存220-226响应于请求来计算相同或相似的哈希值。
代理高速缓存220-226中的一个或多个可以将哈希值或哈希值范围与同城域IP网络210关联的可用边缘集群212-218相关联。例如,每个可用边缘集群212-218可由代理高速缓存220-226分配哈希值范围。因此,当进行哈希值计算时,代理高速缓存220可以确定哪个边缘集群212-218与哈希值相关联,并选择通过其检索所请求的内容的边缘集群。再者,哈希值可以与特定边缘服务器或其它上游内容提供设备相关联,以便通过哈希值计算识别特定存储设备。此外,在操作304中,代理高速缓存220基于哈希值将针对内容的请求路由到所选择的边缘集群212-218。继续上述示例,由代理高速缓存220计算的哈希值可以选择边缘集群C 216作为向提出请求的客户端提供内容的城域IP网络210的边缘集群。
在操作306中,一旦边缘集群获得内容,代理高速缓存220便从边缘集群216接收所请求的内容。在一个实施例中,内容由边缘集群216存储,使得获得内容包括从存储器中检索内容。在另一个实施例中,内容可能无法在边缘集群216处获得。在这个实施例中,边缘集群216可以从另一源(例如媒体访问服务器(MAS),例如,内容提供商网络118的内容分发服务器或内容源服务器116)中检索所请求的内容。然后响应于请求,向代理高速缓存220提供内容。此外,针对从MAS中的检索,可以在边缘集群216处存储内容,以便将来由城域IP网络210响应于针对内容的请求而使用。然后,响应于所接收的请求,由代理高速缓存220通过ISP 106向客户端设备提供回内容。如以下关于图4解释,内容还可以被存储在代理高速缓存220处,以用于响应于附加内容请求的快速检索。
当接收内容请求时,如上所述,网络200的代理高速缓存220-226的每一个可以执行类似操作。例如,在操作308中,第二代理高速缓存(例如代理高速缓存226)可以通过相关联的路由器208接收针对上述同一内容文件的请求。这个请求可以或可以不从上述同一客户端设备接收。例如,可以由与ISP 106相关联的多个客户端设备请求流行内容文件。一旦在代理高速缓存226处接收请求,类似于上述,代理高速缓存可以执行哈希值计算以在操作310中确定可获得内容的边缘集群216。然而,如上面还提到且以下将更详细讨论的,与城域IP网络210相关联的代理高速缓存可以存储一个或多个内容文件。因此,优先于计算哈希值或除了计算哈希值之外,代理高速缓存226可以确定所请求的内容可在另一个代理高速缓存220-224处获得、还是可通过边缘集群212-218中的一个或多个获得。以下将参考图4更详细讨论从网络200的另一个代理高速缓存220-224中检索内容。
如上讨论,如果不可从另一个代理高速缓存220-224中获得内容,则代理高速缓存226计算哈希值。在一个实施例中,哈希值计算对于网络200中每个代理高速缓存220-226是相同的或相似的。因此,与以上讨论的哈希值计算相似,哈希值计算可以提供可通过边缘集群C216获得内容的指示。然后针对内容的请求可以被发送到所选择的边缘集群216,边缘集群216进而可以向代理高速缓存226提供内容。在操作312中,代理高速缓存226可以从边缘集群216(或另一个代理高速缓存,如果内容被存储在代理高速缓存级)接收内容,并向提出请求的用户设备提供内容。
在上述示例中,代理高速缓存220和代理高速缓存226均请求内容从边缘集群216提供给终端用户。更具体地,通过基于针对内容的请求计算同一哈希值,代理高速缓存220,226均向同一边缘集群216发送针对内容的请求。通过这种方式,仅一个边缘集群216(且潜在地,边缘集群内的仅一个边缘服务器)向终端用户提供内容。先前,内容已经通过网络200的边缘集群212-218中的任一个提供给终端用户。此外,因为每个边缘集群212-218被配置为存储从内容提供商获得的内容副本,多个内容副本可以被存储在网络200的边缘集群中。然而,通过哈希值的使用,仅一个内容副本被存储在边缘集群212-218中,因为由代理高速缓存220-226选择同一边缘集群216以响应于请求来提供内容。这样,通过去除存储多个内容文件副本的可能性,使用代理高速缓存220-226执行提供内容的边缘集群的选择增加了城域网络200中组件的整体效率。
通过在代理高速缓存220-226的一个或多个中存储一个或多个最流行内容文件,可以进一步提高CDN的整体效率和速度。图4是示出了CDN利用代理高速缓存设备向提出请求的用户提供内容设备的方法的流程图。通常,由网络的代理高速缓存220-226中的一个或多个通过执行一个或多个指令和/或通过代理高速缓存的一个或多个基于硬件的电路来执行图4的操作。图4的方法的操作保持一个或多个内容文件逻辑上靠近提出请求的用户设备,以提高向提出请求的设备提供内容文件的速度。
通常,操作402-406与以上参考图3的操作302-306讨论的操作相同。因此,在操作402中,代理高速缓存(例如代理高度缓存220)接收针对内容的请求。然后在操作404中,代理高速缓存220执行哈希值计算以确定通过其获得内容的边缘集群(例如边缘集群216),并将请求路由到所选择的边缘集群。在操作406中,代理高速缓存220从所选择的边缘集群接收内容,并向提出请求的终端用户提供内容。
在操作408中,代理高速缓存220确定所接收的内容文件是否是流行文件,且如果内容文件流行,则在本地存储器中存储所述内容文件。通常,代理高速缓存220可以利用任何度量以确定所接收的内容文件是否流行。在一个示例中,代理高速缓存220可以保持在代理高速缓存处接收到的每个请求的运行总计。如果在代理高速缓存220处所接收的针对内容文件的请求的数量等于或超过请求阈值,代理高速缓存可以确定内容文件是流行文件并在本地存储器中存储该文件。在另一个示例中,代理高速缓存220可以被配置为本地存储特定类型的内容文件,例如软件补丁或基于文本的内容文件。因此,当从边缘集群216接收的内容文件是在代理高速缓存配置中指示的内容文件类型时,内容文件可以被存储在本地存储器中。在另一个示例中,CDN 200可以提供CDN已经视为对于代理高速缓存220-226中的每个为流行的内容文件列表。在这个示例中,如果代理高速缓存220接收匹配流行内容文件列表的内容文件,内容文件被代理高速缓存存储在本地存储器中。
不考虑用来确定所接收的内容文件的流行度的度量,内容文件可以被代理高速缓存220存储,并可从代理高速缓存中获得以用于将来通过网络200接收的请求。因此,在操作410中,代理高速缓存220可以从网络200的终端用户接收针对内容文件的附加请求。作为响应,代理高速缓存220可以将所请求的内容文件识别为本地存储的内容文件,并从本地存储器向终端用户提供内容文件。应当理解,相比于如果从边缘集群212-218或从内容提供商网络请求内容文件,通过在代理高速缓存220-226中存储流行内容文件,可以向终端用户更快速地提供内容文件。因此,通过在代理高速缓存层处存储流行内容文件,相比于从边缘集群层提供内容的先前网络配置,网络200向终端用户更快速地提供内容文件。
此外,在代理高速缓存(例如代理高速缓存220)处存储的内容文件对于网络200中的其它代理高速缓存222-226可用。如上参考图3的方法所讨论的,代理高速缓存可以被配置为确定所请求的内容文件是被存储在网络200的代理高速缓存级220-226处还是在边缘集群级212-218处(或甚至更上游到内容提供商网络)。如果内容被存储在网络200的第一代理高速缓存220处,接收针对内容文件的请求的第二代理高速缓存(例如代理高速缓存226)可以向已经本地存储了该内容文件的第一代理高速缓存220发送请求。在一个实施例中,然后具有本地存储的内容文件的第一代理高速缓存220可以向终端用户提供该内容文件。在另一个实施例中,可以响应于接收所发送的请求,通过第一代理高速缓存220向第二代理高速缓存226提供内容文件。在这个实施例中,如果内容文件匹配与第二代理高速缓存相关联的流行度度量,则可以通过第二代理高速缓存226向终端用户提供内容文件,且该内容文件可以被第二代理高速缓存本地存储。通过这种方式,可以向终端用户提供存储在网络200的代理高速缓存级220-226处的内容文件。
在上述情况下,第二代理高速缓存226可以知道由网络200中的其它代理高速缓存220-224本地存储的内容文件。在一个实施例中,当内容文件被代理高速缓存本地存储,存储的文件的标志或其他指示符(包括存储的文件的标识和存储的代理高速缓存的标识)可以发送到网络200中的代理高速缓存220-226并由网络200中的代理高速缓存220-226存储。然后接收针对内容文件的请求的代理高速缓存可以检查存储的内容文件列表,以确定内容文件可以被存储在哪里并且在哪里可获得内容文件。无论代理高速缓存设备如何确定可从网络200的代理高速缓存级220-226获得内容文件,可以从代理高速缓存级获得内容文件和/或向终端用户提供该内容文件,因此提高了向终端用户提供内容的速度。
图5是示出了可用于实现以上公开的网络组件的实施例的计算设备或计算机系统500的示例框图。例如,图5的计算系统500可以用于实现以上讨论的路由器或代理高速缓存。计算机系统(系统)包括一个或多个处理器502-506。处理器502-506可以包括高速缓存的一个或多个内部层级(未示出)和与处理器总线512直接交互的总线控制器或总线接口单元。处理器总线512,也被称为主机总线或前端总线,可以用于耦接处理器502-506和系统接口514。系统接口514可以连接处理器总线512以将系统500的其它组件与处理器总线512接口连接。例如,系统接口514可以包括将主存储器516与存储器总线512接口连接的存储控制器514。主存储器516通常包括一个或多个存储器卡和控制电路(未示出)。系统接口514还可以包括输入/输出(I/O)接口520,用于将一个或多个I/O桥或I/O设备与处理器总线512连接。如图5所示,一个或多个I/O控制器和I/O设备(例如I/O控制器528和I/O设备540)可以连接I/O总线526。
I/O设备540还可以包括输入设备(未示出),例如字母数字输入设备,包括用于向处理器502-506传送信息和/或命令选择的字母数字和其他键。其他类型的用户输入设备包括光标控制,例如,鼠标、轨迹球、或光标方向键,用于向处理器502-506传送方向信息和命令选择并用于控制显示设备上的光标移动。
系统500可以包括动态存储设备,被称为主存储器516,或随机存取存储器(RAM)或其他耦接处理器总线512用于存储由处理器502-506执行的信息和指令的计算机可读设备。存储器516还可以用于在处理器502-506执行指令期间存储临时变量或其它中间信息。系统500包括耦接到处理器总线512的只读存储器(ROM)或其它静态存储设备,以存储处理器502-506的静态信息和指令。图5阐述的系统不过是计算机系统的一个可能示例,该系统可以采用根据本公开的方案或根据本公开的方案配置。
根据一个实施例,上述技术可以由计算机系统500响应于执行主存储器516中包含的一个或多个指令的一个或多个序列的处理器504执行。主存储器516可以从其它机器可读介质(例如,存储设备)读取这些指令。执行主存储器516中包括的指令序列会引起处理器502-506执行本文描述的处理步骤。在备选实施例中,电路可以用于替代软件指令或与软件指令结合。因此,本公开的实施例可以包括硬件和软件组件。
机器可读介质包括用于以机器(例如,计算机)可读的形式(例如,软件、处理应用)来存储或发送信息的任何机制。这样的介质可以采取以下形式但不限于:非易失性介质和易失性介质。非易失性介质包括光盘或磁盘。易失性介质包括动态存储器,例如主存储器516。机器可读介质的常见形式可以包括但不限于磁存储介质(例如软盘);光存储介质(例如,CD-ROM);磁光存储介质;只读存储器(ROM);随机存取存储器(RAM);可擦除可编程存储器(例如,EPROM和EEPROM);闪存;或适于存储电子指令的介质的其它类型。
本公开的实施例包括在本说明书中描述的各步骤。这些步骤可由硬件组件执行或可以在机器可执行指令中体现,这些指令可用于使以指令编程的通用或专用处理器执行所述步骤。可替代地,所述步骤可由硬件、软件和/或固件的组合执行。
在不偏离本发明的范围的前提下,对所讨论的示例性实施例可以做出不同修改和补充。例如,尽管上述实施例指出了特定的特征,但是本发明的范围还包括具有不同特征组合的实施例和不包括所描述特征的全部的实施例。因此,本发明的范围意在囊括所有这些备选、修改、变化及其所有等同物。
Claims (20)
1.一种内容传送网络,包括:
与电信网络进行通信的代理高速缓存设备,所述电信网络被配置为向所述代理高速缓存设备发送来自与接入网络连接的用户设备的针对内容文件的请求;以及
通过本地网络与所述代理高速缓存设备进行通信的多个边缘服务器,所述多个边缘服务器中的每个被配置为响应于接收到所述针对内容文件的请求来获得所述内容文件;
其中,所述代理高速缓存设备还被配置为:至少基于所述针对内容文件的请求来计算哈希值;至少基于所计算的哈希值,从所述多个边缘服务器中选择第一边缘服务器;并向所选择的边缘服务器发送所述针对内容文件的请求。
2.根据权利要求1所述的内容传送网络,其中,所述第一边缘服务器还被配置为,响应于所述针对内容文件的请求,向所述代理高速缓存设备提供内容文件;且所述代理高速缓存设备还被配置为向所述接入网络提供所述内容文件。
3.根据权利要求1所述的内容传送网络,其中,所述代理高速缓存设备还被配置为在本地存储器中存储所述内容文件。
4.根据权利要求3所述的内容传送网络,其中,所述代理高速缓存还被配置为:响应于针对所述内容文件的第二请求,从所述本地存储器向所述接入网络提供所述内容文件。
5.根据权利要求1所述的内容传送网络,其中,所述针对内容文件的请求包括与所述内容文件相关联的统一资源定位符,以及至少基于所述统一资源定位符计算所述哈希值。
6.根据权利要求5所述的内容传送网络,其中,所述哈希值的计算针对在所述代理高速缓存设备处接收的针对所述内容文件的附加请求是可重复的。
7.根据权利要求1所述的内容传送网络,其中,所述第一边缘服务器与内容提供商网络进行通信,且还被配置为,从所述内容提供商网络获得所述内容文件,并存储所述内容文件。
8.一种用于操作内容传送网络的方法,所述方法包括:
通过电信网络,在第一代理高速缓存设备处接收针对内容文件的第一请求,所述电信网络被配置为发送来自与电信网络连接的用户设备的针对所述内容文件的第一请求;
至少基于针对所述内容文件的第一请求来计算第一哈希值;
至少基于所计算的第一哈希值,从多个边缘服务器中选择第一边缘服务器,所述多个边缘服务器通过本地网络与所述代理高速缓存设备进行通信,并被配置为响应于接收到针对所述内容文件的第一请求来获得所述内容文件;以及
向所选择的边缘服务器发送针对所述内容文件的第一请求。
9.根据权利要求8所述的方法,还包括:
至少响应于所发送的针对所述内容文件的请求,在所述第一代理高速缓存处从所选择的边缘服务器接收所述内容文件;以及
向所述用户设备提供所述内容文件。
10.根据权利要求9所述的方法,还包括:
在与所述第一代理高速缓存设备进行通信的本地存储器中存储所述内容文件。
11.根据权利要求10所述的方法,还包括:
在第二代理高速缓存设备处接收针对所述内容文件的第二请求;
至少基于针对所述内容文件的第二请求来计算第二哈希值;
至少基于所计算的第二哈希值,从所述多个边缘服务器中选择所述第一边缘服务器;以及
向所选择的边缘服务器发送针对所述内容文件的第二请求。
12.根据权利要求11所述的方法,其中,针对所述内容文件的第一请求和针对所述内容文件的第二请求包括与所述内容文件相关联的统一资源定位符,以及至少基于所述统一资源定位符来计算所述第一哈希值和所述第二哈希值。
13.根据权利要求12所述的方法,其中,所述第一哈希值和所述第二哈希值相同。
14.根据权利要求11所述的方法,还包括:
在所述第二代理高速缓存设备处接收针对所述内容文件的第三请求;以及
至少基于确定所述内容文件存储在与所述第一代理高速缓存进行通信的本地存储器中,向所述第一代理高速缓存设备发送针对所述内容文件的第三请求。
15.根据权利要求10所述的方法,还包括:
在与所述第一代理高速缓存设备进行通信的本地存储器中存储所述内容文件之前,确定与所述内容文件相关联的流行度标识符。
16.根据权利要求15所述的方法,其中,确定所述内容文件的所述流行度标识符包括:
将对在所述第一代理高速缓存处接收到的针对内容文件的请求的总数的计数与阈值进行比较;以及
如果对所述针对内容文件的请求的总数的计数超过所述阈值,则设置与所述内容文件相关联的流行度标识符。
17.根据权利要求15所述的方法,其中,确定所述内容文件的所述流行度标识符包括:
从网络配置设备接收所述内容文件的流行度指示符;以及
在存储设备中存储所接收的所述内容文件的流行度指示符,以与在所述第一代理高速缓存设备处接收到的内容文件进行比较。
18.一种用于通过电信网络提供内容文件的方法,所述方法包括:
在第一代理高速缓存设备处接收来自与所述电信网络进行通信的多个终端用户设备中的第一终端用户设备的针对所述内容文件的第一请求;
至少基于针对所述内容文件的第一请求来计算第一哈希值;
至少基于所计算的第一哈希值,从多个边缘服务器中选择第一边缘服务器,所述多个边缘服务器被配置为响应于接收到针对所述内容文件的第一请求来获得所述内容文件;
向所选择的边缘服务器发送针对所述内容文件的第一请求;
在第二代理高速缓存设备处接收来自与所述电信网络进行通信的所述多个终端用户设备中的第二终端用户设备的针对所述内容文件的第二请求;
至少基于针对所述内容文件的第二请求来计算第二哈希值;
至少基于所计算的第二哈希值,从所述多个边缘服务器中选择所述第一边缘服务器;以及
向所选择的边缘服务器发送针对所述内容文件的第二请求。
19.根据权利要求18所述的方法,其中,针对所述内容文件的第一请求和针对所述内容文件的第二请求包括与所述内容文件相关联的统一资源定位符,以及至少基于所述统一资源定位符计算所述第一哈希值和所述第二哈希值。
20.根据权利要求19所述的方法,其中,所述第一哈希值和所述第二哈希值相同。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461941576P | 2014-02-19 | 2014-02-19 | |
US61/941,576 | 2014-02-19 | ||
US201562110119P | 2015-01-30 | 2015-01-30 | |
US62/110,119 | 2015-01-30 | ||
PCT/US2015/016612 WO2015127075A1 (en) | 2014-02-19 | 2015-02-19 | Content delivery network architecture with edge proxy |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106031130A true CN106031130A (zh) | 2016-10-12 |
CN106031130B CN106031130B (zh) | 2019-08-09 |
Family
ID=53799206
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580009236.4A Pending CN106030542A (zh) | 2014-02-19 | 2015-02-19 | 代理服务器故障转移和负载集群 |
CN201580008829.9A Active CN106031130B (zh) | 2014-02-19 | 2015-02-19 | 具有边缘代理的内容传送网络架构 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580009236.4A Pending CN106030542A (zh) | 2014-02-19 | 2015-02-19 | 代理服务器故障转移和负载集群 |
Country Status (6)
Country | Link |
---|---|
US (6) | US9838497B2 (zh) |
EP (2) | EP3108368A4 (zh) |
JP (2) | JP6984097B2 (zh) |
CN (2) | CN106030542A (zh) |
CA (2) | CA2939921A1 (zh) |
WO (2) | WO2015127086A2 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107979629A (zh) * | 2016-10-25 | 2018-05-01 | 北京京东尚科信息技术有限公司 | 分布式缓存系统及其数据缓存方法和装置 |
CN108111623A (zh) * | 2017-12-29 | 2018-06-01 | 北京奇虎科技有限公司 | 一种基于内容分发网络cdn的通信方法和装置 |
CN110191007A (zh) * | 2019-06-27 | 2019-08-30 | 广州虎牙科技有限公司 | 节点管理方法、系统及计算机可读存储介质 |
CN112243506A (zh) * | 2019-06-17 | 2021-01-19 | 北京航迹科技有限公司 | 数据处理系统和方法 |
CN113348658A (zh) * | 2019-01-29 | 2021-09-03 | 思科技术公司 | 延迟约束下的缓存集群的高效灵活的负载均衡 |
CN113709232A (zh) * | 2021-08-24 | 2021-11-26 | 广州文远知行科技有限公司 | 数据包加载方法、客户端、客户端代理、设备及存储介质 |
WO2022001732A1 (zh) * | 2020-06-29 | 2022-01-06 | 中兴通讯股份有限公司 | Cdn调度方法、接入设备、cdn调度器及存储介质 |
CN114531478A (zh) * | 2020-10-30 | 2022-05-24 | 伊姆西Ip控股有限责任公司 | 边缘资源聚合的方法、设备和计算机程序产品 |
CN115629918A (zh) * | 2022-10-24 | 2023-01-20 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8560604B2 (en) | 2009-10-08 | 2013-10-15 | Hola Networks Ltd. | System and method for providing faster and more efficient data communication |
US9241044B2 (en) | 2013-08-28 | 2016-01-19 | Hola Networks, Ltd. | System and method for improving internet communication by using intermediate nodes |
EP3108368A4 (en) | 2014-02-19 | 2017-09-06 | Level 3 Communications, LLC | Proxy server failover and load clustering |
KR101629106B1 (ko) * | 2014-12-17 | 2016-06-09 | 경희대학교 산학협력단 | 컨텐츠 기반 네트워크에서 요청 컨텐츠의 해쉬값에 따라 컨텐츠를 송신하는 방법 |
US10069700B2 (en) * | 2015-03-31 | 2018-09-04 | Interactive Intelligence Group, Inc. | System and method for offline survivability |
US11057446B2 (en) | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
CN106411823B (zh) * | 2015-07-31 | 2019-07-12 | 华为技术有限公司 | 一种基于cdn的访问控制方法及相关设备 |
US20170111473A1 (en) * | 2015-10-20 | 2017-04-20 | Fireglass Ltd. | Selective routing of encrypted requests via computer networks |
US10375197B2 (en) * | 2015-12-11 | 2019-08-06 | Riverbed Technology, Inc. | Dynamic key generation for identifying data segments |
CN105868335A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 用于cdn系统的缓存数据查询同步方法和系统 |
CN107343012B (zh) * | 2016-04-28 | 2019-12-03 | 杭州海康威视数字技术股份有限公司 | 视频存储系统及其视频数据发送方法 |
CN107517228B (zh) * | 2016-06-15 | 2021-03-05 | 阿里巴巴集团控股有限公司 | 一种内容分发网络中的动态加速方法及装置 |
US11349912B2 (en) * | 2016-11-29 | 2022-05-31 | Level 3 Communications, Llc | Cross-cluster direct server return in a content delivery network (CDN) |
US10152269B2 (en) * | 2017-03-06 | 2018-12-11 | Dell Products L.P. | Method and system for preserving branch cache file data segment identifiers upon volume replication |
EP3598697B1 (en) * | 2017-04-14 | 2022-01-19 | Huawei Technologies Co., Ltd. | Content deployment method and distribution controller |
WO2019036481A1 (en) * | 2017-08-14 | 2019-02-21 | Level 3 Communications, Llc | SYSTEM AND METHOD FOR INTERMEDIATE METRO MATCHING IN A CONTENT DELIVERY NETWORK |
LT3767495T (lt) * | 2017-08-28 | 2023-05-25 | Bright Data Ltd. | Būdas pagerinti turinio parsisiuntimą, pasirenkant tunelinius įrenginius |
CN107801086B (zh) * | 2017-10-20 | 2019-01-04 | 广东省南方数字电视无线传播有限公司 | 多缓存服务器的调度方法和系统 |
CN109120614B (zh) * | 2018-08-10 | 2021-09-28 | 北京奇虎科技有限公司 | 基于分布式系统的业务处理方法及装置 |
US10999361B2 (en) * | 2018-09-07 | 2021-05-04 | Red Hat, Inc. | Consistent hash-based load balancer |
CN111092922B (zh) * | 2018-10-24 | 2021-04-02 | 杭州海康威视系统技术有限公司 | 一种信息发送方法及装置 |
CN109302346B (zh) * | 2018-10-25 | 2020-09-18 | 网宿科技股份有限公司 | 一种传输数据流量的方法和装置 |
US11038979B2 (en) | 2018-11-08 | 2021-06-15 | Cisco Technology, Inc. | Methods and apparatuses for content delivery over mobile networks with multi-access edge computing (MEC) control and user plane separation (CUPS) |
US10972576B2 (en) * | 2018-11-14 | 2021-04-06 | International Business Machines Corporation | Content acceleration for cross-site resources by CDN |
EP3780557B1 (en) | 2019-02-25 | 2023-02-15 | Bright Data Ltd. | System and method for url fetching retry mechanism |
WO2020202135A2 (en) | 2019-04-02 | 2020-10-08 | Luminati Networks Ltd. | System and method for managing non-direct url fetching service |
EP3980892A1 (en) * | 2019-06-24 | 2022-04-13 | Amazon Technologies Inc. | Remote control planes with automated failover |
US11516116B2 (en) * | 2020-03-30 | 2022-11-29 | EMC IP Holding Company LLC | Domain name system multipathing distributed applications |
CN111787340A (zh) * | 2020-05-25 | 2020-10-16 | 天津车之家数据信息技术有限公司 | 一种网络直播系统和方法 |
CN112104704A (zh) * | 2020-08-21 | 2020-12-18 | 深圳大学 | 边缘计算方法及装置 |
CN112153160A (zh) * | 2020-09-30 | 2020-12-29 | 北京金山云网络技术有限公司 | 访问请求的处理方法、装置及电子设备 |
CN112713924A (zh) * | 2021-03-23 | 2021-04-27 | 南通先进通信技术研究院有限公司 | 一种基于卫星通信的cdn网络系统的工作方法 |
CN113472888B (zh) * | 2021-07-07 | 2024-01-05 | 挂号网(杭州)科技有限公司 | 网页访问方法、装置、服务器设备及存储介质 |
CN113949897B (zh) * | 2021-11-30 | 2024-02-13 | 紫光云(南京)数字技术有限公司 | 一种mp4视频流媒体点播的分片缓存加速方法 |
CN115037696B (zh) * | 2022-05-30 | 2023-07-28 | 北京百度网讯科技有限公司 | 数据传输方法、装置、电子设备和存储介质 |
US12003600B2 (en) | 2022-06-21 | 2024-06-04 | Oxylabs, Uab | Network coordination between proxy servers |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110276623A1 (en) * | 2010-05-06 | 2011-11-10 | Cdnetworks Co., Ltd. | File bundling for cache servers of content delivery networks |
CN102640135A (zh) * | 2009-10-02 | 2012-08-15 | 杰出网络公司 | 内容传递网络高速缓存分组 |
US20120317240A1 (en) * | 2011-06-10 | 2012-12-13 | Shazam Entertainment Ltd. | Methods and Systems for Identifying Content in a Data Stream |
CN103563335A (zh) * | 2011-05-05 | 2014-02-05 | 阿卡麦科技公司 | 利用安全连接的结合的cdn反向代理和边缘前向代理 |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11224219A (ja) * | 1998-02-05 | 1999-08-17 | Nippon Telegr & Teleph Corp <Ntt> | 分散キャッシュ制御方法及び分散制御装置及び分散キャッシュシステム及び分散キャッシュ制御プログラムを格納した記憶媒体 |
US6108703A (en) * | 1998-07-14 | 2000-08-22 | Massachusetts Institute Of Technology | Global hosting system |
US6691165B1 (en) | 1998-11-10 | 2004-02-10 | Rainfinity, Inc. | Distributed server cluster for controlling network traffic |
US6842906B1 (en) * | 1999-08-31 | 2005-01-11 | Accenture Llp | System and method for a refreshable proxy pool in a communication services patterns environment |
US6578068B1 (en) | 1999-08-31 | 2003-06-10 | Accenture Llp | Load balancer in environment services patterns |
AU2001290546A1 (en) | 2000-08-22 | 2002-03-04 | Akamai Technologies, Inc. | Dynamic content assembly on edge-of-network servers in a content delivery network |
US6678793B1 (en) | 2000-09-27 | 2004-01-13 | International Business Machines Corporation | User-based selective cache content replacement technique |
JP2002271415A (ja) * | 2001-03-12 | 2002-09-20 | Hitachi Ltd | プロキシサーバ・システム、および、その通信方法 |
US20030115346A1 (en) | 2001-12-13 | 2003-06-19 | Mchenry Stephen T. | Multi-proxy network edge cache system and methods |
JP2004274441A (ja) * | 2003-03-10 | 2004-09-30 | Hitachi Cable Ltd | レイヤ3スイッチ |
US8533254B1 (en) * | 2003-06-17 | 2013-09-10 | F5 Networks, Inc. | Method and system for replicating content over a network |
JPWO2005057864A1 (ja) * | 2003-12-12 | 2007-07-12 | 富士通株式会社 | ネットワークの経路切替えシステム |
US7676835B2 (en) | 2004-08-31 | 2010-03-09 | International Business Machines Corporation | System and method for regulating access to objects in a content repository |
US20060248194A1 (en) * | 2005-03-18 | 2006-11-02 | Riverbed Technology, Inc. | Connection forwarding |
JP2007279890A (ja) | 2006-04-04 | 2007-10-25 | Hitachi Ltd | バックアップシステム及びバックアップ方法 |
JP4670726B2 (ja) * | 2006-04-28 | 2011-04-13 | ブラザー工業株式会社 | ノード装置、情報処理方法及びノード装置用プログラム |
US7526668B2 (en) | 2006-06-08 | 2009-04-28 | Hitachi, Ltd. | Failover method of remotely-mirrored clustered file servers |
US8180720B1 (en) * | 2007-07-19 | 2012-05-15 | Akamai Technologies, Inc. | Content delivery network (CDN) cold content handling |
US9762692B2 (en) * | 2008-04-04 | 2017-09-12 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (CDN) |
US10296941B2 (en) | 2008-05-02 | 2019-05-21 | Level 3 Communications Llc | System and method for optimizing content distribution |
US8943200B2 (en) | 2008-08-05 | 2015-01-27 | At&T Intellectual Property I, L.P. | Method and apparatus for reducing unwanted traffic between peer networks |
US8180896B2 (en) * | 2008-08-06 | 2012-05-15 | Edgecast Networks, Inc. | Global load balancing on a content delivery network |
US8417816B2 (en) | 2009-02-20 | 2013-04-09 | Alcatel Lucent | Topology aware cache cooperation |
US8225057B1 (en) * | 2009-03-24 | 2012-07-17 | Netapp, Inc. | Single-system configuration for backing-up and restoring a clustered storage system |
JP5288204B2 (ja) * | 2009-08-10 | 2013-09-11 | 株式会社日立製作所 | ゲートウェイシステム及び制御方法 |
US9532092B1 (en) * | 2009-12-30 | 2016-12-27 | Akamai Technologies, Inc. | Multiple bitrate format-agnostic streaming architecture |
JP2011244132A (ja) * | 2010-05-17 | 2011-12-01 | Nippon Telegr & Teleph Corp <Ntt> | ルータ及び経路記憶方法 |
KR101837004B1 (ko) * | 2010-06-18 | 2018-03-09 | 아카마이 테크놀로지스, 인크. | 모바일 또는 유선 네트워크로의 콘텐츠 전송 네트워크(cdn)의 확장 |
WO2012012334A2 (en) | 2010-07-19 | 2012-01-26 | Movik Networks | Content pre-fetching and cdn assist methods in a wireless mobile network |
CN103262506B (zh) * | 2010-10-22 | 2017-11-17 | 瑞典爱立信有限公司 | 用于允许区分处置移动网络数据业务的方法和装置 |
US8621042B2 (en) * | 2010-12-27 | 2013-12-31 | Limelight Networks, Inc. | Anycast redirect to unicast content download |
EP2659423A4 (en) | 2010-12-31 | 2014-09-17 | Akamai Tech Inc | EXPANSION OF DATA CONFIDENTIALITY IN A GAME APPLICATION |
JP2012169789A (ja) * | 2011-02-10 | 2012-09-06 | Nippon Telegr & Teleph Corp <Ntt> | 負荷分散サーバ及びサーバ選択方法及びサーバ選択プログラム |
US20140052812A1 (en) * | 2011-04-22 | 2014-02-20 | Nec Corporation | Content distribution system, control apparatus, and content distribution method |
US11178244B2 (en) * | 2011-08-09 | 2021-11-16 | Comcast Cable Communications, Llc | Content delivery network routing using border gateway protocol |
JPWO2013047207A1 (ja) * | 2011-09-30 | 2015-03-26 | 日本電気株式会社 | キャッシュシステム、キャッシュ方法、及びキャッシュサーバ |
US20150207660A1 (en) | 2011-12-12 | 2015-07-23 | Google Inc. | Client-side url redirection |
EP3249546B1 (en) * | 2011-12-14 | 2022-02-09 | Level 3 Communications, LLC | Content delivery network |
US9519614B2 (en) * | 2012-01-10 | 2016-12-13 | Verizon Digital Media Services Inc. | Multi-layer multi-hit caching for long tail content |
US8370460B1 (en) * | 2012-01-10 | 2013-02-05 | Edgecast Networks, Inc. | Optimizing multi-hit caching for long tail content |
US8613089B1 (en) * | 2012-08-07 | 2013-12-17 | Cloudflare, Inc. | Identifying a denial-of-service attack in a cloud-based proxy service |
US8819187B1 (en) | 2013-10-29 | 2014-08-26 | Limelight Networks, Inc. | End-to-end acceleration of dynamic content |
US9544226B1 (en) * | 2013-12-27 | 2017-01-10 | Google Inc. | Efficient address-based rule resolution in a network employing a bit-mapped index |
EP3108368A4 (en) | 2014-02-19 | 2017-09-06 | Level 3 Communications, LLC | Proxy server failover and load clustering |
US9678841B2 (en) * | 2014-05-30 | 2017-06-13 | Fastly, Inc. | Communication continuation during content node failover |
-
2015
- 2015-02-19 EP EP15751589.1A patent/EP3108368A4/en not_active Withdrawn
- 2015-02-19 CA CA2939921A patent/CA2939921A1/en not_active Abandoned
- 2015-02-19 JP JP2016548708A patent/JP6984097B2/ja active Active
- 2015-02-19 US US14/626,425 patent/US9838497B2/en active Active
- 2015-02-19 WO PCT/US2015/016628 patent/WO2015127086A2/en active Application Filing
- 2015-02-19 CN CN201580009236.4A patent/CN106030542A/zh active Pending
- 2015-02-19 CA CA2939917A patent/CA2939917A1/en not_active Abandoned
- 2015-02-19 JP JP2016549064A patent/JP2017507575A/ja active Pending
- 2015-02-19 EP EP15751742.6A patent/EP3108644B1/en active Active
- 2015-02-19 CN CN201580008829.9A patent/CN106031130B/zh active Active
- 2015-02-19 WO PCT/US2015/016612 patent/WO2015127075A1/en active Application Filing
- 2015-02-19 US US14/626,605 patent/US10264091B2/en active Active
-
2017
- 2017-12-04 US US15/831,182 patent/US10367907B2/en active Active
-
2019
- 2019-04-15 US US16/384,616 patent/US10938941B2/en active Active
- 2019-07-24 US US16/520,583 patent/US10778801B2/en active Active
-
2021
- 2021-02-22 US US17/181,275 patent/US11165879B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102640135A (zh) * | 2009-10-02 | 2012-08-15 | 杰出网络公司 | 内容传递网络高速缓存分组 |
US20110276623A1 (en) * | 2010-05-06 | 2011-11-10 | Cdnetworks Co., Ltd. | File bundling for cache servers of content delivery networks |
CN103563335A (zh) * | 2011-05-05 | 2014-02-05 | 阿卡麦科技公司 | 利用安全连接的结合的cdn反向代理和边缘前向代理 |
US20120317240A1 (en) * | 2011-06-10 | 2012-12-13 | Shazam Entertainment Ltd. | Methods and Systems for Identifying Content in a Data Stream |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107979629B (zh) * | 2016-10-25 | 2021-05-25 | 北京京东尚科信息技术有限公司 | 分布式缓存系统及其数据缓存方法和装置 |
CN107979629A (zh) * | 2016-10-25 | 2018-05-01 | 北京京东尚科信息技术有限公司 | 分布式缓存系统及其数据缓存方法和装置 |
CN108111623A (zh) * | 2017-12-29 | 2018-06-01 | 北京奇虎科技有限公司 | 一种基于内容分发网络cdn的通信方法和装置 |
CN113348658B (zh) * | 2019-01-29 | 2024-04-19 | 思科技术公司 | 延迟约束下的缓存集群的高效灵活的负载均衡 |
CN113348658A (zh) * | 2019-01-29 | 2021-09-03 | 思科技术公司 | 延迟约束下的缓存集群的高效灵活的负载均衡 |
CN112243506A (zh) * | 2019-06-17 | 2021-01-19 | 北京航迹科技有限公司 | 数据处理系统和方法 |
CN112243506B (zh) * | 2019-06-17 | 2024-06-11 | 北京航迹科技有限公司 | 数据处理系统和方法 |
CN110191007A (zh) * | 2019-06-27 | 2019-08-30 | 广州虎牙科技有限公司 | 节点管理方法、系统及计算机可读存储介质 |
WO2022001732A1 (zh) * | 2020-06-29 | 2022-01-06 | 中兴通讯股份有限公司 | Cdn调度方法、接入设备、cdn调度器及存储介质 |
CN114531478A (zh) * | 2020-10-30 | 2022-05-24 | 伊姆西Ip控股有限责任公司 | 边缘资源聚合的方法、设备和计算机程序产品 |
CN113709232A (zh) * | 2021-08-24 | 2021-11-26 | 广州文远知行科技有限公司 | 数据包加载方法、客户端、客户端代理、设备及存储介质 |
CN113709232B (zh) * | 2021-08-24 | 2024-05-17 | 广州文远知行科技有限公司 | 数据包加载方法、客户端、客户端代理、设备及存储介质 |
CN115629918B (zh) * | 2022-10-24 | 2023-06-27 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN115629918A (zh) * | 2022-10-24 | 2023-01-20 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2017509053A (ja) | 2017-03-30 |
US11165879B2 (en) | 2021-11-02 |
EP3108644B1 (en) | 2021-01-13 |
EP3108644A4 (en) | 2017-08-30 |
CN106031130B (zh) | 2019-08-09 |
US10938941B2 (en) | 2021-03-02 |
EP3108368A2 (en) | 2016-12-28 |
EP3108644A1 (en) | 2016-12-28 |
US20150237159A1 (en) | 2015-08-20 |
US20190245939A1 (en) | 2019-08-08 |
US9838497B2 (en) | 2017-12-05 |
CA2939921A1 (en) | 2015-08-27 |
US10264091B2 (en) | 2019-04-16 |
US20190349446A1 (en) | 2019-11-14 |
US20150237155A1 (en) | 2015-08-20 |
WO2015127075A1 (en) | 2015-08-27 |
JP2017507575A (ja) | 2017-03-16 |
US20210194981A1 (en) | 2021-06-24 |
EP3108368A4 (en) | 2017-09-06 |
US10778801B2 (en) | 2020-09-15 |
CA2939917A1 (en) | 2015-08-27 |
JP6984097B2 (ja) | 2021-12-17 |
WO2015127086A3 (en) | 2015-11-12 |
US20180091616A1 (en) | 2018-03-29 |
WO2015127086A2 (en) | 2015-08-27 |
CN106030542A (zh) | 2016-10-12 |
US10367907B2 (en) | 2019-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106031130A (zh) | 具有边缘代理的内容传送网络架构 | |
US11805184B2 (en) | Content delivery systems and methods | |
JP5068858B2 (ja) | スーパーピアトゥピアネットワークのユーザによって発信されたコンテンツデータパッケージを配信する方法 | |
US9210235B2 (en) | Client side cache management | |
US11778068B2 (en) | Systems and methods for processing requests for content of a content distribution network | |
JP2017536606A (ja) | コンテンツ配信ネットワークにおけるロングテールコンテンツ処理 | |
US11805093B2 (en) | Systems and methods for processing requests for content of a content distribution network | |
CN109873855A (zh) | 一种基于区块链网络的资源获取方法和系统 | |
KR20150011087A (ko) | 컨텐츠 전송 서비스를 위한 분산 캐싱 관리 방법 및 이를 위한 중앙 관리 장치 | |
CN113873302A (zh) | 内容分发方法、装置、存储介质和电子设备 | |
CN105162720A (zh) | 一种减少数据传输的通信网络及方法 | |
KR20150010415A (ko) | 분산 캐싱을 위한 컨텐츠 전송 서비스 방법 및 중계 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |