SCSI
La interfaz de sistema de computadora pequeña (SCSI, SKUZ-ee) es un conjunto de estándares para conectar y transferir datos físicamente entre computadoras y dispositivos periféricos. Los estándares SCSI definen comandos, protocolos, interfaces eléctricas, ópticas y lógicas. El estándar SCSI define conjuntos de comandos para tipos de dispositivos periféricos específicos; la presencia de "desconocido" como uno de estos tipos significa que, en teoría, se puede usar como una interfaz para casi cualquier dispositivo, pero el estándar es muy pragmático y está dirigido a requisitos comerciales. El Parallel SCSI inicial se usaba más comúnmente para unidades de disco duro y unidades de cinta, pero puede conectar una amplia gama de otros dispositivos, incluidos escáneres y unidades de CD, aunque no todos los controladores pueden manejar todos los dispositivos.
El estándar SCSI ancestral, X3.131-1986, generalmente conocido como SCSI-1, fue publicado por el comité técnico X3T9 del Instituto Nacional Estadounidense de Estándares (ANSI) en 1986. SCSI-2 fue publicado en agosto de 1990 como X3.T9.2/86-109, con más revisiones en 1994 y posterior adopción de una multitud de interfaces. Los refinamientos adicionales han dado como resultado mejoras en el rendimiento y soporte para una capacidad de almacenamiento de datos cada vez mayor.
Historia
Interfaz paralela
SCSI se deriva de "SASI", la "Interfaz de sistema de Shugart Associates", desarrollada a principios de 1979 y divulgada públicamente en 1981. Se considera que Larry Boucher es el "padre& #34; de SASI y finalmente de SCSI debido a su trabajo pionero primero en Shugart Associates y luego en Adaptec.
Un controlador SASI proporcionó un puente entre la interfaz de bajo nivel de una unidad de disco duro y una computadora host, que necesitaba leer bloques de datos. Las placas controladoras SASI eran típicamente del tamaño de una unidad de disco duro y normalmente se montaban físicamente en el chasis de la unidad. SASI, que se usó en minicomputadoras y en las primeras microcomputadoras, definió la interfaz como el uso de un conector de cinta plana de 50 pines que se adoptó como conector SCSI-1. SASI es un subconjunto totalmente compatible con SCSI-1, por lo que muchos, si no todos, los controladores SASI existentes en ese momento eran compatibles con SCSI-1.
Al menos hasta febrero de 1982, ANSI desarrolló la especificación como "SASI" y "Interfaz del sistema de Shugart Associates" sin embargo, el comité que documenta la norma no permitiría que se le pusiera el nombre de una empresa. Se dedicó casi un día completo a acordar el nombre estándar de 'Interfaz de sistema de computadora pequeña', que Boucher pretendía pronunciar 'sexy', pero Dal Allan de ENDL pronunció el nuevo acrónimo como "scuzzy" y eso se quedó.
Varias empresas, como NCR Corporation, Adaptec y Optimem, fueron las primeras en apoyar a SCSI. Se cree ampliamente que las instalaciones de NCR en Wichita, Kansas, desarrollaron el primer chip controlador SCSI de la industria; funcionó la primera vez.
El "pequeño" referencia en "interfaz de sistema de computadora pequeña" es histórico; desde mediados de la década de 1990, SCSI ha estado disponible incluso en los sistemas informáticos más grandes.
Desde su estandarización en 1986, SCSI se ha utilizado comúnmente en las líneas de computadoras Amiga, Atari, Apple Macintosh y Sun Microsystems y en los sistemas de servidor de PC. Apple comenzó a usar el ATA paralelo (PATA, también conocido como IDE) menos costoso para sus máquinas de gama baja con Macintosh Quadra 630 en 1994, y lo agregó a sus computadoras de escritorio de gama alta comenzando con el Power Macintosh G3 en 1997. Apple abandonó por completo el SCSI integrado en favor de IDE y FireWire con el Power Mac G3 (azul y blanco) en 1999, al tiempo que seguía ofreciendo un adaptador de host PCI SCSI como opción hasta el Power Macintosh Modelos G4 (Gráficos AGP). Sun cambió su gama más baja a Serial ATA (SATA). Commodore incluyó SCSI en los sistemas Amiga 3000/3000T y fue un complemento para los modelos Amiga 500/2000 anteriores. Comenzando con los sistemas Amiga 600/1200/4000, Commodore cambió a la interfaz IDE. Atari incluyó SCSI como estándar en sus modelos de computadora Atari MEGA STE, Atari TT y Atari Falcon. SCSI nunca ha sido popular en el mundo de las PC IBM de bajo precio, debido al menor costo y al rendimiento adecuado del estándar de disco duro ATA. Sin embargo, las unidades SCSI e incluso las RAID SCSI se volvieron comunes en las estaciones de trabajo de PC para la producción de video o audio.
SCSI moderna
(feminine)Versiones físicas recientes de SCSI—SCSI conectado en serie (SAS), SCSI sobre protocolo de canal de fibra (FCP) y SCSI conectado por USB (UAS)—rompen el bus SCSI paralelo tradicional y realizan la transferencia de datos a través de comunicaciones en serie mediante enlaces punto a punto. Aunque gran parte de la documentación de SCSI habla sobre la interfaz paralela, todos los esfuerzos de desarrollo modernos utilizan interfaces en serie. Las interfaces en serie tienen una serie de ventajas sobre SCSI paralelo, que incluyen velocidades de datos más altas, cableado simplificado, mayor alcance, aislamiento de fallas mejorado y capacidad de dúplex completo. La razón principal del cambio a las interfaces seriales es el problema del sesgo de reloj de las interfaces paralelas de alta velocidad, lo que hace que las variantes más rápidas de SCSI paralelo sean susceptibles a problemas causados por el cableado y la terminación.
El iSCSI no físico conserva el paradigma SCSI básico, especialmente el conjunto de comandos, casi sin cambios, mediante la integración de SCSI-3 sobre TCP/IP. Por lo tanto, iSCSI utiliza conexiones lógicas en lugar de enlaces físicos y puede ejecutarse sobre cualquier red que admita IP. Los enlaces físicos reales se realizan en capas de red inferiores, independientemente de iSCSI. Predominantemente se utiliza Ethernet que también es de naturaleza serial.
SCSI es popular en estaciones de trabajo, servidores y dispositivos de almacenamiento de alto rendimiento. Casi todos los subsistemas RAID en servidores han utilizado algún tipo de unidades de disco duro SCSI durante décadas (inicialmente SCSI paralelo, Fibre Channel provisional, recientemente SAS), aunque varios fabricantes ofrecen subsistemas RAID basados en SATA como una opción más económica. Además, SAS ofrece compatibilidad con dispositivos SATA, lo que crea una gama mucho más amplia de opciones para subsistemas RAID junto con la existencia de unidades Nearline SAS (NL-SAS). En lugar de SCSI, las computadoras de escritorio y portátiles modernas suelen utilizar interfaces SATA para unidades de disco duro internas, con NVMe sobre PCIe ganando popularidad ya que SATA puede embotellar las unidades de estado sólido modernas.
Interfaces
SCSI está disponible en una variedad de interfaces. El primero fue SCSI paralelo (también llamado SCSI Parallel Interface o SPI), que utiliza un diseño de bus paralelo. Desde 2005, SPI fue reemplazado gradualmente por Serial Attached SCSI (SAS), que utiliza un diseño en serie pero conserva otros aspectos de la tecnología. Muchas otras interfaces que no se basan en estándares SCSI completos aún implementan el protocolo de comando SCSI; otros abandonan la implementación física por completo mientras conservan el modelo arquitectónico SCSI. iSCSI, por ejemplo, utiliza TCP/IP como mecanismo de transporte, que se suele transportar a través de Gigabit Ethernet o enlaces de red más rápidos.
Las interfaces SCSI a menudo se han incluido en computadoras de varios fabricantes para su uso en los sistemas operativos Microsoft Windows, Mac OS clásico, Unix, Commodore Amiga y Linux, ya sea implementadas en la placa base o por medio de adaptadores enchufables. Con la llegada de las unidades SAS y SATA, se suspendió la provisión de SCSI paralelo en las placas base.
SCSI paralela
(feminine)Inicialmente, la interfaz paralela SCSI (SPI) era la única interfaz que usaba el protocolo SCSI. Su estandarización comenzó como un bus de 8 bits de un solo extremo en 1986, transfiriendo hasta 5 MB/s, y evolucionó hasta convertirse en un bus diferencial de bajo voltaje de 16 bits con capacidad de hasta 320 MB/s. El último estándar SPI-5 de 2003 también definió una velocidad de 640 MB/s que no se logró.
Las especificaciones de SCSI paralelo incluyen varios modos de transferencia síncrona para el cable paralelo y un modo asíncrono. El modo asíncrono es un protocolo clásico de solicitud/reconocimiento, que permite que los sistemas con un bus lento o sistemas simples también usen dispositivos SCSI. Los modos sincrónicos más rápidos se utilizan con mayor frecuencia.
Interfaces SCSI
Interfaz | Alternativa nombres | Especificación cuerpo / documento | Width (bits) | Reloj | Código de línea | Máximo | ||
---|---|---|---|---|---|---|---|---|
Mediador | Duración | Dispositivos | ||||||
Ultra-320 SCSI | Ultra-4; Fast-160 | SPI-5 (INCITS 367-2003) | 16 | 80 MHz DDR | ninguno | 320 MB/s (2560 Mbit/s) | 12 m | 16 |
SSA | Arquitectura de almacenamiento en serie | T10 / INCITS 309-1997 | serie | 200 Mbit/s | 8b10b | 20 MB/s (160 Mbit/s) | 25 m | 96 |
SSA 40 | T10 / INCITS 309-1997 | serie | 400 Mbit/s | 40 MB/s (320 Mbit/s) | 25 m | 96 | ||
Canal de fibra 1Gbit | 1GFC | T11 / X3T11/94-175v0 FC-PH Draft, Revision 4.3 | serie | 1.0625 Gbit/s | 8b10b | 98,4 MB/s (850 Mbit/s) | 500 m / 10 km | 127 (FC-AL) 224(FC-SW) |
Canal de fibra 2Gbit | 2GFC | T11 / X3T11/96-402v0 FC-PH-2, Rev 7.4 | serie | 2.125 Gbit/s | 197 MB/s (1.700 Mbit/s) | 500 m / 10 km | 127/224 | |
Canal de fibra 4Gbit | 4GFC | T11 / Proyecto INCITS 2118-D / Rev 6.10 | serie | 4.25 Gbit/s | 394 MB/s (3.400 Mbit/s) | 500 m / 10 km | 127/224 | |
Canal de fibra 8Gbit | 8GFC | T11 / Proyecto INCITS 2118-D / Rev 6.10 | serie | 8,5 Gbit/s | 788 MB/s (6.800 Mbit/s) | 500 m / 10 km | 127/224 | |
Canal de fibra 16Gbit | 16GFC | T11 / Proyecto INCITS 2118-D / Rev 6.10 | serie | 14.025 Gbit/s | 64b66b | 1,575 MB/s (13.600 Mbit/s) | 500 m / 10 km | 127/224 |
SAS 1.1 | Serial attached SCSI | T10 / INCITS 417-2006 | serie | 3 Gbit/s | 8b10b | 300 MB/s (2.400 Mbit/s) | 6 m | 16.256 |
SAS 2.1 | T10 / INCITS 478-2011 | serie | 6 Gbit/s | 600 MB/s (4.800 Mbit/s) | 6 m | 16.256 | ||
SAS 3.0 | T10 / INCITS 519 | serie | 12 Gbit/s | 1.200 MB/s (9.600 Mbit/s) | 6 m | 16.256 | ||
SAS 4.0 | T10 / INCITS 534 (proyecto) | serie | 22,5 Gbit/s | 128b150b | 2.400 MB/s (19.200 Mbit/s) | tbd | 16.256 | |
IEEE 1394-2008 | Firewire S3200, i.Link, Serial Bus Protocol (SBP) | IEEE Std. 1394-2008 | serie | 3.145728 Gbit/s | 8b10b | 315 MB/s (2.517 Mbit/s) | 4.5 m | 63 |
SCSI Express | SCSI sobre PCIe (SOP) | T10 / INCITS 489 | serie | 8 GT/s (PCIe 3.0) | 128b130b | 985 MB/s (7.877 Mbit/s) | corto, plano trasero sólo | 258 |
USB SCSI 2 | UAS-2 | T10 / INCITS 520 | serie | 10 Gbit/s (USB 3.1) | 128b132b | ~1.200 MB/s (~9,500 Mbit/s) | 3 m | 127 |
ATAPI over Parallel ATA | Interfaz de paquete ATA | T13 / NCITS 317-1998 | 16 | 33 MHz DDR | ninguno | 133 MB/s (1.064 Mbit/s) | 457 mm (18 pulgadas) | 2 |
ATAPI sobre ATA serie | serie | 6 Gbit/s | 8b10b | 600 MB/s (4.800 Mbit/s) | 1 m | 1 (15 con multiplicador de puerto) | ||
iSCSI | Interfaz del sistema informático pequeño de Internet, SCSI sobre IP | IETF / RFC 7143 | principalmente serie | aplicación y dependencia de la red | 1.187 MB/s o 1.239 MB/s | aplicación y dependencia de la red | 2128 (IPv6) | |
SRP | SCSI RDMA Protocol (SCSI over InfiniBand and similar) | T10 / INCITS 365-2002 | aplicación y dependencia de la red |
Cableado
Interfaz paralela SCSI
Los cables SCSI paralelos internos suelen ser cintas, con dos o más conectores de 50, 68 u 80 pines conectados. Los cables externos suelen estar blindados (pero es posible que no lo estén), con conectores de 50 o 68 pines en cada extremo, según el ancho de bus SCSI específico admitido. El accesorio de conector único (SCA) de 80 pines generalmente se usa para dispositivos conectables en caliente
Canal de fibra
El canal de fibra se puede utilizar para transportar unidades de información SCSI, según lo define el Protocolo de canal de fibra para SCSI (FCP). Estas conexiones son conectables en caliente y generalmente se implementan con fibra óptica.
SCSI conectado en serie
SCSI conectado en serie (SAS) utiliza un cable de alimentación y datos Serial ATA modificado.
ISCSI
iSCSI (interfaz de sistema de computadora pequeña de Internet) generalmente usa conectores y cables Ethernet como su transporte físico, pero puede ejecutarse sobre cualquier transporte físico capaz de transportar IP.
PVP
El protocolo SCSI RDMA (SRP) es un protocolo que especifica cómo transportar comandos SCSI a través de una conexión RDMA confiable. Este protocolo puede ejecutarse en cualquier transporte físico compatible con RDMA, p. InfiniBand o Ethernet cuando se utiliza RoCE o iWARP.
SCSI conectado por USB
SCSI conectado por USB permite que los dispositivos SCSI utilicen el bus serie universal.
Interfaz de automatización/accionamiento
La interfaz de automatización/unidad - Protocolo de transporte (ADT) se utiliza para conectar dispositivos de medios extraíbles, como unidades de cinta, con los controladores de las bibliotecas (dispositivos de automatización) en las que están instalados. El estándar ADI especifica el uso de RS-422 para las conexiones físicas. El estándar ADT-2 de segunda generación define iADT, el uso del protocolo ADT sobre conexiones IP (Protocolo de Internet), como por ejemplo sobre Ethernet. Los estándares de comandos de la interfaz de automatización/unidad (ADC, ADC-2 y ADC-3) definen los comandos SCSI para estas instalaciones.
Protocolo de comando SCSI
Además de muchas implementaciones de hardware diferentes, los estándares SCSI también incluyen un amplio conjunto de definiciones de comandos. La arquitectura de comandos SCSI se definió originalmente para buses SCSI paralelos, pero se ha llevado adelante con cambios mínimos para su uso con iSCSI y SCSI serie. Otras tecnologías que utilizan el conjunto de comandos SCSI incluyen la interfaz de paquetes ATA, la clase de almacenamiento masivo USB y FireWire SBP-2.
En la terminología de SCSI, la comunicación tiene lugar entre un iniciador y un destino. El iniciador envía un comando al objetivo, que luego responde. Los comandos SCSI se envían en un bloque descriptor de comandos (CDB). El CDB consta de un código de operación de un byte seguido de cinco o más bytes que contienen parámetros específicos del comando.
Al final de la secuencia de comandos, el objetivo devuelve un byte de código de estado, como 00h para éxito, 02h para un error (llamado condición de verificación) u 08h para ocupado. Cuando el objetivo devuelve una condición de verificación en respuesta a un comando, el iniciador generalmente emite un comando SCSI Request Sense para obtener un calificador de código clave (KCQ) del objetivo. La secuencia de verificación de condición y solicitud de detección implica un protocolo SCSI especial denominado condición de lealtad contingente.
Hay cuatro categorías de comandos SCSI: N (sin datos), W (escribir datos del iniciador al destino), R (leer datos) y B (bidireccional). Hay alrededor de 60 comandos SCSI diferentes en total, siendo los más utilizados:
- Unidad de prueba lista: Dispositivo de consultas para ver si está listo para transferencias de datos (desk spun up, medios cargados, etc.).
- Consulta: Devuelve la información básica del dispositivo.
- Solicitar sentido: Devuelve cualquier código de error del comando anterior que devolvió un estado de error.
- Enviar diagnóstico y recibir resultados diagnósticos: se ejecuta una simple prueba de sí mismo, o una prueba especializada definida en una página de diagnóstico.
- Unidad Start/Stop: Tira discos arriba y abajo, o cargas/descargas medios (CD, cinta, etc.).
- Capacidad de lectura: Devuelve la capacidad de almacenamiento.
- Unidad de formato: Prepara un medio de almacenamiento para su uso. En un disco, se producirá un formato de bajo nivel. Algunas unidades de cinta borrarán la cinta en respuesta a este comando.
- Lea: (cuatro variantes): Lea datos de un dispositivo.
- Escriba: (cuatro variantes): Escribe datos a un dispositivo.
- Sentido de registro: Devuelve la información actual de las páginas de registro.
- Mode sense: Devuelve los parámetros del dispositivo actual de las páginas del modo.
- Seleccione el modo: Establece parámetros de dispositivo en una página de modo.
A cada dispositivo en el bus SCSI se le asigna un número de identificación o ID SCSI único. Los dispositivos pueden abarcar varias unidades lógicas, que se direccionan mediante un número de unidad lógica (LUN). Los dispositivos simples tienen solo un LUN, los dispositivos más complejos pueden tener varios LUN.
Un "acceso directo" (es decir, tipo de disco) el dispositivo de almacenamiento consta de una serie de bloques lógicos, direccionados por Dirección de bloque lógico (LBA). Un LBA típico equivale a 512 bytes de almacenamiento. El uso de LBA ha evolucionado con el tiempo y, por lo tanto, se proporcionan cuatro variantes de comandos diferentes para leer y escribir datos. Los comandos Read(6) y Write(6) contienen una dirección LBA de 21 bits. Los comandos Read(10), Read(12), Read Long, Write(10), Write(12) y Write Long contienen una dirección LBA de 32 bits además de otras opciones de parámetros.
La capacidad de un "acceso secuencial" (es decir, tipo de cinta) no se especifica porque depende, entre otras cosas, de la longitud de la cinta, que no se identifica de forma legible por máquina. Las operaciones de lectura y escritura en un dispositivo de acceso secuencial comienzan en la posición actual de la cinta, no en un LBA específico. El tamaño del bloque en los dispositivos de acceso secuencial puede ser fijo o variable, según el dispositivo específico. Los dispositivos de cinta, como cintas de 9 pistas de media pulgada, DDS (cintas de 4 mm físicamente similares a DAT), Exabyte, etc., admiten tamaños de bloque variables.
Identificación del dispositivo
Interfaz paralela
En un bus SCSI paralelo, un dispositivo (por ejemplo, un adaptador de host, una unidad de disco) se identifica mediante un "SCSI ID", que es un número entre 0 y 7 en un bus angosto y en el rango 0–15 en un bus ancho. En modelos anteriores, un puente o interruptor físico controla la ID SCSI del iniciador (adaptador de host). En los adaptadores de host modernos (desde aproximadamente 1997), al realizar operaciones de E/S en el adaptador se establece el ID de SCSI; por ejemplo, el adaptador a menudo contiene un programa de ROM de opción (SCSI BIOS) que se ejecuta cuando la computadora arranca y ese programa tiene menús que permiten al operador elegir la ID de SCSI del adaptador host. Alternativamente, el adaptador de host puede venir con un software que debe instalarse en la computadora host para configurar la ID de SCSI. El ID de SCSI tradicional para un adaptador de host es 7, ya que ese ID tiene la prioridad más alta durante el arbitraje de bus (incluso en un bus de 16 bits).
La ID SCSI de un dispositivo en un gabinete de unidad que tiene un plano posterior se establece mediante puentes o mediante la ranura en el gabinete en el que se instala el dispositivo, según el modelo del gabinete. En el último caso, cada ranura en el plano posterior del gabinete envía señales de control a la unidad para seleccionar una ID SCSI única. Un gabinete SCSI sin plano posterior a menudo tiene un interruptor para que cada unidad elija la ID SCSI de la unidad. El gabinete está empaquetado con conectores que deben enchufarse en la unidad donde normalmente se ubican los puentes; el interruptor emula los puentes necesarios. Si bien no existe un estándar que haga que esto funcione, los diseñadores de unidades generalmente configuran sus encabezados de puente en un formato consistente que coincide con la forma en que se implementan estos interruptores.
Configurar el disco duro de arranque (o el primero) en SCSI ID 0 es una recomendación aceptada por la comunidad de TI. SCSI ID 2 generalmente se reserva para la unidad de disquete, mientras que SCSI ID 3 suele ser para una unidad de CD-ROM.
Generales
Tenga en cuenta que un dispositivo de destino SCSI (que puede denominarse "unidad física") a veces se divide en "unidades lógicas" más pequeñas. Por ejemplo, un subsistema de disco de gama alta puede ser un solo dispositivo SCSI pero contener docenas de unidades de disco individuales, cada una de las cuales es una unidad lógica. Además, una matriz RAID puede ser un solo dispositivo SCSI, pero puede contener muchas unidades lógicas, cada una de las cuales es un dispositivo "virtual" disco: un conjunto de franjas o un conjunto de espejos construido a partir de partes de unidades de disco reales. El ID SCSI, WWN, etc. en este caso identifica todo el subsistema y un segundo número, el número de unidad lógica (LUN) identifica un dispositivo de disco (real o virtual) dentro del subsistema.
Es bastante común, aunque incorrecto, referirse a la propia unidad lógica como "LUN". En consecuencia, el LUN real puede denominarse "número LUN" o "Id. de LUN".
En los protocolos de transporte SCSI modernos, existe un proceso automatizado para el "descubrimiento" de las identificaciones. El iniciador SSA (normalmente la computadora host a través del 'adaptador host') "recorre el bucle" para determinar qué dispositivos están conectados y luego asigna a cada uno un "conteo de saltos" valor. Los iniciadores de canal de fibra: bucle arbitrado (FC-AL) utilizan el LIP (protocolo de inicialización de bucle) para interrogar a cada puerto de dispositivo por su WWN (nombre mundial). Para iSCSI, debido al alcance ilimitado de la red (IP), el proceso es bastante complicado. Estos procesos de descubrimiento ocurren en el momento del encendido/inicialización y también si la topología del bus cambia más tarde, por ejemplo, si se agrega un dispositivo adicional.
SCSI tiene el mecanismo de identificación CTL (Channel, Target or Physical Unit Number, Logical Unit Number) por adaptador de bus host, o el mecanismo de identificación HCTL (HBA, Channel, PUN, LUN), un adaptador host puede tener más de un canales
Tipo de dispositivo
Si bien todos los controladores SCSI pueden funcionar con dispositivos de almacenamiento de lectura/escritura, es decir, discos y cintas, algunos no funcionarán con otros tipos de dispositivos; Es probable que los controladores más antiguos estén más limitados, a veces por su software de controlador, y se agregaron más tipos de dispositivos a medida que SCSI evolucionó. Incluso los CD-ROM no son manejados por todos los controladores. El tipo de dispositivo es un campo de 5 bits informado por un comando de consulta SCSI; Los tipos de dispositivos periféricos SCSI definidos incluyen, además de muchas variedades de dispositivos de almacenamiento, impresoras, escáneres, dispositivos de comunicaciones y un "procesador" tipo para dispositivos que no se enumeran de otra manera.
Servicios de alojamiento SCSI
En los servidores SCSI más grandes, los dispositivos de unidades de disco se alojan en un gabinete inteligente que admite SCSI Enclosure Services (SES). El iniciador puede comunicarse con el gabinete mediante un conjunto especializado de comandos SCSI para acceder a la alimentación, la refrigeración y otras características que no son de datos.
Contenido relacionado
Aplicación asesina
Detector de anomalías magnéticas
PackBits