Methods and apparatus for accelerating content authored for multiple devices
First Claim
1. A method performed by an intermediary device that is connected to a computer network and that receives client requests for content and obtains content from an origin server, comprising, at the intermediary device:
- receiving a request for particular content from a client device, the particular content being at least one of (i) an HTML document and (ii) a CSS file;
determining one or more characteristics of the client device using information received with the client device'"'"'s request for the particular content;
obtaining the particular content requested by the client device, and examining the particular content to determine that the particular content includes multi-device content in the form of an inlined CSS media query that includes at least one logical expression that the client device is capable of executing and that upon said execution conditions the client device'"'"'s application of a CSS rule on at least one of the one or more client device characteristics when rendering a web page based on the particular content;
evaluating the inlined CSS media query based on the one or more characteristics of the client device, and based on said evaluation, determining that the client device'"'"'s execution of the CSS media query, including the logical expression, would determine that the CSS media query instructs the client device not to apply the CSS rule, based on the one or more characteristics of the client device;
based at least in part upon said evaluation of the inlined CSS media query by the intermediary device, modifying the particular content at least by removing the CSS rule and the CSS media query, thus reducing a size of the particular content;
sending the modified particular content to the client device in response to the client device'"'"'s request.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed herein are systems, methods, and apparatus for improving the delivery of web content that has been authored for multiple devices. In certain embodiments, an intermediary device such as a proxy server determines the characteristics of a client device requesting multi-device content, obtains and examines the multi-device content, and in view of the particular requesting client device removes portions that are irrelevant for that device. Doing so can accelerate delivery of the content by reducing payload and relieving the client device of the processing burden associated with parsing the content to make that determination itself, among other things.
98 Citations
13 Claims
-
1. A method performed by an intermediary device that is connected to a computer network and that receives client requests for content and obtains content from an origin server, comprising, at the intermediary device:
-
receiving a request for particular content from a client device, the particular content being at least one of (i) an HTML document and (ii) a CSS file; determining one or more characteristics of the client device using information received with the client device'"'"'s request for the particular content; obtaining the particular content requested by the client device, and examining the particular content to determine that the particular content includes multi-device content in the form of an inlined CSS media query that includes at least one logical expression that the client device is capable of executing and that upon said execution conditions the client device'"'"'s application of a CSS rule on at least one of the one or more client device characteristics when rendering a web page based on the particular content; evaluating the inlined CSS media query based on the one or more characteristics of the client device, and based on said evaluation, determining that the client device'"'"'s execution of the CSS media query, including the logical expression, would determine that the CSS media query instructs the client device not to apply the CSS rule, based on the one or more characteristics of the client device; based at least in part upon said evaluation of the inlined CSS media query by the intermediary device, modifying the particular content at least by removing the CSS rule and the CSS media query, thus reducing a size of the particular content; sending the modified particular content to the client device in response to the client device'"'"'s request. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. Apparatus connected to a computer network and that receives client requests for content and obtaining content from an origin server, comprising:
-
circuitry forming one or more processors and memory storing instructions to executed by the one or more processors, where execution of the stored instructions will cause the apparatus to; receive a request for particular content from a client device, the particular content being at least one of (i) an HTML document and (ii) a CSS file; determine one or more characteristics of the client device using information received with the client device'"'"'s request for the particular content; obtain the particular content requested by the client, and examining the particular content to determine that the particular content includes multi-device content in the form of an inlined CSS media query that includes at least one logical expression that the client device is capable of executing and that upon said execution conditions the client device'"'"'s application of a CSS rule on at least one of the one or more client device characteristics when rending a web page based on the particular content; evaluate the inlined CSS media query based on the one or more characteristics of the client device, and based on said evaluation, determine that the client device'"'"'s execution of the CSS media query, including the logical expression, would determine that the CSS media query instructs the client device not to apply the CSS rule, based on the one or more characteristics of the client device; based at least in part upon said evaluation of the inlined CSS media query by the apparatus, modify the particular content at least by removing the CSS rule and the CSS media query, thus reducing a size of the particular content; send the modified particular content to the client device in response to the client device'"'"'s request. - View Dependent Claims (9, 10, 11, 12, 13)
-
Specification