IP Library Granted Patent US 7,020,698
Granted Patent B2
US 7,020,698 · App. 09/726,192 · Granted Mar 28, 2006

System and method for locating a closest server in response to a client domain name request

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,020,698
App. No.
09/726,192
Granted
Mar 28, 2006
Kind
B2
Abstract

A scalable system and method for locating a closest server in response to a client request via an interactive distribution network, such as the Internet, are provided. A closest content server is defined as having the least round trip time for responding to a client request. The system including a plurality of content servers; and a local server in communication with a plurality of clients, the local server acting as a proxy for communicating client requests from clients to a redirection server. Client network distance and load information is periodically collected at each content server in the network from clients communicating with each of the respective content servers. The redirection server periodically aggregates the network distance and load information from each content server to create client clusters from both current and previously aggregated network distance and load information. Each client cluster represents a division or partition of the total IP address space. Each client cluster is then mapped (paired) to one or more content servers in the network. The mapping or pairing is then utilized to respond to client DN requests received from any client in the network. Another aspect of the invention involves considering the respective capacities of the content servers in the network. A selection probability is assigned to each content server/domain index pair to prevent the repeated selection of the content server having lowest round trip time thereby overloading that server's service capacity. The selection probabilities assigned to each content server effect a load balancing to prevent overloading. Another aspect of the invention involves collecting the distance and load information without incurring any overhead cost by passively collecting TCP information as it is transmitted from clients in communication with content servers in the course of normal communications.

Claims (37)

1. A method for selecting a content server in a network including a plurality of content servers and at least one redirection server, comprising:

(a) creating client clusters using the steps of:

(a1) identifying clients having similar network distance proterties;

(a2) grouping distance tuples using content server ID and classless inter-domain routing address (CIDR) prefix similarity to define grouping data values, a distance tuple comprising at least one of a network distance, a content server identifier, a time-stamp, and a client internet protocol (IP) address;

(a3) storing the data values at leaf nodes of a hierarchical tree structure having a root node representing CIDR space and a plurallty of interior and leaf nodes, said data values including load information, network distances, and a number of the tuples; and

(a4) defining the client clusters by combining leaf nodes having sufficient similarity into parent nodes and identifying remaining leaf nodes as the client clusters;

(b) identifying at least one best-performing content server for each of said client clusters by selecting at least one content server having a minimal network distance to the client cluster; and

(c) mapping the client clusters with the at least one best-performing content server.

2. The method of claim 1 , wherein the at least one redirection server is an authoritative domain name (DN) server coupled to a plurality of local DNS servers.

3. The method of claim 1 , wherein the step (c) further comprises:

assigning selection probability to the at least one best-performing content server to ensure that maximum service capacity of the server is not exceeded.

4. The method of claim 1 , wherein the step (a3) further comprises:

collecting at said content servers load tuples, wherein each load tuple comprises at least one of a time-stamp, a content-server ID, a client IP address, a number of hits, and a domain index.

5. The method of claim 4 , further comprising:

pulling the distance and load tuples at successive data acquisition intervals; and

storing the distance and load tuples at said at least one redirection server.

6. The method of claim 5 , further comprising the step of multiplying data values corresponding to the distance and load tuples by a weighting factor in each of said successive data acquisition intervals.

7. The method of claim 1 , wherein a network distance is computed as one of a round trip time, jitter, bandwidth and packet loss.

8. The method of claim 7 , wherein said round trip time is computed by monitoring data packets transmitted and received by the content servers.

9. The method of claim 1 , wherein the step (c) further comprises:

assigning an assignment probability to the at least one best-performing content server.

10. The method of claim 9 , wherein said assignment probabilities are obtained from a flow map characterizing data flow in the network.

11. A system for selecting a content server in a network including a plurality of content servers and at least one redirection server, comprising:

a first means creating client clusters using the steps of:

(a1) identifying clients having similar network distance properties;

(a2) grouping distance tuples using content server ID and classless inter-domain routing address (CIDR) prefix similarity to define arouning data values, a distance tuple comprising at least one of a network distance, a content server identifier, a time-stamp, and a client internet protocol (IP) address;

(a3) storing the data values at leaf nodes of a hierarchical tree structure having a root node representing CIDR space and a plurality of interior and leaf nodes, said data values including load information, network distances, and a number of the tuples; and

(a4) defining the client clusters by combining leaf nodes having sufficient similarity into parent nodes and identifying remaining leaf nodes as the client clusters;

a second means identifying at least one best-performing content server for each of said client clusters by selecting at least one content server having a minimum network distance to the client cluster; and

a third means mapping the client clusters with the at least one best-performing content server.

12. The system of claim 11 , further including a forth means for assigning selection probability to the at least one best-performing content server to ensure that maximum service capacity of the server is not exceeded.

13. The system of claim 11 , wherein the first means further includes:

a fourth means collecting at said content servers load tuples, wherein each load tuple comprises at least one of a time-stamp, a content-server ID, a client IP address, a number of hits, and a domain index.

14. The system of claim 11 , wherein the first means further includes:

a fifth means modifying the network distance based upon a number of distance tuples received.

15. The system of claim 11 , wherein the first means further includes:

a sixth means maintaining identification of said at least one best-performing content server for an amount of time determined by calculating a confidence level.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
CHANGE OF NAME Recorded Feb 7, 2019
From: LUCENT TECHNOLOGIES INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 049887/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033949/0531 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →