IP Library Granted Patent US 9,307,007
Granted Patent B2
US 9,307,007 · App. 13/918,869 · Granted Apr 5, 2016

Content pre-render and pre-fetch techniques

Inventors: Ritika Kapadia (Newcastle, WA); Venkatraman V Kudallur (Redmond, WA); Aniket A Patankar (Redmond, WA); Tyler M Barton (Seattle, WA); Shawn E Pickett (Sammamish, WA); Nomita Paul (Redmond, WA); James R Wordelman (Snoqualmie, WA); Qiaolin Mao (Kirkland, WA); Yan Ke (Redmond, WA); Hao Hu (Bellevue, WA); Anthony T Chor (Bellevue, WA)
Assignee: Microsoft Technology Licensing, LLC
H04L67/02G06F17/30902
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 9,307,007
App. No.
13/918,869
Filed
Jun 14, 2013
Granted
Apr 5, 2016
Kind
B2
Art Unit
2453
USPC
709/203
Abstract

Content pre-render and pre-fetch techniques are described. In one or more implementations, a likelihood is predicted of subsequent navigation to content associated with a network address based at least in part on monitored navigation performed by a computing device to one or more network addresses. A determination is then made whether to cause the computing device to pre-fetch and pre-render the content based at least in part on the prediction.

Claims (40)

1. A method comprising:

predicting a likelihood of subsequent navigation to content associated with a network address based at least in part on:

monitored navigation performed by a computing device to one or more network addresses; and

computing a confidence score; and

determining whether to cause the computing device to pre-fetch and pre-render the content based at least in part on the prediction and comparing the confidence score to one or more thresholds and by at least one of:

responsive to a determination that the confidence score meets a pre-render threshold for the subsequent navigation, causing the content associated with the network address to be pre-fetched and pre-rendered by the computing device; or

responsive to a determination that the confidence score meets a pre-fetch threshold for the subsequent navigation but does not meet the pre-render threshold for the subsequent navigation, causing the content associated with the network address to be pre-fetched but not pre-rendered by the computing device.

2. A method as described in claim 1 , wherein the one or more network addresses are a current network address accessed by the computing device.

3. A method as described in claim 1 , further comprising pre-fetching and pre-rendering the content responsive to a comparison of the confidence score with a pre-render threshold that is indicative of the likelihood of subsequent navigation to the content.

4. A method as described in claim 3 , wherein:

the pre-fetching includes obtaining the content from the network address; and

the pre-rendering includes parsing an HTML and running dynamic scripts of the obtained content to arrive at a form of the content that is ready for display by a display device of the computing device.

5. A method as described in claim 4 , wherein the pre-rendering is performed in associated with a tab in a user interface that is not visible to a user and further comprising replacing content of a currently viewable tab with the rendered content in the tab responsive to an input to navigate to the network address.

6. A method as described in claim 1 , wherein the pre-fetch threshold is indicative of a lower likelihood of the subsequent navigation than a pre-render threshold.

7. A method as described in claim 1 , wherein the predicting is performed using one or more rules including a rule configured to identify a particular sequence of monitored navigation performed by the computing device at one or more network addresses.

8. A method as described in claim 1 , wherein at least one of the rules is configured to identify a type of link included in content to be used as a basis for the prediction but not a particular network address associated with the link.

9. A method as described in claim 1 , wherein the one or more rules are received from a network service, the one or more rules generated based on data described monitored navigation performed by a plurality of different computing devices.

10. A method as described in claim 1 , wherein the monitored navigation describes a sequence of network addresses that have been accessed by the computing device.

11. A method as described in claim 1 , wherein the predicting and the determining are performed locally by the computing device.

12. A method as described in claim 7 , wherein at least one of the rules is configured to identify that multiple links are associated with a same network address.

13. A system comprising:

one or more processors; and

one or more computer readable storage media storing program instructions that are executable by the one or more processors to perform operations comprising:

computing a confidence score indicating a relative likelihood of subsequent navigation to content associated with a network address based at least in part on monitored navigation performed by a computing device to one or more network addresses;

responsive to a determination that the confidence score meets a pre-render threshold for the subsequent navigation, causing the content associated with the network address to be pre-fetched and pre-rendered by the computing device; and

responsive to a determination that the confidence score meets a pre-fetch threshold for the subsequent navigation but does not meet the pre-render threshold for the subsequent navigation, causing the content associated with the network address to be pre-fetched but not pre-rendered by the computing device.

14. A system as described in claim 13 , wherein the computing is performed using one or more rules that is configured to identify a type of link included in content to be used as a basis for the prediction but not a particular network address associated with the link or are generated based on data described monitored navigation performed by a plurality of different computing devices.

15. A system as described in claim 13 , wherein:

the pre-fetching includes obtaining the content from the network address; and

the pre-rendering includes parsing an HTML and running dynamic scripts of the obtain content to arrive at a form of the content that is ready for display by a display device of the computing device.

16. A system as described in claim 13 , wherein the one or more processors are accessible via a network by the computing device.

17. A system comprising:

one or more processors; and

one or more computer readable storage media storing program instructions that are executable by the one or more processors to perform operations comprising:

generating navigation data based on monitored navigation performed by a plurality of different computing devices to access a plurality of different network addresses, the navigation data including one or more rules that include a rule configured to identify a type of link included in content to be used as a basis for the prediction but not a particular network address associated with the link; and

exposing the navigation data for use by a computing device to predict subsequent navigation by the computing device to one or more network addresses, at least part of the predicted navigation not involving a link included in a current content item accessed by the computing device.

18. A system as described in claim 17 , wherein one or more rules included in the navigation data further include a rule generated based on data describing monitored navigation performed by a plurality of different computing devices.

19. A system as described in claim 17 , wherein the prediction of the subsequent navigation by the computing device is performed as part of a determination of whether to pre-render content associated with the subsequent navigation by the computing device.

20. A system as described in claim 17 , wherein the prediction of the subsequent navigation by the computing device is performed as part of a determination of whether to pre-fetch content associated with the subsequent navigation by the computing device.

21. A system as described in claim 17 , wherein the one or more rules included in the navigation data further include a rule generated based on data describing content obtained via at least one of the plurality of network address.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2013
From: KAPADIA, RITIKA; KUDALLUR, VENKATRAMAN V; PATANKAR, ANIKET A; BARTON, TYLER M; PICKETT, SHAWN E; PAUL, NOMITA; WORDELMAN, JAMES R; MAO, QIAOLIN; KE, YAN; HU, HAO; CHOR, ANTHONY T
To: MICROSOFT CORPORATION
Reel/Frame 030675/0512 →
Continuity (1)
Related Publication 20140372511A1 · Dec 18, 2014