IP Library Granted Patent US 8,706,910
Granted Patent B2
US 8,706,910 · App. 12/259,945 · Granted Apr 22, 2014

Dynamically adaptive network-based data processing system and method

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 8,706,910
App. No.
12/259,945
Granted
Apr 22, 2014
Kind
B2
Abstract

According to one embodiment of the invention, a method is devised for tailoring downloaded content to the requesting device by receiving attribute parameters associated with a device that initiates a request for downloaded content. The attribute parameters are values that identify specific characteristics of the device. Thereafter, the content is modified according to the attributes parameters, and thereafter, the modified content is transmitted to the device.

Claims (54)

1. A method comprising:

intercepting at an adaptive data processing system a request for video content sent from a client device to a data server, wherein the adaptive data processing system is distinct from and transparent to the client device and the data server, wherein intercepting the request comprises receiving attribute parameters that identify specific characteristics of the client device;

intercepting video content output by the data server at the adaptive data processing system;

determining that the intercepted video content was output by the data server in response to the request;

modifying the intercepted video content according to the attribute parameters; and

transmitting the modified video content to the client device;

wherein the data server stores video content in a selected resolution and a selected format to reduce the storage space needed for the video content; and

wherein dynamically modifying the video content facilitates easing the processing requirements of the client device.

2. The method of claim 1 , wherein one of the attribute parameters is a parameter that identifies a screen resolution of the client device.

3. The method of claim 2 , wherein one of the attribute parameters is a parameter that identifies at least one of a type of and a version number of an operating system executed on the client device.

4. The method of claim 3 , wherein two of the attribute parameters include parameters that identify a processor type and base processing speed of a processor implemented within the client device.

5. The method of claim 3 , wherein one of the attribute parameters is a parameter that identifies a type of browser executed on the client device.

6. The method of claim 1 , wherein the request is a Hypertext Transfer Protocol (HTTP) GET Request message that includes a header containing the attribute parameters.

7. The method of claim 1 , wherein the request is a Hypertext Transfer Protocol (HTTP) GET Request message that includes a uniform resource indicator within a request line of the HTTP Request message, the uniform resource indicator includes the attribute parameters.

8. The method of claim 1 , wherein the transmitting of the modified video content includes transmitting a plurality of frames that collectively include payload data being the modified video content.

9. The method of claim 8 further comprising:

receiving acknowledgement messages for frames downloaded to the client device; and

reducing a transmission rate for the frames including the modified video content if a rate of receipt of the acknowledgement messages is less than the transmission rate.

10. The method of claim 9 , wherein the transmission rate is reduced by either (1) reducing a transmit frame rate being a rate of transmission for frames forming the modified video content, or (2) increasing a quantization factor, or (3) reducing the transmit frame rate and increasing the quantization factor.

11. A system comprising:

a data server to store video content, wherein the data server stores video content in a selected resolution and a selected format to reduce the storage space needed for the video content;

a client device that requests video content from the data server; and

an adaptive data processing system that is distinct from and transparent to the client device and the data server, wherein the adaptive data processing system includes:

a network interface including logic to intercept and determine a destination of an incoming message,

a first processing subsystem to scan the intercepted incoming message to determine whether the incoming message is a Request message sent by the client device requesting a download of the video content from the data server, and

a second processing subsystem to extract information within the Request message in order to determine specific characteristics of the client device;

wherein the first processing subsystem is further configured to intercept video content output by the data server;

wherein the second processing subsystem is further configured to:

determine that the intercepted video content was output by the data server in response to the Request message;

modify the intercepted video content by dynamically transcoding the intercepted video content for the client device according to the received attribute parameters; and

transmit the modified video content to the client device; and

wherein dynamically transcoding the video content facilitates easing the processing requirements of the client device.

12. The system of claim 11 , wherein the second processing subsystem to modify the video content to be downloaded according to one of the attribute parameters being a parameter that identifies a screen resolution of the client device.

13. The system of claim 12 , wherein the second processing subsystem to modify the video content to be downloaded according to one of the attribute parameters being a parameter that identifies a type of browser executed on the client device.

14. The system of claim 11 , wherein the Request message is a Hypertext Transfer Protocol (HTTP) GET Request message that includes a header containing the attribute parameters.

15. The system of claim 11 , wherein the Request message is a Hypertext Transfer Protocol (HTTP) GET Request message that includes a uniform resource indicator within a request line of the HTTP Request message, the uniform resource indicator includes the attribute parameters.

16. The system of claim 11 , wherein the adaptive data processing system is dedicated hardware directly coupled to and housed in a same area as the at least one data server.

17. A non-transitory computer-readable storage medium storing instructions that when executed by a processor of cause the processor to perform a method, the method comprising:

intercepting at an adaptive data processing system a request for video content sent from a client device to a data server, wherein the adaptive data processing system is distinct from and transparent to the client device and the data server, wherein intercepting the request comprises receiving attribute parameters that identify specific characteristics of the client device;

intercepting video content output by the data server at the adaptive data processing system;

determining that the intercepted video content was output by the data server in response to the request;

modifying the intercepted video content according to the attribute parameters; and

transmitting the modified video content to the client device;

wherein the data server stores video content in a selected resolution and a selected format to reduce the storage space needed for the video content; and

wherein dynamically modifying the video content facilitates easing the processing requirements of the client device.

18. The method of claim 1 , wherein transmitting the modified video content further comprises:

throttling the transmit rate of the modified video content to not exceed the video frame rate of the video content;

wherein throttling the transmit rate minimizes wasted bandwidth if the client device discontinues downloading the video content and reduces financial bandwidth costs for the data server.

19. The method of claim 1 , wherein the method further comprises:

redirecting the request to a new URL that specifies the attribute parameters associated with the modified video content; and

wherein redirecting the request to the new URL facilitates caching the modified video content in a content delivery network.

20. The method of claim 1 , wherein intercepting the message further comprises:

issuing a domain name system request that redirects requests sent to the data server to the adaptive data processing system; and

wherein redirecting requests sent to the data server facilitates transparently modifying video content for the client device without needing to reconfigure the device and the data server.

Assignments (10)
PATENT SECURITY AGREEMENT Recorded Aug 25, 2023
From: PANZURA, LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 064716/0982 →
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2023
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: PANZURA, LLC
Reel/Frame 064006/0786 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR'S NAME AND EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 059744 FRAME: 0965. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 22, 2023
From: PANZURA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 062955/0518 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA FROM PANZURRA, LLC TO PANZURA, LLC AND CORRECT PROPERTY TYPES TO PATENT FOR PROPERTIES 31-34 AND 39 PREVIOUSLY RECORDED ON REEL 059744 FRAME 0965. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Feb 17, 2023
From: PANZURA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 062928/0524 →
SECURITY INTEREST Recorded Apr 30, 2022
From: PANZURRA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 059744/0965 →
CHANGE OF ADDRESS Recorded Apr 1, 2022
From: PANZURA, LLC
To: PANZURA, LLC
Reel/Frame 059570/0712 →
MERGER Recorded Jan 4, 2022
From: PANZURA, INC.
To: NEW PANZURA, LLC
Reel/Frame 058541/0720 →
CHANGE OF NAME Recorded Jan 4, 2022
From: NEW PANZURA, LLC
To: PANZURA, LLC
Reel/Frame 058779/0627 →
CHANGE OF NAME Recorded Mar 30, 2011
From: PIXEL8 NETWORKS, INC.
To: PANZURA, INC.
Reel/Frame 026065/0286 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2008
From: TAYLOR, JOHN RICHARD; CHOU, RANDY YEN-PANG
To: PIXEL8 NETWORKS, INC.
Reel/Frame 021750/0569 →