Articulo de referencia

iSCSI

Interfaz de sistemas de computadoras pequeñas de Internet ( iSCSI ; / aɪˈskʌzi / ) iSCSI ( protocolo de Internet para redes de almacenamiento ) es un el Protocolo de Internet pa...

Interfaz de sistemas de computadoras pequeñas de Internet ( iSCSI ; / aɪˈskʌzi / )iSCSI ( protocolo de Internet para redes de almacenamiento ) es unel Protocolo de Internetpara conectar instalaciones de almacenamiento de datos. iSCSI proporcionaaccesoa nivel de bloquealos dispositivos de almacenamientomediante la transmisiónSCSIa través de unaTCP/IP. iSCSI facilita la transferencia de datos a través deintranetsy la gestión del almacenamiento a larga distancia. Puede utilizarse para transmitir datos a través deredes de área local(LAN),redes de área amplia(WAN) oInternet, y permite el almacenamiento y la recuperación de datos independientemente de la ubicación.

El protocolo permite a los clientes (llamados iniciadores ) enviar comandos SCSI ( CDB ) a dispositivos de almacenamiento ( destinos ) en servidores remotos. Es un protocolo de red de área de almacenamiento (SAN), que permite a las organizaciones consolidar el almacenamiento en matrices de almacenamiento mientras proporciona a los clientes (como servidores de bases de datos y web ) la ilusión de discos SCSI conectados localmente. [ 1 ] Compite principalmente con Fibre Channel , pero a diferencia del Fibre Channel tradicional que normalmente requiere cableado dedicado, [ a ] ​​iSCSI puede ejecutarse a largas distancias utilizando la infraestructura de red existente. [ 2 ] iSCSI fue desarrollado por IBM y Cisco en 1998 y presentado como borrador de estándar en marzo de 2000. [ 3 ]

Conceptos

In essence, iSCSI allows two hosts to negotiate and then exchange SCSI commands using Internet Protocol (IP) networks. By doing this, iSCSI takes a popular high-performance local storage bus and emulates it over a wide range of networks, creating a storage area network (SAN). Unlike some SAN protocols, iSCSI requires no dedicated cabling; it can be run over existing IP infrastructure. As a result, iSCSI is often seen as a low-cost alternative to Fibre Channel, which requires dedicated infrastructure except in its FCoE (Fibre Channel over Ethernet) form. However, the performance of an iSCSI SAN deployment can be severely degraded if not operated on a dedicated network or subnet (LAN or VLAN), due to competition for a fixed amount of bandwidth.[4]

Although iSCSI can communicate with arbitrary types of SCSI devices, system administrators almost always use it to allow servers (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, as the storage itself is no longer tied to a particular server. In a SAN environment, a server can be allocated a new disk volume without any changes 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.

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:

A software initiator uses code to implement iSCSI. Typically, this happens in a kernel-residentdevice driver that uses the existing network card (NIC) and network stack to emulate SCSI devices for a computer by speaking the iSCSI protocol. Software initiators are available for most popular operating systems and are the most common method of deploying iSCSI.

Un iniciador de hardware utiliza hardware dedicado, generalmente en combinación con firmware que se ejecuta en dicho hardware, para implementar iSCSI. Un iniciador de hardware reduce la sobrecarga del procesamiento de iSCSI y TCP , así como las interrupciones de Ethernet , y por lo tanto puede mejorar el rendimiento de los servidores que utilizan iSCSI. Un adaptador de bus de host iSCSI (más comúnmente, HBA) implementa un iniciador de hardware. Un HBA típico se presenta como una combinación de un controlador de interfaz de red Ethernet Gigabit (o 10 Gigabit) , algún tipo de tecnología de motor de descarga TCP/IP (TOE) y un adaptador de bus SCSI, que es como lo ve el sistema operativo. Un HBA iSCSI puede incluir una ROM de opción PCI para permitir el arranque desde una SAN iSCSI.

Un motor de descarga iSCSI , o tarjeta iSOE , ofrece una alternativa a una HBA iSCSI completa. Una iSOE "descarga" las operaciones del iniciador iSCSI para esta interfaz de red específica del procesador del host, liberando ciclos de CPU para las aplicaciones principales del host. Las HBA iSCSI o las iSOE se utilizan cuando la mejora adicional del rendimiento justifica el gasto adicional de usar una HBA para iSCSI, [ 5 ] en lugar de usar un cliente iSCSI basado en software (iniciador). La iSOE puede implementarse con servicios adicionales, como el motor de descarga TCP (TOE), para reducir aún más el uso de CPU del servidor host.

Objetivo

La especificación iSCSI se refiere a un recurso de almacenamiento ubicado en un servidor iSCSI (más generalmente, una de las muchas instancias potenciales de nodos de almacenamiento iSCSI que se ejecutan en ese servidor) como un destino .

Un destino iSCSI suele ser un dispositivo de almacenamiento de disco duro dedicado conectado a la red, pero también puede ser un ordenador de uso general, ya que, al igual que con los iniciadores, existe software para proporcionar un destino iSCSI para la mayoría de los sistemas operativos más utilizados.

Los escenarios de implementación comunes para un destino iSCSI incluyen:

Matriz de almacenamiento

En un centro de datos o entorno empresarial, un destino iSCSI suele residir en una gran matriz de almacenamiento. Estas matrices pueden ser hardware estándar con implementaciones iSCSI basadas en software libre , o productos comerciales como StorTrends , Pure Storage , HP StorageWorks , EqualLogic , Tegile Systems , Nimble Storage , la familia IBM Storwize , Isilon , NetApp Filer , Dell EMC , Kaminario , NS-series, CX4, VNX, VNXe, VMAX, Hitachi Data Systems HNAS o Pivot3 vSTAC.

A storage array usually provides distinct iSCSI targets for numerous clients.[6]

Software target

Nearly all modern mainstream server operating systems (such as BSD, Linux, Solaris or Windows Server) can provide iSCSI target functionality, either as a built-in feature or with supplemental software. Some specific-purpose operating systems implement iSCSI target support.

Logical unit number

In SCSI terminology, LU stands for logical unit, which is specified by a unique logical unit number. A LUN represents an individually addressable (logical) SCSI device that is part of a physical SCSI device (target). 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 connection that emulates a connection to 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 subsets 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.

Network booting

For general data storage on an already-booted computer, any type of generic network interface may be used to access iSCSI devices. However, a generic consumer-grade network interface is not able to boot a diskless computer from a remote iSCSI data source. Instead, it is commonplace for a server to load its initial operating system from a TFTP server or local boot device, and then use iSCSI for data storage once booting from the local device has finished.

Se puede configurar un servidor DHCP independiente para ayudar a las interfaces equipadas con capacidad de arranque de red a arrancar a través de iSCSI. En este caso, la interfaz de red busca un servidor DHCP que ofrezca una imagen de arranque PXE o bootp . [ 7 ] Esto se utiliza para iniciar el proceso de arranque remoto iSCSI, utilizando la dirección MAC de la interfaz de red de arranque para dirigir el ordenador al destino de arranque iSCSI correcto. A continuación, se puede utilizar un enfoque solo de software para cargar un pequeño programa de arranque que, a su vez, puede montar un destino iSCSI remoto como si fuera una unidad SCSI local y luego iniciar el proceso de arranque desde dicho destino iSCSI. Esto se puede lograr utilizando una ROM de arranque del Entorno de Ejecución de Prearranque (PXE) existente, que está disponible en muchos adaptadores Ethernet cableados. El código de arranque también se puede cargar desde un CD/DVD, disquete (o imagen de disquete) y almacenamiento USB, o puede reemplazar el código de arranque PXE existente en adaptadores que se pueden reprogramar. [ 8 ] El software gratuito más popular que ofrece soporte para arranque iSCSI es iPXE . [ 9 ]

La mayoría de los controladores Ethernet de Intel para servidores admiten el arranque iSCSI. [ 10 ]

Direccionamiento

iSCSI utiliza TCP (normalmente los puertos TCP 860 y 3260) para el protocolo en sí, con nombres de nivel superior que se utilizan para direccionar los objetos dentro del protocolo. Los nombres especiales hacen referencia tanto a los iniciadores como a los destinos de iSCSI. iSCSI proporciona tres formatos de nombres:

Nombre cualificado iSCSI (IQN)
Formato: El nombre calificado iSCSI está documentado en el RFC 3720, con ejemplos adicionales de nombres en el RFC 3721. En resumen, los campos son:
  • iqn literal (nombre calificado iSCSI)
  • fecha (aaaa-mm) en que la autoridad de nomenclatura tomó posesión del dominio
  • Nombre de dominio invertido de la autoridad (por ejemplo, org.alpinelinux, com.example, to.yp.cr)
  • Opcional: ":" que antepone un nombre de destino de almacenamiento especificado por la autoridad de nomenclatura.
Del RFC: [ 11 ]
Identificador Único Extendido (EUI)
Formato: eui.{dirección EUI de 64 bits} (ej. eui.02004567A425678D)
Autoridad de direcciones de red T11 (NAA)
Formato: naa.{Identificador NAA de 64 o 128 bits} (por ejemplo naa.52004567BA64678D)

Las direcciones con formato IQN son las más comunes. Se califican con una fecha (aaaa-mm) porque los nombres de dominio pueden caducar o ser adquiridos por otra entidad.

La autoridad de registro del IEEE proporciona EUI de acuerdo con el estándar EUI-64. NAA forma parte de OUI, que también proporciona la autoridad de registro del IEEE. Los formatos de nombres NAA se añadieron a iSCSI en el RFC 3980 para garantizar la compatibilidad con las convenciones de nomenclatura utilizadas en las tecnologías de almacenamiento Fibre Channel y Serial Attached SCSI (SAS).

Por lo general, un participante iSCSI se puede definir mediante tres o cuatro campos:

  1. Nombre de host o dirección IP (por ejemplo, "iscsi.example.com")
  2. Número de puerto (por ejemplo, 3260)
  3. Nombre iSCSI (por ejemplo, el IQN "iqn.2003-01.com.ibm:00.fcd0ab21.shark128")
  4. Un secreto CHAP opcional (por ejemplo, "secretsarefun")

iSNS

Los iniciadores iSCSI pueden localizar los recursos de almacenamiento adecuados mediante el protocolo iSNS ( Internet Storage Name Service ). En teoría, iSNS proporciona a las SAN iSCSI el mismo modelo de gestión que a las SAN Fibre Channel dedicadas. En la práctica, los administradores pueden cumplir muchos objetivos de implementación de iSCSI sin utilizar iSNS.

Seguridad

Autenticación

Los iniciadores y destinos de iSCSI verifican su identidad entre sí mediante CHAP , que incluye un mecanismo para evitar que las contraseñas en texto plano se transmitan por la red. Por sí solo, CHAP es vulnerable a ataques de diccionario , suplantación de identidad y ataques de reflexión . Si se siguen cuidadosamente, las mejores prácticas para usar CHAP en iSCSI reducen la superficie de ataque y mitigan los riesgos. [ 12 ]

Además, al igual que todos los protocolos basados ​​en IP, IPsec puede operar en la capa de red. El protocolo de negociación iSCSI está diseñado para admitir otros esquemas de autenticación, aunque los problemas de interoperabilidad limitan su implementación.

Aislamiento de red lógica

Para garantizar que solo los iniciadores válidos se conecten a las matrices de almacenamiento, los administradores suelen ejecutar iSCSI únicamente a través de redes de canal secundario lógicamente aisladas. En esta arquitectura de implementación, solo los puertos de administración de las matrices de almacenamiento están expuestos a la red interna de uso general, y el protocolo iSCSI se ejecuta sobre segmentos de red dedicados o VLAN . Esto reduce los problemas de autenticación; los usuarios no autorizados no tienen acceso físico a iSCSI y, por lo tanto, no pueden comunicarse con las matrices de almacenamiento. Sin embargo, también crea un problema de confianza transitiva , ya que un único host comprometido con un disco iSCSI puede utilizarse para atacar los recursos de almacenamiento de otros hosts.

aislamiento de la red física

While iSCSI can be logically isolated from the general network using VLANs only, it is still no different from any other network equipment and may use any cable or port as long as there is a completed signal path between source and target. Just a single cabling mistake by a network technician can compromise the barrier of logical separation, and an accidental bridging may not be immediately detected because it does not cause network errors.

In order to further differentiate iSCSI from the regular network and prevent cabling mistakes when changing connections, administrators may implement self-defined color-coding and labeling standards, such as only using yellow-colored cables for the iSCSI connections and only blue cables for the regular network, and clearly labeling ports and switches used only for iSCSI.

While iSCSI could be implemented as just a VLAN cluster of ports on a large multi-port switch that is also used for general network usage, the administrator may instead choose to use physically separate switches dedicated to iSCSI VLANs only, to further prevent the possibility of an incorrectly connected cable plugged into the wrong port bridging the logical barrier.

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 the Sarbanes–Oxley Act 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:[13]

  • 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 SAN protocol without cryptographic security. IP-based security protocols, such as IPsec, can provide standards-based cryptographic protection to this traffic.

Implementations

Operating systems

The dates in the following table denote the first appearance of a native driver in each operating system. Third-party drivers for Windows and Linux were available as early as 2001, specifically for attaching IBM's IP Storage 200i appliance.[14]

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 Parallel SCSI or Fibre Channel interfaces are bridged by using iSCSI target software, external bridges, or controllers internal to the device enclosure.

Alternatively, it is possible to virtualize 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) products. 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 exist that 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. An iSCSI gateway bridges IP servers to Fibre Channel SANs. The TCP connection is terminated at the gateway, which is implemented on a Fibre Channel switch or as a standalone appliance.

See also

Notes

  1. ^Unless tunneled, such as in Fibre Channel over Ethernet or Fibre Channel over IP.
  2. ^Target available only as part of Windows Unified Data Storage Server. Target available in Storage Server 2008 (excepted Basic edition).[15] Target available for Windows Server 2008 R2 as a separate download. Windows Server 2012, 2012 R2 and 2016 have built-in Microsoft iSCSI target version 3.3.
  3. ^ abvStorage APIs Array Integration
  4. ^macOS has neither initiator nor target coming from vendor directly.

References

  1. ^Rouse, Margaret (May 2011). "iSCSI (Internet Small Computer System Interface)". SearchStorage. Retrieved 21 January 2019.
  2. ^"ISCSI SAN: Key Benefits, Solutions & Top Providers Of Storage Area Networking". Tredent Network Solutions. Archived from the original on 12 August 2014. Retrieved 3 November 2012.
  3. ^"iSCSI proof-of-concept at IBM Research Haifa". IBM. Retrieved 13 September 2013.
  4. ^"RFC 3720". www.rfc-editor.org. Retrieved May 11, 2026.{{cite web}}: CS1 maint: url-status (link)
  5. ^"Chelsio Demonstrates Next Generation 40G iSCSI at SNW Spring". chelsio.com. 2013-04-03. Retrieved 2014-06-28.
  6. ^Architecture and Dependability of Large-Scale Internet Services David Oppenheimer and David A. Patterson, Berkeley, IEEE Internet Computing, September–October 2002.
  7. ^"Chainloading iPXE". ipxe.org. Retrieved 2013-11-11.
  8. ^"Burning iPXE into ROM". ipxe.org. Retrieved 2013-11-11.
  9. ^"iPXE - Open Source Boot Firmware". ipxe.org. Retrieved 2013-11-11.
  10. ^"Intel Ethernet Controllers". Intel.com. Retrieved 2012-09-18.
  11. ^J. Satran; K. Meth; C. Sapuntzakis; M. Chadalapaka; E. Zeidner (April 2004). Internet Small Computer Systems Interface (iSCSI). Network Working Group. doi:10.17487/RFC3720. RFC3720.Obsolete. sec. 3.2.6.3.1, p. 32. Obsoleted by RFC 7143. Type "iqn." (iSCSI Qualified Name)
  12. ^J. Satran; K. Meth; C. Sapuntzakis; M. Chadalapaka; E. Zeidner (April 2004). Internet Small Computer Systems Interface (iSCSI). Network Working Group. doi:10.17487/RFC3720. RFC3720.Obsolete. sec. 8.2.1. Obsoleted by RFC 7143.
  13. ^"Protecting an iSCSI SAN". VMware. Archived from the original on 3 March 2016. Retrieved 3 November 2012.
  14. ^"IBM IP storage 200i general availability". IBM. Retrieved 13 September 2013.
  15. ^"Windows Storage Server | NAS | File Management". Microsoft. Retrieved 2012-09-18.

Further reading

  • RFC 3720 - Internet Small Computer Systems Interface (iSCSI) (obsolete)
  • RFC 3721 - Internet Small Computer Systems Interface (iSCSI) Naming and Discovery (updated)
  • RFC 3722 - String Profile for Internet Small Computer Systems Interface (iSCSI) Names
  • RFC 3723 - Securing Block Storage Protocols over IP (Scope: The use of IPsec and IKE to secure iSCSI, iFCP, FCIP, iSNS and SLPv2.)
  • 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 (obsolete)
  • 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 (obsolete)
  • RFC 4939 - Definitions of Managed Objects for iSNS (Internet Storage Name Service)
  • RFC 5048 - Internet Small Computer System Interface (iSCSI) Corrections and Clarifications (obsolete)
  • 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)
  • RFC 7143 – Internet Small Computer System Interface (iSCSI) Protocol (consolidated)
Retrieved from "https://en.wikipedia.org/w/index.php?title=ISCSI&oldid=1356964719"