Source: http://www.google.co.uk/patents/US8572214
Timestamp: 2017-09-22 01:07:08
Document Index: 611372416

Matched Legal Cases: ['application No. 09', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 01928942', 'Application No. 02763625', 'Application No. 02766274', 'Application No. 02798206', 'Application No. 01926390']

Patent US8572214 - System and method for discovering information objects and information object ... - Google Patents
An address of an information object repository that should service a client request for an information object is returned in response to a request therefor. The address of the information object repository which is returned is selected according to specified performance metrics regardless of whether...http://www.google.co.uk/patents/US8572214?utm_source=gb-gplus-sharePatent US8572214 - System and method for discovering information objects and information object repositories in computer networks
Publication number US8572214 B2
Application number US 11/499,182
Also published as DE60132718D1, DE60132718T2, EP1391096A2, EP1391096B1, US7162539, US7664876, US8423666, US8433787, US20010056416, US20030101278, US20060271705, US20100198913, US20110093586, US20130311674, US20160359722, WO2001069457A2, WO2001069457A3
Publication number 11499182, 499182, US 8572214 B2, US 8572214B2, US-B2-8572214, US8572214 B2, US8572214B2
Patent Citations (116), Non-Patent Citations (95), Referenced by (53), Classifications (31), Legal Events (2)
US 8572214 B2
1. A method performed by a first Web router, comprising:
receiving from a second Web router first mapping information between client addresses or address ranges and addresses of one or more information object repositories;
determining a first distance parameter from the first Web router to the second Web router that originates the mapping information;
identifying the first mapping information as valid if the first distance parameter is indicated as finite;
identifying the first mapping information as invalid if the first distance parameter is indicated as infinity; and
adopting a second mapping information between an information object identifier and an information object repository address when a local distance parameter associated with the information object identifier is greater than a second distance parameter, associated with the information object identifier, between the first Web router receiving the second mapping information and a third Web router that originates the second mapping information.
2. The method of claim 1, further comprising adopting the valid first mapping information.
selecting the valid first mapping from among two or more valid mappings for the client addresses or address ranges according to type of service distances associated with the mappings.
4. The method of claim 3, wherein the type of service distances are determined according to an average processing delay at the one or more information object repositories, an average delay from the one or more information object repositories to the client addresses or address ranges, a reliability of paths between the one or more information object repositories and the client addresses or address ranges, an available bandwidth in said paths, a load at the one or more information object repositories, or any combination thereof.
5. The method of claim 3, wherein if the type of service distances are equal, the first mapping information which is originated by the second Web router having a smallest minimum-hop distance to the first Web router receiving the mapping information is adopted.
6. The method of claim 1, wherein the second distance parameter comprises a minimum-hop distance.
7. The method of claim 1, wherein the first distance parameter comprises a minimum-hop distance.
8. The method of claim 1, wherein the local distance parameter is indicated as infinite and the second distance parameter is indicated as finite.
9. A non-transitory machine-readable medium storing executable program instructions which when executed by a data processing system cause the system to perform a method by a first Web router, comprising:
receiving from a second Web router a first mapping information between client addresses or address ranges and addresses of one or more information object repositories;
10. The non-transitory machine-readable medium of claim 9, further comprising instructions that cause the system to perform operations comprising adopting the valid first mapping information.
11. The non-transitory machine-readable medium of claim 10, further comprising
12. The non-transitory machine-readable medium of claim 11, wherein the type of service distances are determined according to an average processing delay at the one or more information object repositories, an average delay from the one or more information object repositories to the client addresses or address ranges, a reliability of paths between the one or more information object repositories and the client addresses or address ranges, an available bandwidth in said paths, a load at the one or more information object repositories, or any combination thereof.
13. The non-transitory machine-readable medium of claim 11, wherein if the type of service distances are equal, then the first mapping information which is originated by the second Web router having a smallest minimum-hop distance to the first Web router receiving the mapping information is adopted.
14. The non-transitory machine-readable medium of claim 9, wherein the second distance parameter comprises a minimum-hop distance.
15. The non-transitory machine-readable medium of claim 9, wherein the first distance parameter comprises a minimum-hop distance.
16. A first Web router, comprising:
means for receiving from a second Web router a first mapping information between client addresses or address ranges and addresses of one or more information object repositories, wherein the means for receiving comprises a first web router;
means for determining a first distance parameter from the first Web router to the second Web router that originates the mapping information;
means for identifying the first mapping information as valid if the first distance parameter is indicated as finite;
means for identifying the first mapping information as invalid if the first distance parameter is indicated as infinity; and
The present application is a divisional of U.S. patent application No. 09/810,148, now issued as U.S. Pat. No. 7,162,539 filed Mar. 15, 2001, which claims the priority benefit of the following U.S. Provisional Patent Applications: Application No. 60/190,331, entitled “SYSTEM AND METHOD FOR DISCOVERING INFORMATION OBJECTS AND INFORMATION OBJECT REPOSITORIES IN COMPUTER NETWORKS”, filed Mar. 16, 2000 by J.J. Garcia-Luna-Aceves; and Application No. 60/200,401, entitled “SYSTEM AND METHOD FOR DISCOVERING OPTIMUM INFORMATION OBJECT REPOSITORIES IN COMPUTER NETWORKS (WILD PROTOCOL)”, filed Apr. 28, 2000 by J.J. Garcia-Luna- Aceves and Bradley R. Smith.
More recent work has addressed the same resource allocation and discovery problems within the context of Internet services. Guyton and Schwartz (J. D. Guyton and M. F. Schwartz, “Locating Nearby Copies of Replicated Internet Servers,” Proc. ACM SIGCOMM 95 Conference, Cambridge, Mass., August 1995, pp. 288-298) describe and analyze server location techniques for replicated Internet services, such as Network Time Protocol (NTP) servers and Web caches. Several different approaches exist in the prior art for discovering information objects in Web caching schemes.
Hash routing protocols (K. W. Ross, “Hash Routing for Collections of Shared Web Caches,” IEEE Network, Vol. 11, No. 6, Nov. 1997, pp 37-44) constitute another approach to support object discovery in shared caches. Hash routing protocols are based on a deterministic hashing approach for mapping an information object to a unique cache (D. G. Thaler and C. V. Ravishankar, “Using Name-Based Mappings To Increase Hit,” IEEE/ACM Trans. Networking, 1998; V. Valloppillil and J. Cohen, “Hierarchical HTTP Routing Protocol,” Internet Draft, http://www.nlanr.net/Cache/ICP/draft-vinod-icp-traffic-dist-00.txt) to distribute the information objects (universal resource locator or URL in the case of the Web) among a number of caches; the end result is the creation of a single logical cache distributed over many physical caches. An important characteristics of this scheme is that information objects are not replicated among the cache sites. The hash function can be stored at the clients or the cache sites. The hash space is partitioned among the N cache sites when a client requires access to an information object o, the value of the hash function for o, h(o), is calculated at the client or at a cache site (in the latter case the cache would be configured at the client, for example). The value of h(o) is the address of the cache site to contact in order to access the information object o.
This DNS-based approach, without the use of hierarchies of Web caches, is advocated in the Akamai CDN solution (F. T. Leighton and D. M. Lewin, “Global Hosting System,” U.S. Pat. No. 6,108,703, August 22, 2000). The “global hosting system” advocated by Akamai assumes that a content provider services an HTML document in which special URLs specifying a domain name specific to Akamai. When the client needs to obtain the IP address of the Web cache hosting the content specified in the special URL, the client first contacts its local DNS. The local DNS is pointed to a “top-level” DNS server that points the local DNS to a regional DNS server that appears close to the local DNS. The regional DNS server uses a hashing function to resolve the domain name in the special URL into the address of a Web cache (hosting server) in its region, which is referred to as the target Web cache in the present application, in a way that the load among Web caches in the region is balanced. The local DNS passes the address of that Web cache to the client, which in turn sends its request for the information object to that Web cache. If the object resides in the target Web cache, the cache sends the object to the client; otherwise, the object is retrieved from the original content site.
A number of proposals exist to expedite the dissemination of information objects using what is called “push distribution” and exemplified by Backweb, marimba and Pointcast (“BackWeb: http://www.backweb.com/”′; ‘“Marimba: http://www.marimba.com/’”; “Pointcast: http://www.pointcast.com/′”). According to this approach, a Web server pushes the most recent version of a document or information object to a group of subscribers. The popular Internet browsers, Netscape Navigator and Internet Explorer™, use a unicast approach in which the client receives the requested object directly from the originating source or a cache. As the number of subscribers of a document or information object increases, the unicast approach becomes inefficient because of processing overhead at servers and proxies and traffic overhead in the network. The obvious approach to make push distribution scale with the number of subscribers consists of using multicast technology. According to this approach (P. Rodriguez and E. W. Briesack, “Continuous Multicast Push of Web Documents over The Internet,” IEEE Network Magazine, Vol. 12, No. 2, pp. 18-31, 1998), a document is multicasted continuously and reliably within a multicast group. A multicast group is defined for a given Web document and subscribers join the multicast group of the Web document they need to start receiving the updates to the document. A multicast group consists of the set of group members that should receive information sent to the group by one or multiple sources of the multicast group. The main shortcoming of this particular approach to push distribution are:
Another approach to helping select servers in a computer network (Z. Fei, S. Bhattacharjee, E. W. Zegura, and M. H. Ammar,“A Novel Server Selection Technique for Improving The Response Time of a Replicated Service” Proc. IEEE Infocom 98, March 1998, pp. 783-791) consists of broadcasting server loading information after a certain load threshold or time period is exceeded. The limitation of this approach is that, just as with topology-broadcast protocols used for routing in computer networks, the scheme incurs substantial overhead as the number of servers increases.
In yet another embodiment an address of a client seeking an information object is mapped to one or more addresses of information object repositories that have a first best distance to the client address according to specified performance metrics independently of whether the information object repositories maintain a local copy of the information object sought by the client. This mapping may also include a mapping of the address of the client to one or more addresses of redirecting Web routers that have a second best distance to the client according to some or all of the specified performance metrics.
FIGS. 5 a-5 d illustrate an example of the present invention when a Web router receives a WILD update from a neighbor Web router.
(4) client DNS cache selection. These approaches are disclosed in co-pending and commonly-owned U.S. Provisional Application No. 60/200,404, entitled “System and Method for Using a Mapping Between Client Addresses and Addresses of Caches to Support Content Delivery”, filed Apr. 28, 2000 by J. J. Garcia-Luna-Aceves and Bradley R. Smith, the complete disclosure of which is hereby incorporated by reference.
For each address and/or address range corresponding to a set of potential clients, the address of a Web cache, proxy, content server, and/or redirecting Web router that has the best TOS distance to the client address and the value of such TOS distance.
For each information object, the address of a Web cache, proxy, or content server that has the best TOS distance to the Web router.
In one embodiment of the present invention, the Internet routers of the system provide Web routers with distances to known destination addresses measured according to a number of network performance parameters. A Web router co-located with a Web cache or content server uses the information obtained from adjacent routers and the performance measurements of the Web cache or content server to derive the TOS distance from the co-located Web cache or content server to each known destination, which corresponds to potential client addresses. In an embodiment of the present invention, Web routers use routing information provided by the Border Gateway Protocol (BGP) and any of the intra-domain routing protocols (e.g., OSPF, EIGRP) running in the routers attached to the same local area networks where the Web routers reside to derive distances to client address ranges.
(a) Basic routing update: This corresponds to the information needed in any of the aforementioned routing algorithms for the updating of minimum-hop distances to Web routers, which can include distances to Web routers, the distances and second-to-last hops in the paths to Web routers, the entire minimum-hop paths to Web routers, the identifiers and lengths of the virtual links defined between Web routers that form part of a min-hop path to a Web router, or the identifiers and lengths of the virtual links defined between Web routers that form part of the virtual topology of Web router.
(b) A list of TOS distances from Web caches to destinations, which includes the following:
(i) A client address or client address range.
(ii) A list of one or more Web cache records, each consisting of:
(iia) The addresses of a Web cache or content server that can serve the client address range.
(iib) The TOS distance from the Web cache or content server to the client address or address range.
(iic) The addresses of the Web router co-located with the Web cache or content server.
(c) A list of TOS distance from redirecting Web routers to destinations, which includes the following:
(ii) A list of one or more Web router records, each consisting of:
(iia) The address of a Web router that can be used to redirect clients with the reported address or address range.
(iib) The TOS distance from the Web router to the client address or address range.
The subsequent description of the WILD protocol assumes that the aforementioned information is specified in WILD update messages. However, it should be evident to those of ordinary skill in the art that other formats and types of information can be used to implement the mapping between a client address range and the addresses of Web caches, content servers and redirecting Web routers.
Using the aforementioned information in WILD update messages, a Web router executes Procedure Local_Change, Procedure WILD_Update and Procedure Topology_Change, which are specified below in pseudocode, to update the matchings between client address ranges and the addresses of Web caches and redirecting Web routers that should serve them. Procedure Local_Change consists of the Web router running a path selection algorithm locally to compute its local TOS distances to client address ranges, and calling Procedure WILD_Update as if it were sending a WILD update to itself to note the changes that occur to local TOS distances to client address ranges. Procedure WILD_Update handles the reception of a WILD update by a Web router, and Procedure Topology_Change handles the occurrence of a topology change that causes one or more Web routers to become unreachable.
c-id: Client address range.
H(WR-id): Minimum-hop distance to Web router WR-id at Web router executing Procedure WILD_Update.
D(c-id): Best TOS distance from a Web cache to c-id at Web router executing Procedure WILD_Update.
C(c-id): Address of Web cache or content server to be used for client address range c-id by Web router executing Procedure WILD_Update.
a(c-id): Anchor of the mapping between a Web cache and c-id at Web router executing Procedure WILD Update.
DR(c-id): Best TOS distance from a redirecting Web router to c-id at Web router executing Procedure WILD Update.
R(c-id): address of redirecting Web router to be used for client address range c-id by Web router executing Procedure WILD_Update.
D_k(c-id): TOS distance from a Web cache to c-id reported by neighbor Web router k and stored at Web router executing Procedure WILD_Update.
C_k(c-id): Address of Web cache or content server that neighbor Web router k recommends for client address range c-id and stored at Web router executing Procedure WILD_Update.
DR_k(c-id): TOS distance from a redirecting Web router to c-id reported by neighbor Web router k and stored at Web router executing Procedure WILD_Update.
R_k(c-id): Address of redirecting Web router that neighbor Web router k recommends for client address range c-id and stored at Web router executing Procedure WILD_Update.
a_k(c-id): Web router anchoring D_k(c-id)
UWR: Unreachable Web Router list.
UWR.w: Row in UWR listing Web router w.
ART: Anchording router table.
ART.w: Row corresponding to Web router w in ART.
ART.w-c[j]: Destination j for which Web router w is an anchor for the mapping to a Web cache address.
ART.w-r [j]: Destination j for which Web router w is an anchor for the mapping to itself as a redirecting Web router.
*/ Executed when a WILD update message from self or neighbor Web router k is received /*
1. /* Determine new distances to Web routers that anchor mapping information for client
address ranges /*
2. /* Correct mappings from client address ranges to Web caches as needed /*
a. q <- UWR.w
b.1. Set <- { p | p is a neighbor Web router,
D(j) <- D_min;
C(j) <- C_n(j) | D_n(j) = D_min;
a(j) <- a_n(j) | D_n(j) = D_min
b.3. add update entry [ j, C(j), D(j), a(j) ]
b.4. Update-all <- true
3. /* Correct mappings from client address ranges to redirecting Web routers as needed /*
DR(j) <- DR_min;
R(j) <- R_n(j) | DR_n(j) = DR_min
b.3. add update entry [ j, R(j), DR(j) ]
4. Update-k <- false;
5. /* Process each update received to the mapping from client address range to the address of
a Web cache /*
for each update entry [ c-id, CU(c-id), DU(c-id), au(c-id) ]
D_k(c-id) <- DU(c-id);
C_k(c-id) <- CU(c-id);
Update-all <- true
D(c-id) <- D_k(c-id);
C(c-id) <- C_k(c-id);
a(c-id) <- a_k(c-id);
Update-k <- true
6. /* Process each update received to the mapping from client address range to the address of
a redirecting Web router /*
for each update entry [c-id, RU(c-id), DRU(c-id) ]
DR_k(c-id) <- DRU(c-id);
R_k(c-id) <- RU(c-id);
if( H(a(c-id)) < infinity )
[ c-id, R(c-id), DR(c-id) ]
DR(c-id) <- DR_k(c-id);
R(c-id) <- R_k(c-id);
add update entry [ c-id, R(c-id), DR(c-id) ]
b. /* Correct mappings from client address ranges
to Web caches as needed /*
c. /* Correct mappings from client address ranges to
redirecting Web routers as needed /*
c.1. Set <- { p | p is a neighbor Web router,
c.3. add update entry [ j, R(j), DR(j) ]
c.4. Update-all <- true
1. UWR <- empty;
2. Update-all <- false;
3. Execute Basic_Routing_Algorithm used to update distances from
Web router to all other Web routers;
by the basic routing
algorithm to correct minimum-hop distances to Web routers;
then Update-all <- true
/* Executed when updates to intra-domain and inter-domain routing
information, or updates to the congestion of attached Web
4. Update-self <- true
1. if (Update-self = true)
Update-self <- false; send WILD update to self
Update-k <- false; send WILD update message to k
FIGS. 5 a-5 d show an example of the present invention when a Web router receives a WILD update from a neighbor Web router. In this example, the congestion in the network from Web cache 310 to client 101 increases, making the local TOS distance from Web router 210 to client 101 equal 40 as a result of executing Procedure Local_Change, which in turn calls Procedure WILD_Update.
Thus a scheme for enabling the discovery of the caches and servers storing information objects distributed over computer networks, which can be implemented in hardware and/or software, has been described. It should be appreciated that some embodiments of the present invention make use of so-called network-layer URL (NURL) routing. This routing technique involves mapping requested URLs to unicast addresses, which are then used as an any cast IP address (i.e., a unicast address advertised by multiple, physically distinct points in an internet). See, e.g., Craig Partridge, Trevor Mendez, and Walter Milliken, “Host any casting service RFC 1546,” November 1993. A system and method for using uniform resource locators (URLs) to map application layer content names to network layer anycast addresses, the aforementioned mapping, is disclosed in co-pending and commonly-owned U.S. Provisional Application No. 60/200,511, entitled “System and Method for Using URLs to Map Application Layer Content Names to Network Layer Anycast Addresses”, filed Apr. 28, 2000 by J. J. Garcia-Luna-Aceves and Bradley R. Smith, the complete disclosure of which is hereby incorporated by reference. Furthermore, a system and method for using network layer URL routing to locate the closest server carrying specific content (network-level routing of URLs) is disclosed in co-pending and commonly-owned U.S. Provisional Application No. 60/200,402, entitled “System and Method for Using Network Layer URL Routing to Locate the Closest Server Carrying Specific Content (NURL Routing) filed Apr. 28, 2000 by J. J. Garcia-Luna-Aceves and Bradley R. Smith, the complete disclosure of which is hereby incorporated by reference.
With the route to the anycast cache server existing in the network infrastructure, a cache server processing a cache miss would like to transfer the content from the URL IP address. In an exemplary embodiment, in such a situation, the present invention resolves the anycast address to the server's real unicast address (which, by definition, uniquely identifies that server in the internet) before starting the download. In an exemplary embodiment, this is done by using an anycast address resolution protocol (AARP), which is disclosed in co-pending and commonly-owned U.S. Provisional Application No. 60/200,403, entitled “System and Method for Resolving Network Layer Anycast Addresses to Network Layer Unicast Addresses (AARP), filed Apr. 28, 2000 by J. J. Garcia-Luna-Aceves and Bradley R. Smith, the complete disclosure of which is hereby incorporated by reference.
US5606596 5 May 1995 25 Feb 1997 Bell Communications Research, Inc. Method and system utilizing a pointer strategy to locate nomadic users in a communication services system
US5822320 18 Nov 1996 13 Oct 1998 Nec Corporation Address resolution method and asynchronous transfer mode network system
US6189043 9 Jun 1997 13 Feb 2001 At&T Corp Dynamic cache replication in a internet environment through routers and servers utilizing a reverse tree generation
US6201794 21 Aug 1997 13 Mar 2001 Advanced Micro Devices, Inc. Network with efficient message routing
US6266706 17 Apr 1998 24 Jul 2001 Effnet Group Ab Fast routing lookup system using complete prefix tree, bit vector, and pointers in a routing table for determining where to route IP datagrams
US6314088 19 Sep 1997 6 Nov 2001 Nec Corporation Node configuration setup system with servers hunting through connection-oriented network for client's data
US6721291 19 Oct 1999 13 Apr 2004 Nokia Ip Anycast binding mobile communication method and system
US6820132 11 Mar 2000 16 Nov 2004 Loral Cyberstar, Inc. Internet communication system and method with asymmetric terrestrial and satellite links
US7020083 29 Oct 2001 28 Mar 2006 The Regents Of The University Of California Method for improving TCP performance over wireless links
US7200111 30 Aug 2001 3 Apr 2007 The Regents Of The University Of California Method for improving TCP performance over wireless links
US7213062 * 18 Sep 2000 1 May 2007 General Instrument Corporation Self-publishing network directory
US20020010737 26 Apr 2001 24 Jan 2002 Garcia-Luna-Aceves J. J. System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
US20030023750 24 Jul 2001 30 Jan 2003 Erol Basturk Control method for data path load-balancing on a data packet network
US20030091029 28 Jun 2002 15 May 2003 Jo Min Ho Routing method based on packet delay
US20030235155 21 Jun 2002 25 Dec 2003 International Business Machines Corporation Method and structure for autoconfiguration of network destinations
US20060271705 3 Aug 2006 30 Nov 2006 Garcia-Luna-Aceves J J System and method for discovering information objects and information object repositories in computer networks
US20100198913 22 Dec 2009 5 Aug 2010 Garcia-Luna-Aceves Jose J System and method directing clients to optimal servers in computer networks
US20110093586 22 Dec 2009 21 Apr 2011 Garcia-Luna-Aceves Jose J System and method for directing clients to optimal servers in computer networks
EP1017204A2 10 Dec 1999 5 Jul 2000 Fujitsu Limited Relaying apparatus for use in a network system
WO1998057275A2 8 Jun 1998 17 Dec 1998 Telia Ab Arrangement for load sharing in computer networks
WO2001018641A1 1 Sep 2000 15 Mar 2001 Fastforward Networks, Inc. A proximity-based redirection system for robust and scalable service-node location in an internetwork
WO2001033805A2 30 Oct 2000 10 May 2001 Sun Microsystems, Inc. Method and apparatus for determining approximate network distances using reference locations
WO2001057693A1 2 Feb 2001 9 Aug 2001 Columbia Innovation Enterprise Method and apparatus for dynamically addressing and routing in a data network
WO2001058069A1 7 Feb 2001 9 Aug 2001 Netli, Incorporated Method for high-performance delivery of web content
WO2001069457A2 16 Mar 2001 20 Sep 2001 Cenus Technologies, Inc. System and method for discovering information objects and information object repositories in computer networks
WO2001084356A2 27 Apr 2001 8 Nov 2001 Cenus Technologies, Inc. Method for server selection
WO2001084800A2 27 Apr 2001 8 Nov 2001 Cenus Technologies, Inc. System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content
WO2001084801A2 27 Apr 2001 8 Nov 2001 Cenus Technologies, Inc. System and method for controlling access to content carried in a caching architecture
WO2001084802A2 27 Apr 2001 8 Nov 2001 Cenus Technologies, Inc. System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
WO2001084803A2 27 Apr 2001 8 Nov 2001 Cenus Technologies, Inc. System and method for resolving network layer anycast addresses to network layer unicast addresses
WO2003023607A1 10 Sep 2002 20 Mar 2003 Cenus Technologies, Inc. System and method for information object routing in computer networks
1 "Cisco Distributed Director," http://www.tlc.iet.unipi.it/VoicelP/cisco/114.pdf (Oct. 1998).
2 3W3 Cache Workshops, "Submitted Papers," retrieved from the Internet on Oct. 2, 2001 from: http://www.cache.ja.net/events/workshop/papers.html, 3rd International WWW Caching Workshop (Jun. 15-17, 1998), 6 pgs.
3 A. Chankhunthod, P. Danzing, C. Neerdaels, M. Schwartz, and K. Worrell, "A Hierarchical Internet Object Cache," Proc. USENIX Technical Conference 96, San Diego, California, Jan. 1996.
4 A. Duda and M.A. Sheldon, "Content Routing in Networks of WAIS Servers," Proc. IEEE 14th International Conference on Distributed Computing Systems, Jun. 1994.
5 A. Duda et al., "A Content Routing System for Distributed Information Servers," Proc. Fourth International Conference on Extending Database Technology, Mar. 1994.
7 A. Heddaya and S. Mirdad, "WebWave: Globally Load Balanced Fully Distributed Caching of Hot Published Documents," Technical Report BU-CS-96-024, Boston University, Computer Science Department, Oct. 1996.
8 Alex Rousskov and Duane Wessels, "Cache digests," Proceedings 3rd International WWW Caching Workshop, Manchester, England, 19 pages (Apr. 17, 1998).
9 Ari Luotonen, Henrik Frystyk Nielsen, and Tim Berbers-Lee. Cern httpd. http://www.w3.org/Daemon, 2 pages, Jul. 1996.
10 B.S. Michel, K. Nikoloudakis, P. Reiher, and L. Zhang, "URL Forwarding and Compression in Adaptive Web Caching," Proc. IEEE Infocom 2000, Tel Aviv, Israel, Apr. 2000.
11 Bradley R. Smith, et al. "Federated Networks Bootstrap Services," University of California Computer Engineering, Santa Cruz, CA 95064, 2 pages (Nov. 8, 1998).
12 Brian Neil Levine and J.J. Garcia-Luna-Aceves, "Improving Internet Multicast with Routing Labels," 10 pages (1997).
13 Brian Neil Levine, et al. "New Routing Services for Internet Multicast," University of California Computer Engineering Department, School of Engineering, Santa Cruz, CA 95064 USA, 17 pages (Apr. 30, 1998).
15 C. Hedrick, "Routing Information Protocol," XP002233127, Network Working Group, Request for Comments: 1058, 28 pages (Jun. 1998).
16 C. Parsa and J.J. Garcia-Luna-Aceves, "TCP-Santa Cruz: Improving TCP Performance over Networks with Heterogeneous Transmission Media", Proc. IEEE ICNP 99.
17 Chawathe, Y., et al., "An Architecture for Internet Content Distribution as an Infrastructure Service" downloaded from the Internet on May 11, 2011, pp. 1-14.
19 Craig Partridge, Trevor Mendez, and Walter Milliken, "Host Anycasting Service," Network Working Group, RFC 1546, 9 pages (Nov. 1993).
20 D. Karger, E. Lehman, T. Leighton, M. Levine, D. Lewin, and R. Panigrahy, "Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web," Proc. 29th ACM Symposium on Theory of Computing (STOC 97), El Paso, Texas, 1997.
21 D. Karger, Sherman, A. Berkheimer, B. Bogstad, R. Dhanidina, K. Iwamoto, B. Kim, L. Matkins, and Y. Yerushalmi, "Web Caching with Consistent Hashing," Proc. 8th International World Wide Web Conference, Toronto, Canada, May 1999.
23 D. Wessels and K. Claffy, "Internet Cache Protocol (ICP), Version 2," RFC 2186, Sep. 1997.
24 D. Wessels, "Squid Internet Object Cache," http://www.squid-cache.org/, Aug. 1998.
25 D.G. Thaler and C.V. Ravishankar, "Using Name-Based Mappings to Increase Hit Rates," IEEE/ACM Transaction on Networking, vol. 6, No. 1 (Feb. 1998).
26 EP Communication enclosing Supplementary European Search Report for Counterpart European Application No. 01928942.0, 4 pages, Aug. 9, 2006.
27 EP Communication enclosing Supplementary European Search Report for Counterpart European Application No. 02763625.7, 3 pages, Dec. 22, 2010.
28 EP Communication enclosing Supplementary European Search Report for Counterpart European Application No. 02766274.1, 3 pages, Dec. 21, 2010.
29 EP Communication enclosing Supplementary European Search Report for Counterpart European Application No. 02798206.5, 3 pages, Dec. 21, 2010.
30 Erol Basturk, et al, "Using Network Layer Anycast for Load Distribution in the Internet," IBM Research Report, Document No. RC20938, pp. 1 and 1-20 (Jul. 29, 1997).
31 G. Chiu, C.S. Rahgavendra, and S.M. Ng, "Resource Allocation with Load Balancing Consideration in Distributed Computing Systems," Proc. IEEE Infocom 89, Ottawa, Ontario, Canada, Apr. 1989, pp. 758-765.
32 G. Maclarty, et al., "Policy-based content delivery: an active network approach," Computer Communications 24 (2001), University of Technology, Sydney, Faculty of Information Technology, Australia, Elsevier Science B.V 2001 pp. 241-248 (2001).
33 H.L. Morgan and K.D. Levin, "Optimal Program and Data Locations in Computer Networks," Communications of the ACM, vol. 20, No. 5, May 1977.
34 http://www.cache.ja.net/workshop./papers.html, 6 pages, Oct. 3, 2001.
35 http://www/cs.utexas.edu/users/UTCS/techreports/, Sep. 10, 2001.
36 J. Bound and P. Rogue, "IPv6 Anycasting Service: Minimum Requirements for end nodes," XP002192644, IETF Internet Draft, pp. 4-6, http://www.watersprings.org/pub/id/draft-bound-anycast-00.txt (Jun. 1996).
37 J. Garcia-Luna-Aceves and M. Spohn, "Scalable Link-State Internet Routing," ICNP, Sixth International Conference on Network Protocols (ICNP'98), Austin, Texas, pp. 52-61 (Oct. 14-16, 1998).
38 J.D. Guyton and M.F. Schwartz, "Locating Nearby Replicated Internet Servers," Proc. ACM SIGCOMM 95 Conference, Cambridge, Massachusetts, pp. 288-298 (Aug. 1995).
39 J.D. Guyton and M.F. Schwartz, "Locating Nearby Replicated Internet Servers," Technical Report CU-CS-762-95, Department of Computer Science, University of Colorado-Boulder, 18 pages, Feb. 1995.
40 J.J. Garcia-Luna-Aceves and Ewerton L. Madruga, "The Core-Assisted Mesh Protocol," IEEE Journal on Selected Areas in Communications, vol. 17, No. 8, pp. 1380-1394 (Aug. 1999).
41 Joe Touch, "Dynamic Internet Overlay Deployment and Management Using the X-Bone," Proceedings of IEEE ICNP, Osaka, Japan, pp. 59-68 (2000).
42 John Jannotti, et al., "Overcast: Reliable Multicasting with an Overlay Network," Proceedings of OSDI, San Diego, CA, 16 pages (Oct. 2000).
43 John Postel, "Transmission Control Protocol," RFC: 793, Darpa Internet Program Protocol Specificaiton, 92 pp. (Sep. 1981).
44 K. Obraczka, et al., "A Tool for Massively Replicating Internet Archives: Design, Implementation, and Experience," Proceeding of the 16th International Conference on Distributed Computing Systems, Hong Kong, 8 pages (May 27-30, 1996).
45 K.W. Ross, "Hash Routing for Collections of Shared Web Caches," IEEE Network, vol. 11, No. 6, Nov. 1997, pp. 37-44.
46 L. Zhang, S. Michel, S. Floyd, V. Jacobson, K. Nguyen, and A. Rosenstein, "Adaptive Web Caching: Towards a New Global Caching Architecture," In Proceedings of the Third International Caching Workshop (Jun. 1998).
47 Li Fan, Pei Cao, Jussara Almeida, and Andrei Z. Broder, "Summary cache: A scalable wide-area web cache sharing protocol," in Proceedings Sigcomm '98. ACM, Oct. 1998. http://www.cs.wisc.edu/ cao/papers/ summarycache.html.
48 Lixia Zhang, Sally Floyd, Van Jacobsen, "Adaptive Web Caching," Proceedings of the 1997 NLANR Web Cache Workshop, pp. 1-9 (Apr. 25, 1997).
49 M.A. Sheldon, A. Duda, R. Weiss, J.W. O'Toole, Jr., and D.K. Gifford, "A Content Routing System for Distributed Information Servers," Proc. Fourth International Conference on Extending Database Technology, Mar. 1994.
50 Masato Oguchi, et al., "A Proposal for a World-Wide Web Caching Proxy Mechanism," XP000754599, Global Information Infrastructure (GII) Evolution: Interworking Issues, Interworking '96, Third International Symposium on Interworking, Nara (Japan), Oct. 1-3, 1996, pp. 531-540.
51 Office Action for Counterpart European Application No. 01926390.4, 4 pages, May 4, 2005.
52 P. Mochapetris, "Domain Names-Concepts and Facilities," RFC 1034, 55 pages (Nov. 1987).
53 P. Mochapetris, "Domain Names—Concepts and Facilities," RFC 1034, 55 pages (Nov. 1987).
54 P. Mochapetris, "Domain Names-Implementation and Specification," RFC 1035, 45 pages (Nov. 1987).
55 P. Mochapetris, "Domain Names—Implementation and Specification," RFC 1035, 45 pages (Nov. 1987).
56 P. Rodriguez and E.W. Briesack, "Continuous Multicast Push of Web Documents over the Internet," IEEE Network Magazine, vol. 12, No. 2, pp. 18-31, 1998.
57 Pablo Rodriguez, Ernst W. Biersack, and Keith W. Ross, "Improving the WWW: Caching or Mulicast?," Institut EURECOM 2229, Route Computer Networks and ISDN Systems, pp. 1-17 (Mar. 30, 1998).
58 Paul Mockapetris, "Domain System Changes and Observations," Network Working Group, RFC 973, 10 pages (Jan. 1986).
59 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/08701, 8 pgs. (Apr. 27, 2006).
60 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/13620, 4 pgs. (May 28, 2003).
61 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/13833, 4 pgs. (Sep. 26, 2002).
62 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/13834, 3 pgs. (Feb. 27, 2003).
63 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/13837, 5 pgs. (Mar. 13, 2003).
64 PCT Notification of Transmittal of International Preliminary Examination Report for PCT Counterpart Application No. PCT/US01/40628, 6 pgs. (May 13, 2005).
65 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/08701, 7 pgs. (Oct. 21, 2003).
66 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/13620, 7 pgs. (Mar. 18, 2002).
67 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/13833, 7 pgs (Apr. 11, 2002).
68 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/13834, 6 pgs. (Mar. 18, 2002).
69 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/13837, 7 pgs. (Mar. 22, 2002).
70 PCT Notification of Transmittal of the International Search Report or the Declaration for PCT Counterpart Application No. PCT/US01/40628, 6 pgs. (Feb. 21, 2002).
71 PCT Written Opinion for PCT Counterpart Application No. PCT/US01/08701, 7 pgs. (Jul. 5, 2005).
72 PCT Written Opinion for PCT Counterpart Application No. PCT/US01/13620, 4 pgs. (Oct. 22, 2002).
73 PCT Written Opinion for PCT Counterpart Application No. PCT/US01/13834, 4 pgs. (Sep. 24, 2002).
74 PCT Written Opinion for PCT Counterpart Application No. PCT/US01/13837, 5 pgs. (Sep. 24, 2002).
75 PCT Written Opinion for PCT Counterpart Application No. PCT/US01/40628, 7 pgs. (Jul. 9, 2003).
76 R. Tewari, "Architectures and Algorithms for Scalable Wide-area Information Systems," Ph.D. Dissertation, Chapter 5, Computer Science Department, University of Texas at Austin, Aug. 1998.
77 R. Tewari, M. Dahlin, H.M. Vin, and J.S. Kay, "Design Considerations for Distributed Caching on the Internet," Proc. IEEE 19th International Conference on Distributed Computing Systems, May 1999.
78 Renu Tewari, Michael Dahlin, Harrick M. Vin, and Jonathan S. Kay, "Design considerations for distributed caching on the internet," Technical report, Department of Computer Sciences, University of Texas Austin, http://www.cs.utexas.edu/users /UTCS/techreports/, 14 pages (Oct. 1998).
79 Robert L. Carter, et al., "On the network impact of dynamic server selection," Computer Networks 31, pp. 2529-2558 (1999).
80 Robert R. Jueneman, "Novell Certificate Extension Attributes-Novell Security Attributes(TM): Tutorial and Detailed Design," Novell, Inc., Document Version 0.998 (Aug. 7, 1998).
81 Robert R. Jueneman, "Novell Certificate Extension Attributes—Novell Security Attributes™: Tutorial and Detailed Design," Novell, Inc., Document Version 0.998 (Aug. 7, 1998).
82 S. Gadde, M. Rabinovich, and J. Chase, "Reduce, reuse, recycle: An approach to building large Internet caches," in Proc. 6th Workshop Hot Topics in Operating Systems (HotOS-VI), Cape Cod, MA, May 1997, pp. 93-98.
83 S. Mahmoud and J.S. Riordon, "Optimal Allocation of Resources in Distributed Information Networks," ACM Transactions on Data Base Systems, vol. 1, No. 1, pp. 60-7S (Mar. 1976).
84 Samrat Bhatacharjee, et al., "Application-Layer Anycasting," XP010251961, Infocom '97. 16th Annual Joint Conference of the IEEE Computer and Communications Societies. Driving the Information Revolution, Proceedings IEEE Kobe, Japan, pp. 1388-1396 (Apr. 7, 1997).
85 Sandra G. Dykes, et al., "An Empirical Evaluation of Client-side Server Selection Algorithms," IEEE Infocom, vol. 3, pp. 1361-1370 (Mar. 2000).
86 Stephen Kent and Randall Atkinson, "Security Architecture for the Internet Protocol," Internet Draft: draft-ietf-ipsec-arch-sec-07.txt (Jul. 1998) Later made in to RFC 2401 Stephen Kent and Randall Atkinson, "Security Architecture for the Internet Protocol," RFC 2401, 66 pages (Nov. 1998).
87 T. Berners-Lee, "Information Management: A Proposal," CERN Document, (Mar. 1989, May 1990).
88 Tim Berners-Lee, et al., "HTDaemon: TCP/IP based server for Hypertext," source code as of Jul. 8, 1994.
89 University of Manchester 3rd International WWW Caching Workshop, Jun. 15-17, 1998, Asubmitted Papers Section. List of papers submitted so far for the workshop. 6 pages, download Oct. 3, 2001 from http://www.cache.ja.net/events/workshop/papers.html.
90 V. Valloppillil and J. Cohen,"Hierarchical HTTP Routing Protocol," Internet Draft, http://www.nlanr.net/Cache/ICP/draft-vinod-icp-traffic-dist-00.txt, 1 page (Apr. 21, 1997).
91 W. Simpson, "IP in IP Tunneling," RFC 1853, 8 pages, Oct. 1995.
92 W.W. Chu, "Optimal File Allocation in a Multiple Computer System," IEEE Transactions on Computers, Oct. 1969.
93 W.W. Chu, "Performance of File Directory Systems for Data Bases in Star and Distributed Networks," Proc. National Computer Conference, 1976, pp. 577-587.
94 Y. Rekhter and T. Li, "A Border Gateway Protocol 4 (BGP-4)," Network Working Group, Request for Comments: 1771, 57 pages (Mar. 1995).
95 Z. Fei, S. Bhattacharjee, E.W. Zegura, and M.H. Ammar, "A Novel Server Selection Technique for Improving the Response Time of a Replicated Service," Proc. IEEE Infocom 98, Mar. 1998, pp. 783-791.
US9185120 20 Aug 2013 10 Nov 2015 Palo Alto Research Center Incorporated Method and system for mitigating interest flooding attacks in content-centric networks
US9203885 28 Apr 2014 1 Dec 2015 Palo Alto Research Center Incorporated Method and apparatus for exchanging bidirectional streams over a content centric network
US9503358 5 Dec 2013 22 Nov 2016 Palo Alto Research Center Incorporated Distance-based routing in an information-centric network
US20160182353 * 22 Dec 2014 23 Jun 2016 Palo Alto Research Center Incorporated System and method for efficient name-based content routing using link-state information in information-centric networks
U.S. Classification 709/220, 709/241, 709/239, 370/238, 709/240, 709/226
International Classification H04L29/06, H04L29/08, G06F15/16, H04L12/18, G06F17/30, G06F15/177, G06F15/173, H04L29/12, G06F12/14
Free format text: ASSIGNMENT (NUNC PRO TUNC);ASSIGNOR:GARCIA-LUNA-ACEVES, J. J.;REEL/FRAME:029587/0142
Free format text: CHANGE OF ADDRESS;ASSIGNOR:ADARA NETWORKS, INC.;REEL/FRAME:029588/0525
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GARCIA-LUNA-ACEVES, J. J.;REEL/FRAME:029586/0423