IP Library Granted Patent US 8,171,118
Granted Patent B2
US 8,171,118 · App. 12/183,956 · Granted May 1, 2012

Application streaming over HTTP

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,171,118
App. No.
12/183,956
Granted
May 1, 2012
Kind
B2
Abstract

Disclosed are systems and methods for application streaming over HTTP. A virtual application running on a host computing device may detect the need for a page of memory that is not present on the host computing device. Accordingly, the virtual application may send a request to a virtual application server, seeking the absent memory page. The virtual application server may send to a web server an HTTP GET byte range request for the desired memory page. The web server may retrieve the requested block, which may be a portion of the virtual application image file. The requested data is returned to the host computing device via the virtual application server. The virtual application continues running on the host device using the requested data.

Claims (21)

1. A method for application streaming, the method comprising:

receiving a message from a host computing device, the message being indicative of a request for an identified portion of a virtual application image file, the virtual application image file corresponding to a virtual application running on the host computing device, the identified portion of the virtual application image file corresponding to a memory page that is absent on the host computing device;

determining from the message a byte range that corresponds to a location on a remote server of the identified portion of the virtual application image file;

sending to the remote server a request identifying the byte range; and

providing the identified portion of the virtual application file to the host computing device, wherein the portion is less than a complete virtual application image file.

2. The method of claim 1 , wherein the remote sever is a web server, and no proprietary protocol is necessary to request the identified portion of the virtual application image file from the web server.

3. A non-transitory computer-readable storage medium, bearing computer-readable instructions that, upon execution by a computer, cause the computer to perform operations comprising:

receiving a message from a host computing device, the message being indicative of a request for an identified a portion of a virtual application image file, the virtual application image file corresponding to a virtual application running on the host computing device, the identified portion of the virtual application image file corresponding to a memory page that is absent on the host computing device;

sending to a remote server a request comprising a byte range corresponding to only the identified portion of the virtual application image file; and

providing only the identified portion of the virtual application image file to the host computing device.

4. The computer-readable storage medium of claim 3 , wherein the remote sever is a web server.

5. The computer-readable storage medium of claim 4 , wherein no proprietary protocol is necessary to request the identified portion of the virtual application image file from the web server.

6. A system, comprising:

a processor; and a memory communicatively coupled to the processor when the system is operational, the memory bearing instructions that, upon execution by the processor, cause the system to at least:

receive a request from a host computing device, the request being indicative of a request for an identified a portion of a virtual application image file, the virtual application image file corresponding to a virtual application running on the host computing device, the identified portion of the virtual application image file corresponding to a memory page that is absent on the host computing device;

determine from the request a byte range that corresponds to a location on a remote server of the identified portion of the virtual application image file;

send to the remote server a request identifying the byte range; and

provide only the requested portion of the virtual application image file to the host computing device.

7. The system of claim 6 , wherein the remote sever is a web server, and no proprietary protocol is necessary to request the requested portion of the virtual application image file from the web server.

8. The system of claim 7 , wherein the remote sever is a web server.

9. The system of claim 7 , wherein no proprietary protocol is necessary to request the identified portion of the virtual application image file from the web server.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034564/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2010
From: SHEEHAN, JOHN; AHMAD, NAVEED; REIERSON, KRISTOFER
To: MICROSOFT CORPORATION
Reel/Frame 024099/0412 →