Under The Hood: iSCSI And SANs
Shared storage and storage area networks (SANs) wouldn’t be possible without the underlying mechanisms and protocols connecting the parts and processes of a network. One of them is iSCSI. But to understand how iSCSI works, it’s necessary to look at existing principles, and answer some basic questions.
What Is SCSI?
SCSI stands for Small Computer System Interface, and is commonly pronounced as SKUH-zee, or “scuzzy”. And SCSI is a set of standard electronic interfaces established by the American National Standards Institute (ANSI), which enable personal computers to communicate more effectively with other hardware such as disk drives, CD-ROM drives, scanners, printers, or tape drives.
SCSI is based on an older, proprietary bus interface known as the Shugart Associates System Interface (SASI). The American National Standards Institute ratified SCSI In 1986, as a modified version of SASI with improved performance.
The SCSI mechanism uses a controller to send and receive data or power to SCSI-enabled devices, with speeds of up to 320 megabytes per second (MBps). Multiple items may share a single bus, and SCSI works with most computer systems.
SCSI storage systems consist of several components:
- An initiator: This issues requests for service by the SCSI device, and receives responses from other hardware. Hardware-based initiators may be integrated into a server’s system board, or reside within a host bus adapter.
- A target: Under SCSI, a target is usually a physical storage device such as a disk drive or storage array. But non-storage hardware may also assume the role of a SCSI target. For example, optical scanners were once routinely attached to computers through the SCSI bus, and allowed to act as SCSI targets.
- A service delivery subsystem: Usually taking the form of cabling, this mechanism allows communication to take place between an initiator and a target.
- An expander: When SCSI is deployed as serial-attached SCSI (SAS), an expander allows multiple SAS devices to share a single initiator port.
Besides its speed, SCSI has a long history, and a reputation for being reliable. Though technologies like serial-ATA (SATA) have largely replaced it in new systems, SCSI is still in use. Enterprises often deploy the mechanism in server farms, for hard drive controllers.
On the downside, SCSI has to be configured for each computer, and offers limited system BIOS support. No common SCSI software interface exists, and deployment can be confusing, as all the SCSI variants have different speeds, bus widths, and connectors.
As technologies evolved and the IT ecosystem expanded, computers needed to be able to connect to something other than their local systems and peripheral hardware. To this end, a transport layer protocol known as iSCSI or internet Small Computer System Interface was introduced. It was developed as a proof of concept (POC) by the IBM corporation in 1998, and ratified by the Internet Engineering Task Force (IETF) in 2003.
Piggybacking on the Transport Control Protocol (TCP), iSCSI allows SCSI commands to be sent end-to-end over local-area networks (LANs), wide-area networks (WANs), or the internet. It works by transporting block-level data between an iSCSI initiator on the server side, and an iSCSI target located on a storage device.
The iSCSI protocol condenses SCSI commands into a more compact form, then assembles the data in packets for the TCP/IP layer. Packets are sent over the network via a point-to-point connection. At the target destination, the iSCSI protocol extracts the SCSI commands from these packets, so that the operating system (OS) sees the storage as a local SCSI device which may be formatted and processed as usual.
iSCSI uses standard Ethernet, so it doesn’t require the expensive and sometimes complex switches and cards required to run Fiber Channel (FC) networks. This makes iSCSI easier to manage, and more cost effective.
iSCSI And Shared Storage
iSCSI enables universal access to storage devices and storage area networks (SANs) over standard TCP / IP connections. Each SAN server can access shared storage as if it were a drive directly attached to the server. It’s a SAN storage solution that also helps reduce hardware costs.
With a virtual SAN or vSAN, a logical or virtual partition is created inside a storage area network, allowing network traffic to be isolated within a certain range of the SAN. In a virtualized storage environment, the storage pool is accessible to all the hosts within the cluster, and the cluster nodes must communicate with the storage pool over the network. This occurs by virtue of the iSCSI protocol. Its ease of use and low cost make iSCSI an attractive option for small to medium-sized businesses.
StarWind offers sophisticated shared storage for VMware and Hyper-V environments. It is a perfect clustering solution for applications such as MS SQL Server, Exchange, and SharePoint.
The StarWind iSCSI installation package is available for any server that you want to turn into a SAN. The StarWind iSCSI Service applies to remote access servers, and enables the creation of various devices, such as HA devices, snapshot and CDP, or mirror devices. Remote management is possible via the StarWind Management Console.
StarWind iSER, a protocol designed to improve iSCSI, completely eliminates the problem of network bottlenecks and latency issues, providing higher bandwidth for block storage transfers. It allows for maximum performance in cluster systems, making VM migration, data and VM replication even faster and easier to implement.
StarWind Virtual SAN
For a completely software defined storage (SDS) solution, StarWind Virtual SAN delivers performance and reliability with commercial off-the-shelf hardware, eliminating the need for costly proprietary components. The need for physical shared storage is avoided by simply mirroring internal hard disks and flash between hypervisor servers. So StarWind Virtual SAN maintains high performance and high data availability on minimal resources.