IP Library Granted Patent US 8,868,760
Granted Patent B2
US 8,868,760 · App. 13/333,516 · Granted Oct 21, 2014

Systems and methods for determining the location of a request on a content delivery network

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,868,760
App. No.
13/333,516
Granted
Oct 21, 2014
Kind
B2
Abstract

A domain name server includes a processor operable to receive a domain name system request, determine a source Internet protocol address of the request, and in response to determining the source Internet protocol address to send a prompt to a client system associated with the source Internet protocol address and receive a reply from the client system. In response to receiving the reply the processor selects a content server that is closer to the source Internet protocol address than another content server. In response to selecting the content server the processor composes a file including a list of domain names that are associated with the content delivery network and an Internet protocol address associated with the content server. The processor sends the file to the client system.

Claims (81)

1. A domain name server comprising:

a memory that stores instructions;

a processor that executes the instructions to perform operations comprising:

receiving a domain name system request;

determining a source internet protocol address of the domain name system request;

sending, in response to determining the source internet protocol address, a prompt to a client system associated with the source internet protocol address, wherein the prompt requests the client system to indicate if content delivery network client software is desired; and

receiving, in response to determining the source internet protocol address, a reply from the client system based on the prompt;

selecting, in response to receiving the reply, a first content server of a content delivery network, wherein the first content server is selected for being closer to the source internet protocol address than another content server of the content delivery network;

composing, in response to selecting the first content server, a first file including:

a list of domain names that are associated with the content delivery network; and

a first server internet protocol address associated with the first content server; and

sending the first file to the client system.

2. The domain name server of claim 1 , wherein the operations further comprise:

waiting a predetermined amount of time after sending the first file to the client system;

selecting a second content server of the content delivery network, wherein the second content server is selected as being closer to the source Internet protocol address than the other content server, except the first content server;

composing, in response to selecting the second content server, a second file including:

the list of domain names; and

a second server internet protocol address associated with the second content server; and

sending the second file to the client system.

3. The domain name server of claim 1 , wherein the first file further includes a host file.

4. The domain name server of claim 3 , wherein the host file includes internet protocol address/domain name pairs for content providers that use the content delivery network.

5. The domain name server of claim 1 , wherein the first file further includes the content delivery network client software.

6. The domain name server of claim 1 , wherein the first content server is the same as the domain name server.

7. The domain name server of claim 1 , wherein the operations further comprise:

receiving an update request from the client system;

selecting, in response to receiving the update request, a second content server of the content delivery network, wherein the second content server is selected for being closer to the source internet protocol address than the first content server;

composing, in response to selecting the second content server, a second file including:

the list of domain names; and

a second server internet protocol address associated with the second content server; and

sending the second file to the client system.

8. The domain name server of claim 7 , wherein the second content server became closer to the source internet address than the first content server due to a change in the content delivery network.

9. The domain name server of claim 8 , wherein the second content server is the same as the domain name server.

10. The domain name server of claim 1 , wherein sending the first file to the client system is in response to determining that the client system has not previously received the file.

11. A non-transitory computer readable medium configured to store a program of instructions that cause a processor to perform operations comprising:

receiving a domain name system request at a domain name server of a content delivery network;

determining a source internet protocol address of the domain name system request:

sending, in response to determining the source internet protocol address, a prompt to a client system associated with the source Internet protocol address, wherein the prompt requests the client system to indicate if content delivery network client software is desired; and

receiving, in response to determining the source internet protocol address, a reply from the client system based on the prompt;

selecting, in response to receiving the reply, a first content server of the content delivery network, wherein the first content server is selected for being closer to the source internet protocol address than another content server of the content delivery network; and

composing, in response to selecting the first content server, a first file including:

a list of domain names that are associated with the content delivery network; and

a first server internet protocol address associated with the first content server; and

sending the first file to the client system.

12. The computer readable medium of claim 11 , wherein the operations further comprise:

waiting a predetermined amount of time after sending the file to the client system;

selecting a second content server of the content delivery network, wherein the second content server is selected as being closer to the source Internet protocol address than the other content server, except the first content server;

composing, in response to selecting the second content server, a second file including:

the list of domain names; and

a second server internet protocol address associated with the second content server; and

sending the second file to the client system.

13. The computer readable medium of claim 11 , wherein the first file includes a host file.

14. The computer readable medium of claim 13 , wherein the host file includes internet protocol address/domain name pairs for content providers that use the content delivery network.

15. The computer readable medium of claim 11 , wherein the operations further comprise:

receiving an update request from the client system;

selecting, in response to receiving the update request, a second content server of the content delivery network, wherein the second content server is selected for being closer to the source internet protocol address than the first content server;

composing, in response to selecting the second content server, a second file including:

the list of domain names; and

a second server internet protocol address associated with the second content server; and

sending the second file to the client system.

16. The computer readable medium of claim 15 , wherein the second content server became closer to the source internet address than the first content server due to a change in the content delivery network.

17. The computer readable medium of claim 16 , wherein the second content server is the same as the domain name server.

18. A method comprising:

receiving a domain name system request;

determining a source internet protocol address of the domain name system request:

sending, in response to determining the source internet protocol address, a prompt to a client system associated with the source internet protocol address, wherein the prompt requests the client system to indicate if content delivery network client software is desired;

receiving, in response to determining the source internet protocol address, a reply from the client system based on the prompt; and

selecting, in response to receiving the reply, a first content server of a content delivery network, wherein the first content server is selected for being closer to the source internet protocol address than another content server of the content delivery network;

composing, in response to selecting the first content server, a first file including:

a list of domain names that are associated with the content delivery network;

a host file having internet protocol address/domain name pairs for content providers that use the content delivery network; and

a first server internet protocol address associated with the first content server; and

sending the first file to the client system.

19. The method of claim 18 , further comprising:

receiving an update request from the client system;

selecting, in response to receiving the update request, a second content server of the content delivery network, wherein the second content server is selected for being closer to the source internet protocol address than the first content server;

composing, in response to selecting the second content server, a second file including:

the list of domain names;

the host file; and

a second server internet protocol address associated with the second content server; and

sending the second file to the client system.

20. The method of claim 19 , wherein the second content server became closer to the source internet address than the first content server due to a change in the content delivery network.

Assignments (3)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044277/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2014
From: AT&T INTELLECTUAL PROPERTY I, L.P.
To: GOOGLE INC.
Reel/Frame 033498/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2013
From: MALOO, SUNIL
To: AT&T INTELLECTUAL PROPERTY I, L.P.
Reel/Frame 031000/0703 →