资源的透明代理缓存制造技术

技术编号:7789325 阅读:663 留言:0更新日期:2012-09-21 23:49
本发明专利技术公开了资源的透明代理缓存。一种设备,从客户端设备接收对于能够从源设备获得的资源的请求,并且确定资源是否在缓存服务器中被缓存。当资源被缓存时,该设备提供指示客户端设备从缓存服务器请求资源的第一命令,从客户端设备接收对于资源的第一新请求,并且基于第一新请求使客户端设备能够从缓存服务器接收资源。当资源没有被缓存时,该设备创建防火墙过滤器,提供指示客户端设备从源设备请求资源的第二命令,经由防火墙过滤器从客户端设备接收对于资源的第二新请求,并且基于第二新请求使客户端设备能够从源设备接收资源。

【技术实现步骤摘要】
资源的透明代理缓存
技术介绍
服务供应商是出售与服务供应商相关联的网络(例如,互联网、数据网、电信网等)所提供的带宽或访问上述网络的带宽的实体(例如,企业或组织)。服务供应商可以包括电信公司、数据载体、无线通信供应商、互联网服务供应商、提供高速互联网访问的有线电视运营商等。诸如例如视频、音频、图像、软件下载的内容使用的快速增长对服务供应商产生更高的带宽需求,在重大内容和事件附近具有尖峰。为了处理这种更高的带宽需求,服务供应商在他们的网络中部署服务器的透明超文本传输协议(HTTP)代理缓存设备,诸如缓存服务器。代理缓存设备(这里也称作“代理缓存”)可以缓存受欢迎的内容,这使服务供应商能够将网络应用最优化,并且节省回程带宽成本。通常在层7 (开放系统互连(ISO)模型的应用层)上实现代理缓存。代理缓存可以与将请求内容的客户端设备和存储所请求内容的源设备互连的网络设备(例如,路由器)相关联。因为代理缓存利用源设备的地址(例如,互联网协议(IP)地址)向客户端设备发 送信息(例如,数据包)且利用客户端设备的IP地址向源设备发送信息,所以代理缓存对于客户端设备和源设备来说是“透明的”。这种配置确保代理缓存对于客户端设备或源设备来说是不可见的。使交換通信量的客户端与源设备互相连接的网络设备可以利用过滤器或基于策略的路由(PBR),以从网络设备向代理缓存发送诸如对内容的请求的通信量子集。在这种配置中,代理缓存将終止与客户端设备的连接(例如,传输控制协议(TCP)连接)。如果请求是关于存储在代理缓存中的内容,则代理缓存利用源设备的IP地址向客户端设备提供内容。如果所请求的内容没有存储在代理缓存中,则代理缓存利用客户端设备的IP地址连接至源设备,并且从源设备请求内容。代理缓存利用源设备的IP地址向客户端设备提供源设备所返回的内容,并且可以缓存该内容用于将来使用。然而,以这种方式部署的代理缓存承受着与非对称路由和数据包处理开销相关联的问题。当数据包在一条路径上从客户端设备横贯(traverse)至源设备而应答数据包在不同路径中从源设备横贯至客户端设备时,非对称路由在许多服务供应商网络中发生。在某些情况下,应答数据包可以绕开代理缓存而直接到达客户端设备。由于应答数据包不与任何连接状态匹配,所以客户端设备将丢弃应答数据包,并且将导致代理缓存处超吋。在代理缓存的配置中,由于客户端设备访问广泛种类的内容且这些内容的相当大的部分不可缓存(例如,动态数据),所以缓存命中率(例如,代理缓存存储客户端设备所请求的内容的可能性)通常很低(例如,小于20%)。尽管缓存命中率很低,但是所有客户端设备请求流过代理缓存,并且不必要地増加了代理缓存中的数据包处理开销。
技术实现思路
根据ー个方面,可以通过计算设备执行ー种方法。该方法包括通过计算设备从客户端设备接收对于能够从源设备获得的资源的请求;通过计算设备确定资源是否在缓存服务器中被缓存;当资源在缓存服务器中被缓存时,通过计算设备提供指示客户端设备从缓存服务器请求资源的第一命令;响应于提供第一命令,通过计算设备从客户端设备接收对于资源的第一新请求;通过计算设备以及基于第一新请求使客户端设备能够从缓存服务器接收资源;当资源没有在缓存服务器中被缓存时,通过计算设备创建防火墙过滤器;当资源没有在缓存服务器中被缓存时,通过计算设备提供指示客户端设备从源设备请求资源的第二命令;响应于提供第二命令,经由防火墙过滤器从客户端设备接收对于资源的第二新请求;以及经由防火墙过滤器以及基于第二新请求使客户端设备能够从源设备接收资源,而无需访问缓存服务器。根据另一方面,一种网络设备可以包括存储器,存储关于存储在缓存服务器中的资源的信息;以及处理器。处理器可以从客户端设备接收对于能够从源设备获得的资源的请求,并且可以基于所存储的信息,确定资源是否在缓存服务器中被缓存。当资源在缓存服务器中被缓存时,处理器可以提供指示客户端设备从缓存服务器请求资源的第一命令,并且可以响应于提供第一命令,从客户端设备接收对于资源的第一新请求。处理器可以基于第一新请求,使客户端设备能够从缓存服务器接收资源,当资源没有在缓存服务器中被缓存时,可以创建防火墙过滤器,并且当资源没有在缓存服务器中被缓存时,可以提供指示客户端设备从源设备请求资源的第二命令。处理器可以响应于提供第二命令,经由防火墙过 滤器从客户端设备接收对于资源的第二新请求,可以经由防火墙过滤器以及基于第二新请求使客户端设备能够从源设备接收资源,而无需访问缓存服务器,并且可以在客户端设备从源设备接收资源后去除防火墙过滤器。根据又一方面,一个或多个非易失性计算机可读介质可以存储可通过计算设备的一个或多个处理器执行的指令。该介质可以包括一条或多条指令,用于从客户端设备接收对于能够从源设备获得的资源的请求;一条或多条指令,用于确定资源是否在缓存服务器中被缓存;一条或多条指令,用于当资源在缓存服务器中被缓存时提供指示客户端设备从缓存服务器请求资源的第一命令;一条或多条指令,用于响应于提供第一命令,从客户端设备接收对于资源的第一新请求;一条或多条指令,用于基于第一新请求,使客户端设备能够从缓存服务器接收资源;一条或多条指令,用于当资源没有在缓存服务器中被缓存时,创建防火墙过滤器;一条或多条指令,用于当资源没有在缓存服务器中被缓存时,提供指示客户端设备从源设备请求资源的第二命令;一条或多条指令,用于响应于提供第二命令,经由防火墙过滤器从客户端设备接收对于资源的第二新请求;以及一条或多条指令,用于经由防火墙过滤器以及基于第二新请求,使客户端设备能够从源设备接收资源,而无需访问缓存服务器。附图说明并入且构成该说明书一部分的附图示出了这里描述的一个或多个实施方式,与这些描述一起解释这些实施方式。图中图I是其中可以实施这里描述的系统和/或方法的示例性网络的示图;图2是图I中示出的客户端设备、缓存服务器、或源设备的示例性部件的示图;图3是图I中示出的请求监控器、应答监控器、或网络设备的示例性部件的示图;图4A和图4B是图I中示出的能够通过网络的示例性部分执行的示例性操作的示图5是图I中示出的请求监控器的示例性功能部件的示图;图6是通过图5中所示的缓存命中/缺失分离器来保持的示例性信息的示图;图7是图I中所示的应答监控器的示例性功能部件的示图;图8是图I中所示的缓存服务器的示例性功能部件的示图;图9和图10是用于提供根据这里描述的实施方式的代理缓存方案的请求监控功能的示例性处理的流程图;图11是用于提供根据这里描述的实施方式的代理缓存方案的应答监控功能的示例性处理的流程图;图12A和图12B示出了用于提供根据这里描述的实施方式的模块化的透明代理缓存的示例性处理的流程图; 图13是能够通过图I中示出的网络的另ー示例性部分来执行的示例性操作的示图;图14是能够通过图I中示出的网络的又一示例性部分来执行的示例性操作的示图;以及图15是用于对根据这里描述的实施方式的代理缓存方案中的内容通信量进行优化的示例性处理的流程图。具体实施例方式下面參照附图进行详细的描述。不同附图中的相同參考标号可以指的是相同或类似的元件。这里描述的系统和/或方法可以提供分离缓存命中(cache hit)与缓存缺失(cache miss)的模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
2011.03.18 US 13/051,3421.一种用于提供代理缓存的方法,所述方法包括 通过计算设备从客户端设备接收对于能够从源设备获得的资源的请求; 通过所述计算设备确定所述资源是否被缓存在与所述源设备相关联的缓存服务器中; 当所述资源被缓存在所述缓存服务器中时,通过所述计算设备提供指示所述客户端设备从所述缓存服务器请求所述资源的第一命令; 响应于提供所述第一命令,通过所述计算设备从所述客户端设备接收对于所述资源的第一新请求; 通过所述计算设备以及基于所述第一新请求使所述客户端设备能够从所述缓存服务器接收所述资源; 当所述资源没有被缓存在所述缓存服务器中时,通过所述计算设备创建防火墙过滤器; 当所述资源没有被缓存在所述缓存服务器中时,通过所述计算设备提供指示所述客户端设备从所述源设备请求所述资源的第二命令; 响应于提供所述第二命令,经由所述防火墙过滤器从所述客户端设备接收对于所述资源的第二新请求;以及 经由所述防火墙过滤器以及基于所述第二新请求使所述客户端设备能够从所述源设备接收所述资源,而无需访问所述缓存服务器。2.根据权利要求I所述的方法,还包括 响应于所述客户端设备从所述源设备接收到所述资源,去除所述防火墙过滤器。3.根据权利要求2所述的方法,其中,包括在所述计算设备中的缓存命中/缺失模块创建和去除所述防火墙过滤器。4.根据权利要求3所述的方法,其中,所述缓存命中/缺失模块包括在所述计算设备的服务平面中。5.根据权利要求3所述的方法,其中,接收对于所述资源的请求包括 通过所述缓存命中/缺失模块向所述客户端设备发送一个或多个答复,直到所述缓存命中/缺失模块确定所述请求包括超文本传输协议(HTTP) GET请求或HTTP HEAD请求中的一个。6.根据权利要求I所述的方法,还包括 当所述资源没有被缓存在所述缓存服务器中时,请求所述缓存服务器从所述源设备检索所述资源。7.根据权利要求I所述的方法,其中,所述防火墙过滤器向所述源设备提供所述第二新请求,并且所述方法还包括 基于所述第二新请求从所述源设备接收所述资源;以及 向所述客户端设备转发所述资源。8.一种网络设备,包括 存储器,存储关于存储在缓存服务器中的资源的信息;以及 处理器,被配置为 从客户端设备接收对于能够从源设备获得的资源的请求,基于所存储的信息,确定所述资源是否被缓存在所述缓存服务器中, 当所述资源被缓存在所述缓存服务器中时,提供指示所述客户端设备从所述缓存服务器请求所述资源的第一命令, 响应于提供所述第一命令,从所述客户端设备接收对于所述资源的第一新请求, 基于所述第一新请求,使所述客户端设备能够从所述缓存服务器接收所述资源, 当所述资源没有被缓存在所述缓存服务器中时,创建防火墙过滤器, 当所述资源没有被缓存在所述缓存服务器中时,提供指示所述客户端设备从所述源设备请求所述资源的第二命令, 响应于提供所述第二命令,经由所述防火墙过滤器从所述客户端设备接收对于所述资源的第二新请求, 经由所述防火墙过滤器以及基于所述第二新请求使所述客户端设备能够从所述源设备接收所述资源,而无需访问所述缓存服务器,以及 响应于所述客户端设备从所述源设备接收到所述资源,去除所述防火墙过滤器。9.根据权利要求8所述的网络设备,其中,所述处理器还被配置为 从所述客户端设备接收对于能够从所述源设备获得的另一资源的另一请求, 基...

【专利技术属性】
技术研发人员:罗伯特·哈伯德拉纳迪普·达斯
申请(专利权)人:丛林网络公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1