Virtualization switch and method for performing virtualization in the data-path
First Claim
Patent Images
1. A virtualization switch for performing a plurality of virtualization services within a data path said virtualization switch comprises at least:
- a network interface (NI);
an iSCSI module;
a target manager (TM);
a volume manager (VM);
a data transfer arbiter (DTA);
a device manager (DM);
a plurality of input ports to receive incoming packets from a network; and
, a plurality of output ports to communicate with plurality of storage devices.
3 Assignments
0 Petitions
Accused Products
Abstract
A virtualization switch and method for executing at least SCSI commands and performing virtualization in a in a Storage Area Network. The virtualization switch optimizes the data received from the network to fit the capacity of the target storage devices, thus providing higher throughput and low latency. The virtualization is preformed within the data path between the hosts and the storage devices and without the assistance of devices, such as a management stations or agents installed in the hosts.
-
Citations
91 Claims
-
1. A virtualization switch for performing a plurality of virtualization services within a data path said virtualization switch comprises at least:
-
a network interface (NI);
an iSCSI module;
a target manager (TM);
a volume manager (VM);
a data transfer arbiter (DTA);
a device manager (DM);
a plurality of input ports to receive incoming packets from a network; and
,a plurality of output ports to communicate with plurality of storage devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A method for performing a plurality virtualization services, said method being further operative to perform said virtualization services within a data path, said method comprises the steps of:
-
a) receiving a logic command to be performed on at least one virtual volume, said logic command including at least a virtual address;
d) scheduling said logic command for execution;
c) translating, in one pass, said logic command to a list of physical commands, wherein each of said physical commands is targeted to a different storage device;
d) determining the amount of data to be transferred via a network; and
,e) executing said physical commands on said storage devices. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61)
-
-
62. A computer executable code for performing a plurality virtualization services, said computer executable code being further operative to perform said virtualization services within a data path, said code comprises the steps of:
-
a) receiving a logic command to be performed on at least one virtual volume, said logic command including at least a virtual address;
d) scheduling said logic command for execution;
c) translating, in one pass, said logic command to a list of physical commands, wherein each of said physical commands is targeted to a different storage device;
d) determining the amount of data to be transferred via a network; and
,e) executing said physical commands on said storage devices. - View Dependent Claims (63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91)
-
Specification