IP Library Granted Patent US 10,938,925
Granted Patent B1
US 10,938,925 · App. 15/724,963 · Granted Mar 2, 2021

Delivery and acceleration with localized source IP addresses without reliance on client headers

Inventors: Justin Kenneth Fitzhugh (Redwood City, CA); Peter Alan Blum (Portola Valley, CA); Girish Vaitheeswaran (San Jose, CA)
Assignee: Akamai Technologies, Inc.
H04L67/18H04L67/28
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 10,938,925
App. No.
15/724,963
Granted
Mar 2, 2021
Kind
B1
Abstract

A method of delivering location-specific content by a content processing server is disclosed. A request for web content is received by the content processing server. A location of an originator of the received request for web content is identified. A local proxy server is selected based on the identified location of the originator of the received request for web content. The web content is requested via the selected local proxy server. Location-specific web content from the content provider is received via the selected local proxy server. The received local-specific web content is sent to the originator of the received request in response to the received request.

Claims (53)

1. A method of delivering location-specific content by a content processing server, comprising:

receiving a request for web content at a first proxy server, the request having a header that includes client header information that is potentially insecure;

the first proxy server identifying a location of an originator of the received request for web content;

the first proxy server selecting from a set of second proxy servers a given second proxy server based on the identified location of the originator of the received request for web content, wherein as between the first proxy server and the given second proxy server, the first proxy server has more processing or storage capability;

proxying the request for web content for delivery to the content provider via the selected given second proxy server;

receiving at the first proxy server and via the selected given second proxy server location-specific web content from the content provider, the location-specific web content having been generated at the content provider without reliance on the client header information that is potentially insecure; and

sending to the originator of the received request the received local-specific web content in response to the received request, the received local-specific web content being provided by the first proxy server in accordance with at least an acceleration feature.

2. The method of claim 1 , further comprising:

extracting a source Internet Protocol (IP) address corresponding to the received request for web content; and

identifying the location of the originator of the received request for web content based on the extracted source IP address corresponding to the received request for web content.

3. The method of claim 2 , wherein the received request for web content is received directly from the originator of the received request.

4. The method of claim 1 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

determining that a location of the given second proxy server shares location-specific web content served by the content provider with the identified location of the originator of the received request for web content.

5. The method of claim 4 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a granularity in terms of geographical locations of the location-specific content served by the content provider.

6. The method of claim 4 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a granularity in terms of geographical locations of a geolocation software or geolocation database.

7. The method of claim 4 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a language spoken at the location of the given second proxy server and a language spoken at the identified location of the originator of the received request for web content.

8. The method of claim 4 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

selecting the given second proxy server by minimizing a total distance from the originator of the received request for web content to the content processing server, from the content processing server to the given second proxy server, and from the given second proxy server to the content provider.

9. The method of claim 4 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

selecting the given second proxy server by minimizing a total web traffic round-trip time from the originator of the received request for web content to the content processing server, from the content processing server to the given second proxy server, and from the given second proxy server to the content provider.

10. The method of claim 1 , wherein requesting the web content via the given second proxy server comprises:

causing the given second proxy server to act as a proxy requesting the web content, such that a request for web content received by the content provider appears as if the request originates from a location that shares location-specific web content served by the content provider with the identified location of the originator of the received request for web content.

11. A first proxy server for delivering location-specific content, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

receive a request for web content, the request having a header that includes client header information that is potentially insecure;

identify a location of an originator of the received request for web content;

select from a set of second proxy servers a given second proxy server based on the identified location of the originator of the received request for web content, wherein as between the first proxy server and the given second proxy server, the first proxy server has more processing or storage capability;

proxy the request the web content for delivery to the content provider via the given second proxy server;

receive via the selected given second proxy server location-specific web content from the content provider, the location-specific web content having been generated at the content provider without reliance on the client header information that is potentially insecure; and

send to the originator of the received request the received local-specific web content in response to the received request, the received local-specific web content being provided in accordance with at least an acceleration feature.

12. The first proxy server of claim 11 , wherein the memory is further configured to provide the processor with instructions which when executed cause the processor to:

extract a source Internet Protocol (IP) address corresponding to the received request for web content; and

identify the location of the originator of the received request for web content based on the extracted source IP address corresponding to the received request for web content.

13. The first proxy server of claim 12 , wherein the received request for web content is received directly from the originator of the received request.

14. The first proxy server of claim 11 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

determining that a location of the given second proxy server shares location-specific web content served by the content provider with the identified location of the originator of the received request for web content.

15. The first proxy server of claim 14 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a granularity in terms of geographical locations of the location-specific content served by the content provider.

16. The first proxy server of claim 14 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a granularity in terms of geographical locations of a geolocation software or geolocation database.

17. The first proxy server of claim 14 , wherein determining that a location of the given second proxy server shares location-specific web content from the content provider with the identified location of the originator of the received request for web content is based on a language spoken at the location of the given second proxy server and a language spoken at the identified location of the originator of the received request for web content.

18. The first proxy server of claim 14 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

selecting the given second proxy server by minimizing a total distance from the originator of the received request for web content to the first proxy server, from the first proxy server to the given second proxy server, and from the given second proxy server to the content provider.

19. The first proxy server of claim 14 , wherein selecting the given second proxy server based on the identified location of the originator of the received request for web content further comprises:

selecting the given second proxy server by minimizing a total web traffic round-trip time from the originator of the received request for web content to the first proxy server, from the first proxy server to the given second proxy server, and from the given second proxy server to the content provider.

20. The first proxy server of claim 11 , wherein requesting the web content via the given second proxy server comprises:

causing the given second proxy server to act as a proxy requesting the web content, such that a request for web content received by the content provider appears as if the request originates from a location that shares location-specific web content served by the content provider with the identified location of the originator of the received request for web content.

21. A computer program product for delivering location-specific content by a first proxy server, the computer program product being embodied in a non-transitory tangible computer readable storage medium and comprising computer instructions for:

receive a request for web content, the request having a header that includes client header information that is potentially insecure;

identify a location of an originator of the received request for web content;

select from a set of second proxy servers a given second proxy server based on the identified location of the originator of the received request for web content, wherein as between the first proxy server and the given second proxy server, the first proxy server has more processing or storage capability;

proxy the request the web content for delivery to the content provider via the given second proxy server;

receive via the selected given second proxy server location-specific web content from the content provider, the location-specific web content having been generated at the content provider without reliance on the client header information that is potentially insecure; and

send to the originator of the received request the received local-specific web content in response to the received request, the received local-specific web content being provided in accordance with at least an acceleration feature.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2020
From: INSTART LOGIC, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 052176/0531 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2017
From: FITZHUGH, JUSTIN KENNETH; BLUM, PETER ALAN; VAITHEESWARAN, GIRISH
To: INSTART LOGIC, INC.
Reel/Frame 044341/0137 →
Continuity (1)
Provisional Application 62405136 · Oct 6, 2016
Cited By (3)
US 12,495,026 US 12,556,507 US 12,563,131