|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] iSCSI virtualization proposalProposal for iSCSI virtualization: The problem:
When the host is an iSCSI initiator, the disks are iSCSI targets and the manager is with iSCSI target port to the host and iSCSI initiator port to the disks. The host considers the manager as a “flat” disk space with iSCSI port and is unaware of the disks. The manager manages the disks in some algorithm to construct a combined virtual volume. Consider the following example: Each disk contains 1000 blocks. The virtual volume is thus 3000 blocks. The hosts sends an iSCSI command to the manager to read 40 blocks from address 500. The physical addresses are: A – 400:409, B – 300:319 and C – 600:609. In the current iSCSI protocol, the traffic scenario is: Host -> manager: iSCSI command, read
from 500 size 40.
Problem 1: Traffic on the line is double! Each data packet is transferred twice (from disk to manager and from manager to host). Problem 2: The manager is a bottleneck. Both data and commands of all the system (assuming many hosts and disks) is transferred via it. Solution: Lets add in the iSCSI status message, in the “iSCSI status” field, the following option: 2 - iSCSI reflection Which means that the status contains add-ons of iSCSI command that the host should implement. These commands will implement the original request. In our example it will look as: Host -> manager: iSCSI command, read
from 500 size 40.
Benefits: * Data traffic on the line is single.
Note: The manager is a software pack. It can be an independent unit, in the host or in one of the disk. It is just schematically stated as independent unit. In conclusion, the addition of the reflection feature in the protocol is minor change, can be optional and will enable the enormous potential of virtualization. Comments are more than welcome, Yaron Klein
klein@sanrad.com
Home Last updated: Tue Sep 04 01:06:42 2001 6315 messages in chronological order |