IP Library Granted Patent US 7,555,586
Granted Patent B2
US 7,555,586 · App. 11/866,963 · Granted Jun 30, 2009

Apparatus and method for packet based storage virtualization

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 7,555,586
App. No.
11/866,963
Granted
Jun 30, 2009
Kind
B2
Abstract

The present invention provides a method and apparatus for data processing and virtualization. The method and apparatus are configured to receive communications, separate a command communication from a data communication, parallel process the command communication and the data communication, generate at least one virtual command based on the command communication, and generate virtual data according to the at least one virtual command. The apparatus can comprise a parallel virtualization subsystem configured to separate data communications from command communications and to parallel process the command communications and the data communications, to generate virtual commands and to generate virtual data according to a virtual command, and a physical volume driver coupled with the parallel virtualization subsystem, wherein the physical volume driver receives the virtual data and configures the virtual data.

Claims (37)

1. A method for data virtualization, comprising the steps of:

receiving communications;

separating a command communication from a data communication;

parallel processing the command communication and the data communication;

generating at least one command based on the command communication;

generating virtual data according to the at least one command;

accumulating the virtual data; and

forming a virtual I/O from the accumulated virtual data.

2. The method as claimed in claim 1 , wherein the step of generating the virtual data includes generating the virtual data prior to receiving all data associated with the data communication.

3. The method as claimed in claim 1 , wherein the step of generating the virtual data includes generating virtual data prior to receiving an entire I/O.

4. The method as claimed in claim 1 , wherein the step of separating the command communication from the data communication includes separating a command protocol data unit (PDU) from a data PDU.

5. The method as claimed in claim 1 , further comprising the step of:

converting the virtual data to an alternate protocol prior to communicating the virtual data to compensate for a change in protocol.

6. A method for data virtualization, comprising the steps of:

receiving communications;

determining if the communications include a command communication;

forwarding the command communication for command processing;

generating a command;

determining if the communications includes at least a portion of a data communication;

forwarding the at least the portion of the data communication for data processing;

generating virtualized data based on the at least the portion of the data communication according to the command prior to receiving all data associated with the data communication;

accumulating the virtualized data; and

forming a virtual I/O from the accumulated virtualized data.

7. The method as claimed in claim 6 , wherein the step of generating the virtualized data according to the command includes generating the virtualized data prior to receiving an entire I/O.

8. The method as claimed in claim 6 , wherein the steps of generating the command and the step of generating virtualized data are performed separately.

9. The method as claimed in claim 6 , wherein the step of generating the command and the step of generating virtualized data are performed in parallel.

10. The method as claimed in claim 6 , further comprising the steps of:

receiving a plurality of communications; and

distributing over a network the steps of:

determining which of the plurality of communications are command communications;

forwarding the command communications for command processing;

generating commands;

determining which of the plurality of communications are data communications;

forwarding the data communications for data processing; and

for each data communication of the data communications generating virtualized data according to at least one of the commands prior to receiving all data associated with the communication.

11. The method as claimed in claim 10 , wherein the step of distributing includes utilizing a plurality of virtualization apparatuses distributed through the network; and

synchronizing at least the step of generating virtualized data.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2024
From: AI-CORE TECHNOLOGIES, LLC
To: BYTEWEAVR, LLC
Reel/Frame 066639/0008 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2023
From: INTELLECTUAL VENTURES ASSETS 190 LLC
To: AI-CORE TECHNOLOGIES, LLC
Reel/Frame 065227/0107 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2023
From: INTELLECTUAL VENTURES II LLC
To: INTELLECTUAL VENTURES ASSETS 190 LLC
Reel/Frame 065015/0675 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2021
From: TAMIRAS PER PTE. LTD., LLC
To: INTELLECTUAL VENTURES II LLC
Reel/Frame 056487/0613 →
MERGER Recorded Dec 22, 2015
From: GLACE APPLICATIONS NY LLC
To: TAMIRAS PER PTE. LTD., LLC
Reel/Frame 037355/0579 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2013
From: DYNAMIC NETWORK FACTORY, INC.
To: GLACE APPLICATIONS NY LLC
Reel/Frame 029677/0591 →