CN103597471B - 用于对计算机网络上的数据通信进行缓存的方法和系统 - Google Patents
用于对计算机网络上的数据通信进行缓存的方法和系统 Download PDFInfo
- Publication number
- CN103597471B CN103597471B CN201180068656.1A CN201180068656A CN103597471B CN 103597471 B CN103597471 B CN 103597471B CN 201180068656 A CN201180068656 A CN 201180068656A CN 103597471 B CN103597471 B CN 103597471B
- Authority
- CN
- China
- Prior art keywords
- metadata
- data
- client
- content
- content object
- 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.)
- Active
Links
Classifications
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- 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/14—Session management
-
- 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/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/535—Tracking the activity of the user
-
- 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/565—Conversion or adaptation of application format or content
-
- 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
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/632—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
一种计算机实现的对计算机网络中的多会话数据通信进行缓存的方法,包括步骤:(a)对客户端与一个或多个元数据服务之间的一个或多个数据会话进行接收、拦截或监控,该客户端执行多会话应用程序以对期望的内容对象进行检索,所述客户端与一个或多个元数据服务通信,从而发现内容对象的元数据;(b)对客户端与一个或多个元数据服务之间进行交换的查询和响应进行分析,从而发现内容对象的元数据;(c)对客户端与内容源之间的后继数据会话进行接收或拦截;(d)对客户端使用的数据协议进行识别,并对数据会话中的数据查询进行识别;(e)对客户端在数据查询中所请求的内容对象或者它的多个部分进行识别;(f)确定内容对象或者它的多个部分是否存储在缓存中,如果是,则将存储在缓存中的内容对象或者它的多个部分发送给客户端,如果不是,则将数据查询发送给内容源、对来自内容源的数据响应进行存储、并将数据响应发送给客户端。
Description
相关申请的交叉引用
本申请要求于2010年12月30日提交的名称为“METHODS AND SYSTEMS FORCACHING DATA COMMUNICATIONS OVER COMPUTER NETWORKS”的美国临时专利申请No.61/428,538的优先权,在此通过引用将其并入本文。
技术领域
本申请总体上涉及计算机网络(例如因特网、局域网、广域网、无线网络等)上的数据通信的缓存。
背景技术
计算机网络上的数据通信的缓存是众所周知的网络优化技术,其用于提高应用程序的性能,并通过存储和发送与终端用户密切相关的流行内容最有效地利用网络资源。
内容缓存方案常规上聚焦到客户端-服务器通信(例如,网页浏览或流媒体会话)的缓存上,其中缓存立刻将内容对象(例如,网页浏览中的文本文件和图像)从服务器发送给客户端。
缓存方案所支持的内容应用程序设计为支持缓存,它们不使用数据会话的端到端的加密,它们具有选择性的用于缓存的客户侧明确支持并利用已知的数据端口(HTTP的tcp/80、RTMP的tcp/1935等)。
网页浏览和流媒体应用程序所建立的是基本的数据会话。每个这样的会话并入了缓存所需要的所有信息,用于识别内容查询、所请求的内容对象(或者它的一部分)、可对对象进行维持的内容源的地址。
传统的缓存方案相应地执行下面的缓存方法:
(a1)接收来自客户端的数据会话或者(a2)使用重定向网络元件或其它元件,使用一个或多个已知的TCP或UDP端口或者通过7层数据协议分析,对客户端和内容来源之间的数据会话进行识别和拦截;
(b)对客户端使用的数据协议进行解析,从而识别会话中的数据查询;
(c)对客户端所请求的唯一的数据对象(或者它的一部分)进行识别;以及
(d1)将数据请求与存储在缓存中的数据响应进行匹配并将响应发送至客户端或者(d2)将数据请求传播至服务器(内容源),接收来自服务器的响应,选择性地将响应存储在缓存中,将响应发送至请求的客户端。
近年来,因特网应用程序在功能性和复杂性上发生了演变,使用仅在一个下载会话范围内存在的动态内容对象标识符(例如,HTTP URL),支持来自多个内容源的同一内容对象在若干并行会话中传递,包含多个动态端口,包含数据会话的端到端加密。这些新的应用程序包括多种类型的用于文件共享和流媒体的点对点(P2P)应用程序、用于通过HTTP传递视频的自适应比特率协议、HTTP下载加速器、软件升级服务(如Microsoft Windows升级)。
点对点应用程序通常执行一种“对等点发现”机制,其中客户端应用程序访问P2P网络,请求网络发现可提供内容对象的内容源,随后与这些内容源建立会话,这其中的一些会话使用端到端加密。
普遍的做法是,P2P网络中的内容源使用动态端口,而不是“已知的”静态端口。
P2P应用程序可使用7层会话识别标准,以这样的方式加密来避免网络元件的检测。
因此,传统的缓存方案不能识别和拦截这些数据会话,而且由于加密,它们不能对数据协议进行解析来识别数据查询。
非P2P应用程序(例如,下载加速器、自适应比特率视频客户端、软件升级服务等)通常建立多个会话来对相同的内容对象安排检索,其中每个单独的会话不提供用于识别所请求的数据对象和/或将数据请求与数据响应进行匹配的缓存所需要的所有信息。
这些新应用程序所展现的特性消除了传统缓存技术的问题。期望提供对支持这些新应用程序的内容缓存的供选择的方法。
发明内容
根据一个或多个实施例,提供了一种计算机实现的对计算机网络中的多会话数据通信进行缓存的方法,包括步骤:(a)对客户端与一个或多个元数据服务之间的一个或多个数据会话进行接收、拦截或监控,该客户端执行多会话应用程序以对期望的内容对象进行检索,所述客户端与一个或多个元数据服务通信,从而发现内容对象的元数据;(b)对客户端与一个或多个元数据服务之间进行交换的查询和响应进行分析,从而发现内容对象的元数据;(c)对客户端与内容源之间的后继数据会话进行接收或拦截;(d)对客户端使用的数据协议进行识别,并对数据会话中的数据查询进行识别;(e)对客户端在数据查询中所请求的内容对象或者它的多个部分进行识别;(f)确定内容对象或者它的多个部分是否存储在缓存中,如果是,则将存储在缓存中的内容对象或者它的多个部分发送给客户端,如果不是,则将数据查询发送给内容源、对来自内容源的数据响应进行存储、并将数据响应发送给客户端。
根据一个或多个实施例,提供了一种用于对计算机网络中的多会话数据通信进行缓存的缓存服务。该缓存服务用于:(a)对客户端与一个或多个元数据服务之间的一个或多个数据会话进行接收、拦截或监控,该客户端执行多会话应用程序以对期望的内容对象进行检索,所述客户端与一个或多个元数据服务通信,从而发现内容对象的元数据;(b)对客户端与一个或多个元数据服务之间进行交换的查询和响应进行分析,从而发现内容对象的元数据;(c)对客户端与内容源之间的后继数据会话进行接收或拦截;(d)对客户端使用的数据协议进行识别,并对数据会话中的数据查询进行识别;(e)对客户端在数据查询中所请求的内容对象或者它的多个部分进行识别;以及(f)确定内容对象或者它的多个部分是否存储在缓存中,如果是,则将存储在缓存中的内容对象或者它的多个部分发送给客户端,如果不是,则将数据查询发送给内容源、对来自内容源的数据响应进行存储、并将数据响应发送给客户端。
附图说明
图1为示出了根据一个或多个实施例的缓存服务的部署的简图。
图2为示出了根据一个或多个可替换实施例的缓存服务的部署的简图。
具体实施方式
根据多个实施例,提供了一种缓存服务,其应用程序使用多个会话对同一内容对象(例如,文件或数据流)进行检索。
该缓存服务支持的多会话应用程序可包括:
(a)使用一个或多个会话发现内容对象相关的信息(下文中称为“内容对象元数据”)的应用程序,该信息用于识别:应用程序接触的用于检索内容对象的内容源、执行这些任务所使用的数据协议、用于检索对象的数据查询。
(b)使用多个会话检索内容对象的应用程序,仅在某些会话中传递用于对象识别所需要的信息。
(a)使用内容对象元数据进行内容对象检索的多会话应用程序
图1示出了一个示例性网络结构,其示出了根据一个或多个实施例的缓存服务的使用。客户端A1在网络上对一个或多个元数据服务M建立多个会话,发送用于对内容对象Z1的内容对象元数据进行检索的数据查询,以及接收一个或多个来自元数据服务M的响应。
内容对象元数据包括至少一个变量,该变量从下面的几种中选择:
(i)一个或多个内容源的地址;
(ii)单独内容源支持的协议;
(iii)每个对象或每个单独内容源的密匙;及
(iv)内容对象的结构
内容源地址可通过IP地址识别,例如,使用IPv4的IP地址1.1.1.1或IPv6地址fe80::200:f8ff:fe21:67cf,或者使用能够利用域名系统(DNS)分解为IP地址的域名,如cache12.bos.us.cdn.net。
内容源地址可使用隐含命名的端口号,这针对的是使用已知的协议端口的应用程序(例如,HTTP协议使用的tcp/80端口),或者使用明确命名的端口。
内容源地址可连同它所支持的协议一起识别,包括,但不限于,使用如RFC1738中所定义的统一资源定位器(URL),其为对象指定协议、内容源地址、端口、远程路径。
内容对象结构信息包括允许客户端A1形成对于对象部件的数据查询并对接收到的针对这些查询做出的响应的数据响应的正确性进行验证的信息。
内容对象结构信息包括涉及组成对象的多个部件相关的信息,例如Bittorrent协议使用的“块(piece)”、eDonkey P2P协议使用的多个“部件(part)”、自适应比特率流媒体传输协议(如Microsoft Silverlight Smooth Streaming、Adobe HTTP DynamicStreaming、Apple HTTP Live Streaming等)中使用的“回放等级(playback level)”。
有关内容对象部件的信息包括至少下面的一种:内容对象的部件的枚举、每个部件的长度、每个部件的数据校验和、特定内容源上的部件的可用性,其中内容源是利用上面的[0023-0025]所定义的内容源地址进行识别的。
包括上面的所有或部分信息的元数据可存储在单独的具有预先设定的结构的文件中,例如用于Bittorrent的torrent文件或Microsoft Silverlight smooth streaming使用的manifest文件。
提供内容对象元数据的元数据服务M可包括用于支持发送特定的应用程序或一个或多个内容对象的专用网络服务器(例如BT跟踪服务器、ED2K服务器等)、一般搜索引擎(Google、Microsoft Bing等)、用于共同存储元数据的具有多个计算机节点的网络(例如P2P应用程序使用的分布式哈希表网络)、或者其它分享分布式内容源发现网络(例如分布式哈希表网络)的客户端、或者其它下载和/或服务于内容对象Z1并维持与之相关的元数据的客户端。
客户端A1可使用多个元数据服务M来发现内容对象元数据,其中一个服务M1可提供一部分内容对象元数据并选择性地指向另一个服务M1用于提供另一部分。
于是,例如,客户端A1可通过Bittorrent搜索引擎检索torrent文件,Bittorrent搜索引擎包括内容对象数据结构信息以及提供当前动态(active)内容源地址信息的BT跟踪服务器的URL。
为了识别新的内容源和/或内容对象结构信息(例如,如果对象Z1为活动的数据流,它的新的部分是能够连续获得的),下载内容对象Z1或者它的某些部分的过程中,客户端A1可继续向元数据服务M发送数据查询。
根据一个或多个实施例,缓存服务C对在客户端A1与一个或多个元数据服务M之间交换的数据查询和/或响应进行接收并存储。
根据一个或多个实施例,通过进入A1与B之间的数据路径,或者通过使用一个或多个位于数据路径中并将指定数据会话重定向到缓存服务C的专门的重定向设备(例如,负载平衡器、路由器、DPI设备等),缓存服务C拦截A1与M之间的会话,并对A1与M之间的数据查询和响应进行中继。
根据一个或多个实施例,缓存服务C对元数据服务M提供的至少一个元数据响应进行修改,例如,指示缓存服务C作为内容源或者内容对象Z1的元数据服务。
根据一个或多个实施例,利用光分接头、镜像端口、或其它复制网络流通的设备,缓存服务C接收到客户端A1与元数据服务M之间的通信的副本。
根据一个或多个实施例,通过提供至少一个元数据服务M,缓存服务C接收来自客户端A1的对于内容对象Z1的数据请求。
根据一个或多个实施例,缓存服务C随后向元数据服务M自身提出对于内容对象Z1元数据的查询并对响应进行接收和存储。
根据一个或多个实施例,缓存服务C不断地对在至少一个客户端A1与元数据服务M之间交换的查询和响应、以及缓存服务C直接收到的来自元数据服务M的响应进行分析,如上面所描述的。
于是,缓存服务C保持对于客户端A1正在检索的至少一个内容对象Z1的内容对象元数据MZ。
根据一个或多个实施例,缓存服务C将元数据响应存储为与C最近一次接收到的响应关联的元数据MZ的一部分。
缓存服务C随后根据超时原则周期性地将那些大于一定时间前接收到的响应丢弃。
根据一个或多个实施例,缓存服务对元数据请求和响应进行监控,并将任何所存储的与随后收到的元数据响应矛盾的响应丢弃。
检索内容对象Z1的相关元数据后,客户端A1以及客户端A1利用元数据服务M发现的至少一个内容源B1,开始彼此建立数据会话,用于通过A1检索内容对象Z1或者它的一部分。
根据一个或多个实施例,缓存服务C对客户端A1与内容源B1之间建立的数据会话S1进行拦截。
根据一个或多个实施例,缓存服务C通过进入A1与B1之间的数据路径,或者通过使用一个或多个位于数据路径中并将指定数据会话重定向到缓存服务C的专门的重定向设备(例如,负载平衡器、路由器、DPI设备等)对数据会话进行拦截。
根据一个或多个实施例,缓存服务C只对已经在A1与内容源B1’之间建立的会话进行拦截,该B1’与缓存服务C存储的对象Z1的元数据MZ相匹配。
根据一个或多个实施例,客户端A1与缓存服务C建立至少一个会话S2,该缓存服务C被客户端A1识别为内容对象Z1的一个内容源。
根据一个或多个实施例,缓存服务C利用下面的协议中的至少一个来拦截客户端A1与内容源B1之间的会话S1中的数据查询和数据响应:
(i)如上面所描述的,与客户端A1相关联的数据协议,作为元数据MZ的一部分;
(ii)如上面所描述的,与会话S1相关联的数据协议,作为元数据MZ的一部分;以及
(iii)当使用基于签名的或其它一般的协议识别技术对会话S1中接收到的数据查询和响应进行分析时,缓存服务C所识别的数据协议。
根据一个或多个实施例,缓存服务C对会话S2使用相似的方法。
根据一个或多个实施例,当使用[0048]中描述的方法未能对会话S1和S2中的数据协议识别时,缓存服务C可应用至少一个密匙K(该密匙K作为元数据MZ由C存储),用于与客户端A1或内容源B1或二者同时建立加密的会话。
密匙K可与内容对象Z(例如,在Bittorrent中使用对象Z的哈希标识符来对Bittorrent对等点之间的会话加密)或多个特定内容源相关联。
根据一个或多个实施例,在与客户端A1之间建立数据会话并且对该会话中使用的协议进行识别后,缓存服务C接收来自客户端A1的对于对象Z1的数据查询Q1(或者它的一部分)。
根据一个或多个实施例,如上面所述,缓存服务C使用与内容对象Z1相关联的元数据MZ对与查询匹配的响应进行识别。
例如,如果客户端A1请求在Microsoft Silverlight smooth streaming协议中可用的500Kbps回放级别的组块的内容对象Z1,其起始偏移为0,未标示末端偏移,缓存服务C可使用描述对象Z1的元数据MZ,以识别末端偏移。
根据一个或多个实施例,如果缓存服务C存储了与查询Q1匹配的响应R1,则C将该响应发送给末端客户端A1。
根据一个或多个实施例,将数据响应R1发送给客户端A1前,缓存服务C可利用存储的与内容对象Z相关联的元数据MZ来对数据响应R1的有效性进行验证。
根据一个或多个实施例,如果缓存服务C中不存在与查询Q1匹配的响应,并且查询Q1已经作为客户端A1与内容源B1之间的会话S1的一部分发出,则缓存服务C转发该查询以在内容源B1中检索该响应,并接收和选择性地存储该响应,并将该响应中继给客户端A1。
根据一个或多个实施例,当缓存服务C中未找到与查询Q1匹配的响应时,缓存服务C发送允许其对数据查询Q1作出响应的数据查询Q1’给至少一个内容源B,该内容源B是C基于它所存储的元数据MZ识别为承载内容对象Z的内容源。
随后,缓存服务C接收对于这些查询的响应R1’,对它们进行存储并选择性地根据元数据MZ对它们的有效性进行验证,并将对查询Q1的响应发送给客户端A1。
根据一个或多个实施例,当缓存服务C中未找到与查询Q1匹配的响应时,C可将客户端A1重定向至由缓存服务存储在元数据MZ中的内容对象Z的一个内容源B。
(b)仅允许在某些会话中对内容对象进行识别的多会话应用程序
客户端A2建立对一个或多个目标B2多个并联或串联的会话S2,用于检索内容对象Z2。在各个会话中,客户端A2发送对于内容对象Z2的各部分的多个数据请求。
依据客户端A2和目标B2所使用的对内容对象Z和/或它的多个部分的命名习惯,用于拦截或接收会话S2的缓存服务C可能无法识别各个会话中客户端A2所请求的内容对象和/或它的多个部分,或者可能无法识别与这些请求匹配的数据响应。
客户端A2和一个或多个内容源B2可使用动态URL(所谓的“哈希URL”)来识别对象Z2,该URL为对于内容对象Z2的每次下载唯一指定的下载地址。这种情况下,缓存服务C不能仅依靠数据查询中的数据来识别匹配的响应,而是对多个数据响应进行分析,从而对请求的对象进行识别并将其与之前存储的数据响应进行匹配。
根据一个或多个实施例,当在一个或多个会话中接收到允许对内容对象Z进行识别的这样的数据查询和/或响应时,C在列表L2中对内容对象Z2的标识符以及客户端A2的IP地址、内容源B2的IP地址、客户端A2使用的动态内容标识符(例如URL)进行存储。
根据一个或多个实施例,当缓存服务C接收到不允许其对查询和/或响应中所引用的内容对象Z进行识别的数据查询和/或数据响应时,缓存服务C确定客户端A2的IP地址、动态内容标识符URL、内容源B2的IP地址是否存储在列表L2中。
根据一个或多个实施例,如果应用程序使用多个内容源,缓存服务C可以不考虑内容源B2的IP地址。
根据一个或多个实施例,缓存服务C根据超时原则从表L4中将客户端A2看到的涉及内容对象Z2的上次活动后的项目移除。
上面描述的缓存服务进程可以软件、硬件、固件及其它们的组合来实现。优选地,这些进程以一个或多个计算机程序实现,这些计算机程序运行于可编程设备上,该可编程设备包括处理器、处理器可读存储媒介(包括例如易失性和非易失性存储器和/或存储元件)、输入和输出设备。每个计算机程序可以是驻留在设备的随机存取存储器中的代码模块形式的一组指令(程序代码)。在设备需要前,这组指令可存储在另一个计算机存储器(例如,硬盘驱动器,或者可移动存储器(如光盘、外部硬盘驱动器、记忆卡、闪存驱动器))中或者存储在另一个计算机系统中并通过因特网或其它网络下载。
这样,已经描述了若干说明性实施例,应当理解的是,该领域内的技术人员可轻易地进行若干更改、修改和改进。这些更改、修改和改进意在构成本公开的一部分,并且意在位于本公开的精神和范围内。尽管本文讨论了一些例子并包含了详细的功能或结构元件的组合,但是应当了解的是,根据本发明,这些功能和元件可以以其它方式组合,从而实现相同或不同的目的。特别是,连同某个实施例讨论的操作、元件和特征不意在从其它实施例中的类似的或其它作用中排除在外。
此外,本文描述的元件和组件可进一步划分为额外的组件或连接到一起,从而形成较少的一些用于执行相同功能的组件。例如,缓存服务可包括一个或多个物理机器,或在物理机器上运行的一个或多个虚拟机器。此外,缓存服务可包括通过因特网或其它网络连接的一组计算机或许多分布式计算机。
相应地,前面的描述及附图仅作为实例,而不是意在限制本发明。
Claims (20)
1.一种计算机实现的对计算机网络中的多会话数据通信进行缓存的方法,包括步骤:
(a)对客户端与一个或多个元数据服务之间的一个或多个数据会话进行接收、拦截或监控,该客户端执行多会话应用程序以对期望的内容对象进行检索,所述客户端与一个或多个元数据服务通信,从而发现所述内容对象的元数据,其中所述元数据对存储所述内容对象和所述内容对象结构的内容源的地址进行识别;
(b)对客户端与一个或多个元数据服务之间进行交换的查询和响应进行分析,从而发现所述内容对象的元数据;
(c)对客户端与内容源之间的后继数据会话进行接收或拦截;
(d)对客户端使用的数据协议进行识别,并对数据会话中的数据查询进行识别;
(e)对客户端在数据查询中所请求的内容对象或者它的多个部分进行识别;以及
(f)确定内容对象或者它的多个部分是否存储在缓存中,如果是,则将存储在缓存中的内容对象或者它的多个部分发送给客户端,如果不是,则将数据查询发送给内容源、对来自内容源的数据响应进行存储、并将数据响应发送给客户端。
2.如权利要求1所述的方法,其中步骤(b)包括对客户端与一个或多个元数据服务之间进行交换的查询和响应进行持续的分析,从而发现内容对象的元数据。
3.如权利要求1所述的方法,其中步骤(c)包括仅对具有通过元数据获知的内容源的后继数据会话进行拦截。
4.如权利要求1所述的方法,其中步骤(d)包括使用元数据对客户端使用的数据协议进行识别,并对后继数据会话中的数据查询进行识别。
5.如权利要求1所述的方法,其中步骤(d)包括使用元数据对数据会话中使用的加密协议进行检测和解密。
6.如权利要求1所述的方法,其中步骤(e)包括识别查询和对查询的响应中的不完整数据,并从元数据获取进一步的信息以使不完整数据完整。
7.如权利要求1所述的方法,其中步骤(f)包括使用元数据来确定内容对象或者它的多个部分是否存储在缓存中。
8.如权利要求1所述的方法,其中这些方法步骤在缓存服务中实现,并且其中步骤(f)包括与客户端建立至少一个会话,所述缓存服务被客户端识别为内容对象的至少一个内容源。
9.如权利要求1所述的方法,其中步骤(f)包括在存储数据响应之前使用元数据对存储在缓存中的内容对象的有效性进行验证,并选择性地将与元数据不匹配的数据响应丢弃。
10.如权利要求1所述的方法,其中步骤(f)包括使用元数据对存储在缓存中的数据响应的有效性进行验证,从而确定匹配的数据响应或者它的多个部分是否存储在缓存中,并将与元数据不匹配的数据响应丢弃。
11.如权利要求1所述的方法,其中元数据对如下项目进行识别:存储内容对象或者它的多个部分的内容源的地址、内容源支持的数据协议、内容对象或内容源的密钥、或者内容对象结构。
12.如权利要求1所述的方法,还包括对一个或多个元数据服务向客户端发送的元数据进行修改,从而将缓存服务指定为内容源或指定为内容对象的元数据服务。
13.如权利要求1所述的方法,还包括将查询发送给一个或多个元数据服务以获得与内容对象相关的元数据,并接收和存储对查询的响应。
14.如权利要求1所述的方法,还包括对通过或经过对来自多个元数据服务中的一个元数据服务的数据的监控所接收到的或者拦截的元数据进行存储,并将所存储的超出规定时期前接收到的元数据丢弃。
15.如权利要求1所述的方法,还包括对从多个元数据服务中的一个元数据服务接收到的元数据进行存储,并将所存储的与最近收到的元数据矛盾的元数据丢弃。
16.如权利要求1所述的方法,其中数据协议与客户端或会话相关联。
17.如权利要求1所述的方法,其中通过使用基于签名的协议识别技术对数据协议进行识别。
18.如权利要求1所述的方法,还包括与客户端和/或内容源建立加密的会话。
19.如权利要求1所述的方法,还包括使用元数据对内容源进行识别,从而对内容对象或者它的多个部分进行检索。
20.如权利要求19所述的方法,还包括使用元数据使来自内容源的响应有效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710271639.7A CN107094176B (zh) | 2010-12-30 | 2011-12-30 | 用于对计算机网络上的数据通信进行缓存的方法和系统 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201061428538P | 2010-12-30 | 2010-12-30 | |
US61/428,538 | 2010-12-30 | ||
PCT/US2011/068204 WO2012092602A2 (en) | 2010-12-30 | 2011-12-30 | Methods and systems for caching data communications over computer networks |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710271639.7A Division CN107094176B (zh) | 2010-12-30 | 2011-12-30 | 用于对计算机网络上的数据通信进行缓存的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103597471A CN103597471A (zh) | 2014-02-19 |
CN103597471B true CN103597471B (zh) | 2017-05-17 |
Family
ID=46020681
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180068656.1A Active CN103597471B (zh) | 2010-12-30 | 2011-12-30 | 用于对计算机网络上的数据通信进行缓存的方法和系统 |
CN201710271639.7A Expired - Fee Related CN107094176B (zh) | 2010-12-30 | 2011-12-30 | 用于对计算机网络上的数据通信进行缓存的方法和系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710271639.7A Expired - Fee Related CN107094176B (zh) | 2010-12-30 | 2011-12-30 | 用于对计算机网络上的数据通信进行缓存的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (6) | US8185612B1 (zh) |
EP (1) | EP2659401B1 (zh) |
JP (1) | JP6086871B2 (zh) |
CN (2) | CN103597471B (zh) |
WO (1) | WO2012092602A2 (zh) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8903973B1 (en) | 2008-11-10 | 2014-12-02 | Tanium Inc. | Parallel distributed network management |
WO2012092602A2 (en) * | 2010-12-30 | 2012-07-05 | Peerapp Ltd. | Methods and systems for caching data communications over computer networks |
KR101330052B1 (ko) * | 2012-06-01 | 2013-11-15 | 에스케이텔레콤 주식회사 | 적응형 컨텐츠 전송 방식을 지원하는 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 |
KR101436049B1 (ko) * | 2012-06-01 | 2014-09-01 | 에스케이텔레콤 주식회사 | 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 |
US9804668B2 (en) * | 2012-07-18 | 2017-10-31 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
WO2014015110A1 (en) | 2012-07-18 | 2014-01-23 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution |
US9197944B2 (en) * | 2012-08-23 | 2015-11-24 | Disney Enterprises, Inc. | Systems and methods for high availability HTTP streaming |
US9967300B2 (en) | 2012-12-10 | 2018-05-08 | Alcatel Lucent | Method and apparatus for scheduling adaptive bit rate streams |
US9059961B2 (en) | 2012-12-21 | 2015-06-16 | Tanium Inc. | Creation and maintenance of self-organizing communication orbits in distributed networks |
US11172470B1 (en) | 2012-12-21 | 2021-11-09 | Tanium Inc. | System, security and network management using self-organizing communication orbits in distributed networks |
KR101992680B1 (ko) * | 2013-02-05 | 2019-06-25 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법 |
US9407726B1 (en) | 2013-03-15 | 2016-08-02 | Juniper Networks, Inc. | Caching objects identified by dynamic resource identifiers |
US9407716B1 (en) * | 2013-09-19 | 2016-08-02 | Juniper Networks, Inc. | Identifying content files in a cache using a response-based cache index |
US9769037B2 (en) | 2013-11-27 | 2017-09-19 | Tanium Inc. | Fast detection and remediation of unmanaged assets |
US10873645B2 (en) | 2014-03-24 | 2020-12-22 | Tanium Inc. | Software application updating in a local network |
US9769275B2 (en) | 2014-03-24 | 2017-09-19 | Tanium Inc. | Data caching and distribution in a local network |
US9667738B2 (en) * | 2014-03-24 | 2017-05-30 | Tanium Inc. | Local data caching for data transfers on a network of computational devices |
US10154110B2 (en) * | 2014-04-22 | 2018-12-11 | Qwilt, Inc. | System and methods thereof for delivery of popular content using a multimedia broadcast multicast service |
US10003659B2 (en) * | 2014-10-31 | 2018-06-19 | Qualcomm Incorporated | Efficient group communications leveraging LTE-D discovery for application layer contextual communication |
US9910752B2 (en) | 2015-04-24 | 2018-03-06 | Tanium Inc. | Reliable map-reduce communications in a decentralized, self-organizing communication orbit of a distributed network |
US11461208B1 (en) | 2015-04-24 | 2022-10-04 | Tanium Inc. | Reliable map-reduce communications in a decentralized, self-organizing communication orbit of a distributed network |
CN105938473A (zh) * | 2015-12-02 | 2016-09-14 | 杭州迪普科技有限公司 | 保存网页快照的方法及装置 |
US10498744B2 (en) | 2016-03-08 | 2019-12-03 | Tanium Inc. | Integrity monitoring in a local network |
US11609835B1 (en) | 2016-03-08 | 2023-03-21 | Tanium Inc. | Evaluating machine and process performance in distributed system |
US11886229B1 (en) | 2016-03-08 | 2024-01-30 | Tanium Inc. | System and method for generating a global dictionary and performing similarity search queries in a network |
US11153383B2 (en) | 2016-03-08 | 2021-10-19 | Tanium Inc. | Distributed data analysis for streaming data sources |
US11372938B1 (en) | 2016-03-08 | 2022-06-28 | Tanium Inc. | System and method for performing search requests in a network |
US10482242B2 (en) | 2016-03-08 | 2019-11-19 | Tanium Inc. | System and method for performing event inquiries in a network |
US10929345B2 (en) | 2016-03-08 | 2021-02-23 | Tanium Inc. | System and method of performing similarity search queries in a network |
US10824729B2 (en) | 2017-07-14 | 2020-11-03 | Tanium Inc. | Compliance management in a local network |
CN107786668B (zh) * | 2017-11-09 | 2020-06-12 | 成都知道创宇信息技术有限公司 | 一种基于cdn网络的权重缓存网站方法 |
US11343355B1 (en) | 2018-07-18 | 2022-05-24 | Tanium Inc. | Automated mapping of multi-tier applications in a distributed system |
US10841365B2 (en) | 2018-07-18 | 2020-11-17 | Tanium Inc. | Mapping application dependencies in a computer network |
US11044258B2 (en) * | 2018-08-24 | 2021-06-22 | Kyocera Document Solutions Inc. | Decentralized network for secure distribution of digital documents |
US10841393B2 (en) * | 2018-11-12 | 2020-11-17 | Citrix Systems, Inc. | Systems and methods for secure peer-to-peer caching |
WO2020225600A1 (en) * | 2019-05-03 | 2020-11-12 | Lenovo (Singapore) Pte, Ltd. | Method and apparatus for determining validity |
US11831670B1 (en) | 2019-11-18 | 2023-11-28 | Tanium Inc. | System and method for prioritizing distributed system risk remediations |
US11563764B1 (en) | 2020-08-24 | 2023-01-24 | Tanium Inc. | Risk scoring based on compliance verification test results in a local network |
US12231467B1 (en) | 2021-10-19 | 2025-02-18 | Tanium Inc. | System and method for deputizing satellite endpoints |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1287305C (zh) * | 2002-09-13 | 2006-11-29 | 株式会社日立制作所 | 网络系统 |
Family Cites Families (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3289358A (en) * | 1964-05-21 | 1966-12-06 | Longobardi Felice | Razor blade holder and stropper for a hone and strop |
JPH0827769B2 (ja) | 1992-10-30 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 通信インターフェースの生成システム及びその方法 |
US5526358A (en) | 1994-08-19 | 1996-06-11 | Peerlogic, Inc. | Node management in scalable distributed computing enviroment |
JP2000515692A (ja) | 1995-12-12 | 2000-11-21 | ザ ボード オブ トラスティーズ オブ ザ ユニバーシティー オブ イリノイ | 性質限定システム上でリアルタイムの動画及び音声情報を伝送し読み出すための方法及び装置 |
US5884046A (en) | 1996-10-23 | 1999-03-16 | Pluris, Inc. | Apparatus and method for sharing data and routing messages between a plurality of workstations in a local area network |
US5852717A (en) | 1996-11-20 | 1998-12-22 | Shiva Corporation | Performance optimizations for computer networks utilizing HTTP |
US6424992B2 (en) | 1996-12-23 | 2002-07-23 | International Business Machines Corporation | Affinity-based router and routing method |
US5950198A (en) | 1997-03-24 | 1999-09-07 | Novell, Inc. | Processes and apparatuses for generating file correspondency through replication and synchronization between target and source computers |
US5907678A (en) * | 1997-05-07 | 1999-05-25 | International Business Machines Corporation | Client/server system in which protocol caches for multiple sessions are selectively copied into a common checkpoint cache upon receiving a checkpoint request |
US5987376A (en) | 1997-07-16 | 1999-11-16 | Microsoft Corporation | System and method for the distribution and synchronization of data and state information between clients in a distributed processing system |
US5960404A (en) | 1997-08-28 | 1999-09-28 | International Business Machines Corp. | Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation |
US6003045A (en) | 1997-09-17 | 1999-12-14 | International Business Machines Corporation | Accessing stored files from multiple storage devices |
US6105029A (en) | 1997-09-17 | 2000-08-15 | International Business Machines Corporation | Retrieving network files through parallel channels |
US5950205A (en) | 1997-09-25 | 1999-09-07 | Cisco Technology, Inc. | Data transmission over the internet using a cache memory file system |
US6240461B1 (en) | 1997-09-25 | 2001-05-29 | Cisco Technology, Inc. | Methods and apparatus for caching network data traffic |
US6185598B1 (en) | 1998-02-10 | 2001-02-06 | Digital Island, Inc. | Optimized network resource location |
US6460087B1 (en) | 1998-02-25 | 2002-10-01 | Kdd Corporation | Method of transferring file |
US6085251A (en) | 1998-04-02 | 2000-07-04 | The United States Of America As Represented By The Secretary Of The Air Force | Implementing a parallel file transfer protocol |
US6018780A (en) | 1998-05-19 | 2000-01-25 | Lucent Technologies Inc. | Method and apparatus for downloading a file to a remote unit |
US6199107B1 (en) | 1998-07-22 | 2001-03-06 | Microsoft Corporation | Partial file caching and read range resume system and method |
US6219786B1 (en) | 1998-09-09 | 2001-04-17 | Surfcontrol, Inc. | Method and system for monitoring and controlling network access |
US6286084B1 (en) | 1998-09-16 | 2001-09-04 | Cisco Technology, Inc. | Methods and apparatus for populating a network cache |
US6304914B1 (en) | 1998-09-22 | 2001-10-16 | Microsoft Corporation | Method and apparatus for pre-compression packaging |
US6622157B1 (en) | 1998-09-28 | 2003-09-16 | Certeon, Inc. | Extending network services using mobile agents |
US6389462B1 (en) | 1998-12-16 | 2002-05-14 | Lucent Technologies Inc. | Method and apparatus for transparently directing requests for web objects to proxy caches |
US7143093B1 (en) * | 1998-12-17 | 2006-11-28 | Webmethods, Inc. | Enterprise computer system |
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 | 株式会社東芝 | 情報転送システム |
US6263371B1 (en) | 1999-06-10 | 2001-07-17 | Cacheflow, Inc. | Method and apparatus for seaming of streaming content |
US6993476B1 (en) | 1999-08-26 | 2006-01-31 | International Business Machines Corporation | System and method for incorporating semantic characteristics into the format-driven syntactic document transcoding framework |
US6976165B1 (en) | 1999-09-07 | 2005-12-13 | Emc Corporation | System and method for secure storage, transfer and retrieval of content addressable information |
US6339785B1 (en) | 1999-11-24 | 2002-01-15 | Idan Feigenbaum | Multi-server file download |
US6742023B1 (en) | 2000-04-28 | 2004-05-25 | Roxio, Inc. | Use-sensitive distribution of data files between users |
US6366907B1 (en) | 1999-12-15 | 2002-04-02 | Napster, Inc. | Real-time search engine |
US20020010866A1 (en) | 1999-12-16 | 2002-01-24 | Mccullough David J. | Method and apparatus for improving peer-to-peer bandwidth between remote networks by combining multiple connections which use arbitrary data paths |
US7240100B1 (en) | 2000-04-14 | 2007-07-03 | Akamai Technologies, Inc. | Content delivery network (CDN) content server request handling mechanism with metadata framework support |
US6996616B1 (en) * | 2000-04-17 | 2006-02-07 | Akamai Technologies, Inc. | HTML delivery from edge-of-network servers in a content delivery network (CDN) |
US6865600B1 (en) | 2000-05-19 | 2005-03-08 | Napster, Inc. | System and method for selecting internet media channels |
US20020049760A1 (en) | 2000-06-16 | 2002-04-25 | Flycode, Inc. | Technique for accessing information in a peer-to-peer network |
US7010578B1 (en) | 2000-09-21 | 2006-03-07 | Akamai Technologies, Inc. | Internet content delivery service with third party cache interface support |
US7203741B2 (en) | 2000-10-12 | 2007-04-10 | Peerapp Ltd. | Method and system for accelerating receipt of data in a client-to-client network |
US7111057B1 (en) | 2000-10-31 | 2006-09-19 | Akamai Technologies, Inc. | Method and system for purging content from a content delivery network |
US6940835B2 (en) | 2000-12-28 | 2005-09-06 | Nortel Networks Limited | Application-level mobility support in communications network |
US7043644B2 (en) | 2001-01-31 | 2006-05-09 | Qurio Holdings, Inc. | Facilitating file access from firewall-protected nodes in a peer-to-peer network |
JP3771453B2 (ja) | 2001-02-20 | 2006-04-26 | 株式会社エヌ・ティ・ティ・ドコモ | Tcp中継装置及びシーケンス番号変換方法 |
US8990334B2 (en) * | 2001-04-26 | 2015-03-24 | Nokia Corporation | Rule-based caching for packet-based data transfer |
US7454485B2 (en) | 2001-06-29 | 2008-11-18 | Intel Corporation | Providing uninterrupted media streaming using multiple network sites |
US7089304B2 (en) * | 2001-08-30 | 2006-08-08 | Microsoft Corporation | Metered Internet usage |
JP4254100B2 (ja) * | 2001-12-12 | 2009-04-15 | ソニー株式会社 | コンテンツ配信管理システム、情報処理装置、および方法、並びにコンピュータ・プログラム |
US6868439B2 (en) * | 2002-04-04 | 2005-03-15 | Hewlett-Packard Development Company, L.P. | System and method for supervising use of shared storage by multiple caching servers physically connected through a switching router to said shared storage via a robust high speed connection |
US7395355B2 (en) * | 2002-07-11 | 2008-07-01 | Akamai Technologies, Inc. | Method for caching and delivery of compressed content in a content delivery network |
JP2004070860A (ja) | 2002-08-09 | 2004-03-04 | Hitachi Ltd | ストリームコンテンツ配送システムおよびプロキシサーバ |
EP1561320A1 (en) | 2002-09-30 | 2005-08-10 | Corposoft Ltd. | Method and devices for prioritizing electronic messages |
US7616625B1 (en) | 2003-10-22 | 2009-11-10 | Sprint Communications Company L.P. | System and method for selective enhanced data connections in an asymmetrically routed network |
US7564792B2 (en) | 2003-11-05 | 2009-07-21 | Juniper Networks, Inc. | Transparent optimization for transmission control protocol flow control |
US20050177624A1 (en) | 2004-02-11 | 2005-08-11 | Alio, Inc. | Distributed System and Methodology for Delivery of Media Content to Clients having Peer-to-peer Connectivity |
JP4171910B2 (ja) | 2004-03-17 | 2008-10-29 | 日本電気株式会社 | 並列処理システム及び並列処理プログラム |
US20080005349A1 (en) | 2004-04-16 | 2008-01-03 | Utstarcom | Distributed multimedia streaming system |
JP4558396B2 (ja) | 2004-07-14 | 2010-10-06 | 株式会社東海理化電機製作所 | 入力制御装置 |
US20060095767A1 (en) * | 2004-11-04 | 2006-05-04 | Nokia Corporation | Method for negotiating multiple security associations in advance for usage in future secure communication |
JP2006139398A (ja) * | 2004-11-10 | 2006-06-01 | Nippon Telegr & Teleph Corp <Ntt> | キャッシュサーバ及びコンテンツ選定保持方法 |
US20060212584A1 (en) | 2005-03-15 | 2006-09-21 | Qian Xiang Shi Ji (Beijing) Technology Development Co. Ltd. | Method and system for accelerating downloading of web page content by a peer-to-peer network |
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. |
CN100492972C (zh) * | 2007-02-16 | 2009-05-27 | 陈勇 | 网络资源下载方法和装置 |
CN101257396B (zh) * | 2007-03-02 | 2010-12-08 | 中国科学院声学研究所 | 一种基于p2p技术的多域内容分发系统及相应的方法 |
US7706266B2 (en) | 2007-03-12 | 2010-04-27 | Citrix Systems, Inc. | Systems and methods of providing proxy-based quality of service |
EP2153340A4 (en) | 2007-05-08 | 2015-10-21 | Riverbed Technology Inc | HYBRID SEGMENT ORIENTED FILE SERVER, AND WAN ACCELERATOR |
JP2009089197A (ja) | 2007-10-01 | 2009-04-23 | Fujitsu Ltd | 中継装置 |
US8583810B2 (en) * | 2008-01-04 | 2013-11-12 | Red Hat, Inc. | Session affinity cache and manager |
EP2248038A4 (en) * | 2008-01-07 | 2013-10-16 | Peerapp Ltd | METHOD AND SYSTEM FOR TRANSFERRING DATA IN A COMPUTER NETWORK |
US8320250B2 (en) | 2008-02-12 | 2012-11-27 | Nvidia Corporation | Method and arrangement for TCP flow control |
US8463941B1 (en) | 2008-06-16 | 2013-06-11 | Riverbed Technology, Inc. | Cross-session protocol acceleration and its application to storage area network file systems |
EP2148488A1 (en) * | 2008-07-24 | 2010-01-27 | Irdeto Access B.V. | Peer-to-peer content distribution |
US8041893B1 (en) * | 2008-09-09 | 2011-10-18 | Vignette Software Llc | System and method for managing large filesystem-based caches |
WO2010042580A1 (en) | 2008-10-08 | 2010-04-15 | Citrix Systems, Inc. | Systems and methods for allocating bandwidth by an intermediary for flow control |
CN101388909A (zh) * | 2008-10-14 | 2009-03-18 | 中兴通讯股份有限公司 | 一种p2p点播系统和业务方法 |
EP2380320A1 (en) | 2008-12-23 | 2011-10-26 | Movik Networks | Transparent interaction with multi-layer protocols via selective bridging and proxying |
WO2011022405A2 (en) | 2009-08-17 | 2011-02-24 | Akamai Technologies, Inc. | Method and system for http-based stream delivery |
US8903891B2 (en) | 2010-06-24 | 2014-12-02 | Sap Se | User interface communication utilizing service request identification to manage service requests |
WO2012092602A2 (en) * | 2010-12-30 | 2012-07-05 | Peerapp Ltd. | Methods and systems for caching data communications over computer networks |
-
2011
- 2011-12-30 WO PCT/US2011/068204 patent/WO2012092602A2/en active Application Filing
- 2011-12-30 CN CN201180068656.1A patent/CN103597471B/zh active Active
- 2011-12-30 EP EP11853719.0A patent/EP2659401B1/en active Active
- 2011-12-30 CN CN201710271639.7A patent/CN107094176B/zh not_active Expired - Fee Related
- 2011-12-30 JP JP2013547708A patent/JP6086871B2/ja not_active Expired - Fee Related
- 2011-12-30 US US13/341,619 patent/US8185612B1/en active Active
-
2012
- 2012-05-21 US US13/476,574 patent/US8990354B2/en active Active
-
2015
- 2015-03-24 US US14/667,071 patent/US10484497B2/en active Active
-
2019
- 2019-11-15 US US16/685,717 patent/US11019170B2/en active Active
-
2021
- 2021-04-26 US US17/240,738 patent/US11758013B2/en active Active
-
2023
- 2023-06-15 US US18/335,994 patent/US12238189B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1287305C (zh) * | 2002-09-13 | 2006-11-29 | 株式会社日立制作所 | 网络系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2012092602A2 (en) | 2012-07-05 |
US12238189B2 (en) | 2025-02-25 |
JP2014505938A (ja) | 2014-03-06 |
US20210274011A1 (en) | 2021-09-02 |
EP2659401B1 (en) | 2019-06-26 |
CN107094176B (zh) | 2021-07-30 |
EP2659401A4 (en) | 2017-07-19 |
US20120233284A1 (en) | 2012-09-13 |
US11019170B2 (en) | 2021-05-25 |
CN107094176A (zh) | 2017-08-25 |
US20120117201A1 (en) | 2012-05-10 |
US20160088116A1 (en) | 2016-03-24 |
US20230336640A1 (en) | 2023-10-19 |
US10484497B2 (en) | 2019-11-19 |
WO2012092602A3 (en) | 2012-12-27 |
US20200084289A1 (en) | 2020-03-12 |
EP2659401A2 (en) | 2013-11-06 |
JP6086871B2 (ja) | 2017-03-01 |
US8990354B2 (en) | 2015-03-24 |
US11758013B2 (en) | 2023-09-12 |
US8185612B1 (en) | 2012-05-22 |
CN103597471A (zh) | 2014-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12238189B2 (en) | Methods and systems for caching data communications over computer networks | |
US10659425B2 (en) | Network monitoring and control system and method | |
US8244881B2 (en) | Service virtualization over content-centric networks | |
US8510415B2 (en) | Data distribution method, data distribution system and relevant devices in edge network | |
US8082290B2 (en) | Intelligent establishment of peer-to-peer communication | |
US20100115613A1 (en) | Cacheable Mesh Browsers | |
US20210368006A1 (en) | Request response method, device, and system applied to bit torrent system | |
GB2440759A (en) | Selecting a download cache for digital data | |
EP3446460B1 (en) | Content routing in an ip network that implements information centric networking | |
US20150074234A1 (en) | Content system and method for chunk-based content delivery | |
US20130238683A1 (en) | Method, system and computer program product for providing files to a client | |
WO2019156026A1 (ja) | サーバ選択装置、サーバ選択方法及びプログラム | |
CN118827797A (zh) | 调度方法及相关设备 | |
NZ720882B2 (en) | Peer-to-peer content delivery network, method, and manager | |
NZ720882A (en) | Peer-to-peer content delivery network, method, and manager |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |