IP Library Granted Patent US 8,239,532
Granted Patent B1
US 8,239,532 · App. 12/822,665 · Granted Aug 7, 2012

System and method of reducing latency using adaptive DNS resolution

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 8,239,532
App. No.
12/822,665
Granted
Aug 7, 2012
Kind
B1
Abstract

A system and method is provided whereby a client device adaptively optimizes the selection of a network device from a plurality of network devices hosting information desired by the client device. Each of the network devices hosting information desired by the client device is associated with a common host name and a different IP address, and the client selects an optimal network device based on a rank assigned to the one or more network devices. A rank assigned to the optimal network device indicates the greatest desirability, from the client device's perspective, of the optimal network device relative to the other network devices. Furthermore, the ranks assigned to the one or more network devices are adaptively determined based upon a determination of an estimated latency, determined from the client device's perspective, between the client device and the one or more network devices.

Claims (29)

1. A method of transmitting information over a network, the method comprising:

receiving, at a first network device in a network of devices, a request to obtain a desired resource over the network;

determining, by a processor at the first network device, a plurality of network devices each having a common host name and a unique network address, where each network device in said plurality of network devices is adapted to provide the desired resource, and where at least one network device in said plurality of network devices is associated with a rank representing an estimated latency that is determined from one or more prior communications between the first network device and the at least one network device;

selecting, at the first network device, an optimal network device from the plurality of network devices, where said optimal network device is selected based upon a rank associated with said optimal network device, and where said rank associated with said optimal network device indicates the greatest relative desirability of said optimal network device relative to other network devices in said plurality of network devices; and,

transmitting one or more data packets requesting the desired resource from the first network device to the optimal network device over the network, where said one or more data packets are transmitted based upon the unique network address of the optimal network device.

2. The method of claim 1 , wherein each remaining network device in said plurality of network devices is associated with a respective rank representing an estimated latency that is determined from one or more prior communications between the first network device and each remaining network device in said plurality of network devices.

3. The method of claim 1 , wherein the rank associated with the at least one network device in said plurality of network devices is adjusted based on an estimated geographic location of said at least one network device.

4. The method of claim 1 , wherein the rank associated with the at least one of said plurality of network devices is a default rank.

5. The method of claim 1 , wherein the rank associated with the at least one network device in the plurality of network devices is based upon latency information collected during the one or more prior communications, over the network, between the first network device and the at least one network device.

6. The method of claim 1 , wherein the estimated latency is based upon an RTT time, measured from the first network device's perspective, during the one or more prior communications between the first network device and the at least one network device in said plurality of network devices.

7. The method of claim 6 , wherein the estimated latency is based upon a total response time, measured from the first network device's perspective, during the one or more prior communications between the first network device and the at least one network device in said plurality of network devices.

8. The method of claim 1 , wherein determining the plurality of network devices further comprises receiving, at the first network device, a first response over the network from a server, where the first response is received in response to a first request transmitted by the first network device over the network, and where the first response includes a plurality of unique network addresses each associated with the common host name.

9. The method of claim 8 , wherein the server is a domain name resolution server, the first request is a domain name resolution request, and the first response is a domain name resolution response.

10. The method of claim 8 , wherein the server is an http server, the first request is an http request, and the first response is an http response.

11. A system for transmitting information over a network, the system comprising:

a first network device including a memory storing instructions and data, the data comprising a first request for a desired resource to be provided over a network to a second device; and,

a processor to execute the instructions and to process the data, wherein the instructions comprise:

determining, by the processor at the first network device, a plurality of network devices having a common host name and a unique network address, where each network device in said plurality of network devices is adapted to provide the desired resource, and where at least one network device in said plurality of network devices is associated with a rank based upon an estimated latency that is determined from one or more prior communications between the first network device and the at least one network device;

selecting, at the first network device, an optimal network device from the plurality of network devices, where said optimal network device is selected based upon a rank associated with said optimal network device, and where said rank associated with said optimal network device indicates the greatest relative desirability of said optimal network device relative to other network devices in said plurality of network devices; and,

transmitting one or more data packets requesting the desired resource from the first network device to the optimal network device over the network, where said one or more data packets are transmitted based upon the unique network address of the optimal network device.

12. The system of claim 11 , wherein each remaining network device in said plurality of network devices is associated with a respective rank representing an estimated latency that is determined from one or more prior communications between the first network device and each remaining network device in said plurality of network devices.

13. The system of claim 11 , wherein the rank associated with the at least one network device in said plurality of network devices is adjusted based on an estimated geographic location of said at least one network device.

14. The system of claim 11 , wherein the rank associated with the at least one of said plurality of network devices is a default rank.

15. The system of claim 11 , wherein the rank associated with the at least one network device in the plurality of network devices is based upon latency information collected during the one or more prior communications, over the network, between the first network device and the at least one network device.

16. The system of claim 15 , wherein the estimated latency is based upon an RTT time, measured from the first network device's perspective, during the one or prior more communications between the first network device and the at least one network device in said plurality of network devices.

17. The system of claim 15 , wherein the estimated latency is based upon a total response time, measured from the first network device's perspective, during the one or more prior communications between the first network device and the at least one network device in said plurality of network devices.

18. The system of claim 11 , wherein determining the plurality of network devices further comprises receiving, at the first network device, a first response over the network from a server, where the first response is received in response to a first request transmitted by the first network device over the network, and where the first response includes a plurality of unique network addresses each associated with the common host name.

19. The system of claim 11 , wherein the server is a domain name resolution server, the first request is a domain name resolution request, and the first response is a domain name resolution response.

20. The system of claim 11 , wherein the server is an http server, the first request is an http request, and the first response is an http response.

Assignments (3)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
RELEASE OF SECURITY INTEREST Recorded Apr 29, 2016
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: AMENDIA, INC.; OMNI ACQUISITION INC.
Reel/Frame 038578/0828 →
PATENT SECURITY AGREEMENT Recorded Sep 9, 2014
From: AMENDIA, INC.; OMNI ACQUISITION, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 033696/0940 →