# US 10,313,472 B2 · Enabling efficient pre-loading of data for a network client

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,313,472 B2
- Document ID: US10313472B2
- Status: Granted
- Kind: B2
- Application number: 15/105,156
- Filed: 2014-03-19
- Published: 2016-11-03
- Granted: 2019-06-04
- Earliest claimed: 2014-03-19
- Assignees: Telefonaktiebolaget LM Ericsson (publ)
- Applicants: Telefonaktiebolaget LM Ericsson (publ)
- Inventors: Lars Westberg; Attila Mihály
- Web page: https://patentgrep.com/patent/US10313472B2

## CPC

- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/5681: Pre-fetching or pre-delivering data based on network characteristics
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Disclosed is a method having at least one of the steps of: sending requests for data to at least one web site hosted by at least one server; receiving responses corresponding to the requests for data from the at least one web site; compiling, for each of the at least one web site, data location statistics including a set of data locations identified in the responses from the web site; and selecting, for each of the at least one web site, a smaller subset of at least one data location from the identified set of data locations to act as candidate data location(s) for pre-loading data for the network client; and transferring, for each of the at least one web site, the smaller subset of at least one data location acting as candidate data location(s) to a pre-loading unit, for enabling pre-loading of data based on the candidate data location(s).

## Claims

### Claim 1

A method performed by a base station for enabling pre-loading of data for a wireless device in a telecommunication network, wherein the method comprises the steps of:
receiving requests for data from a plurality of wireless devices;
sending the requests for data from the plurality of wireless devices to at least one web site hosted by at least one server;
receiving responses corresponding to the requests for data from the at least one web site;
compiling, for each of the at least one web site, data location statistics including a set of data locations identified in the responses from the web site;
selecting, for each of the at least one web site, a smaller subset of at least one data location from the identified set of data locations to act as candidate data locations for pre-loading data for the wireless device by identifying data locations that are recurring in responses corresponding to requests for data sent by at least two wireless devices of the plurality of wireless devices, wherein selecting, for each of the at least one web site, the smaller subset of at least one data location from the identified set of data locations comprises selecting recurring data locations with a recurrence frequency above a threshold as candidate data locations; and
transferring, for each of the at least one web site, the smaller subset of at least one data location acting as the candidate data locations to a pre-loading unit, for enabling pre-loading of data based on the candidate locations.

### Claim 2 (depends on 1)

The method of claim 1, wherein the recurring data locations are deterministic data locations in common for the responses corresponding to the requests for the data sent by at least two different clients.

### Claim 3 (depends on 1)

The method of claim 1, wherein, if a data location is selected as a candidate data location, at least part of dependent data locations related to the selected candidate data location are also selected as candidate data locations.

### Claim 4 (depends on 1)

The method of claim 1, wherein at least two candidate data locations are selected, and at least one of ordering and timing for pre-loading data from the candidate data locations is determined for each of the at least one web site, and information indicative of the at least one of ordering and timing is transferred, for each one of the at least one web site, together with the candidate data locations to the pre-loading unit.

### Claim 5 (depends on 4)

The method of claim 4, wherein at least some of the requests are triggered by received responses, and the at least one of ordering and timing of the requests is determined by analyzing request patterns in the responses, and the determined ordering or timing of the requests is used as the ordering or timing for pre-loading data from the candidate data locations.

### Claim 6 (depends on 1)

The method of claim 1, wherein the step of compiling, for each of the at least one web site, the data location statistics is performed by analyzing web page code related to the responses to identify the data locations, wherein at least a main markup language file corresponding to a requested web page is analyzed to identify the data locations.

### Claim 7 (depends on 1)

The method of claim 1, wherein the smaller subset of the at least one data location acting as the candidate data locations is transferred to a pre-loading unit in the base station, or transferred to a pre-loading unit in a separate base station.

### Claim 8 (depends on 7)

The method of claim 7, wherein, for each one of the at least one web site, the smaller subset of the at least one data location acting as the candidate data locations is provided in a list of data locations for transfer to the separate base station, wherein the list of data locations capable of acting as candidate data locations is organized per web site.

### Claim 9 (depends on 1)

The method of claim 1, wherein the candidate data locations are Uniform Resource Locators, URLs, and corresponding data includes web content.

### Claim 10 (depends on 1)

The method of claim 1, wherein the candidate data locations are updated based on feedback related to missing data locations discovered during pre-loading.

### Claim 11

A method performed by a base station for providing data to a plurality of wireless devices in a telecommunication network, wherein the method comprises the steps of:
receiving, from the plurality of wireless devices, information specifying a web site;
sending requests for data received from the plurality of wireless devices to the specified web site;
receiving responses corresponding to the requests for data from the specified web site;
providing, for the specified web site, at least one candidate data location selected based on compiled data location statistics, wherein the compiled data location statistics include a set of data locations and the at least one candidate data location is selected from a smaller subset of at least one data location from the set of data locations that are identified data locations that recur in responses corresponding to requests for data sent by at least two different wireless devices of the plurality of wireless devices, wherein the base station selects the smaller subset of at least one data location by selecting recurring data locations with a recurrence frequency above a threshold as candidate data locations;
pre-loading, from a server corresponding to the specified web site, data specified by the at least one candidate data location; and
sending, in response to a subsequent request from a wireless device of the plurality of wireless devices for data specified by a data location matching the at least one candidate data location, the pre-loaded data to a wireless device.

### Claim 12 (depends on 11)

The method of claim 11, wherein the base station determines the at least one candidate data location, or receives the at least one candidate data location from another base station, in advance of providing data to a network terminal, wherein the at least one candidate data location is pre-selected based on the compiled data location statistics.

### Claim 13 (depends on 11)

The method of claim 11, wherein at least two candidate data locations are provided, and data specified by the at least two candidate data locations are pre- loaded from a remote server according to an estimated ordering or timing of subsequent data requests by the wireless device.

### Claim 14 (depends on 11)

The method of claim 11, wherein the candidate data locations are Uniform Resource Locators, URLs, and the corresponding data includes web content, and the wireless device is a web browser running on a network terminal.

### Claim 15 (depends on 11)

The method of claim 11, wherein the at least one candidate data location for pre-loading data for the wireless device is selected.

### Claim 16

A base station for enabling pre-loading of data for a wireless device in a telecommunication network, the base station comprising:
processing circuitry comprising one or more processors, the processing circuitry configured to cause the base station to:
send requests for data from a plurality of different wireless devices to at least one web site hosted by at least one server;
receive responses corresponding to the requests for data from the at least one web site;
compile, for each of the at least one web site, data location statistics including a set of data locations identified in the responses from the web site;
select, for each of the at least one web site, a smaller subset of the at least one data location from the identified set of data locations to act as candidate data locations for pre-loading data for the wireless device by identifying data locations that are recurring in responses corresponding to requests for data sent by at least two different wireless devices of the plurality of different wireless devices, wherein when selecting, for each of the at least one web site, the smaller subset of at least one data location from the identified set of data locations, the base station is configured to select recurring data locations with a recurrence frequency above a threshold as candidate data locations; and
transfer, for each of the at least one web site, the smaller subset of at least one data location acting as the candidate data locations to a pre-loading unit, for enabling pre-loading of data based on the candidate data locations.

### Claim 17 (depends on 16)

The base station of claim 16, wherein the wireless device is configured to select at least part of the recurring data locations as candidate data locations.

### Claim 18 (depends on 16)

The base station of claim 16, wherein the base station is configured to select at least two candidate data locations,
wherein the base station is configured to determine, for each of the at least one web site, at least one of ordering and timing for pre-loading data from the candidate data locations, and
wherein the base station is configured to transfer information indicative of the at least one of ordering and timing, for each one of the at least one web site, together with the candidate data locations to the pre-loading unit.

### Claim 19 (depends on 16)

The base station of claim 16, wherein the base station is configured to analyze request patterns in the responses to predict ordering or timing for pre-loading data from the candidate data locations.

### Claim 20 (depends on 16)

The base station of claim 16, wherein the base station is configured to transfer the smaller subset of the at least one data location acting as the candidate data locations to a pre-loading unit in the same base station, or wherein the base station is configured to transfer the smaller subset of the at least one data location acting as the candidate data locations to a pre-loading unit in a separate base station.

### Claim 21 (depends on 16)

The base station of claim 16, wherein the base station further comprises a memory, the memory comprising instructions executable by the processing circuitry, whereby the base station is operative to compile the data location statistics including the set of data locations identified in the responses and to select the smaller subset of the at least one data location, and to prepare the smaller subset of the at least one data location for transfer to the pre-loading unit.

### Claim 22 (depends on 16)

The base station of claim 16, wherein the base station further comprises communication circuitry configured to send the requests and receive the responses.

### Claim 23

A base station for providing data to a plurality of wireless devices in a telecommunication network, the base station comprising:
processing circuitry comprising one or more processors, the processing circuitry configured to cause the base station to:
receive, from the plurality of wireless devices, information specifying a web site;
send requests for data from a plurality of different wireless devices for the specified web site;
receive responses corresponding to the requests for data from the specified web site;
provide, for the specified web site, at least one candidate data location selected based on compiled data location statistics, wherein the compiled data location statistics include a set of data locations and the at least one candidate data location is selected from a smaller subset of at least one data location from the set of data locations that are identified data locations that recur in responses corresponding to requests for data sent by at least two different wireless devices clients of the plurality of different wireless devices, wherein the base station selects the smaller subset of at least one data location by selecting recurring data locations with a recurrence frequency above a threshold as candidate data locations;
pre-load, from a server corresponding to the specified web site, data specified by the at least one candidate data location; and
send, in response to a subsequent request from a wireless device for data specified by a data location matching the at least one candidate data location, the pre-loaded data to the wireless device.

### Claim 24 (depends on 23)

The base station of claim 23, wherein the processing circuitry is further configured to cause the base station to determine the at least one candidate data location or receive the at least one candidate data location from another base station, in advance of providing data to a network terminal, wherein the at least one candidate data location is pre-selected based on the compiled data location statistics.

### Claim 25 (depends on 23)

The base station of claim 23, wherein the base station is configured to provide at least two candidate data locations, and
wherein the processing circuitry is further configured to cause the base station to pre-load data specified by the at least two candidate data locations from a remote server according to an estimated ordering or timing of subsequent data requests by the wireless device.

### Claim 26 (depends on 23)

The base station of claim 23, wherein the base station further comprises communication circuitry configured to receive information specifying a web site, to pre-load data from a remote server and to send the pre-loaded data to the wireless device.

### Claim 27

A base station for supporting pre-loading of data for a wireless device in a telecommunication network, the base station comprising:
processing circuitry comprising one or more processors, the processing circuitry configured to cause the base station to:
prepare data requests for sending to at least one web site hosted by at least one server;
read responses, corresponding to the data requests, received from the at least one web site;
compile, for each of the at least one web site, data location statistics including a set of data locations identified in the responses from the web site; and
select, for each of the at least one web site, a smaller subset of at least one data location from the identified set of data locations to act as candidate data locations for pre-loading data for the wireless device by identifying data locations that are recurring in responses corresponding to requests for data sent by at least two different wireless devices of a plurality of wireless devices, wherein, when selecting, for each of the at least one web site, the smaller subset of at least one data location from the identified set of data locations the base station is configured to select recurring data locations with a recurrence frequency above a threshold as candidate data locations.

### Claim 28

A base station for supporting transfer of data to a wireless device in a telecommunication network, the base station comprising:
processing circuitry comprising one or more processors, the processing circuitry configured to cause the base station to:
read information specifying a web site;
send requests for data from a plurality of different wireless devices for the specified web site;
receive responses corresponding to the requests for data from the specified web site;
provide for the specified web site, at least one candidate data location selected based on compiled data location statistics;
select a smaller subset of at least one data location from the identified set of data locations to act as candidate data locations for the wireless device by identifying data locations that are recurring in responses corresponding to requests for data sent by at least two different wireless devices of the plurality of different wireless devices, wherein, when selecting the smaller subset of at least one data location from the identified set of data locations the base station is configured to select recurring data locations with a recurrence frequency above a threshold as candidate data locations;
control pre-loading, from a remote server corresponding to the specified web site, of data specified by the at least one candidate data location; and
prepare, in response to a subsequent request from the wireless device for data specified by a data location matching the at least one candidate data location, the pre-loaded data for transfer to the wireless device.
