IP Library Granted Patent US 9,841,984
Granted Patent B2
US 9,841,984 · App. 14/433,525 · Granted Dec 12, 2017

System and method for creating virtual disk images for use with remote computer

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 9,841,984
App. No.
14/433,525
Granted
Dec 12, 2017
Kind
B2
Abstract

A system and method is disclosed for creating and exposing virtual disk images to a host server, during a KVM session, using an HTML5 KVM virtual media client running in the Web browser of a user's device (e.g., PC workstation). The host server is able to select all or specific portions of the virtual disk image for use, whereupon the bytes representing the selected data content are packaged by the HTML5 KVM virtual media client and transmitted to the host server. Using the HTML5 KVM virtual media client to create and expose virtual disk images eliminates the problem of the Web browser not being able to directly access physical media (e.g., disks) on the user's device.

Claims (47)

1. A method for creating and exposing virtual disk images to a host server, during a KVM (Keyboard, video and mouse) session, using an HTML5 KVM (Keyboard, video and mouse) virtual media client running in the Web browser of a user's device, the method comprising:

sending a selection to the host server of a specific virtual media device to be mapped on the host server using the HTML5 KVM (Keyboard, video and mouse) virtual media client to package selected content using a selected format to create a disk image of the selected content in a sandbox of the Web browser;

notifying the host server of an available virtual disk image and exposing the virtual disk image for use to the host server;

using the host server to obtain the virtual disk image;

using the host server to send a request to the HTML5 KVM (Keyboard, video and mouse) virtual media client for a specific data block or set of data blocks a portion of the data of the virtual disk image to retrieve;

using the HTML5 KVM (Keyboard, video and mouse) virtual media client to maintain references to specific files that correspond to the at least one of a specific data block or the set of data blocks, and

using a reverse lookup operation to determine which specific ones of the files of the disk image correspond to the specific data block or the set of data blocks being requested, and transmitting bytes of data corresponding to those portions of files stored on the user's device into a sandbox of the Web browser of the user's device; and

using the HTML5 KVM (Keyboard, video and mouse) virtual medial client to send the bytes of data brought into the sandbox to the host server; and

using the host server to receive the bytes of data.

2. The method of claim 1 , further comprising:

using the host server to request additional bytes of data;

making a determination if the additional bytes of data can be presented to a USB device associated with the host server; and

using the HTML5 KVM (Keyboard, video and mouse) virtual media client to send the additional bytes of data to the host server.

3. The method of claim 1 , further comprising responding to a command from the user device to unmap the virtual disk image from the HTML5 KVM (Keyboard, video and mouse) virtual media client.

4. The method of claim 1 , further comprising responding to a command from the user device to eject the virtual disk image from the host server.

5. The method of claim 1 , further comprising sending a status update message from the HTML5 KVM (Keyboard, video and mouse) virtual media client to the host server regarding the number of bytes transferred to the host server.

6. The method of claim 1 , further comprising using the HTML5 KVM (Keyboard, video and mouse) virtual media client to package the selected content using at least one of:

an FAT32 format; and

an IS09660 format.

7. The method of claim 1 , wherein creating the virtual disk image further comprises creating structural elements of a virtual disk image including a boot sector and FAT tables.

8. A method for creating and exposing virtual disk images to a host server, during a KVM (Keyboard, video and mouse) session, using an HTML5 KVM (Keyboard, video and mouse) virtual media client running in the Web browser of a user's device, the method comprising:

sending a selection to the host server of a specific vMedia virtual media device to be mapped on the host server;

using the HTML5 KVM (Keyboard, video and mouse) virtual media client to package selected content using a selected format to create a disk image of the selected content in a sandbox of the Web browser;

notifying the host server of an available virtual disk image and exposing the virtual disk image for use to the host server;

using the host server to obtain the virtual disk image;

using the host server to send a request to the HTML5 KVM (Keyboard, video and mouse) virtual media client with a starting block number and number of blocks of data of the virtual disk image to retrieve;

using the HTML5 KVM (Keyboard, video and mouse) virtual media client to implement a reverse lookup operation to translate the request into at least one specific file that makes up the virtual disk image, and transmitting only bytes of data associated with the at least one specific file stored on the user's device that correspond to requested blocks of data into the sandbox of the Web browser running on the user's device, and to send the bytes of data corresponding to the at least one specific file to the host server.

9. The method of claim 8 , further comprising using the host server to receive the bytes of data corresponding to the at least one specific file.

10. The method of claim 8 , further comprising using at least one of a KVM (Keyboard, video and mouse) appliance or a baseboard management controller (BMC) to transmit to the HTML5 KVM (Keyboard, video and mouse) virtual media client a list of virtual media devices available for mapping on the host server.

11. The method of claim 8 , further comprising sending status messages to the host server including information on a number of bytes transferred pursuant to each specific request for data made by the host server.

12. The method of claim 11 , wherein said sending status messages comprises sending status messages in accordance with an Avocent Messaging Protocol (AVMP).

13. The method of claim 11 , wherein the reverse lookup operation comprises using the HTML5 KVM (Keyboard, video and mouse) virtual media client to maintain references to specific files that correspond to at least one of a specific data block or set of data blocks requested by the host server, and using a reverse lookup operation to determine which specific ones of the files of the disk image correspond to the requested blocks of data.

14. The method of claim 8 , further comprising using the HTML5 KVM (Keyboard, video and mouse) virtual media client to respond to one or more subsequent requests of data from the host server, and informing a USB device associated with the host server if additional bytes of data are not available.

15. The method of claim 8 , further comprising at least one of:

unmapping the virtual disk image from the HTML5 KVM (Keyboard, video and mouse) virtual media client; and

ejecting the virtual disk image from the host server.

16. A system for creating and exposing virtual disk images to a host server, during a KVM (Keyboard, video and mouse) session, using an HTML5 KVM (Keyboard, video and mouse) virtual media client running in the Web browser of a user's device, the system comprising:

a user device having a Web browser running thereon, the Web browser having a sandbox for temporary storage of data;

an HTML5 KVM (Keyboard, video and mouse) virtual media client running in the Web browser, the HTML5 KVM (Keyboard, video and mouse) virtual media client configured to:

package selected content using a selected format to create a disk image of the selected content in a sandbox of the Web browser;

notify the host server of an available virtual disk image and exposing the virtual disk image for use to the host server;

respond to a request from the host server for data corresponding to a portion of the virtual disk image; and

use the HTML5 KVM (Keyboard, video and mouse) virtual media client to implement a reverse lookup operation to translate the request for data into at least a portion of at least one specific file makes up the virtual disk image, and transmitting only those portions of files stored on the user's device that correspond to requested blocks of data into a sandbox of the Web browser of the user's device, and to send bytes of data corresponding to the at least a portion of one specific file to the host server for use.

17. The system of claim 16 , wherein the lookup operation implemented by the HTML5 KVM (Keyboard, video and mouse) virtual media client comprises using the HTML5 KVM (Keyboard, video and mouse) virtual media client to maintain references to specific files that correspond to at least one of a specific data block or set of data blocks requested by the host server, and using determining which specific ones of the files of the disk image correspond to the requested data.

18. The system of claim 16 , wherein the HTML5 KVM (Keyboard, video and mouse) virtual media client is further configured to at least one of:

unmap the virtual disk image from the HTML5 KVM (Keyboard, video and mouse) virtual media client; and

eject the virtual disk image from the host server.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2024
From: VERTIV IT SYSTEMS, INC.
To: VERTIV CORPORATION
Reel/Frame 069695/0620 →
SECURITY INTEREST Recorded Oct 26, 2021
From: VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.; ELECTRICAL RELIABILITY SERVICES, INC.; ENERGY LABS, INC.
To: UMB BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 057923/0782 →
SECURITY AGREEMENT Recorded Mar 3, 2020
From: ELECTRICAL RELIABILITY SERVICES, INC.; ENERGY LABS, INC.; VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.
To: CITIBANK, N.A.
Reel/Frame 052076/0874 →
RELEASE OF SECURITY INTEREST Recorded Mar 2, 2020
From: JPMORGAN CHASE BANK, N.A.
To: VERTIV CORPORATION (F/K/A ALBER CORP.); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT CORPORATION); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT FREMONT, LLC); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT HUNTSVILLE, LLC); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT REDMOND CORP.); ELECTRICAL RELIABILITY SERVICES, INC.; VERTIV CORPORATION (F/K/A EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.); VERTIV CORPORATION (F/K/A LIEBERT CORPORATION)
Reel/Frame 052065/0666 →
RELEASE OF SECURITY INTEREST Recorded Mar 2, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY N.A.
To: VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.; ELECTRICAL RELIABILITY SERVICES, INC.
Reel/Frame 052071/0913 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA PREVIOUSLY RECORDED AT REEL: 048245 FRAME: 0783. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jun 14, 2019
From: AVOCENT CORPORATION
To: VERTIV IT SYSTEMS, INC.
Reel/Frame 051692/0965 →
SECOND LIEN SECURITY AGREEMENT Recorded Jun 10, 2019
From: VERTIV IT SYSTEMS, INC.; VERTIV CORPORATION; VERTIV NORTH AMERICA, INC.; ELECTRICAL RELIABILITY SERVICES, INC.; VERTIV ENERGY SYSTEMS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049415/0262 →
CHANGE OF NAME Recorded Feb 4, 2019
From: AVOCENT CORPORATION
To: AVOCENT HUNTSVILLE, LLC; VERTIV IT SYSTEMS, INC.
Reel/Frame 048245/0783 →
MERGER Recorded Jan 30, 2019
From: AVOCENT HUNTSVILLE, LLC
To: AVOCENT CORPORATION
Reel/Frame 048191/0640 →
SECURITY AGREEMENT Recorded Dec 2, 2016
From: ALBER CORP.; ASCO POWER TECHNOLOGIES, L.P.; AVOCENT CORPORATION; AVOCENT FREMONT, LLC; AVOCENT HUNTSVILLE, LLC; AVOCENT REDMOND CORP.; ELECTRICAL RELIABILITY SERVICES, INC.; EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.; LIEBERT CORPORATION; LIEBERT NORTH AMERICA, INC.; NORTHERN TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040797/0615 →
SECURITY AGREEMENT Recorded Dec 1, 2016
From: ALBER CORP.; ASCO POWER TECHNOLOGIES, L.P.; AVOCENT CORPORATION; AVOCENT FREMONT, LLC; AVOCENT HUNTSVILLE, LLC; AVOCENT REDMOND CORP.; ELECTRICAL RELIABILITY SERVICES, INC.; EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.; LIEBERT CORPORATION; LIEBERT NORTH AMERICA, INC.; NORTHERN TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040783/0148 →
CHANGE OF NAME Recorded Sep 30, 2016
From: AVOCENT HUNTSVILLE CORP.
To: AVOCENT HUNTSVILLE, LLC
Reel/Frame 039906/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2015
From: SIEGMAN, CRAIG S.; AMIRTHASAMY, JOSEPH; GRIFFIN, GEORGE N.
To: AVOCENT HUNTSVILLE CORP.
Reel/Frame 035584/0190 →