ISCSI

ISCSI

In computing, the iSCSI (for "Internet SCSI") protocol allows clients (called "initiators") to send SCSI commands ("CDBs") to SCSI storage devices ("targets") on remote servers. It is a popular Storage Area Network (SAN) protocol, allowing organizations to consolidate storage into data center storage arrays while providing hosts (such as database and web servers) with the illusion of locally-attached disks. Unlike Fibre Channel, which requires special-purpose cabling, iSCSI can be run over long distances using existing network infrastructure.

Functionality

iSCSI (pronEng|аɪskʌzi) uses TCP/IP (typically TCP ports 860 and 3260). In essence, iSCSI simply allows two hosts to negotiate and then exchange SCSI commands using IP networks. By doing this, iSCSI takes a popular high-performance local storage bus and emulates it over wide-area networks, creating a storage area network (SAN). Unlike some SAN protocols, iSCSI requires no dedicated cabling; it can be run over existing switching and IP infrastructure. As a result, iSCSI is often seen as a low-cost alternative to Fibre Channel, which requires dedicated infrastructure.

Although iSCSI can communicate with arbitrary types of SCSI devices, system administrators almost always use it to allow server computers (such as database servers) to access disk volumes on storage arrays. iSCSI SANs often have one of two objectives:

; Storage consolidation: Organizations move disparate storage resources from servers around their network to central locations, often in data centers; this allows for more efficiency in the allocation of storage. In a SAN environment, a server can be allocated a new disk volume without any change to hardware or cabling.

; Disaster recovery: Organizations mirror storage resources from one data center to a remote data center, which can serve as a hot standby in the event of a prolonged outage. In particular, iSCSI SANs allow entire disk arrays to be migrated across a WAN with minimal configuration changes, in effect making storage "routable" in the same manner as network traffic.

Storage Area Network (SAN)

In the context of computer storage, a SAN system allows a machine to use a network protocol to connect to remote storage resources such as disks and tape drives on an IP network for block level I/O. From the point of view of the class drivers and application software, the devices appear as locally attached devices.

One should distinguish a SAN device from a network-attached storage (NAS) device, where computers access resources through a file-based interface rather than through a low-level device interface. A NAS server arbitrates access from multiple clients, thus allowing the arbitrary addition of consumers for its resources. With iSCSI, the burden of synchronizing access to shared resources generally belongs to the initiator (network client) rather than with the target (network server). Sharing low-level device interfaces is a requirement of computer clusters which use specialized cluster software to manage the use of shared resources.

Concepts

Initiator

An initiator functions as an iSCSI client. An initiator typically serves the same purpose to a computer as a SCSI bus adapter would, except that instead of physically cabling SCSI devices (like hard drives and tape changers), an iSCSI initiator sends SCSI commands over an IP network. An initiator falls into two broad types:; Software initiator: A software initiator uses code to implement iSCSI. Typically, this happens in a kernel-resident device driver that uses the existing NIC and network stack to emulate SCSI devices for a computer by speaking the iSCSI protocol. Software initiators are available for most mainstream operating systems, and this type is the most common mode of deploying iSCSI on computers.; Hardware initiator: A hardware initiator uses dedicated hardware, typically in combination with software (firmware) running on that hardware, to implement iSCSI. A hardware initiator mitigates the overhead of iSCSI and TCP processing and Ethernet interrupts, and therefore may improve the performance of servers that use iSCSI.

Host Bus Adapter (HBA)

An iSCSI host bus adapter (more commonly, "HBA") implements a hardware initiator. A typical HBA is packaged as a combination of a Gigabit (or 10 Gigabit) Ethernet NIC, some kind of TCP/IP offload technology (TOE) and a SCSI bus adapter, which is how it appears to the operating system.

An iSCSI HBA can include PCI option ROM to allow booting from an iSCSI target.

TCP Offload Engine (TOE)

A TCP Offload Engine, or "TOE Card", offers an alternative to a full iSCSI HBA. A TOE "offloads" the TCP/IP operations for this particular network interface from the host processor, freeing up CPU cycles for the main host applications. When a TOE is used rather than an HBA, the host processor still has to perform the processing of the iSCSI protocol layer itself, but the CPU overhead for that task is low.

iSCSI HBAs or TOEs are used when the additional performance enhancement justifies the additional expense of using an HBA for iSCSI, rather than using a Software-based iSCSI Client (initiator).

Target

iSCSI refers to a storage resource located on an iSCSI server (more generally, one of potentially many "instances" of iSCSI running on that server) as a "target". An iSCSI target usually represents hard disk storage. As with initiators, software to provide an iSCSI target is available for most mainstream operating systems.

Common deployment scenarios for an iSCSI target include:

;Storage array: In a data center or enterprise environment, an iSCSI target often resides in a large storage array, such as a NetApp filer or an EMC Corporation NS-series computer appliance. A storage array usually provides distinct iSCSI targets for numerous clients. [ [http://roc.cs.berkeley.edu/papers/inet-computing.pdf Architecture and Dependability of Large-Scale Internet Services] David Oppenheimer and David A. Patterson, Berkley, "IEEE Internet Computing", September–October 2002.]

;Software target: In a smaller or more specialized setting, a mainstream server operating system (like Linux or Windows Server 2003) can provide an iSCSI target's functionality.

Logical Unit Number (LUN)

In SCSI terminology, LUN stands for "logical unit number". A LUN represents an individual SCSI device. In an iSCSI environment, LUNs are essentially numbered disk drives. An initiator negotiates with a target to establish connectivity to a LUN; the result is an iSCSI session that emulates a SCSI hard disk. Initiators treat iSCSI LUNs the same way as they would a raw SCSI or IDE hard drive; for instance, rather than mounting remote directories as would be done in NFS or CIFS environments, iSCSI systems format and directly manage filesystems on iSCSI LUNs.

In enterprise deployments, LUNs usually represent slices of large RAID disk arrays, often allocated one per client. iSCSI imposes no rules or restrictions on multiple computers sharing individual LUNs; it leaves shared access to a single underlying filesystem as a task for the operating system.

Addressing

Special names refer to both iSCSI initiators and targets. iSCSI provides three name-formats:

; iSCSI Qualified Name (IQN): Format: iqn.yyyy-mm.{reversed domain name} (e.g. iqn.2001-04.com.acme:storage.tape.sys1.xyz); Extended Unique Identifier (EUI): Format: eui.{EUI-64 bit address} (e.g. eui.02004567A425678D); T11 Network Address Authority (NAA): Format: naa.{NAA 64 or 128 bit identifier} (e.g. naa.52004567BA64678D)

IQN format addresses occur most commonly. They are qualified by a date (yyyy-mm) because domain names can expire or be acquired by another entity.

The IEEE Registration authority provides EUI in accordance with the EUI-64 standard. NAA is part OUI which is provided by the IEEE Registration Authority. NAA name formats were added to iSCSI in RFC 3980, to provide compatibility with naming conventions used in Fibre Channel and SAS storage technologies.

One can usually define an iSCSI participant by three or four fields:
# Hostname or IP Address (e.g., "iscsi.example.com")
# Port Number (e.g., 3260)
# iSCSI Name (e.g., the IQN "iqn.2003-01.com.ibm:00.fcd0ab21.shark128")
# An optional CHAP Secret (e.g., "secretsarefun")

iSNS

iSCSI initiators can locate appropriate storage resources using the Internet Storage Name Service (iSNS) protocol. In theory, iSNS provides iSCSI SANs with the same management model as dedicated Fibre Channel SANs. In practice, administrators can satisfy many deployment goals for iSCSI without using iSNS.

Security

Authentication

iSCSI initiators and targets prove their identity to each other using the CHAP protocol, which includes a mechanism to prevent cleartext passwords from appearing on the wire. By itself, the CHAP protocol is vulnerable to dictionary attacks, spoofing, or reflection attacks. If followed carefully, the rules for using CHAP within iSCSI prevent most of these attacks. [cite web | title = RFC 3720 | url = http://tools.ietf.org/html/rfc3720#section-8.2.1 | date = 2004-04-02 | first = Julian | last = Satran | coauthors = Kalman, Meth; Sapuntzakis, Costa; Zeidner, Efri; Chadalapaka, Mallikarjun]

Additionally, as with all IP-based protocols, IPsec can operate at the network layer. The iSCSI negotiation protocol is designed to accommodate other authentication schemes, though interoperability issues limit their deployment.

To ensure that only valid initiators connect to storage arrays, administrators most commonly run iSCSI only over logically-isolated backchannel networks. In this deployment architecture, only the management ports of storage arrays are exposed to the general-purpose internal network, and the iSCSI protocol itself is run over dedicated network segments or VLANs. This mitigates authentication concerns; unauthorized users aren't physically provisioned for iSCSI, and thus can't talk to storage arrays. However, it also creates a transitive trust problem, in that a single compromised host with an iSCSI disk can be used to attack storage resources for other hosts.

Authorization

Because iSCSI aims to consolidate storage for many servers into a single storage array, iSCSI deployments require strategies to prevent unrelated initiators from accessing storage resources. As a pathological example, a single enterprise storage array could hold data for servers variously regulated by Sarbanes-Oxley for corporate accounting, HIPAA for health benefits information, and PCI DSS for credit card processing. During an audit, storage systems must demonstrate controls to ensure that a server under one regime cannot access the storage assets of a server under another.

Typically, iSCSI storage arrays explicitly map initiators to specific target LUNs; an initiator authenticates not to the storage array, but to the specific storage asset it intends to use. However, because the target LUNs for SCSI commands are expressed both in the iSCSI negotiation protocol and in the underlying SCSI protocol, care must be taken to ensure that access control is provided consistently.

Confidentiality and integrity

For the most part, iSCSI operates as a cleartext protocol that provides no cryptographic protection for data in motion during SCSI transactions. As a result, an attacker who can listen in on iSCSI ethernet traffic can:

* reconstruct and copy the files and filesystems being transferred on the wire

* alter the contents of files by injecting fake iSCSI frames

* corrupt filesystems being accessed by initiators, exposing servers to software flaws in poorly-tested filesystem code.

These problems do not occur only with iSCSI, but rather apply to any IP-based SAN protocol without cryptographic security. Adoption and deployment of IPSec, frequently cited as a solution to the IP SAN security problem, has been hampered by performance and compatibility issues.

Industry support

Operating-system support

†Target available only as part of Windows® Unified Data Storage Server (WUDSS)

Targets

Most iSCSI targets involve disk, though iSCSI tape and medium-changer targets are popular as well. So far, physical devices have not featured native iSCSI interfaces on a component level. Instead, devices with SCSI Parallel Interface or Fibre Channel interfaces are bridged by using iSCSI target software, external bridges, or controllers internal to the device enclosure.

Alternatively, one can virtualise disk and tape targets. Rather than representing an actual physical device, an emulated virtual device is presented. The underlying implementation can deviate drastically from the presented target as is done with Virtual Tape Library (VTL) solutions. VTLs use disk storage for storing data written to virtual tapes. As with actual physical devices, virtual targets are presented by using iSCSI target software, external bridges, or controllers internal to the device enclosure.

In the security products industry, some manufacturers use an iSCSI RAID as a target, with the initiator being either an IP-enabled encoder or camera.

Converters and bridges

Multiple systems exists which allow Fibre Channel, SCSI and SAS devices to be attached to an IP network for use via iSCSI. They can be used to allow migration from older storage technologies, access to SANs from remote servers and the linking of SANs over IP networks.

History of iSCSI

ee also

* Fibre Channel over IP (FCIP)
* Fibre Channel over Ethernet (FCoE)
* Internet Fibre Channel Protocol (iFCP)
* Internet Storage Name Service (iSNS)
* Service Location Protocol
* ATA-over-Ethernet (AoE)
* HyperSCSI SCSI over Ethernet frames instead of IP (as iSCSI is)
* ISCSI Extensions for RDMA (iSER)

References

External links

RFCs

* RFC 3720 - Internet Small Computer Systems Interface (iSCSI)
* RFC 3721 - Internet Small Computer Systems Interface (iSCSI) Naming and Discovery
* RFC 3722 - String Profile for Internet Small Computer Systems Interface (iSCSI) Names
* RFC 3723 - Securing Block Storage Protocols over IP
* RFC 3347 - Small Computer Systems Interface protocol over the Internet (iSCSI) Requirements and Design Considerations
* RFC 3783 - Small Computer Systems Interface (SCSI) Command Ordering Considerations with iSCSI
* RFC 3980 - T11 Network Address Authority (NAA) Naming Format for iSCSI Node Names
* RFC 4018 - Finding Internet Small Computer Systems Interface (iSCSI) Targets and Name Servers by Using Service Location Protocol version 2 (SLPv2)
* RFC 4173 - Bootstrapping Clients using the Internet Small Computer System Interface (iSCSI) Protocol
* RFC 4544 - Definitions of Managed Objects for Internet Small Computer System Interface (iSCSI)
* RFC 4850 - Declarative Public Extension Key for Internet Small Computer Systems Interface (iSCSI) Node Architecture
* RFC 4939 - Definitions of Managed Objects for iSNS (Internet Storage Name Service)
* RFC 5048 - Internet Small Computer System Interface (iSCSI) Corrections and Clarifications
* RFC 5047 - DA: Datamover Architecture for the Internet Small Computer System Interface (iSCSI)
* RFC 5046 - Internet Small Computer System Interface (iSCSI) Extensions for Remote Direct Memory Access (RDMA)

Other links

* [http://www.thefutureofstorage.com An open discussion on iSCSI as the potential future of storage]
* [http://prefetch.net/articles/solarisiscsi.html An introduction to the Solaris iSCSI stack]
* [http://linux-iscsi.org/index.php/Main_Page Linux iSCSI]
* [http://picquelle.blogspot.com Picquelle Report (iSCSI Standards & 10GbE Ratified)]
* [http://www.isecpartners.com/files/iSEC-iSCSI-Security.BlackHat.pdf "iSCSI: Insecure SCSI". A talk on iSCSI security given at the BlackHat Security Conference]
* [ftp://ftp.netbsd.org/pub/NetBSD/misc/agc/HOWTO-iSCSI-target.txt NetBSD iSCSI Target HOWTO]
* [ftp://ftp.netbsd.org/pub/NetBSD/misc/agc/HOWTO-iSCSI-initiator.pdf NetBSD iSCSI Initiator WindowsXP HOWTO]
* [http://www.nge.com.au/index.php?next_page=res/tech_articles/iscsi_enterprise_target_ubuntu_6.06_LTS.php Setting up iSCSI Enterprise Target on Ubuntu 6.06LTS Server]
* [http://www.microsoft.com/WindowsServer2003/technologies/storage/iscsi/default.mspx Microsoft Windows Server 2003 iSCSI Technologies]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • iSCSI — (internet Small Computer System Interface) ist ein Verfahren, welches die Nutzung des SCSI Protokolls über TCP ermöglicht. Wie beim gewöhnlichen SCSI gibt es einen Controller (Initiator), der die Kommunikation steuert. Die Speichergeräte… …   Deutsch Wikipedia

  • ISCSI — (internet Small Computer System Interface) ist ein Verfahren, welches die Nutzung des SCSI Protokolls über TCP ermöglicht. Wie beim gewöhnlichen SCSI gibt es einen Controller (Initiator), der die Kommunikation steuert. Die Speichergeräte… …   Deutsch Wikipedia

  • ISCSI — Протокол iSCSI (Internet Small Computer System Interface) это протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами. iSCSI описывает: Транспортный… …   Википедия

  • iSCSI — (Abreviatura de Internet SCSI) es un estándar que permite el uso del protocolo SCSI sobre redes TCP/IP. iSCSI es un protocolo de la capa de transporte definido en las especificaciones SCSI 3. Otros protocolos en la capa de transporte son SCSI… …   Wikipedia Español

  • iSCSI — (англ. Internet Small Computer System Interface)  протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами. iSCSI описывает: Транспортный протокол… …   Википедия

  • ISCSI — (Internet SCSI) es el resultado de la fusión entre la tecnología SCSI tradicionalmente empleada en SAN (Storage Area Network) y la de redes basada en la pila de protocolos TCP/IP. Este estándar agrupa los comandos SCSI en paquetes Ethernet y es… …   Enciclopedia Universal

  • iSCSI — Pile de protocoles iSCSI: comparaison entre l aggrégat (à gauche), le multipath actif/passif (au milieu) et actif/actif (à droite) iSCSI (internet SCSI) est un protocole de la couche application permettant le transport de commandes SCSI sur un… …   Wikipédia en Français

  • ISCSI — Internet Small Computer System Interface iSCSI (internet SCSI) est un protocole de la couche application permettant le transport de commandes SCSI sur un réseau TCP/IP. Sommaire 1 Principales caractéristiques 2 Historique 2.1 iSCSI Software… …   Wikipédia en Français

  • ISCSI — abbr. Internet Small Computer Systems Interface (SCSI, SAN, IETF) Syn: iSCSI …   United dictionary of abbreviations and acronyms

  • iSCSI — abbr. Internet Small Computer Systems Interface (SCSI, SAN, IETF) Syn: ISCSI …   United dictionary of abbreviations and acronyms

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”