A distributed architecture for the virtualization of storage capacity in a Storage
Area Network (SAN) and for the management of virtual and physical memory is described.
There is provided a virtualization software computer program consisting of two
portions, namely virtualization and translation, each portion residing in a different
location but both portions operating interactively. A SAN coupling an array of
hosts (1) via a Network Switch (2) to an array of storage devices
(4) is equipped with a Storage Virtualization Manager (3). The SVM
operating the virtualization computer software handles physical storage capacity
virtualization and metadata management. The Network Switch routes storage I/O operations
between the hosts and the storage devices, while the translation software resides
in a processor, in either a host or elsewhere on the Network Switch SAN. Although
the Network Switch and the SVM decouple tasks to relieve load and prevent bottlenecks,
practical implementation permits to design the Network Switch, the processor(s)
operating the virtualization program, and the SVM in many configurations spanning
from distributed to integrated packaging. The virtualization software also supports
real time configuration adaptation of changes occurring in the configuration of
the array of hosts and of storage devices of the SAN.