Distributed browsing architecture for the delivery of graphics commands to user devices for assembling a plurality of layers of a content page
First Claim
Patent Images
1. A distributed browsing system for providing access to network-accessible content, the system comprising:
- a browser component adapted to run on a user device that includes a graphics processing unit, said browser component configured to provide a user interface on a display of the user device; and
an intermediary system separate from the user device and configured to;
receive a request from the user device for a content page and to retrieve the content page from a host system, a graphics pipeline of the intermediary system comprising;
a content processing module configured to generate a document object model representation of the content page, wherein the document object model representation includes data representing a plurality of layers of the content page,a graphics processing module configured to generate, based at least partly on the document object model representation, a stream of graphics commands for rendering a visual representation of the content page, the stream of graphics commands including graphics library commands operable to instruct the graphics processing unit associated with the browser component how to assemble the plurality of layers of the content page, based on the data representing the plurality of layers in the document object model representation, to draw at least one graphical component of the visual representation of the content page,wherein the intermediary system is further configured to;
intercept the stream of graphics commands including the graphics library commands from the graphics pipeline, andsend the intercepted stream of graphics commands including the graphics library commands to the user device over a communication network;
wherein the browser component is configured to render the plurality of layers of the content page on the display of the user device at least partly by providing the intercepted stream of graphics commands to the graphics processing unit of the user device.
1 Assignment
0 Petitions
Accused Products
Abstract
An intermediary system operates as an intermediary between content servers and user devices, and provides services for improving page load times as seen by end users. One such service involves converting all or a portion of a retrieved content page (e.g., web page) into a stream of graphics commands, such as OpenGL commands, that can be executed by the user device'"'"'s graphics processing unit (GPU). The intermediary system sends these commands to a browser component running on the user device for execution by the GPU.
106 Citations
21 Claims
-
1. A distributed browsing system for providing access to network-accessible content, the system comprising:
-
a browser component adapted to run on a user device that includes a graphics processing unit, said browser component configured to provide a user interface on a display of the user device; and an intermediary system separate from the user device and configured to; receive a request from the user device for a content page and to retrieve the content page from a host system, a graphics pipeline of the intermediary system comprising; a content processing module configured to generate a document object model representation of the content page, wherein the document object model representation includes data representing a plurality of layers of the content page, a graphics processing module configured to generate, based at least partly on the document object model representation, a stream of graphics commands for rendering a visual representation of the content page, the stream of graphics commands including graphics library commands operable to instruct the graphics processing unit associated with the browser component how to assemble the plurality of layers of the content page, based on the data representing the plurality of layers in the document object model representation, to draw at least one graphical component of the visual representation of the content page, wherein the intermediary system is further configured to; intercept the stream of graphics commands including the graphics library commands from the graphics pipeline, and send the intercepted stream of graphics commands including the graphics library commands to the user device over a communication network; wherein the browser component is configured to render the plurality of layers of the content page on the display of the user device at least partly by providing the intercepted stream of graphics commands to the graphics processing unit of the user device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of providing access to network-accessible content via an intermediary system, the method comprising:
-
receiving, at the intermediary system from a browser component adapted to run on a user device separate from the intermediary system, a request for a content page; retrieving the content page from a host system; generating a document object model representation of the content page, wherein the document object model representation includes data representing a plurality of layers of the content page; generating, based at least partly on the document object model representation, a stream of graphics commands for rendering a visual representation of the content page, the stream of graphics commands including graphics library commands operable to instruct a graphics processing unit associated with the browser component how to assemble the plurality of layers of the content page, based on the data representing the plurality of layers in the document object model representation, to draw at least one graphical component of the visual representation of the content page; intercepting the stream of graphics commands including the graphics library commands from the intermediary system; and providing, via a communications network, the intercepted stream of graphics commands including the graphics library commands to the browser component for rendering the visual representation of the plurality of layers of the content page on a display associated with the user device. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable medium storing computer executable instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:
-
sending via a communication network, from a first browser component adapted to run on a user device to a second browser component adapted to run on an intermediary system separate from the user device, a request for a content page; receiving via the communication network, by the first browser component, an intercepted stream of graphics commands generated by the second browser component adapted to run on the intermediary system, the intercepted stream of graphics commands including pre-rendering graphics library commands operable to instruct a graphics processing unit associated with the first browser component how to assemble a plurality of layers of the content page, based on data representing the plurality of layers in a document object model representation of the content page, to draw at least one graphical component for rendering a visual representation of the content page, wherein the stream of graphics commands is generated based at least partly on the document object model representation of the content page and intercepted from the intermediary system; generating, via the first browser component and based on the intercepted stream of graphics commands, instructions to configure a display associated with the user device to display the visual representation of the content page; and rendering the visual representation of the plurality of layers of the content page on the display of the user device. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification