Methods and apparatus for making byte-specific modifications to requested content
First Claim
1. Computer apparatus for delivering content to a client over a computer network, the apparatus being a server in a distributed computer system, the apparatus comprising:
- circuitry forming at least one processor and memory storing first instructions that, upon execution by the at least one processor, provide a special purpose machine that;
receives a client'"'"'s request for content;
obtains first and second content in response to the request, the first and second content being made up of binary data, the first content being associated with a first source and the second content being associated with a second source;
obtains second instructions from another server in the distributed computer system, in response to the request;
applies the second instructions, which specify how to order, modify, or replace one or more bytes within the binary data to create output data in an output buffer, the output buffer including bytes from the first content and from the second content that are contiguous to one another;
wherein the second instructions further specify a function to apply to a group of bytes that includes the bytes from the first content and from the second content that are contiguous in the output buffer;
after the application of the function to the contiguous bytes, sends the contents of the output buffer to the client in response to the request.
1 Assignment
0 Petitions
Accused Products
Abstract
According to this disclosure, a proxy server is enhanced to be able to interpret instructions that specify how to modify an input object to create an output object to serve to a requesting client. Typically the instructions operate on binary data. For example, the instructions can be interpreted in a byte-based interpreter that directs the proxy as to what order, and from which source, to fill an output buffer that is served to the client. The instructions specify what changes to make to a generic input file. This functionality extends the capability of the proxy server in an open-ended fashion and enables it to efficiently create a wide variety of outputs for a given generic input file. The generic input file and/or the instructions may be cached at the proxy. The teachings hereof have applications in, among other things, the delivery of web content, streaming media, and the like.
67 Citations
13 Claims
-
1. Computer apparatus for delivering content to a client over a computer network, the apparatus being a server in a distributed computer system, the apparatus comprising:
-
circuitry forming at least one processor and memory storing first instructions that, upon execution by the at least one processor, provide a special purpose machine that; receives a client'"'"'s request for content; obtains first and second content in response to the request, the first and second content being made up of binary data, the first content being associated with a first source and the second content being associated with a second source; obtains second instructions from another server in the distributed computer system, in response to the request; applies the second instructions, which specify how to order, modify, or replace one or more bytes within the binary data to create output data in an output buffer, the output buffer including bytes from the first content and from the second content that are contiguous to one another; wherein the second instructions further specify a function to apply to a group of bytes that includes the bytes from the first content and from the second content that are contiguous in the output buffer; after the application of the function to the contiguous bytes, sends the contents of the output buffer to the client in response to the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 12)
-
-
9. A method of delivering content to a client over a computer network, the method operative in a server in a distributed computer system, the method comprising:
-
receiving a client'"'"'s request for content; obtaining first and second content in response to the request, the first and second content being made up of binary data, the first content being associated with a first source and the second content being associated with a second source; obtaining instructions from another server in the distributed computer system, in response to the request; applying the instructions, which specify how to order, modify, or replace one or more bytes within the binary data to create output data in an output buffer, the output buffer including bytes from the first content and from the second content that are contiguous to one another; wherein the instructions further specify a function to apply to a group of bytes that includes the bytes from the first content and from the second content that are contiguous in the output buffer; after the application of the function to the contiguous bytes, sending the contents of the output buffer to the client in response to the request. - View Dependent Claims (10, 11, 13)
-
Specification