IBM SAN Volume Controller
The IBM SAN Volume Controller (SVC) is a block storage virtualization appliance that belongs to the IBM System Storage product family. SVC implements an indirection, or "virtualization", layer in a Fibre Channel storage area network (SAN). Architecture. The IBM 2145 SAN Volume Controller (SVC) is an inline virtualization or "gateway" device. It logically sits between hosts and storage arrays, presenting itself to hosts as the storage provider (target) and presenting itself to storage arrays as one big host. SVC is physically attached to one or several SAN fabrics. The virtualization approach allows for non-disruptive replacements  of any part in the storage infrastructure, including the SVC devices themselves. It also aims at simplifying compatibility requirements in strongly heterogeneous server and storage landscapes. All advanced functions are therefore implemented in the virtualization layer, which allows switching storage array vendors without impact. Finally, spreading an SVC installation across two or more sites ("stretched clustering") enables basic disaster protection paired with continuous availability. SVC nodes are always clustered, with a minimum of 2 and a maximum of 8 nodes, and linear scalability. Nodes are rack-mounted appliances derived from IBM System x servers, protected by redundant power supplies and  integrated batteries. Earlier models featured external battery-backed power supplies. Each node has Fibre Channel ports simultaneously used for incoming, outgoing, and intracluster data traffic. Hosts may also be attached via FCoE and iSCSI Gbit Ethernet ports. Intracluster communication includes maintaining read/write cache integrity, sharing status information, and forwarding reads and writes to any port. These ports must be zoned together. Write cache is protected by mirroring within a pair of SVC nodes, called "I/O group". Virtualized resources (= storage volumes presented to hosts) are distributed across I/O groups to improve performance. Volumes can also be moved  nondisruptively between I/O groups, e.g., when new node pairs are added or older technology is removed. Node pairs are always active, meaning both members accept simultaneous writes for each volume. In addition, all other cluster nodes accept and forward read and write requests which are internally handled by the appropriate I/O group. Path or board failures are compensated by non-disruptive failover within each I/O group, or optionally across dispersed I/O groups. Hosts must have multipath drivers installed, such as IBM Subsystem Device Driver (SDD) or standard MPIO drivers. SVC is based on COMmodity PArts Storage  System ("Compass") architecture, developed at the IBM Almaden Research Center. The majority of the software has been developed at the IBM Hursley Labs in the UK. Timeline. The different SAN Volume Controller models were available for purchase shortly after the mentioned announcement day. The light green bars show the period of time when each model could be ordered, while the light blue bars show how long the standard service was continued after withdrawal from marketing. The displayed information is current in August 2019. There are differences in service conditions between 2145 and 2147, but not in hardware. Performance. Release 4.3  of the SVC held the Storage Performance Council (SPC) world record for SPC-1 performance benchmarks, returning nearly 275K (274,997.58) IOPS. There was no faster storage subsystem benchmarked by the SPC at that time (October 2008). The SPC-2 benchmark also returned a world leading measurement of over 7 GB/s throughput. Release 5.1 achieved new records with a 4 node and 6 node cluster benchmark with DS8700 as backed storage device. SVC broke its own record of 274,997.58 SPC-1 IOPS in March 2010, with 315,043.59 for the 4 node cluster and 380,489.30 with the 6 node cluster, records that stood  until October 2011. Release 6.2 of the SVC held the Storage Performance Council (SPC) world record for SPC-1 performance benchmarks, returning over 500K (520,043.99) IOPS (I/Os per second) using 8 SVC nodes and Storwize V7000 as the backend disk. There was no faster storage subsystem benchmarked by the SPC at that time (January 2012). The full results and executive summaries can be reviewed at the SPC website referenced above. Release 7.x provides multiple enhancements including support for additional CPUs, cache and adapters. The streamlined cache operates at 100µs fall-through latency and 60 µs cache-hit latency, enabling  SVC as a front-end to IBM FlashSystem solid-state storage without significant performance penalty. (See also: FlashSystem V9000). Included Features (7.x). Optional features. There are some optional features, separately licensed e.g. per TB: Other products running SVC code. On 7 October 2010, IBM announced the IBM Storwize V7000, the first member of the Storwize family. Storwize uses the SAN Volume Controller code base with internal storage to provide a mid-price storage subsystem. The IBM Storwize V5000, V3700 and V3500 are shrunk compatible models with less cache/CPU/adapters and a reduced set of features. The IBM FlashSystem V9000  leverages the SVC firmware integrated with IBM FlashSystem solid-state drawers. In 2015, IBM re-badged the virtualization functionality as "Spectrum Virtualize", in order to align it with the IBM software-defined storage naming conventions and to highlight the interoperability aspect. Non-IBM products running SVC code. The Actifio Protection and Availability Storage (PAS) appliance includes elements of SVC code to achieve wide interoperability. The PAS platform spans backup, disaster recovery, and business continuity among other functions.