You are on page 1of 6

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

1 - Introduccin 2 - Storage Networking 2.1 -Variantes del Storage Networking 2.1.1 - DAS: Direct Attached Storage 2.1.2 - SAN: Storage Area Networks 2.1.3 - NAS: Network Attached Storage 2.1.4 - NAS Gateways 2.1.5 SANergy 3 El protocolo iSCSI 3.1 - SCSI 3.2 - ISCSI 3.3 - Arquitectura de red iSCSI 3.4 - Modelo del protocolo iSCSI 3.5 Direcciones y nombres iSCSI 3.6 - Mantenimiento de sesiones 3.7 Manejo de errores 3.8 - Seguridad en iSCSI 4 - Conclusiones 5 - Bibliografa

Francisco Matas Albaladejo

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

1 - Introduccin
El almacenamiento es una parte esencial de la infraestructura de cualquier empresa, en una red con aplicaciones cliente/servidor y otras aplicaciones especificas la mayor parte del tiempo que los servidores no funcionan es debido a problemas con el almacenamiento, las prdidas de productividad debido a problemas relacionados con el almacenamiento son el problema nmero 1.

y datos ser directamente transferidos entre dispositivos de almacenamiento y maquinas cliente, saltndose el tradicional cuello de botella del servidor y el control de la red. Al separarse control y datos se incrementa la flexibilidad y el rendimiento. Los procesos de gestin del almacenamiento pueden operar en segundo plano y continuamente, sin entrar en conflicto con el trfico de la red, y el rendimiento de esta se mantiene e incluso aumenta.

2.1 - Variantes del Storage Networking


Las distintas variantes de redes de almacenamiento son las siguientes: Para solucionar estos problemas aparecieron las redes de almacenamiento y diversos protocolos de transporte de comandos de entrada/salida para permitir el intercambio eficiente de informacin. Este documento intentar dar una visin general de lo que se entiende por una red de almacenamiento y se hablar con un poco ms de detalle del protocolo iSCSI, que es el que se espera que acabe imponindose en el mercado.

2.1.1 - DAS: Direct Attached Storage

2 - Storage Networking
Storage Networking es una tecnologa emergente del trabajo realizado en el entorno de computacin de alto rendimiento llamado High Performance Data System por el IEEE, y fue originalmente desarrollada para obtener una red de altas prestaciones para la transferencia de datos. Con Storage Networking se establece una red dedicada de alto rendimiento para conectar directamente los dispositivos de almacenamiento, lo que permite a los archivos 3

El almacenamiento (normalmente discos o cintas), est directamente conectado con un cable al ordenador, un nico dispositivo de almacenamiento es conectado a un nico ordenador (host) o a veces a dos hosts en un pequeo cluster. Para un procesador

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

aislado como un pc de sobremesa , un porttil, o el servidor de una empresa pequea, el almacenamiento normalmente reside dentro del propio ordenador como una forma simple de DAS. Las peticiones de entrada/salida (tambin llamadas protocolos o comandos) acceden a los dispositivos directamente.

tiempo y experiencia, lo que hace razonable pensar que en muy poco tiempo Ethernet desplazar a Fibre Channel.

2.1.3 - NAS: Network Attached Storage


Un NAS es un dispositivo que reside en una red que puede ser compartida con trfico que no sea de almacenamiento. La red suele ser Ethernet, pero podra ser cualquier otra que soportase los protocolos basados en IP que un NAS usa.

2.1.2 - SAN: Storage Area Networks

El almacenamiento reside en una red dedicada para los dispositivos de almacenamiento y los procesadores que acceden a estos dispositivos. Como en un DAS las peticiones de entrada/salida acceden a los dispositivos directamente. Las peticiones de entrada/salida en una SAN se llaman block I/Os, porque como en discos conectados directamente a los ordenadores, los comandos de entrada/salida de lectura y escritura identifican un dispositivo especfico (unidad de disco o de cinta), y en el caso de disco especifica un bloque (sector) del disco. El concepto de SAN no depende de la red que haya por debajo, actualmente la mayora de SANs utilizan Fibre Channel como medio para conseguir una conexin cualquiera-a-cualquiera para procesadores y almacenamiento en esta red, pero Ethernet y el protocolo de entrada/salida iSCSI (que ser descrito ms adelante) estn rpidamente ganando terreno a partir de 2001 debido al aumento de prestaciones de Ethernet con la aparicin de Gigabite Ethernet. Se espera que iSCSI y Ethernet acaben eclipsando totalmente a Fibre Channel,. La mxima velocidad alcanzable actualmente por la capa fsica Fibre Channel es de 2.5 Gbps, y el grupo de trabajo IEEE 802.3ae ya est hablando de 100 Gbps para Ethernet. Adems Ethernet es ms barato y ms simple, el nico inconveniente que tiene est en el lado del software y es que de momento el protocolo iSCSI sobre Ethernet tiene un rendimiento menor que SCSI sobre Fibre Channel, pero se espera que mejore con

En contraste con block I/O usado por DAS y SAN, las peticiones I/O de NAS son llamadas file I/Os. Una file I/O es una peticin de un tipo de nivel ms alto, en esencia, especifica el archivo a ser accedido, un desplazamiento dentro de ese archivo y un nmero de bytes a leer o escribir a partir de ese desplazamiento. Dentro del NAS un sistema operativo sabr dnde esta cada archivo en disco y traducir esta peticin file I/O a una peticin block I/O que la satisfaga. Un NAS nunca puede ser conectado directamente a un ordenador, siempre se hace mediante una red. Un NAS es normalmente ms facil de instalar y mantener que un SAN, normalmente se pueden poner en una LAN/WAN ya existente muy fcilmente mientras que un SAN conlleva un trabajo de planificacin muy importante, aunque normalmente son ms rpidos.

2.1.4 - NAS Gateways

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

Un NAS Gateway da la funcionalidad de un NAS convencional, pero sin almacenamiento integrado. El almacenamiento en disco est unido externamente al gateway y acepta peticiones file I/O usando el protocolo NFS o CIFS y las traduce a peticiones SCSI block I/O para acceder a los discos conectados externamente.

3.2 iSCSI
El protocolo iSCSI es un Internet draft standard definido para permitir que los comandos SCSI sean transportados sobre el protocolo TCP/IP . Los Internet drafts son documentos desarrollados por el Internet Engineering Task Force (IETF) junto con grupos de trabajo. Cisco e IBM desarrollaron un draft standard para iSCSI en enero de 2000 para su estandarizacin, que qued bien definido al final de 2001. Se espera que dentro de un ao (2003) se convierta en un RFC. ISCSI permite a los hosts realizar operaciones de entrada/salida de bloques de datos con una gran variedad de dispositivos. Los dispositivos target pueden tener dispositivos de disco, cinta, dispositivos pticos de almacenamiento, escaners, impresoras ... La conexin del SCSI tradicional con un host se hace con cableado paralelo, que tiene limitaciones en cuanto a la distancia y los dispositivos soportados. Las redes de almacenamiento sobre IP basadas en capas de transporte gigabit solucionan los problemas de distancia, rendimiento y escalabilidad de las implementaciones de SCSI paralelo. 3.3 Arquitectura de red iSCSI

2.1.5 SANergy

SANergy es un software de IBM y Tivoli que proporciona compartir archivos como con NAS, pero ahora los datos son enviados sobre la SAN en lugar de la LAN para aumentar el rendimiento. Soporta los protocolos que un NAS convencional soporta pero con mayor rendimiento al no requerir un procesador dedicado NAS que haga de front-end al almacenamiento en disco.

3. - El protocolo iSCSI 3.1 SCSI


Para describir iSCSI primero hay que ver en qu consiste SCSI. El Small Computer Systems Interface (SCSI) es una popular familia de protocolos para comunicaciones con dispositivos de entrada/salida, especialmente dispositivos de almacenamiento. Hay dos tipos de dispositivos en el protocolo SCSI, los SCSI Initiators (iniciadores, clientes) que son los que inician la comunicacin y los Target (servidores, objetivos), que son los que responden. Un objetivo es una coleccin de unidades lgicas (LU), normalmente del mismo tipo y directamente direccionables. Un LU es lo que ejecuta un comando. La estructura usada para comunicar un comando desde una aplicacin cliente a un servidor de dispositivos es llamado Command Descriptor Block (CDB). Un comando SCSI o una unin de varios es denominado task. La ejecucin de comandos SCSI se realiza en dos fases, la fase de datos en la que los datos viajan de un initiator a un target cuando se trata de un comando WRITE o de un target a un initiator como sucede en el comando READ, y la fase de estado, donde el target devuelve el estado final de la operacin. La respuesta de estado termina un comando SCSI o tarea.

La arquitectura SCSI est basada en un modelo cliente/servidor e iSCSI tiene esto en cuenta para conseguir la funcionalidad del almacenamiento sobre redes TCP/IP . El cliente es normalmente un host como un servidor de ficheros que hace peticiones de lectura o escritura de datos. El servidor es un dispositivo como un array de discos que responde las peticiones de los clientes. Los servidores tienen unidades lgicas (LUNs) que procesan las peticiones de los iniciadores o clientes. Los comandos procesados por una unidad lgica estn contenidos en un Command Descriptor Block (CDB), que es creado por un host. El CBD enviado a una unidad lgica determinada comienza la transferencia de los bloques pedidos del objetivo al iniciador, con un estado que indicar la terminacin de la peticin. La principal misin de iSCSI es encapsular y distribuir las transacciones CDB entre iniciadores y objetivos sobre redes TCP/IP. En la figura 1 se puede ver una red iSCSI de almacenamiento IP compuesta por iniciadores (servidores de ficheros) y objetivos (arrays de discos).

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

Cada host y cada dispositivo de almacenamiento tiene un interfaz Gigabit Ethernet y soporta la pila del protocolo iSCSI, esto hace que los medios de almacenamiento aparezcan en la red como cualquier otro dispositivo IP. Para que los iniciadores puedan descubrir los recursos de almacenamiento se utiliza el protocolo Internet Storage Name Service (iSNS), en el ejemplo un iniciador iSCSI pregunta a un servidor iSNS las ips de los posibles objetivos y luego establece conexiones TCP/IP con ellos.

Igual que SCSI, iSCSI implementa un modelo cliente/servidor entre iniciadores y objetivos, que en este caso son miembros de una red IP. Clientes y servidores tienen una identidad en la red que es equivalente a la direccin IP que tienen asignada. Una identidad de red puede contener uno o ms nodos iSCSI.

3.4 Modelo del protocolo iSCSI


La capa iSCSI hace de interface con el conjunto de instrucciones SCSI del sistema operativo. La capa iSCSI incluye comandos SCSI encapsulados y capacidad de informar sobre los datos y el estado. Cuando el sistema operativo o una aplicacin requiere una operacin el CDB SCSI debe ser encapsulado para su transporte sobre un enlace serie gigabit y llevado al destino u objetivo. El protocolo iSCSI monitorizar la trasferencia del bloque de datos y validar la consecucin de la operacin de entrada/salida. Entre un iniciador y un objetivo puede haber muchas conexiones TCP concurrentes y por tanto varias transacciones entre ellos.

Un nodo iSCSI identifica a un dispositivo SCSI dentro de una entidad de red accesible a travs de la red. Un portal de red es la combinacin de las direcciones de red asignadas a los nodos y sus puertos TCP. Cada nodo iSCSI es identificado por un nico nombre iSCSI que puede ser de hasta 255 bytes. La combinacin de una direccin IP y un puerto TCP se genera una direccin nica de red para un dispositivo iSCSI. Un nodo tiene por tanto un nombre iSCSI y una direccin, lo que hace que si el nodo es cambiado de lugar y por tanto tambin su direccin, sea fcil encontrarlo gracias a su nombre que no cambia. La asignacin de nombres se hace por software y por tanto es independiente del hardware usado. El nombre iSCSI est compuesto por tres partes: un especificador de tipo, la autoridad encargada de dar los nombres y un identificador nico dado por esta autoridad. Adems de los nombres, iSCSI tiene la opcin de hacer alias de nombres. Los nombres y alias iSCSI siguen la codificacin de texto UTF-8, que les permite incluir caracteres internacionales adems de ASCII. Un ejemplo de nombre iSCSI podra ser iscsi.com.acme.sn.8675309. Descubrir la localizacin usando nombres iSCSI puede hacerse usando iSNS u otros localizadores.

Cmo funciona iSCSI? El driver SCSI construye un CDB con las peticiones realizadas por la aplicacin y los enva a la capa de transporte iSCSI. El driver SCSI tambin recibe CDBs de la capa iSCSI y envia los datos a la capa de aplicacin. La capa de transporte iSCSI encapsula los CDBs en PDUs (iSCSI Protocol Data Unit) y los enva a la capa de transporte TCP. En una lectura la capa iSCSI extrae los CDBs de los PDUs que recibe de la capa TCP y enva los CDBs a la capa genrica SCSI.

3.6 Mantenimiento de sesiones iSCSI


El protocolo iSCSI establece sesiones de comunicacin entre initiators y targets, as como mtodos para que se autentifiquen entre ellos. Una sesin iSCSI puede contener una o ms conexiones TCP y suministra mtodos de recuperacin si la conexin falla. Una sesin entre dos entidades iSCSI debe ser iniciada a travs de un proceso de login en el que se negocian varios parmetros varibles entre ellos. Si el login es rechazado la conexin TCP se rompe. Una entidad de red puede tener ms de un portal de red, adems de poder contener tambin varios nodos iSCSI. A cada sesin iniciada entre dos nodos se le da un identificador ID. Un login de un iniciador sobre un objetivo incluira su nombre iSCSI y un identificador ID de la sesin del iniciador (ISID), cuya combinacin dar una identificacin nica en su entidad de red. Cuando el login se completa, la sesin iSCSI 10

3.5 - Direcciones y nombres iSCSI


iSCSI proporciona a Initiators y Targets un identificador o nombre nico y adems tiene un mtodo para encontrarse entre ellos.

Storage Networking y el almacenamiento sobre internet: iSCSI

Storage Networking y el almacenamiento sobre internet: iSCSI

deja la fase de login y entra en una fase de posibilidades completas para transacciones SCSI normales. Los comandos y las respuestas fluirn por la conexin TCP. Una operacin iSCSI es un intercambio de comandos y respuestas entre iniciador y objetivo. Para enviar comandos CDB se usan PDUs (iSCSI Protocol Data Units). El estado del transporte de datos SCSI es monitoriz ado por secuencias de estado y datos y el tamao de los campos buffer offset/tamao de la trasnferencia en el PDU. Las sesiones iSCSI permanecen abiertas esperando comandos SCSI adicionales de las capas ms altas de aplicacin. El comando de logout de iSCSI suministra los codigos de terminacin de sesin o conexiones dentro de una sesin, pudindose usar los CID para especificar qu conexin terminar.

2. Demystifying DAS, SAN, NAS, NAS Gateways, Fibre Channel, and iSCSI. (IBM) 3. iSCSI Technical White Paper.(NISHAN SYSTEMS) 4. iSCSI Protocol Concepts and Implementation.(CISCO SYSTEMS) Los 3 documentos anteriores se pueden encontrar en formato pdf en la web http://www.diskdrive.com 5. InfoStor Magazine - Storage Device News and Trends http://is.pennnet.com/Articles/Article_Display.cfm?Section=Archives&Subsection=Dis play&ARTICLE_ID=101411 6. Internet Draft draft-ietf-ips-iSCSI-12.txt http://www.ietf.org/

3.7 Manejo de errores en iSCSI


El SCSI tradicional asume un entorno relativamente libre de errores. En iSCSI iniciadores y objetivos deben tener la capacidad de mantener un buffer con comandos y respuestas hasta que estos sean reconocidos, indicando que han sido recibidos y pueden aceptar ms. Adems los dispositivos iSCSI deben ser capaces de selectivamente reconstruir los PDUs perdidos o corruptos para su retransmisin.. La jerarqua de deteccin de errores y recuperacin incluye, en el nivel ms bajo, deteccin y recuperacin dentro de una tarea SCSI, y la retransmisin de los PDUs perdidos o corruptos. En la siguiente capa la conexin TCP que transporta la tarea puede sufrir un error o fallo, en este caso se recuperar la conexin mediante un comando de reinicio. Un PDU individual puede tener errores en algn campo o puede que sea inconsistente o le falte algo, a esto se le llama error de formato y genera una respuesta Reject iSCSI PDU, que contendr un indicador de desplazamiento hasta el primer byte errneo de la cabecera PDU. El comando para pedir la retransmisin de los PDUs perdidos es el SNACK PDU.

3.8 - Seguridad en iSCSI


Al estar en un entorno IP, las especificaciones de iSCSI permiten usar los mtodos de seguridad usados en IP.

4.- Conclusiones
Con el aumento de prestaciones de Ethernet, el protocolo iSCSI y los SANs basados en Ethernet se acabarn imponiendo porque iSCSi nos permite acceso universal a dispositivos de almacenamiento o a SANs sobre redes TCP/IP basadas en Ethernet, siendo compatible con las infraestructuras Ethernet IP ya existentes, y nos permite mantener las ventajas de las redes IP en cuanto a mantenimiento, escalabilidad, seguridad y coste.

5. - Bibliografa
1. White Paper - Storage Networking http://www.networkbuyersguide.com/search/105112.htm

11

12

You might also like