CN1260890A - 分布式高速缓存、预取和复制的方法和*** - Google Patents
分布式高速缓存、预取和复制的方法和*** Download PDFInfo
- Publication number
- CN1260890A CN1260890A CN98806358A CN98806358A CN1260890A CN 1260890 A CN1260890 A CN 1260890A CN 98806358 A CN98806358 A CN 98806358A CN 98806358 A CN98806358 A CN 98806358A CN 1260890 A CN1260890 A CN 1260890A
- Authority
- CN
- China
- Prior art keywords
- document
- node
- server
- request message
- client
- 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.)
- Pending
Links
Images
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/2866—Architectures; Arrangements
- H04L67/288—Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by 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
-
- 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/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- 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/101—Server selection for load balancing based on network conditions
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- 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
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种在计算机网络中用于自动的、透明的、分布式的、可定标的和稳定的高速缓存、预取和复制技术,其中请求具体文档的报文遵照形成路由图的路径从客户到本地服务器。没有高速缓存,客户请求将正常发生,此时它的路线是沿该路由图朝本地服务器上行。但是,诸高速缓存服务器沿着该路径定位,并且如果它们能得到服务,高速缓存服务器可以监听请求。为了在不脱离标准网络协议的情况下能够以这种方式为请求提供服务,高速缓存服务器需要能够将滤包器***与它相关的路由,还需要依据客户的意见代理该本地服务器。诸高速缓存服务器可以协同工作基于其本地装载、在其毗邻高速缓存器上装载、附加通信路径装载和文档大众性通过高速缓存和废除文档来为客户请求提供服务。高速缓存服务器还可以实现安全模式和其它文档传输特征。
Description
本发明的现有技术
计算机网络(例如因特网、专用的内联网、外联网和虚拟专用网)正在越来越多地用于各种各样的企图,包括储存和查找资料、通信、电子商务、文化娱乐和其它应用。在这些网络中一些被称为服务器的计算机被用于储存和提供资料。一种类型服务器被称为主服务器或本地服务器(home server),它们负责访问本文中通常称之为“文档”的资料,例如以各种计算机文件格式储存的数据和程序。尽管通常在因特网中文档主要包括文本和图片,但是,每份这样的文档实际上可以是包含数据结构的高度格式化计算机文件,它们是包括文本、表格、图象、声音、电影、动画片、计算机程序代码和/或许多其它类型的数字化资料的各种资料的资料库。
在网络中另一些计算机被称为客户,它们允许用户通过请求本地服务器在网上将文档副本发送给客户来访问该文档。为了使客户从本地服务器获得资料,每份文档通常有一个能够找到它的地址。例如,在因特网的组织中和在被称为超级文本传输协议(Hyper text Transfer Protocol(HTTP))之内,地址通常是一个被称为统一资源定位符(Uniform Resource Locators(URLs))的字母数字串,它规定(A)本地服务器的地址,从该本地服务器以文档名或数字地址的形式获取资料;和(B)本地资料正文串,它识别客户请求的资料,它可以是文件名、搜索请求或其它标识符。
在用户为客户计算机规定URL之后,该URL的地址部分在网上被发送给指定的服务机构(例如域名服务机构(DNS)),以便获得如何与正确的本地服务器建立连接的指令。一旦与该服务器建立起连接,客户就能通过将本地资料正文串在网上直接发送给本地服务器查找所需的文档。然后,该服务器从其本地磁盘或存储器检索该文档并且将该文档在网上发送给客户。然后,终止该本地服务器与客户之间的网络连接。
计算机和网络工业的***分析员和专家目前十分关心网上通信业务量变得如此繁重,以致有可能使用因特网的道路的真性质可能发生变化。具体地说,现在,许多人认为因特网过于缓慢并且不再是及时交换资料的可靠入口。
现在的瓶颈无疑是用户数量和复杂文档(例如被发送的多媒体文件)的数量呈指数增长的结果。将更多的带宽简单地添加到服务器与客户之间的物理连接上。但是,这只有依靠在遍布全世界的家庭和街道安装高带宽的互连硬件,如同轴电缆或光缆以及相应的调制解调器才能实现。
此外,单独增加带宽或许不能保证性能的改进。具体地说,大的多媒体文件(例如电视娱乐节目)仍然可能代替优先权较高的数据(例如公司的电子邮件)。遗憾的是只要不修改现有的网络通信协议带宽分配计划就难以实现。在因特网上使用的通信技术(被称为TCP/IP)是简单而精巧的协议,它允许使用许多不同类型的计算机(例如苹果机、IBM兼容机和UNIX工作站)的人们分享数据。尽管有一些有野心的协议试图拓宽TCP/IP协议使地址可以包括有关数据包内容的报文,但是这些协议在技术上是复杂的并且需要成千上万个计算机网络操作员之间的配合。因此,指望修改现有的TCP/IP协议或许是不现实的。
一些人采用的途经是承认因特网的用户迅速增长将继续超出服务器的容量和通信媒体的带宽容量。这些计划以下述假设为起点,即假设客户-服务器基本模型(其中客户直接与本地服务器相连)是浪费资源的,特别是需要将资料从一个本地服务器广泛分配给许多客户。确实有许多实例说明因特网服务器由于它们缺乏适应意外要求的能力而简单地遭受失败。
为了减轻对本地服务器的要求,可以使用大的中心文档高速缓存器。高速缓存器是一种试图减少许多客户为同一文档向某个本地服务器提出重复请求的浪费的尝试。通过监听平行的请求,高速缓存器可以用于向多个客户位置提供同一文档的副本。
依据客户的观点,与高速缓存器的相互作用是这样发生的,即对于用户它是透明的但又略微不同于网络报文的立场。这种差别是当请求的地址部分提交给域名服务(Domain Name Service,DNS)查找连接本地服务器所需的资料时DNS的程序是为返回高速缓存器的地址而设计的,而不是为了返回原本有效的本地服务器。
另外,作为客户代理的服务器节点可以发出探测报文以便寻找高速缓存副本。一旦在特定的网络节点找到高速缓存副本,就将该报文发送给那个节点。例如,在国家科学基金的赞助下,已经将文档高速缓存器配置在美国的不同位置,以便消除跨洋网络连接处的瓶颈。具体地说,位于西海岸的那些高速缓存器处理亚洲、大洋洲和南美国家对文档的请求,而位于东海岸的那些高速缓存器处理欧洲对文档的请求。另有一些高速缓存器处理对遍布美国的大众文档的请求。
但是,这种高速缓存技术不是必需的或通常达不到文档请求装载的最佳分布。具体地说,为了最有效地使用高速缓存器,域名服务机构或其它报文路由机构必须得到适当的改造,以便监听对大众性期望值高的文档的请求。因此,引入高速缓存副本将增加名称分辨的通信附加费,因为需要确定过往副本的位置。在名称服务机构成立时,它们必须寄存这些副本、传播分配文档需求的资料以及保证及时消除对已取消的高速缓存副本的纪录。通常,高速缓存搜索命令是固定的,和/或文档分配中的变化必须通过人员干预才能完成。
遗憾的是,请求方式中频繁而明显的变化可能迫使高速缓存副本的合法身份、位置、甚至数量都是高度暂时性的。最终需要更新高速缓存器目录意味着通常不能有效地大规模地复制它们,因此这可能使名称服务机构本身变成瓶颈。
另一种可能实现高速缓存的途经是改变客户/服务器相互作用协议,使客户能利用全面分配协议主动识别适当的高速缓存副本,例如通过按随机化的方向发出探测信号。且不说修改现有协议的复杂性和这种途经带来的报文费用,这种计划也将一种或多种路由往返延迟加到客户能感觉到的总的文档服务执行时间。
本发明的概述
本发明是一个透明的分布式自动高速缓存方案,该方案利用文档请求通过计算机网络从客户到具体本地服务器上的具体文档所遵从的路径自然形成路由图(即路由树)这一事实。
按照本发明,高速缓存服务器遍布该网络,以致文档请求如果能沿着该路由图在某个中间节点实现,它将由该中间节点提供服务,将高速缓存文档返回到客户。因此,文档请求报文在它们到达本地服务器之前就得到响应。由于允许文档请求报文以与不存在高速缓存时相同的方式在从客户到本地服务器的上行方向上选择路由,所以,命名服务机构不需要改造。
为了能够以不脱离标准网络协议的方式为请求提供服务,高速缓存服务器在它相关的路由器中包括一个滤包器。该滤包器提取文档请求包,它很可能命中相关的高速缓存器。
高速缓存服务器还优选充当本地服务器的通信协议代理。这就是说,作为在中间节点位置实现文档请求报文的一部分,依据在使用的通信协议,适当的报文发送给该客户,以便欺骗该客户使之相信实际上已收到来自本地服务器的文档。
本发明还提供一种高速缓存服务器相互合作为客户请求报文提供服务的方式。具体地说,每个服务器都有基于其局部装载、在其毗邻的高速缓存器上装载、相邻通信路径装载和文档的大众性的高速缓存和废弃文档的能力。例如,每个服务器保留对其邻居装载的判断,并且将它自己的装载估计通知毗邻的高速缓存服务器。如果某个高速缓存服务器注意到它相对其任何邻居过载,它将停止装载,即将其一部分工作转移给它正在装载的邻居。为了这样做,高速缓存服务器还优选学习在扎根于给定本地服务器的路由图上其毗邻的上游节点(或母节点)和下游节点(或子节点)的标识符。
依据本发明的文档高速缓存***的基本概念有若干优点。
第一,该途经不需要请求查找高速缓存器索引的地址,不需要更改文档请求地址、或不需要以别的方式探测网络中其它要素以确定高速缓存副本的位置。因此,高速缓存副本的位置是沿着请求报文所遵从的自然路径偶然出现的。因此,客户不经历与网络中其它客户寻找适当的高速缓存副本相关的延迟或瓶颈。
此外,该***作为一个整体允许文档的高速缓存副本在需要时通过网络传播,这依次化解了在高速缓存器处和沿着通信路径的瓶颈。
因为高速缓存副本总是放在比客户近的原始服务器处,所以还相应地减少了网络带宽消耗和响应时间。所以文档请求报文和文档本身每次受到请求时通常不需要在该服务器与客户之间全程传送。因此,总网络带宽保持不变、响应时间减少、而负载更趋于全球平衡。
因此,本发明不仅有助于缩小主服务器之间装载要求的差别而且减少了在网络通信资源上的装载,同时不需要对现有的网络协议进行任何修改。
此外,因为高速缓存副本是通过网络分配的,所以在高速缓存***中没有一个预期的故障点,因而该***是稳定而可靠的。
这项技术还是可伸缩的,从感觉上讲添加了更多的高速缓存服务器,客户和服务器两者都将体验到同样的好处。
本发明还可以用于在网络中实现额外的功能。这些功能来源于下述事实,即配置在与高速缓存服务器相关的路由器的滤包器不是仅仅简单地将对文件副本的请求转移到本地高速缓存器。
例如,通过高速缓存服务器收集大众性的统计结果是必要的,以便控制高速缓存哪些文档。因此,每个高速缓存服务器保留接受过多少次文档查询以及这些查询来自何处的痕迹,并且能够确定请求的总量和请求的频率。这种数据可以在中心位置收集(例如通过联网区域),因此文档出版商不仅有可能获得有关其出版物的命中率的统计结果还有可能了解网络中的这种选择来自何处。这不仅对于文档的大众性分析是重要的而且对于电子商务和跟踪知识产权也是重要的。
依据服务供应商的观点,高速缓存服务器通过作为装载的分销商还可以用于主宰大众性文档(如数据库、搜索引擎索引文件等)的复制品。换言之,数据库供应商可以将他们的文档安排在网络中,向希望访问它的客户推出数据闭塞器,无论在哪里这或许都是最佳安排。
一组安全特征也可以轻易地安装到高速缓存服务器上。
这类特征之一是鉴别请求报文和其它资料的来源。这是可能的,因为高速缓存服务器保留关于文档请求报文和文档本身的实际来源的资料。该机理也从所有节点都有滤包器和数据包路由器这一事实产生。滤包器和数据包路由器不仅保留如何将请求转移到高速缓存副本的痕迹,而且保留限制访问高速缓存副本的痕迹,例如通过鉴别对该资料的请求。本发明还使各种类型的文档能够在网络中分配。例如,本发明允许文档压缩,这是另一种节省带宽的形式,或加密,只要特定的服务器和客户节点是通过利用高速缓存服务器提交给通信的,例如在包含若干高速缓存服务器的网络中沿着客户与服务器之间的路径的第一节点和最后一个节点。
本发明还允许有效地高速缓存动态内容的文档。这种动态内容文档是下述类型的文档,即准备返回到客户的东西飞快地变化,通常是按程序指令变化。当本发明确认在它的高速缓存器中存在动态内容文档时,它不仅高速缓存用于该文档的数据而且允许提取并执行规定如何显示该文档或何时取数据的程序。
由于减少了服务器与客户之间的网络节点数量,本发明还改进了储存的连续媒体(如声音和视频数据文件)的传输。
附图的简要说明
为了更全面地理解本发明提供的优点,必须参照附图阅读下面的详细说明,其中:
图1描绘典型的计算机网络,说明针对单一文档的请求路径和依据本发明沿该路径分布的高速缓存服务器的位置;
图2是通信层示意图,说明资源管理器、协议代理和***怎样用于实现本发明;
图3说明在网络上使用文档请求的几个典型阶段;
图4是依据本发明定位在路由选择路径上的叶片服务器所完成的操作的流程图;
图5是非叶片型的中间高速缓存服务器所完成的操作的流程图;
图6是在路由选择路径上最后一个高速缓存服务器所完成的操作的流程图;
图7说明中间服务器监听文档请求报文。
图8更详细地说明监听文档请求报文。
图9A和图9B说明在最坏情况的客户请求方案中扩散可能怎样继续进行;以及
图10说明高速缓存服务器如何实现文档转换功能。
本发明优选实施方案的详细叙述1.绪论
现在参照图1,计算机网络10(例如因特网、内联网、专用内联网、虚拟专用网、局域网或其它类型的计算机网络)由许多包括客户计算机12-1、12-2、12-3、…、12-4(统称客户12)、路由器14-1、14-2、…、14-10、高速缓存服务器16-1、16-3、16-4、16-6、16-8和16-10以及本地服务器20的网络实体组成。该网络可以使用任何不同类型的物理层信号传输媒体,例如公众电话网和专用电话网、微波链路、蜂窝电话和无线电话、卫星链路和其它类型的数据传输。
在图示的网络中,某些路由器14已经与它们的高速缓存服务器16相关联,而另一些路由器不与高速缓存服务器相关联。高速缓存服务器16包括各种类型呈高速缓冲存储器18-1形式的文档存储空间,其中高速缓冲存储器可以包括盘式存储器18-1-1和/或存储装置18-1-2。
客户12和本地服务器20象在现有技术中那样为了分配通常呈“文档”形式的各种各样的资料而工作。这种文档实际上可以包含文本、图片、画面、声音、电视节目、计算机程序和任何能按计算机文件或部分的计算机文件形式储存的各种类型的资料。此外,某些文档可以通过执行程序在请求访问它们时产生。
在下面的讨论中将假设网络10是因特网、资料是按超级文本传输协议(Hyper Text Transfer Protocol,HTTP)的格式编码的文档、以及文档请求报文是利用TCP/IP分层协议以统一资源定位符(URLs)的形式发送的。这对于理解其它类型的有线网络、开关网络和无线网络以及其它类型的协议(如FTP、Gopher、SMTP、NNTP等)可以使用本发明是有利的。此外,虽然本发明是按客户-服务器型通信模型的来龙去脉进行讨论的,但是应当理解本发明的原理可以等同地应用于同位体网络(peer-to-peernetworks)。
例如,对具体文档的请求报文起源于诸客户计算机之一,如客户12-1。该报文是客户12要本地服务器20发送当前储存在本地服务器20位置(比如在磁盘上)的文档副本的请求。该文档请求报文在其路径上按图示箭头的方向通过一个或多个路由器14(如路由器14-1、14-2、14-3)被传送到本地服务器20。
在诸如因特网之类的网络中,文档请求报文在到达其目的地之前通过路由器14可以途经多达15个或更多个节点或“跃距”。来自其它客户(如12-2、12-3或12-4)对同一文档的请求也通过其路径上不同的路由器14同时传送给本地服务器。
还应当理解,虽然在图1中路由器14和高速缓存服务器16被表示成分开的单元,但是它们的功能可以合并成一个单元。
模型对于理解多个客户对一份具体文档的请求如何在计算机网络10的路径上传送是有用的。模型是在文档请求报文通过网络传送到本地服务器20时由这些报文的路由选择算法效应导致的结构T。如图1所示,本地服务器20可以被看作是在结构T的根节点,文档请求以最远离根的叶节点级为起点,即在客户12-1、12-2、…12-4。结构T还包括许多位于路由器14处的中间节点。
尽管将朝给定的本地服务器20传送客户请求的这组路径的结构T描绘成无环的数据定向图,但是,现在的解释并非得益于追加的复杂性。具体地说,在一份具体文档被看作是定位在唯一的一个本地服务器处时,该结构可以被称为有单一根的树。如果可以使用图解模型,根据那个条件我们在此使用术语“树”来描绘结构T。考虑到这个模型,整个因特网可以被想象成树或图形的森林型结构,每棵树植根于不同的本地服务器20,这些本地服务器有责任提供某组文档的特许的永久性副本。
按照本发明,文档副本在网络中定位在高速缓存服务器16处。按照本发明,将高速缓存副本的布局(以及由此引起的装载扩散)约束在树结构T中的节点上。这避免需要客户通过直接接触本地服务器20或命名服务机构(如域名服务机构(DNS))查找高速缓存副本的位置,或通过探查网络搜索适当的高速缓存副本。
本发明还假设高速缓存服务器16就在文档请求报文沿着树从客户12到本地服务器20自然途经的路径上,高速缓存服务器16协助卸除在本地服务器20处的过剩装载,或者协助扩散其它潜在的性能瓶颈,如通信链路本身。实际上,已经与高速缓存服务器16缔合的路由器14在文档请求报文包通过时就对它们进行检查并监听任何它有可能通过提供高速缓存文档予以实现的请求。
在最一般地介绍本发明的操作时,文档请求报文沿着树从其起源客户(如客户12-3)朝本地服务器20上行。该文档请求报文沿着该路径所遇到的某些路由器(如路由器14-7)没有本地高速缓存服务器16,因此简单地将该文档请求报文向上发送给该树中的下一个Findeathe路由器(如路由器14-6)。
但是,另一些路由器(如路由器14-6)有本地高速缓存服务器16-6,在这种情况下该文档请求报文将受到考核以确定它是否正在寻找定位在本地高速缓存存储器18中的文档。如果在高速缓存服务器16-6处遇到高速缓存副本,那么将那份副本返回给客户12并且不允许该请求报文继续在其路径上朝本地服务器20传送。但是,如果在特定的高速缓存服务器16-6处没有找到高速缓存副本,该请求报文将继续在通向本地服务器20的路径上朝下一个路由器14-4传送。
当请求报文包进入路由器14时,该路由器首先将该请求报文送到在本文中称之为滤波器代码(the filter code)的路由器软件部分。路由器14的滤波器代码在必要时通过本地高速缓存服务器16予以更新。该滤波器代码取决于包的类型、高速缓存器容量、在本地高速缓存服务器16处的装载、或在增援通信链路上的装载。该滤波器导致监听该数据包(以便试图由本地高速缓存服务器16提供服务)或将该数据包送回路由器14以便确定该数据包在其通往本地服务器20的路径上应当采取的下一个跃距(hop)。
理想的是高速缓存服务器16的配置是这样的,它致使不需要改变客户12或服务器20的操作模式。另一个目标是有一种设计,它能被逐渐地部署到网络10的现有底层结构中。这也要求任何新机理是与现有的通信协议兼容的。
为了实现这个目的,高速缓存服务器16和与之缔合的路由器14优选由4个功能构件块组成,如图2的层次图所示。在较高层的协议级(例如应用层),高速缓存服务器16包括HTTP代理22和资源管理器24。在较低层(例如物理层),路由器通常提供数据包滤波器26和IP代理或监测器(snooper)28。
HTTP代理22有责任履行标准的HTTP协议,包括存储器管理和保存访问高速缓存文档必不可少的索引结构。如果HTTP代理22收到请求,而文档又不在本地高速缓存器18中,那么,它将请求从本地服务器20获取该文档,并且在该文档到达时对该请求作出反应。配置HTTP代理22是为了在收到资源管理器24的指令时高速缓存一些文档。
尽管图2展示两种类型的代理,即在HTTP级和IP级的代理,但是应当理解该配置还可以包括在其它级的代理,包括应用层、IP层、或在诸如传送层、话路层、表示层或其它层之间的某些其它层。
资源管理器履行协议使文档副本通过网络10扩散,下面将更详细地介绍。资源管理器24负责维护文档装载扩散机构使用的状态资料。资源管理器不仅可以通过编程管理在高速缓存服务器16本身上的装载,而且可以通过编程管理在诸路由器14相互连接所用的通信路径上的通信业务量。
为了实现这种装载管理或装载均衡技术,资源管理器24保存有关其毗邻高速缓存服务器30的合法身份和装载的资料。如何保存毗邻高速缓存服务器资料的细节下面将在第3节中讨论。
此外,资源管理器24辨别通过其毗邻的每个高速缓存服务器30收到的对高速缓存器18中每份文档的请求。这是通过保存对从毗邻的每个高速缓存服务器30收到的请求独立命中次数来完成的。资源管理器24利用这种资料计算待扩散的过剩装载所占的分数。一旦确定这些分数,资源管理器通知其欠装载的邻居们30它们应当承担哪些待高速缓存的文档和何种请求率。这些分数还被用于产生待注入缔合路由器14的新滤波器代码。类似的过程由欠装载的邻居们30完成。如果有必要,在欠装载的邻居20处的资源管理器24通知与其缔合的HTTP代理22将新文档添加到它的高速缓存器18中。
资源管理器24的其它责任包括邻域发现、将装载资料传播到毗邻服务器30以及发现潜在的壁垒并从潜在的壁垒恢复到装载平衡。这些机构将在下面更详细地讨论。
路由器14在协助高速缓存服务器16实现高速缓存服务器和/或通信路径平衡目标方面起积极作用。这是通过允许资源管理器24将功能性以代码形式注入路由器14,其中所述代码将提供滤波器26和监测器28。具体地说,所有通过未编址的路由器14直接向本地服务器20传送的数据包都首先被送到监测器28。监测器28检查数据包并确定其类型、目的地和被请求的文档。依据高速缓存服务器16的状态和数据包的类型,监测器28可能监听该数据包或者简单地沿着通向目的地的路径将该数据包朝通向本地服务器20的下一个跃距或路由器14发送。
为了确定被请求的文档是否在本地高速缓存服务器16处,监测器28对滤波器26提出质疑。如果滤波器26表明被请求的文档被高速缓存在本地并且可以提供服务,那么该数据包被监听并发送给资源管理器24。否则,将该数据包继续传送到通向目的地本地服务器20的下一个跃距。
监测器28通常了解TCP协议和TCP数据包和HTTP数据包两者的结构。监测器28的另一种功能性是提取HTTP请求数据包的副本并且将它们上行传送到资源管理器24。这个特征被用于协助资源管理器24发现其邻域和退出潜在的壁垒。2.处理TCP/IP网络中的HTTP文档请求
使用HTTP的网络10当前的配置取决于在客户12与服务器20之间提供可靠的端-端通信的分层TCP/IP协议。这种分层将正常处理请求报文分成3个步骤:建立连接(即呈{SYN}报文形式的TCP级三路信号交换)、呈{GET}形式的HTTP文档请求/重播、以及呈{FIN}形式的终止连接。
这种过程用图3描绘,其中客户12首先将带顺序号的{SYN}报文发送给本地服务器20,而本地服务器20返回一带肯定应答{ACK}的{SYN}报文。然后,客户12对这个报文作出反应以{GET}报文形式发送包括所需文档的URL的文档请求报文。然后,由本地服务器20将文档传送给客户12。在客户12返回肯定应答之后,服务器20和客户12通过交换{FIN}和{ACK}报文终止连接。
在这种环境中象前面解释的那样实际配置高速缓存服务器16的主要障碍是要求这些服务器识别客户12请求的文档。但是,如图3所示,URL资料通常是在与本地服务器20已经建立TCP/IP连接之后才由HTTP客户12播出。因此,一种可能的解决办法是与本地服务器建立所有的这类连接并且在中间路由器14处具有监听全部{GET}数据包的监测器28。即使这种方法或许能使本地服务器免除相当大量的装载,但是它仍然需要与这些文档缔合的TCP连接抵达本地服务器20,这达不到试图为本地服务器卸载的目的反而导致失败。在高需求期间,这类请求将相当于一大批对本地服务器20的{SYN}请求。此外,如果最初的{SYN}被监听,建立连接和拆除连接两者变得相当复杂。
为了克服这个障碍,在优选实施方案中,中间路由器14对TCP协议有某些了解。了解TCP的路由器14能够检测对所有HTTP服务器的TCP连接请求(即指向HTTP口的{SYN}数据包)并且有能力作为本地服务器20的代理或“欺骗”本地服务器20。
这种功能性是通过监测器28实现的。具体地说,监测器28定位在通向本地服务器20的路径上的路由器14中,它检查由此通过的数据包,识别这些数据包,并且监听指向HTTP本地服务器20的任何{SYN}数据包。当{SYN}数据包不包含识别客户12企图请求哪些文档的资料时,监测器28作为该本地服务器20的代理,或欺骗该本地服务器20,其方法是在客户12与高速缓存服务器16中的本地传输层之间建立连接并且注意客户12和该本地传输层两者最初使用的顺序号。
在建立连接之后,监测器28检查所有由此经过的数据包并且等待相应的{GET}请求。一旦收到{GET}请求,该监测器28将查询本地滤波器26和资源管理器24以确定被请求的文档是否被高速缓存。如果该文档被高速缓存,那么监测器28将HTTP{GET}报文朝本地资源管理器24发送,等待资源管理器24为该请求提供服务,然后终止连接。在相反的情况下,被请求的文档未被高速缓存(即滤波器28或资源管理器24失败)。此时可以采取几种不同的方法为该文档请求提供服务。
在第一种方法中,移交TCP连接,其中监测器28关闭半个服务器(即那半个与客户12建立TCP连接的被欺骗的服务器)并且在本地服务器20的方向上以复合捎带(composite piggyback){SYN+GET}报文的形式发送文档请求。此外,该{SYN+GET}报文包含将TCP连接的半个服务器移交给通向偶尔高速缓存被请求文档的本地服务器20的路径上的任何其它中间高速缓存服务器所需要的全部状态资料。
在第二种方法中,监测器可以作为TCP中继站,保持与客户12的连接并且将有关独立连接的{SYN+GET}报文在通向本地服务器20的路径上转发给下一个中间高速缓存服务器。
上述的移交方法可以用图4所示的流程图予以说明。这种方法是由一类特殊的高速缓存服务器16完成的,这类高速缓存服务器被称为叶片节点服务器38,这些服务器在树T中位于级别极低的节点上,即首先监听来自客户12的{SYN}数据包的服务器。在图1所描绘的树T中叶片节点服务器28是高速缓存服务器16-1、16-6和16-8。
如图所示,在图4的步骤41中,当叶节点服务器38接收{SYN}数据包时,本地服务器20通过直接在叶节点服务器38与客户12之间建立TCP连接被代理,或“被欺骗”。而后,该叶节点服务器38等待监听来自客户12的应答{GET}请求。
注意,这种欺骗是在下述意义上发生的,即在客户12与高速缓存服务器16之间交换的数据包是由监测器28在上述情景中修改过的。具体地说,正在为请求提供服务的高速缓存服务器16的网址被本地服务器20的网址取代并且在连接移交时高速缓存服务器16发出的字节顺序号不得不跟在叶片服务器38确定的顺序号后面。
返回到步骤41,如果在步骤42中被请求的文档通过滤波器28传递高速缓存器查询测试,并且如果该资源管理器22检测该文档是否在本地高速缓存器中和是否允许访问它,那么在步骤45中该文档请求将得到本地服务。在步骤45中,{GET}命令被送到资源管理器,然后该资源管理器转发被请求的文档。最后,通过再一次欺骗本地服务器和将{FIN}和{ACK}关闭报文发给客户将叶片服务器38与客户12之间的TCP连接关闭。
另一种情况是,如果在步骤42和43中出现失败,监测器28在本地服务器20的方向上发送{SYB+GET}数据包,然后关闭被欺骗的TCP连接的半个服务器,以使树上的另一个高速缓存服务器可以提供服务(如果可能的话)。图4中的步骤(d)和(e)可以是不同步的事件并且通常可以并行地发生。然后,在叶片服务器38处的监测器28不得不肯定应答接受{GET}请求。
在图1描绘的情景中,上游的非叶片中间节点39包括带高速缓存服务器16-3、16-4和16-10的那些节点。定位在非叶片节点39处的高速缓存服务器16需要以略微不同的方式处理{SYN+GET}数据包。具体地说,非叶片节点39中的监测器28仅仅在被请求的文档被高速缓存并且本地高速缓存服务器16有足够的能力为它提供服务的情况下才监听{SYN+GET}数据包。
图5是在非叶片中间节点39处完成这一过程的详细流程图。如图所示在步骤51中,为了为这种请求提供服务,监测器28在从自叶片节点38接收{SYN}时首先欺骗并且监听随后的{GET}请求。在随后的步骤52和53中,如前所述对滤波器26和资源管理器24进行查询,以确定{GET}请求是否能在本地处理。
如果该请求能在本地处理,步骤55通过建立TCP连接客户12的半个服务器、将{GET}发送给资源管理器24、将文档返回给客户12以及关闭TCP连接来完成对本地服务器20的代理。
如果{GET}报文不能在本地处理,那么执行步骤56,将{SYN+GET}传送给树T中的下一个节点。
在非叶片中间节点39中以不同方式处理{SYN+GET}数据包的主要优点是TCP连接仅仅向实际上具有被请求文档的特定中间节点39移交一次。另一个优点是{SYN+GET}包含移交连接所需要的全部状态资料(即没有补充状态资料要在叶片节点服务器38的监测器28与实际上高速缓存有被请求文档的中间节点39的监测器之间交换。)
以这种方式捎带{SYN+GET}数据包的缺点之一是本地服务器20将在没有适合它们处理这种数据包的传输协议的情况下不能适当地解释这种数据包。为了避免这个问题和保证在当前的网络协议下的可通用性,可以在本地服务器20解释所有的{SYN+GET}数据包之前通过要求将监测器28定位在最后的中间节点39来设置补充警戒。因此,在没有一个叶片节点服务器38或中间节点服务器39高速缓存被请求文档时,最后一个中间节点服务器39解释{SYN+GET}并将显式HTTP{GET}请求转发给本地服务器20。
为了适应这种情况,图5所示步骤54可以用图6所示种种处理代替。在这种情况下,在步骤61中,如果沿着路径T的下一个下游节点(即母节点)不是本地服务器20,那么进入步骤62,在这种场合将{SYN+GET}传送给T上的下一个中间节点。
但是,如果下一个节点是本地服务器20,那么完成步骤63。具体地说,监测器28建立TCP与客户12连接的半个服务器并且用对本地资源管理器24的{PROXY_GET}请求代替{SYN+GET}。资源管理器24将{PROXY_GET}请求转译成发送给本地服务器20的显式{GET}。然后,以同样的方式将本地服务器20应答的应答转发给客户12,仿佛该高速缓存服务器储存着被请求的文档。
到此为止已介绍的高速缓存技术的另一个缺点是沿着树T在具体客户12与本地服务器20之间的路径在叶片节点服务器38或中间节点服务器39决定为请求提供服务之后还可能变化。例如,在两个服务器节点之间失去网络连接或链路时可能发生这种情况。图7说明这种比较少见的情况,其中当高速缓存中间服务器16b处理来自客户12的文档请求时,在客户12与本地服务器20之间的路径将发生变化。所有由客户12发出的{ACK}现在将按照新路径通过新高速缓存服务器16X到达本地服务器20。这引起高速缓存服务器16b超时和重新转发其数据包。
为了解决这个问题,在服务器16b处的监测器28可以始终监视数据包被重新转发的的次数。如果数据包被重新转发的次数超过预定的次数(比如3次),于是监测器28则假设客户12与本地服务器20之间的路径已经变化。具体地说,监测器28废弃与客户12的连接并且废弃与高速缓存服务器16b的连接,同时欺骗本地服务器20并将重组数据包(即{RST}数据包发送给客户12。
在另一种方法中,分别向最接近客户12的叶片节点服务器28和最接近服务器20的最后数个跃距节点提供一条唯一可能通向客户12和服务器20的路由。这是通过在高速缓存服务器至高速缓存服务器的永久性TCP连接上有高速缓存服务器传送客户请求报文而不是简单地让这些请求报文遵从它们的自然路由来实现的。因此,这组作为一组适当地连接起来的TCP连接配置的连接自动地适应网络构型变化时在IP路由选择中发生的任何变化。3.邻域的发现
但是,为了资源装载平衡和本发明可能带来的其它优点,在相邻的高速缓存服务器的布局中所发生的任何变化还必须通过与邻近的高速缓存服务器通信进行检测。具体地说,每个参与上述计划的高速缓存服务器16都不得不确定哪些其它的服务器在其邻域。此外,在每个路由选择树T上,高速缓存服务器16不得不区分上游服务器(位于母节点上)和下游服务器(位于子节点上)。在树T中某个具体的节点i是节点j的母节点,如果i是从j到本地服务器20的路由上第一个高速缓存服务器,在这种情况下节点j也被称为节点i的子节点。
高速缓存服务器发现其邻域的方法之一需要来自其下级路由器14和监测器28的某种帮助。在选定的时刻,资源管理器24要求本地路由器14将邻域发现报文发送给在该路由器14保存的路由选择表中所有的目的地。
然后,这些邻域发现数据包被在该树中另一个有高速缓存服务器16的节点处给定的监测器监听。于是,进行拦截的高速缓存服务器16负责将应答信号发送给在那个发出邻域发现数据包的高速缓存服务器16处的资源管理器24,以便告知它是母节点(即它比发出数据包的高速缓存服务器更接近本地服务器20)和它所在树的合法身份。用于邻域发现数据包的目的地端口可以被赋予不同的端口编号,以便保证该目的地的本地服务器20不试图处理非拦截的邻域数据包。跃距计数字段也可以用于限制邻域发现数据包过分传送。
这种方法的主要缺点是它将以邻域发现数据包淹没网络。一种替代方法是使用文档请求报文数据包(即{SYN+GET}数据包),该数据包无论如何都经过每个高速缓存服务器16中的滤波器。
在这种方法中,每个文档请求报文包含识别前一个跃距的字段,该字段在上述情景中变成某个具体请求数据包所经过的最后一个高速缓存服务器16的标识符。
在请求经过路由器12时(即它未被监听),本地监测器28标明附加高速缓存服务器16的IP地址。当某个高速缓存服务器想要发现其邻域时,于是它指令其附加监测器28从请求数据包中提取最后观测的目的地和最后一个跃距地址,并且将这些资料向上传送给本地资源管理器24。
如图8所示,典型的HTTP{GET}报文遵从从客户12经过A到本地服务器20的路径并且被中间高速缓存器16c监听。在高速缓存服务器16c正在处理该请求时,在本地服务器20与客户12之间的路径发生变化,引起所有的肯定应答使用不同的路径。
在高速缓存服务器16c处的资源管理器24利用这个资料确定它在哪些路由选择树上以及在每个树上有哪些下游高速缓存服务器16。一旦高速缓存服务器16c确定服务器16b是其在该树T上的下游子节点,高速缓存服务器16c不得不明确地通知高速缓存服务器16b它是其在T上的母节点。为了减少在不同单元(即监测器28和资源管理器24)之间交换报文的次数,监测器28可以高速缓存许多数据包并且立刻将它们全部传送给资源管理器24。
邻域资料被保持一段时间,即邻域发现信号出现(neighborhood discovery epochs)的预定次数(例如两次)。如果没有通过子节点高速缓存服务器16b收到请求,那么该子节点高速缓存服务器16b将从高速缓存服务器16c的邻域模型中除去。然后,母节点高速缓存服务器16c还通知子节点高速缓存服务器16b它这样做的意图。
高速缓存服务器16也有可能在通向本地服务器20的路由选择树上没有母节点监测器28。在这种情况下,高速缓存服务器16b处的监测器28在本地服务器20的方向上发送邻域发现数据包。上游监测器(例如在服务器16c处)接收该数据包并通知16b在通向本地服务器20的路由选择树上它是其母节点。但是,如果在16b处的监测器28在通向本地服务器20的路由选择树上没有母节点(例如16c),它更换在邻域发现数据包上的16b地址并且在本地服务器20的方向上发送该数据包。
这种邻域发现方案有许多优点。首先,为了开始运行不必建造完整的适合高速缓存协议的路由选择树T。另一个优点是相互协作的高速缓存服务器16可以动态地发现和适应路由变化。最后,协议是按总体分布的,所以也是稳定的,不怕服务器出故障。4.装载平衡
不同于大多数其它的高速缓存方案,按照本发明的高速缓存方案要求将高速缓存副本在客户实际请求它们之前分配给高速缓存服务器16。换言之,是在预先考虑未来的文档请求时而不是在对客户12的某个具体文档请求报文作出响应时在诸高速缓存服务器16当中移动文档。
就高速缓存服务器16以及使它们相互连接的通信路径而言,上述的文档高速缓存和邻域发现方案适用于许多不同类型的高速缓存器装载分配和/或装载平衡目的。在优选的实施方案中,这种装载分配规划试图通过利用扩散严格依赖本地资料的高速缓存基础算法避免引入随着高速缓存***的规模迅速增长的内务操作。
具体地说,资源管理器24仅仅在路由选择树T中的上游节点(“母节点”)检测到某个装载较少的下游节点(“子节点”)或链路时才建立高速缓存副本,它可以通过给出一份其高速缓存文档的副本将一些它的文档服务装载移交给所述下游节点或链路。在此“装载”可以是许多不同的性能判据,例如请求实现率、客户响应时间或该服务器的繁忙时间百分比。
在相反方向上的不平衡使子节点删除一些它的高速缓存文档或用别的方法减少对希望为其服务的这些文档的请求率。
通常,按照某种尺度最经常被子节点请求的母节点文档是指向装载较少的子节点的文档。
类似地,当高速缓存服务器16必须选择从其高速缓存文档库18中删掉某些文档时,这些被删掉的文档将是那些通常最少被请求的文档。
更具体地说,在将装载移交给邻居时,高速缓存服务器16可以将文档分别压入或释放给子节点或母节点。通过在传统的装载扩散方法中不存在的扩散机理进行文档高速缓存有两个目的。这在需要高速缓存服务器确定哪些待复制文档以及什么样的文档请求率(即装载率)应当移交给欠装载的邻居30时是显而易见的。
第一个目的是确定高速缓存服务器如何选择准备传送给欠装载邻居30的文档。此刻的目的是提取网络中所有的高速缓存服务器16的最大容量。第二个目的是减少响应时间,其方法是全部通过创造最少数量的复制品使大众性文档比较接近客户而使大众性较差的文档远离客户。这些目的在同时考虑到高速缓存服务器16之间的通信路径装载时得以实现。
为了达到这些目的,位于节点i的过载的高速缓存服务器确定定位在子节点j处的最欠装载的高速缓存服务器,以致
Lj≤Lk,k∈Ci其中Li是在特定的高速缓存服务器i处的装载;Ci是这组所有的高速缓存服务器。过载的高速缓存服务器i将一小部分对最大众化的丈档的请求压入子节点j。特别是,如果丈档d具有下式所表达的性质,它将从节点i压入节点j: 其中D;是这组被高速缓存在节点i的文档。在其它方向上,如果满足下式,文档d将被节点i释放给节点j: 这个对策被称为最大一最小文档扩散,并且它将满足上述的头两个目的。
给定的高速缓存器可以被看成是一个准备以有助于最大限度地减轻装载的方式用文档填充的匣子。因此,与给定文档相关的装载越大,需要放在特定的高速缓存器文档的数量就越小。最大一最小文档扩散为了满足这第三个条件在高速缓存器中提供最少数量的文档。
现在已经确定了哪些文档待扩散,高速缓存服务器还必须计算出在它们将其装载移交给邻居时它们监听的请求率将发生怎样的变化。这个分数可以通过考虑高速缓存服务器如何压入一小部分文档强加的装载来决定。具体地说,假设节点i是节点j的母节点以及i相对j而言是过载的。此外,假设节点i希望将由它提供服务的对文档d的大量请求(等于总请求量的Rij(d))压入节点j。如果总请求量由下式定义:
βji(d)Δji(d)那么由节点i提供服务的对文档d的请求量将由下式给出: 并且在将Rij(d)份请求压入节点j之后节点i提供服务的请求量由下式给出: 其中:
Δ′ji(d)=Δji(d)-Rij(d)而且Δji(d)代表在压入节点j生效之后未被节点j监听的请求量。被节点i监听的Δ’ji(d)的新分数用β’ji(d)表示。还要注意:
Rij(d)=βji(d)Δji(d)-β′ji(d)Δ′ji(d)利用Δ’ji(d)和β’ji(d)的上述数值可以直接得出:
Rij(d)=βji(d)Δji(d)-β′ji(d)(Δji(d)-Rij(d))并且通过代数运算得出新的值: 在计算新分数β’ji(d)之后,节点i更新与其缔合的滤波器并且将文档d的副本传输给节点j。指示节点j将其监听的请求量增加Rij(d)。
一旦节点j收到这个资料,它计算: 并且将这些最新资料反映在它的本地滤波代码中。为了完成分析,请注意经过节点j滤波的请求量增加Rij(d)。还已知: 并且通过将β’mj(d)的新数值代入,得到: 并且通过代数运算得到:
=Pjj(d)+Rjj(d)从而完成分析。
对于大文档,本地高速缓存器18只包括一部分被请求的文档可能是有利的。在这个事件中,高速缓存服务器可以开始将本地高速缓存的文档部分提供给客户12,同时请求本地服务器20发送该文档的其余部分。
其它判据可以包括文档大小、文档类型、传输方向、与具体文档相关的优先权。
为了有利于为具有较高的优先权而确定的报文通信业务量,高速缓存服务器16和路由器12还可以使用通信缓冲器。
相同类型的相关文档或在某些方面被高速缓存服务器16认为是近乎连续地一起被请求的相关文档可以在同一操作中在高速缓存服务器之间移动。
因此,每个高速缓存服务器16都基于其本地装载、其邻居的装载、通信路径装载和文档的属性(如大众性、大小、移交成本等)被赋予高速缓存和废弃一些文档的能力。具体地说,每个高速缓存服务器保留对其邻居处装载的估计和/或在不同的时刻将这种估计或有关其实际装载的“随笔(gossips)”传送给相邻的高速缓存服务器16。如果高速缓存服务器16注意到它与其邻居相比在某些方面过载,它会如上所述将其一小部分预测未来的工作移交给其装载较少的子节点或母节点邻居。
因此,本发明还适用于装载分离,在这种场合就给定的本地服务器而言在路由选择树T中的同一路径上相邻的(“同胞”)节点可以分享对一份具体文档的请求装载。
上述的文档扩散算法可能在优化的装载分布中经历某些困难。具体地说,给定的高速缓存服务器j在它至少有两个子节点服务器k、k’和一个母节点高速缓存服务器i(例如,装载L)时可能变成潜在的壁垒,以致在每个服务器上的装载满足下式:
L′k≤Lj≤Li≤Lk并且高速缓存服务器j不高速缓存任何其欠装载的子节点服务器k所需要的文件。
图9(a)说明这种状况的一个实例。高速缓存***由一个本地服务器20(节点号1)和三个中间服务器39(节点号2、3、4)组成。请求刚刚由叶片节点产生,具体地说,文档d_1和d_2正在被节点4请求,而d_3正在被节点3请求。该图表示高速缓存副本在诸具体节点处的方位和通过每个高速缓存副本得到服务的请求。
在这个实例中,节点2处的高速缓存服务器16是潜在的壁垒。它不能将任何装载扩散到节点3处的高速缓存服务器,因为它没有高速缓存d_3。此外,节点2处的高速缓存服务器16由于承认存在问题将节点1处的高速缓存服务器隔离。
一种可能的优化装载分配将载荷均匀地分布在所有的四个节点当中,其中每个节点为若干请求提供服务。图9(b)说明满足这个条件的文件高速缓存器和载荷的分布。
但是,基于扩散的方案可以更改,以致高速缓存服务器16能够检测到图9所示的这种令人不快的状态并退出这种状态。具体地说,高速缓存服务器k可以假设:如果在一段时间内(即定时信号出现(time epochs)次数多于预定次数(例如两次))k相对j仍然保持欠装载状态且j未采取行动纠正这种欠装载状况,那么其母节点服务器j就是潜在的壁垒。在图9(b)所示实例中,高速缓存服务器k对应于节点3,而高速缓存服务器j与节点2相对应。在检测缺乏来自其母节点k的扩散装载时,子节点可以推断母节点没有高速缓存任何被植根于k的子树所请求的文档。一旦最终要它为这些文档的副本服务,于是服务器k可以正常地高速缓存它们。这项技术被称为隧道效应,因为在这种情况下即使有代表高装载壁垒的母节点j存在k也能够获得并高速缓存那些副本。5.其它特征
本发明在网络中可以用于实现附加的功能性。这些不同的功能是下述事实的直接结果,即定位在路由器14处的滤波器26可以做更多的工作,不仅仅是简单地将对文档副本的请求转交给本地高速缓存服务器16。
例如,必不可少的是由高速缓存服务器16收集文档的大众性统计结果,以便控制哪些文档需要高速缓存以及将储存在哪个高速缓存服务器中。每个节点处的高速缓存服务器16保留对正在入网的具体文档的访问次数、纪录这些文档是从何处入网的、并且了解累积请求量。
这个数据可以在中心位置收集,并且由数组高速缓存服务器16包办,例如由定位在某个特定网络区域中的数组高速缓存服务器16包办。通过以这种方式收集数据,文档出版商不仅有可能获得有关特定客户对其材料的“命中率”的统计结果,而且有可能得知命中者来自网络10的哪个子区域。
本发明还在预测需求时使加速分布型文档能够进入网络10。
高速缓存服务器16还可以依据服务供应商的观点通过充当装载分离器被用于数据库、搜索索引文件和其它大众性文档的主复制品。换言之,数据库供应商可以安排将他们的文档放入网络10,向希望访问它的客户推出数据闭塞器,无论在哪里或许都是这些安排。
高速缓存服务器还可以实现请求报文和其它资料的来源鉴别。能够这样做是因为高速缓存服务器16自动地保留关于客户12的资料,它是具体文档请求报文的来源。如果客户12不在该文档的授权请求者之列,该请求报文甚至在它达到本地服务器20之前就可能被高速缓存服务器终止。
选择性保安措施也可以提供。该机构起源于下述事实,即每个节点都有滤波器26、资源管理器24、高速缓存器库18和HTTP代理22。滤波器26不仅可以跟踪对高速缓存副本的请求是如何转交给HTTP代理22的,而且可以限制对该高速缓存副本的访问,例如通过鉴别对该资料的请求。只要沿着从客户12至服务器20的路径第一和最后一个跃距是可以信任的(因为在高速缓存服务器16之间的链路可以轻易地被安排成可信任的链路),就可以在客户12和本地服务器20之间提供经由高速缓存服务器16的安全链路。
更一般地说,高速缓存服务器16可以在本地服务器20分配文档期间在若干个点变换这些文档并且随后移交给客户12。这些变换可以允许和/或实现若干使高速缓存文档或程序增值的特征,包括文档和/或程序的压缩或加密特征。此外,任何已知的保安技术都可以作为变换在源头、终点或两者(在交易的情况下)予以应用。除了加密和解密之外,这些保安技术包括鉴别、授权(访问控制)、非拒付(non-repudiation)和完整性控制。这些保安技术可以使用通常需要钥匙的密码技术,并且非必选地使用通向高速缓存服务器的物理路径以强化鉴别、授权和非拒付。
在典型的应用中,这些变换将是匹配的(例如,对于每种加密都应当有匹配的解密)和单独使用的。但是,在不同的点按文档的有效期它们也可以是复合的。例如,文档在不同的点可以是压缩的、加密的、解密的和解压缩的。
图10说明一种有可能将变换应用于文档的方法。在这个实例中,在本地服务器20分配文档并将它移交给客户12时,迥然不同的变换可以发生在四个不同的时间:
在时间T1,客户12发出请求;
在时间T2,该请求被传送到服务器20;
在时间T3,服务器20发送应答信号;
在时间T4,该应答信号被传送到客户12。
注意,即使图10中的变换与通信的四个阶段相关联,这些变换也是由这些节点本身完成的。因此,T1可以是高速缓存服务器16-6收到请求后对该请求所完成的变换,或者是客户12在发送请求之前对它完成的变换。在前一种情况中,高速缓存服务器16-6正在完成变换。在后一种情况中,客户12正在完成变换并且仅仅在挖掘穿越高速缓存服务器16-6的隧道。类似地,当该请求向本地服务器20传送时,变换T2由高速缓存服务器16-7或本地服务器20完成。在应答信号从本地服务器20发出并最终传送到客户12时,同样的替代方案可以应用于T3和T4。
在按图10完成的变换具有重要作用的场合,这些变换(或者任何要求不同于该文档的输入的其它变换)处于保安措施的关键部位。如果高速缓存服务器16本身配备有保安措施,在需要时必须将密匙分配给高速缓存服务器16。在这种情况下,可以通过在客户12与高速缓存服务器16-6之间以及在高速缓存服务器16-7与本地服务器20之间添加保密信道来提供端-端保安措施。如果客户12和本地服务器20配置了它们自己的端-端保安措施,那么高速缓存服务器16不防碍,并且有可能协助,将密匙分配给客户12和本地服务器20。
图10表明高速缓存服务器16-6和16-7在该网络的边缘,借此在客户12与高速缓存服务器16-6之间以及在高速缓存服务器16-7与本地服务器20之间有直接的路径。但是,在此介绍的方案不防碍在变换由中间高速缓存服务器16-9和16-10完成时所用的更一般的布局。换言之,在请求、应答或两者期间变换可以在图10中的中间高速缓存服务器16-9、16-10处进行。
只要是通过使用高速缓存服务器16来责成具体的本地服务器20和客户12进行通信,该方案还允许用于透明的文档压缩形式,该形式是另一种节省带宽的形式。具体地说,沿着客户12与服务器20之间的路径在第一跃距之后,第一叶片节点服务器16-6可以以对客户12和本地服务器20两者都透明的的方式完成压缩或加密。
文档在传送前还可以进行病毒扫描或代码检查。
本发明还允许有效地高速缓存动态内容的文档,在这种场合哪些数据被实际返回给客户的最终结果在传输时发生变化。这种文档可以包括已经嵌入Java代码的文档。
高速缓存服务器16可以通过高速缓存该文档的数据以及在取回该数据时如何显式该文档的程序来完成这种动态内容文档的有效分配。如果该程序属于在客户12处能在显式该文档时正常执行的那种类型,那么程序和数据可以简单地转移给客户12。
但是,如果该程序属于客户12期待它将在本地服务器20上运行的类型,那么高速缓存服务器16通过运行该程序完成追加水平的本地服务器欺骗。在这个实例中,必不可少的可能是高速缓存服务器16保持与客户12相互交流的状态以便完成欺骗本地服务器20。
本发明还由于减少了本地服务器20与客户12之间的跃距数量对储存媒体(如声频数据文件和视频数据文件)的移交做了特有的改进。
尽管我们已经展示并介绍了几个按照本发明的实施方案,但是,应当理解,本发明并非仅限于此,而对于熟悉这项技术的人所知道的各种各样的变化和改进是敏感的,所以我们不希望局限于在此展示和介绍的细节,而倾向于覆盖所有原本熟悉这项技术者显而易见的变化和改进。
Claims (77)
1.在包含众多利用通信协议进行网上通信的计算机的***中,一些在网络节点上的计算机作为本地服务器(或简称服务器)用于以文档的形式存储资料,而另一些计算机作为客户在应用层将文档请求报文发送给服务器,其中文档请求报文是请求储存在服务器的文档,在该***中一种实现文档请求报文的方法包括下述步骤:
(a)将文档的本地高速缓存副本储存在网络中的众多中间节点位置;以及
(b)在响应其中一个具体客户时,产生倾向于发送给某个特定服务器的特定应用层文档请求报文,在低于该应用层选定的通信层监听文档请求报文并将一份本地高速缓存副本返回客户所在的应用层,借此来实现特定应用层的文档请求报文,以致该应用层请求报文在中间节点被较低层监听而且服务器上的应用层不接收应用层文档请求报文。
2.根据权利要求1的方法,其中在选定的中间节点进一步包括如下步骤:
(c)如果特定的文档请求报文不能通过提供一份本地高速缓存副本得以实现,将该文档请求报文发送到另一个节点。
3.根据权利要求1的方法,其中在至少一个既非客户又非服务器的中间节点中实现特定文档请求报文的步骤进一步包括如下步骤:
(c)储存特定文档的本地高速缓存副本,这些文档副本也被储存在其它中间节点;
(d)确定储存本地高速缓存副本的毗邻中间节点的合法身份;以及
(e)基于文档请求报文装载资源在中间节点的可用性在中间节点和毗邻中间节点之间分配执行文档请求报文。
4.根据权利要求3的方法,其中报文装载执行资源包括高速缓存器。
5.根据权利要求3的方法,其中报文装载执行资源包括通信路径装载。
6.根据权利要求3的方法,其中分配执行文档请求报文的步骤进一步包括如下步骤:
(f)在中间节点和毗邻节点之间交换状态报文,该状态报文包括选自处理装载、通信路径装载、文档大小、文档请求报文响应时间、文档请求报文的请求率、文档请求报文的变化率或本地服务器可操作性中至少一项的资料。
7.根据权利要求1的方法,其中实现特定文档请求的步骤通过进一步包括如下步骤进一步完成在诸节点相互连接的路径之间分配通信路径装载:
(c)储存特定文档的本地高速缓存副本,这些文档副本也被储存在其它中间节点;
(d)确定储存本地高速缓存副本的毗邻节点的合法身份;以及
(e)基于通信路径装载在中间节点和毗邻中间节点之间分配执行文档请求报文。
8.根据权利要求2的方法,该方法在选定的中间节点进一步包括如下步骤:
(d)确定第一毗邻节点的合法身份,其中特定文档请求报文是从该节点收到的;以及
(e)如果该特定的文档请求报文不能通过将本地高速缓存副本返回给客户,在通往本地服务器的路径上为特定文档请求报文确定通向第二毗邻节点的路径,并确定该第二毗邻节点的合法身份。
9.根据权利要求8的方法,其中储存本地高速缓存副本的步骤进一步包括如下步骤:
(f)确定第一毗邻节点的节点状态参数和本地节点的节点状态参数,并且在第一毗邻节点和本地节点的状态参数彼此相差预定量时将至少一份本地高速缓存副本传送给第一毗邻节点以便储存在第一毗邻节点位置。
10.根据权利要求9的方法,其中节点状态参数选自:请求的实现率、请求实现率的变化、文档大小、文档提请响应时间、通信路径装载、高速缓存服务器装载、或本地服务器的工作状态。
11.根据权利要求8的方法,其中储存本地高速缓存副本的步骤进一步包括如下步骤:
(f)确定第二毗邻节点的节点状态参数和本地节点的节点状态参数,并且在第二毗邻节点和本地节点的状态参数相差预定量时至少删除一份本地高速缓存副本。
12.根据权利要求11的方法,其中节点状态参数选自请求的实现率、请求实现率的变化、文档大小、文档提请响应时间、通信路径装载、高速缓存服务器装载、或本地服务器的工作状态。
13.根据权利要求8的方法,其中储存本地高速缓存副本的步骤进一步包括如下步骤:
(f)确定第二毗邻节点的节点状态参数和本地节点的节点状态参数,并且在第二毗邻节点和本地节点的状态参数相差预定量时,在滤波步骤中通过向客户提供本地高速缓存副本实现降低文档请求的比例。
14.根据权利要求1的方法,其中滤波步骤进一步包括如下步骤:
(c)如果本地节点的节点状态参数不同于预定量,那么将本地高速缓存副本返回给客户。
15.根据权利要求1的方法在选定的中间节点进一步包括如下步骤:
(c)纪录与通过向客户提供一份本地高速缓存副本实现的请求报文数有关的装载统计结果。
16.根据权利要求1的方法在选定的中间节点进一步包括如下步骤:
(c)纪录与收到并实现对特定文档的请求报文数有关的请求报文统计结果。
17.根据权利要求1的方法在选定的中间节点进一步包括如下步骤:
(c)纪录与收到的对储存在特定服务器中的文档的请求报文数有关的响应时间统计结果。
18.根据权利要求1的方法,其中文档请求报文是在众多通信路径上的诸中间节点接收的,并且该方法在选定的中间节点进一步包括如下步骤:
(c)纪录请求报文统计结果以便跟踪从特定路径接收的文档请求报文。
19.根据权利要求1的方法,其中文档请求报文是在众多通信路径上的诸中间节点接收的,并且该方法借助选自全面网络请求和区域网络请求的判据或借助客户的特殊请求进一步预测通信路径的用途。
20.根据权利要求1的方法,其中滤波文档请求报文的步骤进一步包括如下步骤:
(c)在发送文档请求报文之前鉴别来自客户的文档请求报文所抵达的节点。
21.根据权利要求1的方法,其中滤波文档请求报文的步骤进一步包括如下步骤:
(c)在将本地高速缓存副本返回给客户之前鉴别高速缓存文档的源节点。
22.根据权利要求1的方法,其中服务器也储存运行文档的程序,并且在中间节点步骤(b)还包括如下步骤:
(c)在从服务器获得与被请求的文档副本有关的某些选定程序时储存那些选定程序的本地高速缓存副本。
23.根据权利要求22的方法,该方法还另外包括如下步骤:
(d)在中间节点按来自客户的要求执行选定程序的本地高速缓存副本。
24.根据权利要求22的方法,该方法还另外包括如下步骤:
(d)保留在中间节点与客户之间的交互式通话,以致万一服务器已实现文档请求报文,中间节点将作为服务器发挥作用。
25.根据权利要求1的方法,其中文档请求报文的滤波步骤还另外包括如下步骤:
(c)将选定的程序施加给本地高速缓存副本,以便在将施加程序的结果返回客户之前获得该结果。
26.根据权利要求1的方法,其中所述文档选自多媒体文档、程序、数据库、压缩数据或加密数据。
27.根据权利要求8的方法,其中所述多个中间节点是定位在服务器和客户之间的,并且具体文档是通过将它发送给取决于预期文档需求率的众多节点被放进网络的。
28.根据权利要求9的方法,其中所述预定的请求实现率取决于选自预期的请求实现率、请求实现率的预期变化、文档大小、预期的文档提取响应时间、预期的通信路径装载或预期的高速缓存服务器装载的文档属性。
29.根据权利要求1的方法,该方法在选定的中间节点进一步包括如下步骤:
(c)将指出本地高速缓存副本释放条件的数据与本地高速缓存副本一起储存起来;以及
(d)只有在该条件得到满足时才将本地高速缓存副本返回给客户。
30.根据权利要求29的方法,其中所述条件是释放该文档的时间。
31.根据权利要求1的方法,其中储存高速缓存副本的步骤是基于预定的条件判据有选择地执行的。
32.根据权利要求31的方法,其中预定的条件判据包括时钟指示的时间。
33.根据权利要求31的方法,其中预定的条件判据是选自文档大小、所需的文档请求报文响应时间、文档请求报文率、文档请求报文率的变化率、服务器装载、通信路径装载或本地服务器的工作状态的至少一个判据。
34.根据权利要求1的方法,其中储存高速缓存副本的步骤进一步包括储存比预定尺寸大的部分文档副本的步骤。
35.根据权利要求1的方法,该方法进一步包括如下步骤:
(c)基于预定的条件判据有选择地执行删除文档的高速缓存副本。
36.根据权利要求35的方法,其中预定的条件判据包括时钟指示的时间。
37.根据权利要求35的方法,其中预定的条件判据是选自文档大小、所需的文档请求报文响应时间、文档请求报文率、文档请求报文率的变化率、服务器装载或通信路径装载的至少一个判据。
38.根据权利要求1的方法,其中储存高速缓存副本的步骤进一步包括储存比预定尺寸大的部分文档副本的步骤。
39.一种提供适合在计算机网络中操作的逻辑通信网络的方法,在该网络中计算机通过众多路径在众多节点相互连接,该逻辑通信网络允许在第一网络节点的计算机安全地与在第二网络节点的第二计算机通信,该方法包括如下步骤:
(a)沿着在第一节点和第一中间节点之间的路径提供安全的通信路径作为在第一节点和第二节点之间通信路径中的第一跃距;
(b)在第二节点和最后一个中间节点之间提供安全的通信路径作为在第一节点和第二节点之间通信路径中的最后一个跃距;以及
(c)将密钥提供给第一和最后一个节点,并且第一中间节点在将资料发送给路径中另一个中间节点之前用该密钥给该资料加密,而最后一个节点在将该资料发送给第二中间节点之前用该密钥给该资料解密,从而在第一和最后一个节点之间提供安全的通信路径。
40.一种提供适合在计算机网络中操作的通信网络的方法,其中计算机通过众多路径在众多节点相互连接,该通信网络允许在第一网络节点的计算机与位于第二网络节点的第二计算机通信,该方法包括如下步骤:
(a)沿着在第一节点和第一中间节点之间的路径提供通信路径作为在第一节点和第二节点之间通信路径中的第一跃距,所述通信路径包括众多路径;
(b)沿着在第二节点和最后一个中间节点之间的路径提供通信路径作为在第一和第二节点之间的路径中的最后一个跃距;以及
(c)将压缩和解压缩功能提供给第一中间节点和最后一个中间节点,并且第一中间节点在将资料发送给路径中另一个中间节点之前利用压缩功能压缩该资料,而最后一个中间节点在将该资料发送给第二中间节点之前利用解压缩功能给该资料解压缩,从而在第一和第二中间节点之间提供压缩带宽的通信路径。
41.根据权利要求1的方法,该方法进一步包括如下步骤:
(c)在服务器处,将一个文档截止时间标记附着到该文档上;
(d)在中间节点处,检验附着在高速缓存文档上的时间标记,以确定该文档是否已经过期;
(e)如果该高速缓存文档已经过期,则删除或刷新它。
42.根据权利要求1的方法,该方法进一步包括如下步骤:
(c)在服务器处,将一个文档修改时间标记附着到该文档上;
(d)在中间节点处,评估该文档的修改率,并且如果文档修改率大于请求率某个预定量,则删除该高速缓存副本;如果修改率小于请求率某个预定量,则请求更新后的高速缓存副本。
43.在包含众多利用分层通信协议进行网上通信的计算机的***中,一些在网络节点上的计算机作为服务器以文档形式储存资料,而另一些计算机作为客户在应用层上将文档请求报文发送给诸服务器,其中文档请求报文是对储存在服务器处的文档的请求,通过透明的代理实现文档请求报文的方法包括下述步骤:
(a)将文档的本地高速缓存副本储存在该网络中的众多中间节点位置;以及
(b)在响应其中一个具体客户时,产生倾向于发送给某个特定服务器的特定应用层文档请求报文,在某个中间节点位置通过监听文档请求报文并将一份本地高速缓存副本返回客户所在的应用层,借此来实现特定应用层的文档请求报文,以致应用层请求报文在中间节点被监听而且不与服务器上的应用层建立网络连接。
44.根据权利要求43的方法,其中中间节点包括高速缓存服务器和路由器,并且该方法在路由器处进一步包括如下步骤:
(c)确认待监听的文档请求报文,并且提取这样的报文供高速缓存服务器处理。
45.根据权利要求1的方法,该方法进一步包括如下步骤:
(c)同时一起预取有关的文档,其中有关文档是那些近乎连续地最频繁地被请求的文档。
46.根据权利要求1的方法,该方法进一步包括如下步骤:在客户处,
(c)产生一个连接请求报文,该请求报文请求在客户与服务器之间建立一条通信路径;以及在中间节点处,
(d)在收到来自客户的连接请求报文时,等待接收文档请求报文,然后将连接请求报文和文档请求报文一起发送给路径中的下一个中间节点。
47.根据权利要求46的方法,该方法进一步包括如下步骤:在高速缓存该请求报文所指定文档的中间节点,
(e)对客户肯定应答连接请求,并将被请求的文档返回给客户。
48.根据权利要求1的方法,该方法进一步包括如下步骤:
(c)操作某个高速缓存服务器,该服务器这样选择准备存入本地高速缓存器的文档和准备从该本地高速缓存器中删除的文档,以致该高速缓存服务器选出受到最频繁请求的文档复制在位于该路径中某个节点的毗邻高速缓存服务器中,并且选出最不经常受到请求的文档从其本身的存储器中删掉。
49.根据权利要求1的方法,其中每个中间节点包括与其相关的资源管理器,并且该资源管理器完成如下步骤:
(c)分配用于缓冲进出报文的通信缓冲器的使用以有利于被指定为比较重要的报文交流。
50.根据权利要求49的方法,该方法包括如下步骤:
(d)基于选自文档大小、文档类型、传输方向或优先权的内容属性分配通信缓冲器和通信路径带宽。
51.根据权利要求1的方法,该方法进一步包括如下步骤:在中间节点,
(c)将该中间节点处的节点状态参数与毗邻服务器处的节点状态参数进行比较;以及
(d)如果该毗邻服务器和该中间节点的节点状态参数相差的预定量比预定的时间周期多,则意味着该毗邻节点没有高速缓存该中间节点正在请求的一份或多份文档。
52.根据权利要求51的方法,其中节点状态参数选自请求实现率、请求实现率的变化、文档大小、文档提取响应时间、通信路径装载、本地服务器的可操作性或高速缓存服务器装载。
53.在包含众多进行网上通信的计算机的***中,一些在网络节点上的计算机作为服务器以文档形式储存资料,而另一些计算机作为发送文档请求报文的客户,其中文档请求报文是针对储存在那些服务器处的文档的请求,为了装载而确定实现文档请求报文的坐标位置的方法包括下述步骤:
(a)将文档的本地高速缓存副本储存在该网络中的众多中间节点位置,并且在响应其中一个具体客户时,产生一个倾向于发送给某个特定服务器的特定的文档请求报文;
(b)在某个中间节点位置通过返回一份对应于在特定文档请求报文中所规定的文档的本地高速缓存副本来实现该特定的文档请求报文,以致在中间节点位置的应用层监听请求报文,而服务器上的应用层不接收该文档请求报文。
54.根据权利要求53的方法,该方法进一步包括如下步骤:
(c)在这些中间节点位置,协调在这些中间节点位置当中储存高速缓存副本和分离文档复制的步骤,以便在中间节点高速缓存服务器或本地服务器上分配文档请求报文装载。
55.根据权利要求53的方法,该方法进一步包括如下步骤:
(c)在这些中间节点位置,协调在这些中间节点位置当中储存高速缓存副本和分离文档复制的步骤,以便分配通信路径装载。
56.根据权利要求53的方法,其中为了减少文档装载而协调在这些中间节点位置当中储存高速缓存副本的步骤包括如下步骤:
(c)在毗邻节点位置,复制一些文档。
57.根据权利要求53的方法,其中在诸中间节点位置储存文档副本的步骤进一步包括如下步骤:
(c)基于预定的判据具体地使这些副本可用于或不可用于实现文档请求。
58.根据权利要求57的方法,其中预定的判据是时钟指示的时间。
59.根据权利要求53的方法,其中在诸中间服务器之一实现特定文档请求报文的步骤进一步包括如下步骤:
(c)开放叶片节点和服务器之间的通信连接,该叶片节点是最初接收来自客户的文档请求报文的中间节点位置之一;以及
(d)将文档请求和通信连接传送给另一个中间节点,该中间节点在网络中的位置比叶片节点更接近该服务器。
60.根据权利要求53的方法,其中在诸中间服务器之一实现特定文档请求报文的步骤进一步包括如下步骤:
(c)开放叶片节点和服务器之间的通信连接,该叶片节点是最初接收来自客户的文档请求报文的中间节点位置之一;以及
(d)将该文档请求转移到另一个中间节点,该中间节点在网络中的位置比该叶片节点更接近该服务器。
61.根据权利要求53的方法,其中高速缓存服务器进一步完成如下步骤:
(c)依据客户的意见充当本地服务器的通信代理。
62.根据权利要求53的方法,其中实现文档请求报文的步骤还控制对文档的访问,并且该方法包括如下步骤:
(c)基于文档请求报文中的统一资源定位符(URL)字段完成文档请求报文的滤波。
63.根据权利要求53的方法,其中实现文档请求报文的步骤还控制对文档的访问,并且该方法包括如下步骤:
(c)基于文档请求报文中的鉴别字段完成文档请求报文的滤波。
64.根据权利要求53的方法,其中将文档的高速缓存副本返回给客户的步骤进一步包括如下步骤:
(c)对该文档的病毒扫描。
65.根据权利要求53的方法,其中将文档的高速缓存副本返回给客户的步骤进一步包括如下步骤:
(c)对该文档的代码认证。
66.根据权利要求53的方法,其中将文档的高速缓存副本返回给客户的步骤进一步包括如下步骤:
(c)该文档的解码。
67.根据权利要求53的方法,其中将文档的高速缓存副本返回给客户的步骤进一步包括如下步骤:
(c)基于客户鉴别和本地服务器请求,控制对该文档的高速缓存副本的访问。
68.一种在计算机网络中实现对资料的请求的方法,其中至少有一些计算机作为本地服务器用于储存资料,并且至少有一些计算机作为客户将请求报文发送给这些本地服务器,该方法包括如下步骤:
(a)借助将所述资料的副本储存在众多在网络中充当高速缓存服务器的计算机中,在网络上分布该资料的高速缓存副本;
(b)确定请求报文经过网络中众多中间计算机从客户至服务器的路由,其中至少有一些中间计算机充当高速缓存服务器,请求报文始于其中一个具体客户,以便从其中一个特定服务器获得资料;以及
(c)在这些请求报文途经这些服务器时透明地处理它们,以致那些能由高速缓存服务器代替本地服务器提供服务的请求报文就由高速缓存服务器以对客户和本地服务器透明的方式提供服务。
69.根据权利要求59的方法,该方法包括如下步骤:
(d)对涉及高速缓存服务器为请求报文服务的预定判据的响应,使高速缓存副本自动地在网络中的诸高速缓存服务器当中移动。
70.根据权利要求1的方法,其中多媒体文档包含选自文本、图片、声音、电视节目或其它数据的数字化资料。
71.根据权利要求1的方法,其中网络包括无线网络。
72.根据权利要求1的方法,其中诸中间节点还完成如下步骤:
确定特定的通信实体是否已经失效,如果失效,通知另一个网络实体。
73.根据权利要求72的方法,其中所述通信实体是路由器、通信路径或通信路径之一。
74.根据权利要求72的方法,其中其它网络实体是另一个中间节点、网络管理器或其它联网的计算机***之一。
75.根据权利要求57的方法,其中预定判据是客户发出的通知。
76.根据权利要求57的方法,其中预定判据是本地服务器发出的通知。
77.根据权利要求2的方法,该方法包括如下步骤:在选定的中间节点,
(d)确定接收特定的文档请求报文的第一毗邻节点的合法身份;
(e)确定在通向本地服务器的路径上特定的文档请求报文将途经的第二毗邻节点的合法身份;
(f)如果由于在该中间节点出现失败的或缓慢的处理不能由该中间节点令人满意地实现特定的文档请求报文,则变更路径以便绕过该中间节点。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/861,934 | 1997-05-22 | ||
US08/861,934 US6167438A (en) | 1997-05-22 | 1997-05-22 | Method and system for distributed caching, prefetching and replication |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1260890A true CN1260890A (zh) | 2000-07-19 |
Family
ID=25337146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98806358A Pending CN1260890A (zh) | 1997-05-22 | 1998-05-15 | 分布式高速缓存、预取和复制的方法和*** |
Country Status (9)
Country | Link |
---|---|
US (1) | US6167438A (zh) |
EP (1) | EP0983558A2 (zh) |
JP (1) | JP2001526814A (zh) |
CN (1) | CN1260890A (zh) |
AU (1) | AU737742B2 (zh) |
CA (1) | CA2290786A1 (zh) |
NZ (1) | NZ501380A (zh) |
WO (1) | WO1998053410A2 (zh) |
ZA (1) | ZA984298B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101164057A (zh) * | 2004-06-30 | 2008-04-16 | 赛特里克斯网络应用有限责任公司 | 用于在数据通信网络中执行结合的高速缓存的方法和设备 |
CN100486170C (zh) * | 2005-12-15 | 2009-05-06 | 国际商业机器公司 | 传送前摄http内容的方法和设备 |
CN1925462B (zh) * | 2005-09-01 | 2010-05-26 | 株式会社日立制作所 | 高速缓存*** |
CN1628452B (zh) * | 2002-05-17 | 2010-09-01 | 株式会社Ntt都科摩 | 传输序列的碎片整理 |
CN101764824B (zh) * | 2010-01-28 | 2012-08-22 | 深圳市龙视传媒有限公司 | 一种分布式缓存控制方法、装置及*** |
CN102665096A (zh) * | 2010-12-20 | 2012-09-12 | 微软公司 | 无线分发***代理高速缓存 |
CN103974082A (zh) * | 2013-01-25 | 2014-08-06 | 华为技术有限公司 | 子节点、父节点以及用于多层次视频网络的缓存方法及*** |
US8904431B2 (en) | 2010-12-20 | 2014-12-02 | Microsoft Corporation | Current device location advertisement distribution |
CN104995897A (zh) * | 2013-11-21 | 2015-10-21 | 阿尔卡特朗讯公司 | 用于在ip网络中进行内容缓存和传输的方法、***和装置 |
CN105359485A (zh) * | 2013-06-28 | 2016-02-24 | 汤姆逊许可公司 | 由客户终端获得多媒体内容的内容部分的方法 |
CN105577743A (zh) * | 2014-10-29 | 2016-05-11 | 富士通株式会社 | 用于管理装置的设备和方法 |
CN113037821A (zh) * | 2014-06-05 | 2021-06-25 | 交互数字Vc控股公司 | 操作高速缓存器的方法及相应高速缓存器 |
Families Citing this family (471)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6308148B1 (en) * | 1996-05-28 | 2001-10-23 | Cisco Technology, Inc. | Network flow data export |
TR199901841T2 (xx) * | 1997-01-13 | 2001-05-21 | Overton John | Otomatik g�r�nt� ar�ivleme sistemi. |
US6256675B1 (en) * | 1997-05-06 | 2001-07-03 | At&T Corp. | System and method for allocating requests for objects and managing replicas of objects on a network |
SE9702239L (sv) * | 1997-06-12 | 1998-07-06 | Telia Ab | Arrangemang för lastbalansering i datornät |
KR100269114B1 (ko) * | 1997-07-15 | 2000-10-16 | 윤종용 | 캐쉬 운영방법 |
US6006268A (en) | 1997-07-31 | 1999-12-21 | Cisco Technology, Inc. | Method and apparatus for reducing overhead on a proxied connection |
US6240461B1 (en) * | 1997-09-25 | 2001-05-29 | Cisco Technology, Inc. | Methods and apparatus for caching network data traffic |
US6256620B1 (en) * | 1998-01-16 | 2001-07-03 | Aspect Communications | Method and apparatus for monitoring information access |
US6122666A (en) * | 1998-02-23 | 2000-09-19 | International Business Machines Corporation | Method for collaborative transformation and caching of web objects in a proxy network |
US6430618B1 (en) * | 1998-03-13 | 2002-08-06 | Massachusetts Institute Of Technology | Method and apparatus for distributing requests among a plurality of resources |
US6553420B1 (en) * | 1998-03-13 | 2003-04-22 | Massachusetts Institute Of Technology | Method and apparatus for distributing requests among a plurality of resources |
US6205481B1 (en) * | 1998-03-17 | 2001-03-20 | Infolibria, Inc. | Protocol for distributing fresh content among networked cache servers |
US6842876B2 (en) * | 1998-04-14 | 2005-01-11 | Fuji Xerox Co., Ltd. | Document cache replacement policy for automatically generating groups of documents based on similarity of content |
US6377991B1 (en) * | 1998-05-29 | 2002-04-23 | Microsoft Corporation | Method, computer program product, and system for migrating URLs within a dynamically changing distributed cache of URLs |
JP3424907B2 (ja) * | 1998-07-02 | 2003-07-07 | 日本電気株式会社 | ネットワークコンテンツキャッシュ装置 |
SE512880C2 (sv) * | 1998-07-03 | 2000-05-29 | Ericsson Telefon Ab L M | Ett cacheservernät |
US7103640B1 (en) * | 1999-09-14 | 2006-09-05 | Econnectix, Llc | Network distributed tracking wire transfer protocol |
US6249801B1 (en) * | 1998-07-15 | 2001-06-19 | Radware Ltd. | Load balancing |
US6665702B1 (en) | 1998-07-15 | 2003-12-16 | Radware Ltd. | Load balancing |
JP2000090027A (ja) * | 1998-09-10 | 2000-03-31 | Fujitsu Ltd | オブジェクト管理システム、情報処理システム、オブジェクト管理プログラムを記録した記録媒体及び情報処理プログラムを記録した記録媒体 |
US6535509B2 (en) | 1998-09-28 | 2003-03-18 | Infolibria, Inc. | Tagging for demultiplexing in a network traffic server |
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
US6553376B1 (en) * | 1998-11-18 | 2003-04-22 | Infolibria, Inc. | Efficient content server using request redirection |
US6317778B1 (en) * | 1998-11-23 | 2001-11-13 | International Business Machines Corporation | System and method for replacement and duplication of objects in a cache |
US6704319B1 (en) * | 1998-12-21 | 2004-03-09 | Intel Corporation | Up-tree topology trace for network route tracing |
US6438125B1 (en) * | 1999-01-22 | 2002-08-20 | Nortel Networks Limited | Method and system for redirecting web page requests on a TCP/IP network |
JP3833409B2 (ja) * | 1999-02-05 | 2006-10-11 | 株式会社日立製作所 | 通信プロキシ装置 |
US7080158B1 (en) * | 1999-02-09 | 2006-07-18 | Nortel Networks Limited | Network caching using resource redirection |
JP3823585B2 (ja) * | 1999-02-22 | 2006-09-20 | 株式会社日立製作所 | 機器ネットワーク接続方法およびルータ機器 |
US6434608B1 (en) * | 1999-02-26 | 2002-08-13 | Cisco Technology, Inc. | Methods and apparatus for caching network traffic |
JP4299911B2 (ja) * | 1999-03-24 | 2009-07-22 | 株式会社東芝 | 情報転送システム |
US6405256B1 (en) * | 1999-03-31 | 2002-06-11 | Lucent Technologies Inc. | Data streaming using caching servers with expandable buffers and adjustable rate of data transmission to absorb network congestion |
US6701415B1 (en) | 1999-03-31 | 2004-03-02 | America Online, Inc. | Selecting a cache for a request for information |
CN1351729A (zh) * | 1999-03-31 | 2002-05-29 | 美国在线服务公司 | 处理关于网站所提供信息的请求 |
US6591293B1 (en) * | 1999-03-31 | 2003-07-08 | International Business Machines Corporation | Application presentation synchronizer |
US6832253B1 (en) * | 1999-04-01 | 2004-12-14 | Cisco Technologies, Inc. | Proximity as an aid to caching and secondary serving of data |
JP2000293424A (ja) * | 1999-04-09 | 2000-10-20 | Hitachi Ltd | ネットワークキャッシュ装置およびキャッシュ制御方法 |
US7526481B1 (en) * | 1999-04-19 | 2009-04-28 | Oracle International Corporation | Web servers with queryable dynamic caches |
US6466977B1 (en) * | 1999-05-06 | 2002-10-15 | Cisco Technology, Inc. | Proxy on demand |
US6226752B1 (en) * | 1999-05-11 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for authenticating users |
US7295523B1 (en) * | 1999-05-24 | 2007-11-13 | Massachusetts Institute Of Technology | System and method for resource discovery |
US6658463B1 (en) * | 1999-06-10 | 2003-12-02 | Hughes Electronics Corporation | Satellite multicast performance enhancing multicast HTTP proxy system and method |
US6751191B1 (en) | 1999-06-29 | 2004-06-15 | Cisco Technology, Inc. | Load sharing and redundancy scheme |
US6834325B1 (en) | 1999-07-16 | 2004-12-21 | Storage Technology Corporation | System and method for providing client-directed staging to improve non-sequential access performance in a caching disk storage system |
US6427172B1 (en) * | 1999-07-20 | 2002-07-30 | Cyberstar, L.P. | Method and apparatus for internet cache content delivery via a data distribution system |
EP1222573A2 (en) * | 1999-08-26 | 2002-07-17 | Symtec Limited | Web connection data |
US6606650B2 (en) * | 1999-08-30 | 2003-08-12 | Nortel Networks Limited | Bump in the wire transparent internet protocol |
US6941338B1 (en) * | 1999-09-01 | 2005-09-06 | Nextwave Telecom Inc. | Distributed cache for a wireless communication system |
US6252726B1 (en) * | 1999-09-02 | 2001-06-26 | Lightlogic, Inc. | Dual-enclosure optoelectronic packages |
EP1381954A2 (en) * | 1999-10-08 | 2004-01-21 | Mirror Image Internet, Inc. | Bi-directional caching systems and methods |
US6507854B1 (en) * | 1999-11-05 | 2003-01-14 | International Business Machines Corporation | Enhanced network caching and mirroring system |
US6405252B1 (en) * | 1999-11-22 | 2002-06-11 | Speedera Networks, Inc. | Integrated point of presence server network |
US6754699B2 (en) | 2000-07-19 | 2004-06-22 | Speedera Networks, Inc. | Content delivery and global traffic management network system |
WO2001039003A1 (en) * | 1999-11-22 | 2001-05-31 | Speedera Networks, Inc. | Method for operating an integrated point of presence server network |
US7523181B2 (en) * | 1999-11-22 | 2009-04-21 | Akamai Technologies, Inc. | Method for determining metrics of a content delivery and global traffic management network |
US7925713B1 (en) | 1999-11-22 | 2011-04-12 | Akamai Technologies, Inc. | Method for operating an integrated point of presence server network |
US7363361B2 (en) * | 2000-08-18 | 2008-04-22 | Akamai Technologies, Inc. | Secure content delivery system |
US6694358B1 (en) | 1999-11-22 | 2004-02-17 | Speedera Networks, Inc. | Performance computer network method |
US7349979B1 (en) * | 1999-12-02 | 2008-03-25 | Cisco Technology, Inc. | Method and apparatus for redirecting network traffic |
CA2296213C (en) * | 2000-01-07 | 2009-04-14 | Sedona Networks Corporation | Distributed subscriber management |
US6839829B1 (en) | 2000-01-18 | 2005-01-04 | Cisco Technology, Inc. | Routing protocol based redundancy design for shared-access networks |
US7058007B1 (en) | 2000-01-18 | 2006-06-06 | Cisco Technology, Inc. | Method for a cable modem to rapidly switch to a backup CMTS |
US6823377B1 (en) * | 2000-01-28 | 2004-11-23 | International Business Machines Corporation | Arrangements and methods for latency-sensitive hashing for collaborative web caching |
AU2001236568A1 (en) * | 2000-01-28 | 2001-08-07 | Ibeam Broadcasting Corporation | A system and method for rewriting a media resource request and/or response between origin server and client |
US20020029287A1 (en) * | 2000-02-02 | 2002-03-07 | Yechiam Yemini | Method and apparatus for dynamically addressing a circuits based network |
US6947440B2 (en) | 2000-02-15 | 2005-09-20 | Gilat Satellite Networks, Ltd. | System and method for internet page acceleration including multicast transmissions |
US8359405B1 (en) * | 2000-02-28 | 2013-01-22 | John Border | Performance enhancing proxy and method for enhancing performance |
US7107334B1 (en) * | 2000-03-16 | 2006-09-12 | Cisco Technology, Inc. | Methods and apparatus for redirecting network traffic |
US7162539B2 (en) * | 2000-03-16 | 2007-01-09 | Adara Networks, Inc. | System and method for discovering information objects and information object repositories in computer networks |
US6854018B1 (en) * | 2000-03-20 | 2005-02-08 | Nec Corporation | System and method for intelligent web content fetch and delivery of any whole and partial undelivered objects in ascending order of object size |
CA2404134A1 (en) * | 2000-03-22 | 2001-09-27 | British Telecommunications Public Limited Company | Data access |
US20020073033A1 (en) * | 2000-04-07 | 2002-06-13 | Sherr Scott Jeffrey | Online digital video signal transfer apparatus and method |
US6622168B1 (en) | 2000-04-10 | 2003-09-16 | Chutney Technologies, Inc. | Dynamic page generation acceleration using component-level caching |
US6732175B1 (en) | 2000-04-13 | 2004-05-04 | Intel Corporation | Network apparatus for switching based on content of application data |
US7146422B1 (en) | 2000-05-01 | 2006-12-05 | Intel Corporation | Method and apparatus for validating documents based on a validation template |
US6990531B2 (en) * | 2000-04-17 | 2006-01-24 | Circadence Corporation | System and method for providing last-mile data prioritization |
US6996387B2 (en) * | 2000-05-01 | 2006-02-07 | Mtel Limited | Global data network using existing wireless infrastructures |
US6742044B1 (en) * | 2000-05-10 | 2004-05-25 | Cisco Technology, Inc. | Distributed network traffic load balancing technique implemented without gateway router |
US6789125B1 (en) * | 2000-05-10 | 2004-09-07 | Cisco Technology, Inc. | Distributed network traffic load balancing technique implemented without gateway router |
US7209941B2 (en) * | 2000-05-11 | 2007-04-24 | Fujitsu Limited | System and method for distributing contents from a child server based on a client's current location |
US7475404B2 (en) | 2000-05-18 | 2009-01-06 | Maquis Techtrix Llc | System and method for implementing click-through for browser executed software including ad proxy and proxy cookie caching |
US7013340B1 (en) | 2000-05-18 | 2006-03-14 | Microsoft Corporation | Postback input handling by server-side control objects |
US8086697B2 (en) | 2005-06-28 | 2011-12-27 | Claria Innovations, Llc | Techniques for displaying impressions in documents delivered over a computer network |
KR20010107572A (ko) * | 2000-05-24 | 2001-12-07 | 포만 제프리 엘 | 신뢰성 기반의 링크 액세스 제어 방법, 장치 및 프로그램제품 |
AU2001265075A1 (en) * | 2000-05-26 | 2001-12-11 | Infolibria, Inc. | High performance efficient subsystem for data object storage |
US6839809B1 (en) | 2000-05-31 | 2005-01-04 | Cisco Technology, Inc. | Methods and apparatus for improving content quality in web caching systems |
US6836806B1 (en) | 2000-06-01 | 2004-12-28 | Aerocast, Inc. | System for network addressing |
US7213062B1 (en) | 2000-06-01 | 2007-05-01 | General Instrument Corporation | Self-publishing network directory |
US6879998B1 (en) | 2000-06-01 | 2005-04-12 | Aerocast.Com, Inc. | Viewer object proxy |
CN1451220A (zh) * | 2000-06-01 | 2003-10-22 | 奥罗卡斯特.Com公司 | 在内容交换机中预装内容对象 |
US6904460B1 (en) | 2000-06-01 | 2005-06-07 | Aerocast.Com, Inc. | Reverse content harvester |
US6947977B1 (en) * | 2000-06-09 | 2005-09-20 | Metadigm Llc | Scalable transaction system for a network environment |
US7404005B1 (en) * | 2000-06-09 | 2008-07-22 | International Business Machines Corporation | Method, system, and program for selecting one of multiple paths to communicate with a device |
US6850980B1 (en) | 2000-06-16 | 2005-02-01 | Cisco Technology, Inc. | Content routing service protocol |
US20040073617A1 (en) | 2000-06-19 | 2004-04-15 | Milliken Walter Clark | Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail |
US9444785B2 (en) * | 2000-06-23 | 2016-09-13 | Cloudshield Technologies, Inc. | Transparent provisioning of network access to an application |
US7032031B2 (en) | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
US7114008B2 (en) * | 2000-06-23 | 2006-09-26 | Cloudshield Technologies, Inc. | Edge adapter architecture apparatus and method |
US8204082B2 (en) | 2000-06-23 | 2012-06-19 | Cloudshield Technologies, Inc. | Transparent provisioning of services over a network |
US6829654B1 (en) * | 2000-06-23 | 2004-12-07 | Cloudshield Technologies, Inc. | Apparatus and method for virtual edge placement of web sites |
US7003555B1 (en) | 2000-06-23 | 2006-02-21 | Cloudshield Technologies, Inc. | Apparatus and method for domain name resolution |
US6704781B1 (en) * | 2000-06-27 | 2004-03-09 | Intel Corporation | System and method for content caching implementing compensation for providing caching services |
US7062571B1 (en) * | 2000-06-30 | 2006-06-13 | Cisco Technology, Inc. | Efficient IP load-balancing traffic distribution using ternary CAMs |
US20020053020A1 (en) * | 2000-06-30 | 2002-05-02 | Raytheon Company | Secure compartmented mode knowledge management portal |
US7379963B1 (en) | 2000-07-14 | 2008-05-27 | Knownow-Delaware | Delivery of any type of information to anyone anytime anywhere |
US7484002B2 (en) * | 2000-08-18 | 2009-01-27 | Akamai Technologies, Inc. | Content delivery and global traffic management network system |
US7155723B2 (en) * | 2000-07-19 | 2006-12-26 | Akamai Technologies, Inc. | Load balancing service |
US8341297B2 (en) | 2000-07-19 | 2012-12-25 | Akamai Technologies, Inc. | Latencies and weightings in a domain name service (DNS) system |
US7653706B2 (en) | 2000-07-19 | 2010-01-26 | Akamai Technologies, Inc. | Dynamic image delivery system |
US7346676B1 (en) * | 2000-07-19 | 2008-03-18 | Akamai Technologies, Inc. | Load balancing service |
US8060581B2 (en) * | 2000-07-19 | 2011-11-15 | Akamai Technologies, Inc. | Dynamic image delivery system |
US7912978B2 (en) * | 2000-07-19 | 2011-03-22 | Akamai Technologies, Inc. | Method for determining metrics of a content delivery and global traffic management network |
US7725602B2 (en) * | 2000-07-19 | 2010-05-25 | Akamai Technologies, Inc. | Domain name resolution using a distributed DNS network |
JP3674471B2 (ja) * | 2000-07-25 | 2005-07-20 | 日本電気株式会社 | コンテンツ転送方法及びネットワークシステム並びにプログラムを記録した機械読み取り可能な記録媒体 |
JP2002044138A (ja) * | 2000-07-25 | 2002-02-08 | Nec Corp | ネットワークシステム,キャッシュサーバ,中継サーバ,ルータ,キャッシュサーバ制御方法及び記録媒体 |
US7133922B1 (en) * | 2000-08-07 | 2006-11-07 | The Hong Kong University Of Science And Technology | Method and apparatus for streaming of data |
US8255291B1 (en) | 2000-08-18 | 2012-08-28 | Tensilrus Capital Nv Llc | System, method and apparatus for interactive and comparative shopping |
AU2001283389A1 (en) * | 2000-08-18 | 2002-03-04 | Anderson Merchandisers Lp | System and method for an interactive shopping news and price information service |
US6850984B1 (en) * | 2000-09-08 | 2005-02-01 | Intel Corporation | System for isolating other clients that experience different connection performance than the client and directing the other clients to another different mirrored server |
US7085817B1 (en) * | 2000-09-26 | 2006-08-01 | Juniper Networks, Inc. | Method and system for modifying requests for remote resources |
US7865569B1 (en) * | 2000-09-26 | 2011-01-04 | Juniper Networks, Inc. | Method and system for modifying script portions of requests for remote resources |
US7606898B1 (en) | 2000-10-24 | 2009-10-20 | Microsoft Corporation | System and method for distributed management of shared computers |
US7620719B2 (en) | 2002-06-06 | 2009-11-17 | Juniper Networks, Inc. | Method and system for providing secure access to private networks |
US6795848B1 (en) | 2000-11-08 | 2004-09-21 | Hughes Electronics Corporation | System and method of reading ahead of objects for delivery to an HTTP proxy server |
US20030128987A1 (en) * | 2000-11-08 | 2003-07-10 | Yaron Mayer | System and method for improving the efficiency of routers on the internet and/or cellular networks an/or other networks and alleviating bottlenecks and overloads on the network |
US8073327B2 (en) * | 2000-11-08 | 2011-12-06 | Yaron Mayer | System and method for improving the efficiency of routers on the internet and/or cellular networks and/or other networks and alleviating bottlenecks and overloads on the network |
US6781961B1 (en) * | 2000-11-17 | 2004-08-24 | Emware, Inc. | Systems and methods for routing messages sent between computer systems |
EP1346289A1 (en) * | 2000-11-30 | 2003-09-24 | Appfluent Technology, Inc. | System and method for delivering dynamic content |
US20040054902A1 (en) * | 2000-12-06 | 2004-03-18 | Yoshinori Fujimoto | Virtual private network |
US7113935B2 (en) | 2000-12-06 | 2006-09-26 | Epicrealm Operating Inc. | Method and system for adaptive prefetching |
US6751673B2 (en) * | 2001-01-03 | 2004-06-15 | Akamai Technologies, Inc. | Streaming media subscription mechanism for a content delivery network |
US7188145B2 (en) | 2001-01-12 | 2007-03-06 | Epicrealm Licensing Llc | Method and system for dynamic distributed data caching |
US7035911B2 (en) * | 2001-01-12 | 2006-04-25 | Epicrealm, Licensing Llc | Method and system for community data caching |
US7353380B2 (en) * | 2001-02-12 | 2008-04-01 | Aventail, Llc, A Subsidiary Of Sonicwall, Inc. | Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols |
US7383329B2 (en) | 2001-02-13 | 2008-06-03 | Aventail, Llc | Distributed cache for state transfer operations |
US7360075B2 (en) * | 2001-02-12 | 2008-04-15 | Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. | Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols |
US7380250B2 (en) | 2001-03-16 | 2008-05-27 | Microsoft Corporation | Method and system for interacting with devices having different capabilities |
US7146429B2 (en) * | 2001-03-16 | 2006-12-05 | The Aerospace Corporation | Cooperative adaptive web caching routing and forwarding web content data requesting method |
US6990512B1 (en) * | 2001-03-19 | 2006-01-24 | Novell, Inc. | Method and system for using live time shift technology to control a multimedia file |
EP1246394A1 (en) * | 2001-03-26 | 2002-10-02 | Koninklijke KPN N.V. | System for personalised information distribution |
US20020147781A1 (en) * | 2001-03-27 | 2002-10-10 | Seiko Epson Corporation | Information providing server |
US7319979B2 (en) * | 2001-03-29 | 2008-01-15 | Intel Corporation | Dynamically interacting with an internet service using a client-specified communication proxy and protocol |
US7065587B2 (en) | 2001-04-02 | 2006-06-20 | Microsoft Corporation | Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith |
US7200679B2 (en) * | 2001-04-13 | 2007-04-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Creating distributed proxy configurations |
US20020156841A1 (en) * | 2001-04-13 | 2002-10-24 | Bjorn Landfeldt | Accessing distributed proxy configurations |
US7398271B1 (en) * | 2001-04-16 | 2008-07-08 | Yahoo! Inc. | Using network traffic logs for search enhancement |
US8180904B1 (en) | 2001-04-26 | 2012-05-15 | Nokia Corporation | Data routing and management with routing path selectivity |
US8990334B2 (en) * | 2001-04-26 | 2015-03-24 | Nokia Corporation | Rule-based caching for packet-based data transfer |
US7139834B1 (en) * | 2001-04-26 | 2006-11-21 | Avvenu, Inc. | Data routing monitoring and management |
AUPR458901A0 (en) * | 2001-04-26 | 2001-05-24 | Iinet Limited | Cache for a peer-to-peer data transfer |
US9143545B1 (en) | 2001-04-26 | 2015-09-22 | Nokia Corporation | Device classification for media delivery |
US9032097B2 (en) | 2001-04-26 | 2015-05-12 | Nokia Corporation | Data communication with remote network node |
US7895445B1 (en) | 2001-04-26 | 2011-02-22 | Nokia Corporation | Token-based remote data access |
WO2002095608A1 (en) * | 2001-05-23 | 2002-11-28 | New York University | Method and system for distributing foveated data in a network |
US7260651B2 (en) * | 2001-06-04 | 2007-08-21 | Nct Group, Inc. | System and method for increasing the effective bandwidth of a communications network |
US7493397B1 (en) | 2001-06-06 | 2009-02-17 | Microsoft Corporation | Providing remote processing services over a distributed communications network |
US7320131B1 (en) | 2001-06-06 | 2008-01-15 | Cisco Technology, Inc. | Methods and apparatus for selecting a server to process a request |
US7899911B2 (en) * | 2001-06-07 | 2011-03-01 | Intel Corporation | Method and apparatus to retrieve information in a network |
US6748550B2 (en) * | 2001-06-07 | 2004-06-08 | International Business Machines Corporation | Apparatus and method for building metadata using a heartbeat of a clustered system |
US6915454B1 (en) | 2001-06-12 | 2005-07-05 | Microsoft Corporation | Web controls validation |
US20030018774A1 (en) * | 2001-06-13 | 2003-01-23 | Nokia Corporation | System and method for load balancing in ad hoc networks |
US7881208B1 (en) | 2001-06-18 | 2011-02-01 | Cisco Technology, Inc. | Gateway load balancing protocol |
US7610357B1 (en) * | 2001-06-29 | 2009-10-27 | Cisco Technology, Inc. | Predictively responding to SNMP commands |
US20030004998A1 (en) * | 2001-06-29 | 2003-01-02 | Chutney Technologies, Inc. | Proxy-based acceleration of dynamically generated content |
US7590684B2 (en) * | 2001-07-06 | 2009-09-15 | Check Point Software Technologies, Inc. | System providing methodology for access control with cooperative enforcement |
US7594001B1 (en) * | 2001-07-06 | 2009-09-22 | Microsoft Corporation | Partial page output caching |
US20040107360A1 (en) * | 2002-12-02 | 2004-06-03 | Zone Labs, Inc. | System and Methodology for Policy Enforcement |
US8200818B2 (en) * | 2001-07-06 | 2012-06-12 | Check Point Software Technologies, Inc. | System providing internet access management with router-based policy enforcement |
US6879999B2 (en) * | 2001-07-26 | 2005-04-12 | International Business Machines Corporation | Processing of requests for static objects in a network server |
EP1298878A1 (en) * | 2001-09-26 | 2003-04-02 | Telefonaktiebolaget L M Ericsson (Publ) | Hierarchical caching in telecommunication networks |
US7769823B2 (en) * | 2001-09-28 | 2010-08-03 | F5 Networks, Inc. | Method and system for distributing requests for content |
US20030079027A1 (en) | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
US7631084B2 (en) * | 2001-11-02 | 2009-12-08 | Juniper Networks, Inc. | Method and system for providing secure access to private networks with client redirection |
US20030093566A1 (en) * | 2001-11-09 | 2003-05-15 | Jardin Cary A. | System and method for network and application transparent database acceleration |
US7428725B2 (en) | 2001-11-20 | 2008-09-23 | Microsoft Corporation | Inserting devices specific content |
US20030101267A1 (en) * | 2001-11-28 | 2003-05-29 | Thompson Mark R. | Peer-to-peer caching network |
US20030105837A1 (en) * | 2001-11-30 | 2003-06-05 | Yury Kamen | Interception for optimal caching of distributed applications |
US7150042B2 (en) * | 2001-12-06 | 2006-12-12 | Mcafee, Inc. | Techniques for performing malware scanning of files stored within a file storage device of a computer network |
US7093002B2 (en) * | 2001-12-06 | 2006-08-15 | Mcafee, Inc. | Handling of malware scanning of files stored within a file storage device of a computer network |
US7783765B2 (en) * | 2001-12-12 | 2010-08-24 | Hildebrand Hal S | System and method for providing distributed access control to secured documents |
US10033700B2 (en) | 2001-12-12 | 2018-07-24 | Intellectual Ventures I Llc | Dynamic evaluation of access rights |
US7171493B2 (en) * | 2001-12-19 | 2007-01-30 | The Charles Stark Draper Laboratory | Camouflage of network traffic to resist attack |
US7437438B2 (en) * | 2001-12-27 | 2008-10-14 | Hewlett-Packard Development Company, L.P. | System and method for energy efficient data prefetching |
DE10203181A1 (de) * | 2002-01-25 | 2003-08-14 | Wincor Nixdorf Int Gmbh | Vorladbarer Dokumentenpuffer in Datenstationen |
US7024429B2 (en) | 2002-01-31 | 2006-04-04 | Nextpage,Inc. | Data replication based upon a non-destructive data model |
US7069336B2 (en) * | 2002-02-01 | 2006-06-27 | Time Warner Cable | Policy based routing system and method for caching and VPN tunneling |
US7409396B2 (en) * | 2002-02-08 | 2008-08-05 | Pitts William M | Method for creating an extensible content distribution framework |
US7134139B2 (en) * | 2002-02-12 | 2006-11-07 | International Business Machines Corporation | System and method for authenticating block level cache access on network |
US8204930B1 (en) * | 2002-02-15 | 2012-06-19 | F5 Networks, Inc. | Method and system for controlling and accessing content servers |
US6757790B2 (en) * | 2002-02-19 | 2004-06-29 | Emc Corporation | Distributed, scalable data storage facility with cache memory |
DE10390927D2 (de) * | 2002-03-06 | 2005-01-27 | Freecom Technologies Gmbh | Verfahren zur Überwachung und zum Datenaustausch einer externen Datenträgereinheit |
US7707287B2 (en) * | 2002-03-22 | 2010-04-27 | F5 Networks, Inc. | Virtual host acceleration system |
US7016883B2 (en) * | 2002-04-23 | 2006-03-21 | Sprint Communications Company L.P. | Reverse caching for residential end-users to reduce usage of access links to a core communication network |
US20030217149A1 (en) * | 2002-05-20 | 2003-11-20 | International Business Machines Corporation | Method and apparatus for tunneling TCP/IP over HTTP and HTTPS |
US20100131673A1 (en) * | 2002-05-23 | 2010-05-27 | New York University | System and method for distributing foveated data in a network |
KR20020059274A (ko) * | 2002-06-07 | 2002-07-12 | 박지규 | 동기화 클라이언트를 이용한 데이터 전송 분산처리 시스템 |
US8015259B2 (en) * | 2002-09-10 | 2011-09-06 | Alan Earl Swahn | Multi-window internet search with webpage preload |
JP2004104567A (ja) * | 2002-09-11 | 2004-04-02 | Fuji Xerox Co Ltd | メール処理システム |
US6973546B2 (en) * | 2002-09-27 | 2005-12-06 | International Business Machines Corporation | Method, system, and program for maintaining data in distributed caches |
US7574653B2 (en) | 2002-10-11 | 2009-08-11 | Microsoft Corporation | Adaptive image formatting control |
US6850943B2 (en) * | 2002-10-18 | 2005-02-01 | Check Point Software Technologies, Inc. | Security system and methodology for providing indirect access control |
US7603341B2 (en) | 2002-11-05 | 2009-10-13 | Claria Corporation | Updating the content of a presentation vehicle in a computer network |
US7353538B2 (en) * | 2002-11-08 | 2008-04-01 | Federal Network Systems Llc | Server resource management, analysis, and intrusion negation |
US7350077B2 (en) * | 2002-11-26 | 2008-03-25 | Cisco Technology, Inc. | 802.11 using a compressed reassociation exchange to facilitate fast handoff |
ATE297627T1 (de) * | 2002-12-09 | 2005-06-15 | Ericsson Telefon Ab L M | Verfahren zur optimierung der verteilung eines dienstes von einer quelle zu mehreren dienstempfängern in einem netzwerk |
US20040117437A1 (en) * | 2002-12-16 | 2004-06-17 | Exanet, Co. | Method for efficient storing of sparse files in a distributed cache |
US7809679B2 (en) * | 2003-03-03 | 2010-10-05 | Fisher-Rosemount Systems, Inc. | Distributed data access methods and apparatus for process control systems |
US7689676B2 (en) | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US8122106B2 (en) | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US8136155B2 (en) * | 2003-04-01 | 2012-03-13 | Check Point Software Technologies, Inc. | Security system with methodology for interprocess communication control |
US8108939B2 (en) * | 2003-05-29 | 2012-01-31 | Oracle International Corporation | Method and apparatus to facilitate security-enabled content caching |
US7437458B1 (en) * | 2003-06-13 | 2008-10-14 | Juniper Networks, Inc. | Systems and methods for providing quality assurance |
US7788726B2 (en) * | 2003-07-02 | 2010-08-31 | Check Point Software Technologies, Inc. | System and methodology providing information lockbox |
US7593346B2 (en) | 2003-07-31 | 2009-09-22 | Cisco Technology, Inc. | Distributing and balancing traffic flow in a virtual gateway |
FR2859551A1 (fr) * | 2003-09-09 | 2005-03-11 | France Telecom | Procede d'insertion d'informations de filtrage thematique de pages html et systeme correspondant |
US7627644B2 (en) * | 2003-11-28 | 2009-12-01 | Canon Kabushiki Kaisha | Recipient-centred proactive caching in a peer-to-peer system |
US8521830B2 (en) * | 2003-12-22 | 2013-08-27 | International Business Machines Corporation | Pull-configured distribution of imagery |
US7272609B1 (en) * | 2004-01-12 | 2007-09-18 | Hyperion Solutions Corporation | In a distributed hierarchical cache, using a dependency to determine if a version of the first member stored in a database matches the version of the first member returned |
US7631081B2 (en) * | 2004-02-27 | 2009-12-08 | International Business Machines Corporation | Method and apparatus for hierarchical selective personalization |
JP2005267167A (ja) * | 2004-03-18 | 2005-09-29 | Hitachi Ltd | 負荷分散方法およびシステム |
US20050246529A1 (en) | 2004-04-30 | 2005-11-03 | Microsoft Corporation | Isolated persistent identity storage for authentication of computing devies |
US7890604B2 (en) | 2004-05-07 | 2011-02-15 | Microsoft Corproation | Client-side callbacks to server events |
US9026578B2 (en) | 2004-05-14 | 2015-05-05 | Microsoft Corporation | Systems and methods for persisting data between web pages |
US7464386B2 (en) | 2004-05-17 | 2008-12-09 | Microsoft Corporation | Data controls architecture |
US8136149B2 (en) * | 2004-06-07 | 2012-03-13 | Check Point Software Technologies, Inc. | Security system with methodology providing verified secured individual end points |
US20060010173A1 (en) * | 2004-06-30 | 2006-01-12 | Kilday Roger W | Methods and systems for client-side, on-disk caching |
US8676922B1 (en) | 2004-06-30 | 2014-03-18 | Google Inc. | Automatic proxy setting modification |
US7437364B1 (en) * | 2004-06-30 | 2008-10-14 | Google Inc. | System and method of accessing a document efficiently through multi-tier web caching |
US8224964B1 (en) | 2004-06-30 | 2012-07-17 | Google Inc. | System and method of accessing a document efficiently through multi-tier web caching |
WO2006010112A2 (en) * | 2004-07-09 | 2006-01-26 | Network Foundation Technologies, Llc | Systems for distributing data over a computer network and methods for arranging nodes for distribution of data over a computer network |
US8255413B2 (en) | 2004-08-19 | 2012-08-28 | Carhamm Ltd., Llc | Method and apparatus for responding to request for information-personalization |
US8078602B2 (en) | 2004-12-17 | 2011-12-13 | Claria Innovations, Llc | Search engine for a computer network |
US8346956B2 (en) | 2004-10-29 | 2013-01-01 | Akamai Technologies, Inc. | Dynamic image delivery system |
US8458467B2 (en) | 2005-06-21 | 2013-06-04 | Cisco Technology, Inc. | Method and apparatus for adaptive application message payload content transformation in a network infrastructure element |
US7664879B2 (en) * | 2004-11-23 | 2010-02-16 | Cisco Technology, Inc. | Caching content and state data at a network element |
US7987272B2 (en) | 2004-12-06 | 2011-07-26 | Cisco Technology, Inc. | Performing message payload processing functions in a network element on behalf of an application |
US7693863B2 (en) | 2004-12-20 | 2010-04-06 | Claria Corporation | Method and device for publishing cross-network user behavioral data |
US9020887B2 (en) | 2004-12-21 | 2015-04-28 | Proofpoint, Inc. | Managing the status of documents in a distributed storage system |
US7627896B2 (en) * | 2004-12-24 | 2009-12-01 | Check Point Software Technologies, Inc. | Security system providing methodology for cooperative enforcement of security policies during SSL sessions |
US9400875B1 (en) | 2005-02-11 | 2016-07-26 | Nokia Corporation | Content routing with rights management |
US8073866B2 (en) | 2005-03-17 | 2011-12-06 | Claria Innovations, Llc | Method for providing content to an internet user based on the user's demonstrated content preferences |
US7631021B2 (en) * | 2005-03-25 | 2009-12-08 | Netapp, Inc. | Apparatus and method for data replication at an intermediate node |
US8306952B2 (en) * | 2005-03-29 | 2012-11-06 | Sap Ag | Technique for managing messages |
US7802144B2 (en) | 2005-04-15 | 2010-09-21 | Microsoft Corporation | Model-based system monitoring |
US7797147B2 (en) | 2005-04-15 | 2010-09-14 | Microsoft Corporation | Model-based system monitoring |
US8489728B2 (en) | 2005-04-15 | 2013-07-16 | Microsoft Corporation | Model-based system monitoring |
US7817647B2 (en) * | 2005-04-22 | 2010-10-19 | Microsoft Corporation | Flower-petal resolutions for PNRP |
US8572605B1 (en) * | 2005-04-28 | 2013-10-29 | Azul Systems, Inc. | Source switching of virtual machines |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
JP4592014B2 (ja) * | 2005-07-08 | 2010-12-01 | 京セラ株式会社 | トラヒック軽減システム |
GB0519648D0 (en) * | 2005-09-27 | 2005-11-02 | Roke Manor Research | Resilient path protocol |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
US8156208B2 (en) | 2005-11-21 | 2012-04-10 | Sap Ag | Hierarchical, multi-tiered mapping and monitoring architecture for service-to-device re-mapping for smart items |
US8005879B2 (en) * | 2005-11-21 | 2011-08-23 | Sap Ag | Service-to-device re-mapping for smart items |
US20070118496A1 (en) * | 2005-11-21 | 2007-05-24 | Christof Bornhoevd | Service-to-device mapping for smart items |
US7860968B2 (en) * | 2005-11-21 | 2010-12-28 | Sap Ag | Hierarchical, multi-tiered mapping and monitoring architecture for smart items |
US20070143442A1 (en) * | 2005-12-20 | 2007-06-21 | Nec Laboratories America, Inc. | Scalable Publish/Subscribe Broker Network Using Active Load Balancing |
US8392400B1 (en) | 2005-12-29 | 2013-03-05 | Amazon Technologies, Inc. | Method and apparatus for stress management in a searchable data service |
US7801912B2 (en) | 2005-12-29 | 2010-09-21 | Amazon Technologies, Inc. | Method and apparatus for a searchable data service |
US8356079B2 (en) * | 2006-01-27 | 2013-01-15 | Oracle International Corporation | Schema annotations for cache management |
US7756922B2 (en) * | 2006-01-27 | 2010-07-13 | Oracle International Corporation | Schema annotations for managing cached document fragments |
US8185576B2 (en) | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
US8522341B2 (en) * | 2006-03-31 | 2013-08-27 | Sap Ag | Active intervention in service-to-device mapping for smart items |
US8199761B2 (en) * | 2006-04-20 | 2012-06-12 | Nokia Corporation | Communications multiplexing with packet-communication networks |
US8131838B2 (en) | 2006-05-31 | 2012-03-06 | Sap Ag | Modular monitor service for smart item monitoring |
US8065411B2 (en) * | 2006-05-31 | 2011-11-22 | Sap Ag | System monitor for networks of nodes |
US8296413B2 (en) * | 2006-05-31 | 2012-10-23 | Sap Ag | Device registration in a hierarchical monitor service |
US8396788B2 (en) * | 2006-07-31 | 2013-03-12 | Sap Ag | Cost-based deployment of components in smart item environments |
US8745163B2 (en) | 2006-08-08 | 2014-06-03 | Wayport, Inc. | Real-time, customized embedding of specific content into local webserver pages |
GB2440761A (en) * | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Using a proxy server as a cache in a peer to peer network to speed up the multicast distribution of large files. |
GB2440774B (en) * | 2006-08-11 | 2011-07-27 | Cachelogic Ltd | Content Delivery System For Digital Object |
GB2440759A (en) * | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Selecting a download cache for digital data |
GB2440762B (en) * | 2006-08-11 | 2011-11-02 | Cachelogic Ltd | Content distribution network |
GB2440760A (en) * | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Network and method of transferring data over the network by nodes sending messages containing a subset of list of data available at the node |
US9143818B1 (en) | 2006-09-11 | 2015-09-22 | Nokia Corporation | Remote access to shared media |
US9438567B1 (en) | 2006-11-15 | 2016-09-06 | Nokia Corporation | Location-based remote media access via mobile device |
US8812651B1 (en) | 2007-02-15 | 2014-08-19 | Google Inc. | Systems and methods for client cache awareness |
US8065275B2 (en) | 2007-02-15 | 2011-11-22 | Google Inc. | Systems and methods for cache optimization |
US8533310B2 (en) * | 2007-03-09 | 2013-09-10 | Riverbed Technology, Inc. | Method and apparatus for acceleration by prefetching associated objects |
US20080235326A1 (en) * | 2007-03-21 | 2008-09-25 | Certeon, Inc. | Methods and Apparatus for Accelerating Web Browser Caching |
US9009589B2 (en) * | 2007-03-30 | 2015-04-14 | Google Inc. | Conversion of portable program modules for constrained displays |
US8290986B2 (en) | 2007-06-27 | 2012-10-16 | Yahoo! Inc. | Determining quality measures for web objects based on searcher behavior |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
JP5526780B2 (ja) * | 2007-09-13 | 2014-06-18 | 日本電気株式会社 | 負荷分散システム、サービス処理サーバ、負荷分散方法及び負荷分散プログラム |
GB0719233D0 (en) * | 2007-10-02 | 2007-11-14 | Skype Ltd | Method of transmitting data in a communication system |
US8527622B2 (en) * | 2007-10-12 | 2013-09-03 | Sap Ag | Fault tolerance framework for networks of nodes |
US20090144404A1 (en) * | 2007-12-04 | 2009-06-04 | Microsoft Corporation | Load management in a distributed system |
US20090150536A1 (en) * | 2007-12-05 | 2009-06-11 | Microsoft Corporation | Application layer congestion control |
US8239345B2 (en) * | 2007-12-27 | 2012-08-07 | Microsoft Corporation | Asynchronous replication |
US9047235B1 (en) | 2007-12-28 | 2015-06-02 | Nokia Corporation | Content management for packet-communicating devices |
US8010676B1 (en) * | 2008-01-03 | 2011-08-30 | Desktonc, Inc. | Virtual computing services deployment network |
US8359365B2 (en) * | 2008-02-11 | 2013-01-22 | Nuix Pty Ltd | Systems and methods for load-balancing by secondary processors in parallel document indexing |
US11323510B2 (en) * | 2008-02-28 | 2022-05-03 | Level 3 Communications, Llc | Load-balancing cluster |
US8489750B2 (en) * | 2008-02-28 | 2013-07-16 | Level 3 Communications, Llc | Load-balancing cluster |
US8521879B1 (en) | 2008-03-11 | 2013-08-27 | United Services Automobile Assocation (USAA) | Systems and methods for a load balanced interior gateway protocol intranet |
US8667175B2 (en) | 2008-03-13 | 2014-03-04 | Cisco Technology, Inc. | Server selection for routing content to a client using application layer redirection |
US8229968B2 (en) * | 2008-03-26 | 2012-07-24 | Microsoft Corporation | Data caching for distributed execution computing |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US8156243B2 (en) | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8321568B2 (en) * | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US20090254952A1 (en) * | 2008-04-02 | 2009-10-08 | Alcatel Lucent | IPTV Network with D-Server Controller, VoD-Server Controller and Policy Server that Implement Diagnostic Tools |
US8452833B2 (en) * | 2008-05-13 | 2013-05-28 | International Business Machines Corporation | Cached message distribution via HTTP redirects |
US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8458170B2 (en) * | 2008-06-30 | 2013-06-04 | Yahoo! Inc. | Prefetching data for document ranking |
JP2010009449A (ja) * | 2008-06-30 | 2010-01-14 | Nec Corp | 分散情報配置システム |
US8677018B2 (en) * | 2008-08-25 | 2014-03-18 | Google Inc. | Parallel, side-effect based DNS pre-caching |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8065417B1 (en) | 2008-11-17 | 2011-11-22 | Amazon Technologies, Inc. | Service provider registration by a content broker |
US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
US7991883B1 (en) | 2008-12-15 | 2011-08-02 | Adobe Systems Incorporated | Server communication in a multi-tier server architecture |
US8108485B1 (en) * | 2008-12-17 | 2012-01-31 | Sprint Communications Company L.P. | Method and system for operating a communication system |
US8392530B1 (en) * | 2008-12-18 | 2013-03-05 | Adobe Systems Incorporated | Media streaming in a multi-tier client-server architecture |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
EP2704402B1 (en) * | 2009-06-03 | 2015-08-12 | Telefonaktiebolaget L M Ericsson (publ) | Method and node for distributing electronic content in a content distribution network |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
US8458769B2 (en) | 2009-12-12 | 2013-06-04 | Akamai Technologies, Inc. | Cloud based firewall system and service |
US9053200B2 (en) * | 2009-12-14 | 2015-06-09 | Appfolio, Inc. | Systems and methods for sorting, grouping, and rendering subsets of large datasets over a network |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
US8984048B1 (en) | 2010-04-18 | 2015-03-17 | Viasat, Inc. | Selective prefetch scanning |
US8495166B2 (en) * | 2010-04-21 | 2013-07-23 | Microsoft Corporation | Optimized caching for large data requests |
US8478836B1 (en) * | 2010-06-07 | 2013-07-02 | Purplecomm Inc. | Proxy cache technology |
US8756272B1 (en) | 2010-08-26 | 2014-06-17 | Amazon Technologies, Inc. | Processing encoded content |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
US8924528B1 (en) | 2010-09-28 | 2014-12-30 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8938526B1 (en) | 2010-09-28 | 2015-01-20 | Amazon Technologies, Inc. | Request routing management based on network components |
US8930513B1 (en) | 2010-09-28 | 2015-01-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
US8406153B2 (en) * | 2010-11-09 | 2013-03-26 | Cisco Technology, Inc. | Affecting node association through load partitioning |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
US9391949B1 (en) | 2010-12-03 | 2016-07-12 | Amazon Technologies, Inc. | Request routing processing |
US9465885B2 (en) * | 2010-12-03 | 2016-10-11 | Salesforce.Com, Inc. | Method and system for providing information to a mobile handheld device from a database system |
JP5625937B2 (ja) * | 2011-01-19 | 2014-11-19 | 日本電気株式会社 | ルータ、キャッシュルータ及びコンテンツデータキャッシュシステム並びにコンテンツデータキャッシュ方法 |
WO2012103515A1 (en) | 2011-01-28 | 2012-08-02 | Level 3 Communications, Llc | Content delivery network with deep caching infrastructure |
JP5741150B2 (ja) | 2011-04-04 | 2015-07-01 | 富士通株式会社 | 中継装置、中継プログラム、及び中継方法 |
WO2012149043A2 (en) * | 2011-04-25 | 2012-11-01 | Ikanos Communications, Inc. | Method and apparatus for caching in a networked environment |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US8743885B2 (en) | 2011-05-03 | 2014-06-03 | Cisco Technology, Inc. | Mobile service routing in a network environment |
US10120897B2 (en) | 2011-06-06 | 2018-11-06 | International Business Machines Corporation | Interception of database queries for delegation to an in memory data grid |
US8683027B2 (en) * | 2011-06-08 | 2014-03-25 | International Business Machines Corporation | Utilization of uncertainty dependency relationships between items in a data stream |
US9094090B2 (en) | 2011-09-23 | 2015-07-28 | Gilat Satellite Networks Ltd. | Decentralized caching system |
US9088584B2 (en) | 2011-12-16 | 2015-07-21 | Cisco Technology, Inc. | System and method for non-disruptive management of servers in a network environment |
EP2615791A1 (en) * | 2012-01-13 | 2013-07-17 | Alcatel Lucent | Method, system and devices for delivering media content in IP networks |
US11012490B2 (en) * | 2012-02-06 | 2021-05-18 | Nokia Solutions And Networks Oy | Customer experience management interaction with caching |
US8904009B1 (en) | 2012-02-10 | 2014-12-02 | Amazon Technologies, Inc. | Dynamic content delivery |
US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
US9172674B1 (en) | 2012-03-21 | 2015-10-27 | Amazon Technologies, Inc. | Managing request routing information utilizing performance information |
JP5900088B2 (ja) * | 2012-03-27 | 2016-04-06 | 富士通株式会社 | 並列計算機、並列計算機の制御方法及び制御プログラム |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US10289691B2 (en) * | 2012-04-25 | 2019-05-14 | Microsoft Technology Licensing, Llc | Dynamic replication of networked files |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US8875254B2 (en) | 2012-08-07 | 2014-10-28 | International Business Machines Corporation | Cache sharing of enterprise data among peers via an enterprise server |
US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
US9135048B2 (en) | 2012-09-20 | 2015-09-15 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US9619539B2 (en) * | 2012-09-28 | 2017-04-11 | Vmware, Inc. | Automated document replication in a distributed computing system |
US10110412B2 (en) * | 2012-10-17 | 2018-10-23 | Disney Enterprises, Inc. | Dynamically allocated computing method and system for distributed node-based interactive workflows |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
US9386353B2 (en) * | 2013-01-25 | 2016-07-05 | Huawei Technologies Co., Ltd. | Child node, parent node, and caching method and system for multi-layer video network |
US8655970B1 (en) * | 2013-01-29 | 2014-02-18 | Google Inc. | Automatic entertainment caching for impending travel |
US9479489B2 (en) * | 2013-03-05 | 2016-10-25 | Comcast Cable Communications, Llc | Systems and methods for providing services |
US9794379B2 (en) | 2013-04-26 | 2017-10-17 | Cisco Technology, Inc. | High-efficiency service chaining with agentless service nodes |
US9596297B2 (en) * | 2013-05-16 | 2017-03-14 | Toshiba Global Commerce Solutions Holdings Corporation | Managing communications in a multi-client, multi-server environment |
US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US9509614B2 (en) | 2013-06-20 | 2016-11-29 | Cisco Technology, Inc. | Hierarchical load balancing in a network environment |
EP3011488B8 (en) * | 2013-06-21 | 2020-09-30 | Hyland Switzerland Sàrl | System and methods of managing content in one or more repositories |
US9542274B2 (en) | 2013-06-21 | 2017-01-10 | Lexmark International Technology Sarl | System and methods of managing content in one or more networked repositories during a network downtime condition |
US9826054B2 (en) | 2013-06-21 | 2017-11-21 | Kofax International Switzerland Sarl | System and methods of pre-fetching content in one or more repositories |
JP6195785B2 (ja) * | 2013-12-04 | 2017-09-13 | Kddi株式会社 | 転送したコンテンツを保存する通信装置、サーバ装置及びプログラム |
US9374297B2 (en) * | 2013-12-17 | 2016-06-21 | Cisco Technology, Inc. | Method for implicit session routing |
US20150271072A1 (en) * | 2014-03-24 | 2015-09-24 | Cisco Technology, Inc. | Method and apparatus for rate controlled content streaming from cache |
US10735550B2 (en) | 2014-04-30 | 2020-08-04 | Webroot Inc. | Smart caching based on reputation information |
US9479443B2 (en) | 2014-05-16 | 2016-10-25 | Cisco Technology, Inc. | System and method for transporting information to services in a network environment |
US9379931B2 (en) | 2014-05-16 | 2016-06-28 | Cisco Technology, Inc. | System and method for transporting information to services in a network environment |
US9762355B2 (en) * | 2014-07-31 | 2017-09-12 | Qualcomm Incorporated | System and method of redundancy based packet transmission error recovery |
US10827026B1 (en) * | 2014-11-13 | 2020-11-03 | Amazon Technologies, Inc. | Eviction of data in a session service cache |
US10051079B1 (en) | 2014-11-13 | 2018-08-14 | Amazon Technologies, Inc. | Session service aspect-oriented cache |
US10044827B1 (en) | 2014-11-13 | 2018-08-07 | Amazon Technologies, Inc. | Trigger-based session service cache population |
US10417025B2 (en) | 2014-11-18 | 2019-09-17 | Cisco Technology, Inc. | System and method to chain distributed applications in a network environment |
US9660909B2 (en) | 2014-12-11 | 2017-05-23 | Cisco Technology, Inc. | Network service header metadata for load balancing |
USRE48131E1 (en) | 2014-12-11 | 2020-07-28 | Cisco Technology, Inc. | Metadata augmentation in a service function chain |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US9948709B2 (en) | 2015-01-30 | 2018-04-17 | Akamai Technologies, Inc. | Using resource timing data for server push in multiple web page transactions |
US10313463B2 (en) | 2015-02-19 | 2019-06-04 | Akamai Technologies, Inc. | Systems and methods for avoiding server push of objects already cached at a client |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
US9762402B2 (en) | 2015-05-20 | 2017-09-12 | Cisco Technology, Inc. | System and method to facilitate the assignment of service functions for service chains in a network environment |
US10616179B1 (en) | 2015-06-25 | 2020-04-07 | Amazon Technologies, Inc. | Selective routing of domain name system (DNS) requests |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US11044203B2 (en) | 2016-01-19 | 2021-06-22 | Cisco Technology, Inc. | System and method for hosting mobile packet core and value-added services using a software defined network and service chains |
US10187306B2 (en) | 2016-03-24 | 2019-01-22 | Cisco Technology, Inc. | System and method for improved service chaining |
US10095635B2 (en) * | 2016-03-29 | 2018-10-09 | Seagate Technology Llc | Securing information relating to data compression and encryption in a storage device |
US10931793B2 (en) | 2016-04-26 | 2021-02-23 | Cisco Technology, Inc. | System and method for automated rendering of service chaining |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
CN107517229A (zh) * | 2016-06-16 | 2017-12-26 | 阿里巴巴集团控股有限公司 | 一种回源路由信息的生成、传输方法及相关装置 |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US10419550B2 (en) | 2016-07-06 | 2019-09-17 | Cisco Technology, Inc. | Automatic service function validation in a virtual network environment |
US10218616B2 (en) | 2016-07-21 | 2019-02-26 | Cisco Technology, Inc. | Link selection for communication with a service function cluster |
US10320664B2 (en) | 2016-07-21 | 2019-06-11 | Cisco Technology, Inc. | Cloud overlay for operations administration and management |
US10225270B2 (en) | 2016-08-02 | 2019-03-05 | Cisco Technology, Inc. | Steering of cloned traffic in a service function chain |
US10218593B2 (en) | 2016-08-23 | 2019-02-26 | Cisco Technology, Inc. | Identifying sources of packet drops in a service function chain environment |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10361969B2 (en) | 2016-08-30 | 2019-07-23 | Cisco Technology, Inc. | System and method for managing chained services in a network environment |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
US10225187B2 (en) | 2017-03-22 | 2019-03-05 | Cisco Technology, Inc. | System and method for providing a bit indexed service chain |
US10257033B2 (en) | 2017-04-12 | 2019-04-09 | Cisco Technology, Inc. | Virtualized network functions and service chaining in serverless computing infrastructure |
US10178646B2 (en) | 2017-04-12 | 2019-01-08 | Cisco Technology, Inc. | System and method to facilitate slice management in a network environment |
US10884807B2 (en) | 2017-04-12 | 2021-01-05 | Cisco Technology, Inc. | Serverless computing and task scheduling |
US10333855B2 (en) | 2017-04-19 | 2019-06-25 | Cisco Technology, Inc. | Latency reduction in service function paths |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US10554689B2 (en) | 2017-04-28 | 2020-02-04 | Cisco Technology, Inc. | Secure communication session resumption in a service function chain |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10735275B2 (en) | 2017-06-16 | 2020-08-04 | Cisco Technology, Inc. | Releasing and retaining resources for use in a NFV environment |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10798187B2 (en) | 2017-06-19 | 2020-10-06 | Cisco Technology, Inc. | Secure service chaining |
US10397271B2 (en) | 2017-07-11 | 2019-08-27 | Cisco Technology, Inc. | Distributed denial of service mitigation for web conferencing |
US10673698B2 (en) | 2017-07-21 | 2020-06-02 | Cisco Technology, Inc. | Service function chain optimization using live testing |
US11063856B2 (en) | 2017-08-24 | 2021-07-13 | Cisco Technology, Inc. | Virtual network function monitoring in a network function virtualization deployment |
US10686907B2 (en) | 2017-08-25 | 2020-06-16 | Hughes Network Systems, Llc | Reducing bandwidth consumption and latency in satellite communications |
US10791065B2 (en) | 2017-09-19 | 2020-09-29 | Cisco Technology, Inc. | Systems and methods for providing container attributes as part of OAM techniques |
US10447807B1 (en) * | 2017-09-21 | 2019-10-15 | Sprint Communications Company L.P. | Dynamic middleware source selection for optimizing data retrieval from network nodes |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US11018981B2 (en) | 2017-10-13 | 2021-05-25 | Cisco Technology, Inc. | System and method for replication container performance and policy validation using real time network traffic |
US10541893B2 (en) | 2017-10-25 | 2020-01-21 | Cisco Technology, Inc. | System and method for obtaining micro-service telemetry data |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US10791168B1 (en) | 2018-05-21 | 2020-09-29 | Rafay Systems, Inc. | Traffic aware network workload management system |
US10666612B2 (en) | 2018-06-06 | 2020-05-26 | Cisco Technology, Inc. | Service chains for inter-cloud traffic |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11470176B2 (en) * | 2019-01-29 | 2022-10-11 | Cisco Technology, Inc. | Efficient and flexible load-balancing for clusters of caches under latency constraint |
TWI727496B (zh) * | 2019-11-11 | 2021-05-11 | 財團法人工業技術研究院 | 多邊緣雲之網路通訊控制方法及邊緣運算系統 |
CN111314421B (zh) * | 2020-01-17 | 2022-07-15 | 北京简单一点科技有限公司 | 一种基于自动代理和读写分离技术的统一制品管理*** |
US11403426B1 (en) * | 2021-09-14 | 2022-08-02 | Intercom, Inc. | Single path prioritization for a communication system |
US11936757B1 (en) | 2022-04-29 | 2024-03-19 | Rafay Systems, Inc. | Pull-based on-demand application deployment to edge node |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993024890A1 (en) * | 1992-06-03 | 1993-12-09 | Pitts William R | System for accessing distributed data cache channel at each network node to pass requests and data |
US5864852A (en) * | 1996-04-26 | 1999-01-26 | Netscape Communications Corporation | Proxy server caching mechanism that provides a file directory structure and a mapping mechanism within the file directory structure |
US5896506A (en) * | 1996-05-31 | 1999-04-20 | International Business Machines Corporation | Distributed storage management system having a cache server and method therefor |
US5935207A (en) * | 1996-06-03 | 1999-08-10 | Webtv Networks, Inc. | Method and apparatus for providing remote site administrators with user hits on mirrored web sites |
US5931912A (en) * | 1996-08-09 | 1999-08-03 | International Business Machines Corporation | Traversal path-based approach to understanding user-oriented hypertext object usage |
US5852717A (en) * | 1996-11-20 | 1998-12-22 | Shiva Corporation | Performance optimizations for computer networks utilizing HTTP |
US5941988A (en) * | 1997-01-27 | 1999-08-24 | International Business Machines Corporation | Session and transport layer proxies via TCP glue |
US5924116A (en) * | 1997-04-02 | 1999-07-13 | International Business Machines Corporation | Collaborative caching of a requested object by a lower level node as a function of the caching status of the object at a higher level node |
-
1997
- 1997-05-22 US US08/861,934 patent/US6167438A/en not_active Expired - Lifetime
-
1998
- 1998-05-15 CN CN98806358A patent/CN1260890A/zh active Pending
- 1998-05-15 AU AU73884/98A patent/AU737742B2/en not_active Ceased
- 1998-05-15 JP JP55045898A patent/JP2001526814A/ja active Pending
- 1998-05-15 EP EP98921223A patent/EP0983558A2/en not_active Withdrawn
- 1998-05-15 NZ NZ501380A patent/NZ501380A/en unknown
- 1998-05-15 WO PCT/US1998/009943 patent/WO1998053410A2/en not_active Application Discontinuation
- 1998-05-15 CA CA002290786A patent/CA2290786A1/en not_active Abandoned
- 1998-05-21 ZA ZA984298A patent/ZA984298B/xx unknown
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1628452B (zh) * | 2002-05-17 | 2010-09-01 | 株式会社Ntt都科摩 | 传输序列的碎片整理 |
CN101164057B (zh) * | 2004-06-30 | 2013-11-20 | 赛特里克斯网络应用有限责任公司 | 用于在数据通信网络中执行结合的高速缓存的方法和设备 |
CN101164057A (zh) * | 2004-06-30 | 2008-04-16 | 赛特里克斯网络应用有限责任公司 | 用于在数据通信网络中执行结合的高速缓存的方法和设备 |
CN1925462B (zh) * | 2005-09-01 | 2010-05-26 | 株式会社日立制作所 | 高速缓存*** |
CN100486170C (zh) * | 2005-12-15 | 2009-05-06 | 国际商业机器公司 | 传送前摄http内容的方法和设备 |
CN101764824B (zh) * | 2010-01-28 | 2012-08-22 | 深圳市龙视传媒有限公司 | 一种分布式缓存控制方法、装置及*** |
CN102665096B (zh) * | 2010-12-20 | 2015-02-25 | 微软公司 | 无线分发***代理高速缓存的***和方法 |
US8850491B2 (en) | 2010-12-20 | 2014-09-30 | Microsoft Corporation | Wireless distribution system proxy caches |
US8904431B2 (en) | 2010-12-20 | 2014-12-02 | Microsoft Corporation | Current device location advertisement distribution |
CN102665096A (zh) * | 2010-12-20 | 2012-09-12 | 微软公司 | 无线分发***代理高速缓存 |
US9258588B2 (en) | 2010-12-20 | 2016-02-09 | Microsoft Technology Licensing, Llc | Current device location advertisement distribution |
CN103974082A (zh) * | 2013-01-25 | 2014-08-06 | 华为技术有限公司 | 子节点、父节点以及用于多层次视频网络的缓存方法及*** |
CN103974082B (zh) * | 2013-01-25 | 2018-09-21 | 华为技术有限公司 | 子节点、父节点以及用于多层次视频网络的缓存方法及*** |
CN105359485A (zh) * | 2013-06-28 | 2016-02-24 | 汤姆逊许可公司 | 由客户终端获得多媒体内容的内容部分的方法 |
CN105359485B (zh) * | 2013-06-28 | 2021-01-22 | 交互数字麦迪逊专利控股公司 | 由客户终端获得多媒体内容的内容部分的方法 |
CN104995897A (zh) * | 2013-11-21 | 2015-10-21 | 阿尔卡特朗讯公司 | 用于在ip网络中进行内容缓存和传输的方法、***和装置 |
CN113037821A (zh) * | 2014-06-05 | 2021-06-25 | 交互数字Vc控股公司 | 操作高速缓存器的方法及相应高速缓存器 |
CN113037821B (zh) * | 2014-06-05 | 2024-07-16 | 交互数字Vc控股公司 | 操作高速缓存器的方法及相应高速缓存器 |
CN105577743A (zh) * | 2014-10-29 | 2016-05-11 | 富士通株式会社 | 用于管理装置的设备和方法 |
CN105577743B (zh) * | 2014-10-29 | 2018-10-12 | 富士通株式会社 | 用于管理装置的设备和方法 |
Also Published As
Publication number | Publication date |
---|---|
AU7388498A (en) | 1998-12-11 |
ZA984298B (en) | 1998-11-26 |
EP0983558A2 (en) | 2000-03-08 |
US6167438A (en) | 2000-12-26 |
WO1998053410A3 (en) | 1999-02-25 |
WO1998053410A2 (en) | 1998-11-26 |
JP2001526814A (ja) | 2001-12-18 |
NZ501380A (en) | 2001-05-25 |
AU737742B2 (en) | 2001-08-30 |
CA2290786A1 (en) | 1998-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1260890A (zh) | 分布式高速缓存、预取和复制的方法和*** | |
US8010666B2 (en) | Identification and tracking of digital content distributors on wide area networks | |
US7734751B2 (en) | Method of allocating a service by a first peer to a second peer in a communication network | |
KR20060057563A (ko) | 클라이언트와 서버 간 데이터를 분할 전송 및 처리하는시스템 및 방법 | |
JP4982651B2 (ja) | 分散型メディアネットワーク及びメタデータサーバを含んだシステム | |
CN101257396B (zh) | 一种基于p2p技术的多域内容分发***及相应的方法 | |
US20050268102A1 (en) | Method and system for secure distribution of content over a communications network | |
US20140359748A1 (en) | Network terminal validation | |
WO2011150830A1 (zh) | 获取内容的方法、节点及内容网络 | |
CN102075409A (zh) | 请求消息处理方法、***及负载均衡器设备 | |
US20030101267A1 (en) | Peer-to-peer caching network | |
WO2009115026A1 (zh) | 多媒体文件的下载播放***、客户端和方法 | |
CN1739076A (zh) | 用于传输被加密的有用数据对象的方法 | |
CN1855884A (zh) | 负载分散装置和负载分散*** | |
CN1451129A (zh) | 自行公布的网络目录 | |
US20110276630A1 (en) | Content delivery over a peer-to-peer network | |
CN1643880A (zh) | 瞬变网络中的动态寻址 | |
CN105828046A (zh) | 一种数据流的传输方法和装置 | |
CN113726873A (zh) | 基于区块链的文件处理方法、***、设备和存储介质 | |
JP4356693B2 (ja) | メッセージ配信装置及びその方法並びにシステム及びプログラム | |
KR20030046817A (ko) | 예약분산전송을 통한 멀티미디어 데이터 전송방법 | |
JP5178734B2 (ja) | P2pシステムにおけるピア管理サーバー及びピア管理方法 | |
KR20040001336A (ko) | 인터넷에서 개인간 파일 공유기술을 이용한 푸쉬 방식컨텐츠 전달 시스템 및 그 방법 | |
KR200349700Y1 (ko) | 웹서비스를 기반으로 하는 가상 라우팅 장치 | |
EP2792119B1 (en) | Proxy server operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |