You are on page 1of 117

LA FALTA DE IMPLEMENTACION DE UN SISTEMA DE TOLERANCIA DE FALLAS FACTORES:  No existe un presupuesto para implementar dicho sistema en la sala de computo.

 No existe un plan diseñado respecto al sistema de Tolerancia de Fallas.  El personal no está actualizado con respecto a los avances para tolerar las fallas ya sean por hardware o software.  El encargado de la sala de cómputo nunca pensó en las posibles fallas que pueden ocurrir o solo se concentro en las fallas que son predecibles y no en falla impredecibles. SOLUCIÓN: La Implementación de un sistema de Tolerancia de Fallas para aumentar la fiabilidad del Sistema que posee la Sala de Computo. OBJETIVOS: OBJETIVOS GENERALES: Es prevenir, eliminar y/o tolerar las amenazas que se presentar en el hardware o software OBJETIVOS ESPECIFICOS:  Estudiar las diferentes fallas que pueden ser impredecibles ya sea por hardware o software.  Identificar y clasificar las amenazas (fallas, errores, averías, etc.).  Detallar los diferentes medios a nuestra disposición para prevenir, eliminar y/o tolerar las amenazas. VARIABLES: VARIABLE DEPENDIENTE:

VARIABLE INDEPENDIENTE:

MARCO TEORICO

TEMA 1: “TÉCNICA DE TOLERANCIA DE FALLAS”

1.

TOLERANCIAS DE FALLAS

I.

Introducción

La tolerancia a fallos es un aspecto crítico para aplicaciones a gran escala, ya que aquellas simulaciones que pueden tardar del orden de varios días o semanas para ofrecer resultados deben tener la posibilidad de manejar cierto tipo de fallos del sistema o de alguna tarea de la aplicación. Sin la capacidad de detectar fallos y recuperarse de estos, dichas simulaciones pueden no llegar a completarse. Es más, algunos tipos de aplicaciones requieren ser ejecutadas en un entorno tolerante a fallos debido al nivel de seguridad requeridos. De cualquier forma, en ciertos casos debería haber algún modo de detectar y responder automáticamente a ciertos fallos del sistema o al menos ofrecer cierta información al usuario en el caso de producirse un fallo. Actualmente, el ámbito de aplicación de las técnicas de tolerancia a fallos se ha extendido a todos aquellos contextos en los que el funcionamiento incorrecto de un computador, o de una de sus partes, puede comportar importantes pérdidas humanas y/o económicas. Así pues, una buena solución informática debe, entre otras muchas cosas, ser fácil de utilizar y mantener, y en caso de problemas, debe ofrecer un comportamiento seguro y robusto, asegurando la continuidad del servicio ofrecido (es decir, tolerando la ocurrencia del problema) u ofreciendo un procedimiento de parada (o avería) del sistema controlado y, en la medida de lo posible, inocuo tanto para los usuarios, como para sus datos y operaciones. Como todos sabemos no es lo mismo una pequeña red de PC,s que podamos tener en casa, que una red corporativa de una gran empresa en la que los PC,s se cuentan por cientos y los servidores por decenas. Cuando en casa tenemos un problema con el PC y la solución mas sencilla es restaurar el sistema operativo junto con los programas que manejamos mas habitualmente ademas de nuestros documentos personales, el único problema que se nos plantea es calcular el tiempo que vamos a necesitar para la reinstalación del equipo y ver si tenemos a mano los drivers de todos los elementos hardware que tenemos instalados. En cambio, si el fallo se produjese en un servidor de un hospital, por ejemplo, podría dejar sin funcionamiento todo un sistema de asignación de ambulancias, citaciones, horarios de quirófanos, etc… Para evitar semejante caos es necesario que un equipo informático o mejor todavía, toda una red sea capaz de poder superar una situación de fallo que provoque pérdida de información y por consiguiente caos y perdida de rendimiento y dinero para la empresa u organización. Al conjunto de medidas empleadas para evitar la perdida de información en equipos informáticos debido a errores técnicos se le denomina ‚Tolerancia a Fallos‛ o lo que es lo mismo, capacidad de superar un fallo técnico sin que se produzcan pérdidas de información y seguir funcionando como si nada hubiese pasado. Dichas medidas se engloban en medidas software y medidas hardware. Aumentar la fiabilidad de un sistema:  Prevención de fallos :se trata de evitar, antes de que el sistema entre en funcionamiento, que se introduzcan fallos

Tolerancia de fallos :se trata de conseguir que el sistema continúe funcionando aunque se produzcan fallos

En ambos casos el objetivo es desarrollar sistemas con modos de fallo bien definidos. No son incompatibles El objetivo de tolerancia de fallas Se caracteriza por dividirse en tres fases. 1. 2. Se estudian las diferentes fallas que pueden ser impredecibles o predecibles ya sea en hardware o software. A continuación, se identifican y clasifican las amenazas (fallos, errores, fluctuaciones de corriente eléctrica, averías, etc) que son susceptibles de perturbar el correcto funcionamiento de de una red, centro de computo, etc. En la tercera fase se detallan los distintos medios a nuestra disposición para prevenir, eliminar y/o tolerar las amenazas.

3.

II.

Sistema de Almacenamiento tolerante a Fallas

Las unidades de disco son dispositivos que pueden fallar con cierta facilidad como el desgaste de la cabeza de lectura por apagarlo repentinamente o por que el disco esta fragmentado, cuando sector MBR esta defectuoso. Por lo cual hay dos formas muy conocidas para tolerancia de fallas para los discos: instalando discos de copias de seguridad (backup) y la otra forma es instalando unidades RAID.

Copias de Seguridad (backup) Esta opción la tienen muchos ordenadores, en la cual existen dos discos: principal del cual se hará una copia a la que llamaremos disco imagen o espejo estos discos estarán conectados por una controlador de disco o adaptador SCSI. *SCSI: (Small Computer System Interface): Es una tarjeta para expansión de capacidades que permite la conexión de varios tipos de dispositivos internos SCSI ("Small Computer System Interface"), esto es principalmente discos duros y puertos. La tarjeta controladora se inserta dentro de las ranuras de expansión ó "Slots" integradas en la tarjeta principal ("Motherboard") y se atornilla al gabinete para evitar movimientos y por ende fallas. Este tipo de tarjetas integran uno ó varios puertos para conectar los dispositivos externos tales como unidades lectoras de CDROM, escáneres y algunos tipos de impresoras entre otros. Actualmente se utilizan para la adaptación del estándar SCSI en las tarjetas principales (Motherborad) que carezcan Tarjeta controladora SCSI, con conector SCSI 68 terminales externo y
60 terminales interno.

de este tipo de conectividad. Lo cual permite que cuando falle el disco principal puedes seguir trabajando con el disco imagen pero una desventaja seria si falla el controlador el disco imagen seria obsoleto por eso se puede crear la duplicación de disco lo cual es igual que el disco imagen pero la diferencia es que tanto el disco principal tienen su controlador cada uno. Unidades RAID (Redundant Array of

Inexpensive Disks): Conjunto de Discos Baratos describen básicamente esta fabulosa solución hardware contra fallos. RAID se compone básicamente de una controladora a la que se conectan una serie de discos duros en los que la información se graba de tal manera que si falla uno de los discos, el resto sigue funcionando de forma eficaz ya que conocen exactamente la información perdida. Esta capacidad de la tecnología RAID para salir de situaciones comprometidas se basa en 6 tipos de funcionamiento diferentes, pero antes de describirlos veamos un pequeño ejemplo para entender mejor porqué dicha tecnología resulta tan beneficiosa.

Significa matriz redundante de discos independientes. RAID es un método de combinación de varios discos duros para formar una única unidad lógica en la que se almacenan los datos de forma redundante. Ofrece mayor tolerancia a fallos y más altos niveles de rendimiento que un sólo disco duro o un grupo de discos duros independientes. En este método, la información se reparte entre varios discos, usando técnicas como el entrelazado de bloques (RAID nivel 0) o la duplicación de discos (RAID nivel 1) para proporcionar redundancia, reducir el tiempo de acceso, y/o obtener mayor ancho de banda para leer y/o escribir, así como la posibilidad de recuperar un sistema tras la avería de uno de los discos. Un RAID, para el sistema operativo, aparenta ser un sólo disco duro lógico (LUN). La tecnología RAID protege los datos contra el fallo de una unidad de disco duro. Si se produce un fallo, RAID mantiene el servidor activo y en funcionamiento hasta que se sustituya la unidad defectuosa. RAID ofrece varias opciones, llamadas niveles RAID, cada una de las cuales proporciona un equilibrio distinto entre tolerancia a fallos, rendimiento y coste. Todos los sistemas RAID suponen la pérdida de parte de la capacidad de almacenamiento de los discos, para conseguir la redundancia o almacenar los datos de paridad. Los sistemas RAID profesionales deben incluir los elementos críticos por duplicado: fuentes

de alimentación y ventiladores redundantes y Hot Swap. De poco sirve disponer de un sistema tolerante al fallo de un disco si después falla por ejemplo una fuente de alimentación que provoca la caída del sistema.

Funcionamiento del RAID Básicamente el RAID es un sistema el cual permite almacenar información en una cantidad de discos (n), de tal forma que agilice el proceso maquina-disco. El sistema RAID evitará en lo más posible la pérdida de data de la siguiente manera: Los discos optimizados para RAID poseen circuitos integrados que detecta si el disco está fallando, de ser así este circuito se encargará por encima del tiempo real de sacar la información y almacenarla en los otros discos, o si es el caso en el "hot spare". Un hot spare es un disco que permanece siempre en el sistema esperando a que otro se estropee y él entre directamente en funcionamiento. Una de las ventajas del sistema RAID es la posibilidad, con los discos hot swap, de conectarlos y desconectarlos en "caliente", es decir, que si un disco falla no hará falta el apagar el sistema para remplazarlo. Ventajas de los discos RAID El rendimiento general del sistema aumenta ya que pueden funcionar de forma paralela con los diferentes discos del conjunto. Dependiendo del nivel de RAID que escojamos, si uno de los discos del conjunto falla, la unidad continúa funcionando, sin pérdida de tiempo ni de datos. La reconstrucción de los datos del disco que ha fallado se hace de forma automática sin intervención humana. En el caso de algunos sistemas operativos la regeneración de datos se hace desde software por ejemplo en el Windows NT, aunque en estos sistemas se pueden usar controladoras RAID que sí regenerarían los datos automáticamente. La capacidad global del disco aumentará, ya que se suman las capacidades de los diferentes discos que componen el conjunto. Tipos de RAID  RAID 0

Este tipo de arreglo utiliza una técnica llamada "striping", la cual distribuye la información en bloques entre los diferentes discos. Es el único nivel de RAID que no duplica la información, por lo tanto no se desperdicia capacidad de almacenamiento. Se requieren mínimo dos discos.

Ventajas: RAID-0 permite acccesar más de un disco a la vez, logrando una tasa de transferencia más elevada y un rápido tiempo de acceso. Por no utilizar espacio en información redundante, el costo por Megabyte es menor. Desventaja: No existe protección de datos. No existe información en cuanto a Paridad. Ambientes donde implementarlo: Es una buena alternativa en sistemas donde sea más importante el rendimiento que la seguridad de los datos. Es decir ambientes que puedan soportar una pérdida de tiempo de operación para poder reemplazar el disco que falle y reponer toda la información.  RAID 1:

Este nivel de RAID usa un tipo de configuración conocido como "mirroring", ya que la información de un disco es completamente duplicada en otro disco. Así mismo, también se puede duplicar el controlador de disco (duplexing). Se desperdicia el 50% de la capacidad y sólo maneja dos discos. Ventajas: Se protege la información en caso de falla tanto del disco como del controlador (en caso de duplex), y a q u e si un disco suspende su operación el otro continua disponible. De este modo se evita la pérdida de información y las interrupciones del sistema debido a fallas de discos. Desventajas: Gran consumo de necesidades hardware, 100% paridad y coste alto pues es necesario el doble de discos. Ambientes donde implementarlo: RAID-1 está diseñado para sistemas donde la disponibilidad de la información es esencial y su reemplazo resultaría difícil y costoso (más costoso que reponer el disco en sí). Típico en escrituras aleatorias pequeñas con tolerancia a fallas. El problema de este tipo de arreglos es el costo que implica duplicar los discos.

RAID 3:

Conocido también como "striping con paridad dedicada", utiliza un disco de protección de información separado para almacenar información de control codificada. Esta información de control codificada o paridad proviene de los datos almacenados en los discos y permite la reconstrucción de la información en caso de falla. Se requieren mínimo tres discos y se utiliza la capacidad de un disco para la información de control.

Ventajas: RAID-3 proporciona una alta disponibilidad del arreglo, así como una tasa de transferencia elevada, mejorando de ese modo el rendimiento del sistema. Desventajas: Un disco de paridad dedicado puede convertirse en un cuello de botella porque cada cambio en el grupo RAID requiere un cambio en la información de paridad. No plantea una solución al fallo simultáneo en dos discos. Está especialmente recomendado para aplicaciones que requieran archivos de datos de un gran tamaño (vídeo, imágenes, DataWare House). Ambientes donde implementarlo: Es típico para transferencia larga de datos en forma serial , tal como aplicaciones de imágenes o video

RAID 5:

Este nivel de RAID es conocido como "striping con paridad distribuida", ya que la información se reparte en bloques como RAID-0, pero un bloque de cada disco se dedica a la paridad. Es decir la data codificada se añade como otro sector que rota por los discos igual que los datos ordinarios. Se requieren mínimo tres discos.

Ventajas:

Es

el

esquema

de

protección de información más usado comúnmente, ya que proporciona un buen rendimiento general con una mínima pérdida de capacidad. Además el sistema tiene suficiente redundancia para ser tolerante a fallos. Desventajas: Menores prestaciones que en RAID 1. No plantea una solución al fallo simultáneo en dos discos.

Ambientes donde implementarlo: Es recomendable para aplicaciones intensas de entrada/salida y de lectura/escritura, tal como procesamiento de transacciones.

RAID 10: Es un nivel de arreglo de discos, donde la información se distribuye en bloques como en RAID-0 adicionalmente, cada disco se duplica como RAID-1 , creando un segundo nivel de arreglo. Se conoce como "striping de arreglos duplicados". Se requieren, dos canales, dos discos para cada canal y se utiliza el 50% de la capacidad para información de control. También se le conoce como RAID

Ventajas: Este nivel ofrece un 100% de redundancia de la información y un soporte para grandes volúmenes de datos, donde el precio no es un factor importante. Desventajas: Coste elevado, gran overhead y 100% de redundancia Ambientes donde implementarlo: Ideal para sistemas de misión crítica donde se requiera mayor confiabilidad de la información, ya que pueden fallar dos discos inclusive (uno por cada canal) y los datos todavía se mantienen en línea. Es apropiado también en escrituras aleatorias pequeñas. 2.
     

TOLERANCIA A FALLAS DEL SERVIDOR Existen las siguientes técnicas siguientes en cuanto a la tolerancia a fallas: Métodos para reparar el disco duro Seguimiento de Operaciones Duplicación de Directorios Cuenta de Usuario y Duplicado de Seguridad Protección del Sistema Operativo contra los errores de las aplicaciones software Cerrar archivo

Capacidad de Repararen forma directa el Disco Duro En una reparación directa, el sistema operativo almacena temporalmente los datos que no pueden escribirse de forma inmediata debido a un problema del disco en esta posición, por ejemplo por daños en la superficie del disco Y localizara otra zona otra zona del disco que este libre de errores, donde escribirá los datos almacenados. Seguimiento de Operaciones Implica el mantenimiento de un cuaderno llamado diario hasta que se escribe el disco. También llamado anotación de operaciones en el que se mantiene las anotaciones de todas las operaciones recientes antes de que se escriban en el disco. Los sistemas de bases de datos también tienen la posibilidad de dar seguimiento a las operaciones. Duplicación de Directorios Se pueden realizar copias de seguridad de ciertos archivos o carpetas .Los servicios de duplicación se encargan de la copia de las carpetas y los archivos desde un servidor a otro o desde un servidor a una estación de trabajo. Duplicación de Seguridad y cuentas de usuarios Se conserva la información de las cuentas pero los usuarios no pueden acceder a sus hasta que la información no se haya reconstruido. Se protege los datos con la duplicación regular de los datos en otro servidor de la red y la copia de seguridad de forma regular de los datos en una cinta. Tolerancia de Fallas para un SAM es tener dos o más servidores en un dominio de Microsoft. El primer dominio (PDC) tiene la copia de seguridad de la base de datos .Cada uno de los controladores de dominio de seguridad (BDC) tiene una copia actualizada de forma regular de la base de datos 3. SOFTWARE DE TOLERANCIA A FALLOS PARA SERVIDORES Si el servidor falla, la aplicación es restaurada en el servidor 'spare' o de espera automática. Fujitsu Siemens Computers acaba de anunciar el lanzamiento de su software de alta disponibilidad, x10sure, una solución de alta tolerancia a fallos para servidores Windows y aplicaciones. Gracias a este software, si el servidor falla, la aplicación es restaurada en el servidor spare o de espera automática. X10sure ha sido desarrollada para medianas y grandes empresas con el precio más rentable del mercado, desde 9.200 euros para 5 nodos.

Permite la recuperación automática del sistema con los requisitos de configuración mínimos, la consolidación de la estructura y la continuidad del negocio. Ofrece un bajo riesgo de implementación y una mínima complicación para el usuario. Garantiza la máxima flexibilidad y sus usuarios consiguen una mayor rentabilidad, gracias a la implementación de servidores reales y virtuales. Ha sido desarrollada para incorporarla en negocios con economía de escala, ya que maximiza la inversión en el futuro. Para Sergio Reiter, Responsable de Servidores PRIMERGY de Fujitsu Siemens Computers, esta nueva solución ‚es la llave para el éxito de las medianas y grandes empresas. Ofrece la mejor alternativa en eficacia y fiabilidad para las estructuras tecnológicas actuales. Nuestros usuarios podrán gozar del máximo rendimiento con el menor coste del mercado. Es una solución rompedora en precio y tecnología que sirve para cualquier aplicación y, sobretodo, cuenta con un failover automático. Ahora, nuestro software de alta disponibilidad, adem{s de ser único, refuerza nuestra posición y tecnología‛. Según han señalado los responsables, cuando se produce un incidente en los servidores, el hardware asociado es capaz de detectar el subsistema que falla y obrar en consecuencia para restablecer el sistema en segundos. Lo que consigue x10sure es monitorizar los servidores y el almacenamiento. En el caso de que un servidor de producción caiga, la aplicación automáticamente lo rearranca en un servidor de espera. Si el almacenamiento falla, los datos o el acceso a los mismos puede ser automáticamente restablecido. X10sure está en la actualidad disponible a través del canal de distribución. Para Reiter “estamos satisfechos del gran producto que hoy presentamos y que representa, sin lugar a dudas, una gran oportunidad de negocio para nuestro canal de distribución, especialmente para los clientes con necesidades de alta disponibilidad y consolidación, pero bajo el prisma de la rentabilidad‛

4.

PROTEGER EL SISTEMA OPERATIVO Un sistema operativo protegido funciona en una zona de la memoria que esta separada de los demás programas, esto funciona en modo protegido para protegerse de los problemas del mal funcionamiento de algún programa. Bloquear los archivos y los registros El bloque es un proceso que realiza el sistema operativo para impedir que dos usuarios accedan y actualicen la misma información al mismo tiempo. Los sistemas operativos modernos realizan un bloqueo a nivel de registro lo que permite que muchos usuarios accedan y actualicen el mismo archivo pero no el mismo registro de este archivo.

Utilizar un Sistema de alimentación Ininterrumpida El principal objetivo de un sistema de alimentación ininterrumpida (SAI) es proteger a los equipos eléctricos de los cortes y de las fluctuaciones de la tensión eléctrica .Un SAI es una caja llena de baterías recargables que proporcionan energía de forma temporal, hasta que los equipos de la red se pueden apagar de forma segura. Los cortes de intermitentes de tensión provocan que los discos que los discos se paren de repente. Las unidades del disco y la memoria RAM son propensos a sufrir daños en un apagón. Hay dos tipos de SAIs: Los online-.Proporcionan energía eléctrica a los equipos directamente desde sus baterías Los offline-.Conecta los equipos a la fuente de energía principal hasta que detecta una repentina reducción de la tensión y en ese momento conmutan sus baterías para que sean estas las que proporcionen la tensión necesaria

5.

SISTEMA DE ALIMENTACIÓN ININTERRUMPIDA

Un SAI (Sistema de Alimentación Ininterrumpida), también conocido por sus siglas en inglés UPS (UninterruptiblePowerSupply: ‘suministro de energía ininterrumpible’) e incorrectamente generalizado como No break, es un dispositivo que gracias a sus baterías, puede proporcionar energía eléctrica tras un apagón a todos los dispositivos que tenga conectados. Otra de las funciones de los SAI es la de mejorar la calidad de la energía eléctrica que llega a los aparatos, filtrando subidas y bajadas de tensión y eliminando armónicos de la red en el caso de Corriente Alterna. Dos son los criterios a tener en cuenta al elegir un SAI: - Potencia que consume la totalidad del Sistema Informático - Problemas eléctricos, cortes, microcortes etc., que deben resolverse ON-LINE La red alimenta al cargador de baterías y al ondulador (Fig. 1). De este modo nos encontramos con las baterías en paralelo con el ondulador, por tanto cualquier corte o microcorte queda suplido por las baterías. Se garantiza el aislamiento de la red, por medio del transformador separador existente en el cargador de baterías. La tensión de salida la proporciona el ondulador siempre, por tanto, se garantiza la estabilización de salida, la estabilidad en frecuencia y la ausencia de perturbaciones. No existe transferencia Red-Sai ni Sai-Red, puesto que es el ondulador, quien está permanente trabajando y suministrando energia a la salida.

Existe también la posibilidad de BYPASS, (Fig. 1-A), el cual debe garantizar, por redundancia, el suministro a la salida en caso de fallo de red. La presencia ó incorporación del Bypass no debe ir en detrimento del poder de sobrecarga del ondulador, puesto que no debe ser usual, la intervención del mismo, en las sobrecargas de conexión de los equipos informáticos, ya que en caso de ausencia de Red, no se podría conectar la carga, pese a tener las baterías en condiciones. Como puede observarse en la figura, el conmutador de la salida, esta normalmente en la posición "O", por tanto el ondulador alimenta la carga y el control del Bypass supervisa esta alimentación, en caso de producirse alguna anomalía, el conmutador cambia a la posición "R", será por tanto, la Red quien alimentará a la carga en estas circunstancias. Cuando el control del Bypass, observe restaurado el funcionamiento del ondulador, ó haya desaparecido la anomalía que ha provocado la intervención, devolverá la alimentación al ondulador. Es importante observar que, dado que el Bypass, se comporta como sistema redundante de seguridad, en la intervención del mismo no debe perderse el aislamiento, característica fundamental que debe aportar un SAI ON-LINE, por tanto, el Bypass deberá incorporar transformador-separador, para garantizar ésta característica durante su intervención. Esta característica, es fácilmente olvidada por algunos equipos, que consiguen reducidas dimensiones, al incorporar técnicas de alta frecuencia. Esta tecnología, la primera

históricamente en ser utilizada, es la que aporta mayor grado de protección en su salida, ya que ésta, es totalmente independiente de la entrada. Las condiciones de trabajo extremas desde un punto de vista de red eléctrica, es decir, referentes a la entrada, dependen de la concepción del cargador de baterías, a los que actualmente ya se dota de corrector de cos. de p, con lo cual se consume corriente senoidal a la entrada, a la vez que se consigue bajar los niveles de tensión de red, a los que todavía se carga la batería. El ondulador, construido generalmente con tecnología PWM y semiconductores MOSFET o IGBT, aporta las características de salida. En cualquier caso, ésta topología, la más segura y de mayor grado de protección, es cara y voluminosa, lo cual da paso a las siguientes topologías, cuyaevolución tiende siempre a imitar las prestaciones de una configuración ON-LINE. OFF-LINE Parte del criterio de reducir costes, por ello la base es proteger sólo en caso de necesidad, de tal forma que la red alimenta a la carga normalmente y tan sólo interviene el ondulador en caso de fallo de red ó red excesivamente baja o alta , mediante la acción del conmutador C (Fig. 2). Podríamos decir, que la red está controlada dentro de un intervalo de tensión máxima y mínima, y por tanto la carga que estamos alimentando, deberá soportar los límites de tensión a los que interviene el equipo. Normalmente no se produce un aislamiento entrada-salida y existe un inevitable tiempo de transferencia Red-Sai-Red. Dicho tiempo puede llegar a ser muy corto (1mS), sin embargo durante este tiempo, son los condensadores de filtro de la carga quienes mantienen la energía.

Como podrá observarse, existen los mismos bloques que en una configuración ON-LINE, cargador de baterías, baterías y ondulador, sin embargo se le añade un bloque más, que es el supervisor de red, elemento que permite detectar un posible fallo de ésta y conmutar "C", para que sea el ondulador, quien pase a alimentar la salida. Bajo este criterio, el ondulador sólo trabajará el tiempo de descarga de la batería, apurandose hasta el límite, las características de los semiconductores de potencia. A su a vez, la batería es cargada de forma lenta por el cargador, cuando existen condiciones correctas de red. Queda a criterio del fabricante, la elección de los límites de dimensionado y temperatura de trabajo de los distintos componentes, para conseguir un equipo con una determinada fiabilidad-coste.

Conclusiones: Siendo la topología OFF-LINE, las más económica y en muchos casos, suficiente, dista de ser la más adecuada para realizar una protección total, parámetros como aislamiento, tiempo de transferencia y límites de protección por red alta-baja, son normalmente subyugados a criterios económicos. El límite normalmente más conflictivo, es el punto de intervención, donde el ondulador empieza a trabajar y por tanto a utilizar batería, puesto que el equipo detecta la tensión de red baja. El Sai OFF-LINE, es útil prácticamente, sólo en lugares donde la red es estable y la protección a realizar, es frente a cortes momentáneos de suministro. IN-LINE Es una nueva técnica, de conocimiento reciente, cuyo origen es de una firma americana, quien lo aplicó a equipos de elevada potencia, a fin de mejorar la fiabilidad y expectativas de vida. Comercialmente se utiliza como si de ON-LINE se tratara, por ello existen marcas que al ON-LINE auténtico lo nombran como "verdadero" o "doble conversión". Originariamente, si está correcta-mente construido, las prestaciones y características que aporta, son prácticamente de ON-LINE. El sistema se basa en utilizar un ondulador reversible, capaz tanto de generar, como de rectificar para cargar la batería. Manteniendo al ondulador en marcha y variando la tensión y la fase generada por éste, se logra cargar adecuadamente la batería. Una etapa estabilizadora en la entrada, es obligada, para mantener al ondulador en los límites tolerables de trabajo como cargador y un elaborado filtraje protegen al propio ondulador de picos de sobretensión, provenientes de la red, que lo estropearían. Debe prestarse atención, al aislamiento electrico que pueda o no, incorporar el bypass.

6.

COPIAS DE SEGURIDAD EN LAS ESTACIONES DE TRABAJO

Puede utilizar el asistente para programar la creación de una copia de seguridad cuando desee o en intervalos regulares. 7. PLAN DE SEGURIDAD Introducción Hasta este punto se ha realizado un completo análisis de la situación de la empresa en lo que se refiere a la seguridad de la información. A continuación se van a detallar las posibles soluciones que debe implantar la empresa para conseguir establecer un nivel de seguridad de su información adecuado para evitar pérdidas y daños de activos. Plan de seguridad A la hora de realizar el análisis de la empresa, se han detectado ciertas vulnerabilidades graves como por ejemplo que no exista un replicado de la información, que no existan políticas de acceso a la información o la más importante, que los responsables de la empresa no tengan conciencia de la importancia de dotar a su empresa de unas adecuadas medidas de seguridad para proteger la información de la misma. Para conseguir reducir el riesgo de la empresa se van a detallar las medidas que se deberán emplear para conseguir que consiga ponerse al día en la seguridad de su información y elementos informáticos. Dentro de las medidas a emplear para eliminar las vulnerabilidades y dotar ala empresa de una seguridad adecuada, se pueden distinguir varios tipos:Medidas preventivas: Medidas que se deberán implantar en la empresa para prevenir la posible explotación de una vulnerabilidad por parte de una amenaza. Medidas correctoras: Medidas que se deberán implantar en la empresa para corregir problemas o fallos debidos a amenazas que se han materializado.Riesgos asumibles: Pueden existir vulnerabilidades de la empresa que no sean sensibles a que un riesgo las explote, por lo que esa vulnerabilidad no es necesaria que sea tenida en cuenta a la hora de establecer las medidas de seguridad. . Medidas aplicadas a problemas de Hardware En el análisis realizado dentro de la empresa se han detectado varios fallos en el correcto mantenimiento y seguridad del equipamiento Hardware disponible, sobre todo debido a la ausencia de un sistema de almacenamiento centralizado, lo que pone en grave riesgo la integridad de la información almacenada dentro de dicho Hardware. Algunas medidas aplicables para evitar pérdidas: Medidas preventivas a adoptar dentro de la empresa:-Instalación de un servidor de almacenamiento centralizado donde se almacene toda la información generada dentro de la empresa y que garantice un acceso adecuado, y seguro, a la misma cuando sea necesario. -

Disponer de copias de respaldo almacenadas en servidores exteriores ala empresa para prevenir posibles fallos de Hardware. Dispositivos SAI (Sistemas de Alimentación Ininterrumpida) para evitar posibles fallos de los equipos debidos a cortes de energía repentinos.Tener contratado un buen servicio técnico que asegure una rápida reparación y puesta en marcha de los equipos si se produce un fallo. Medidas correctoras a adoptar dentro de la empresa:-Tener contratado un buen servicio técnico que asegure una rápida reparación y puesta en marcha de los equipos si se produce un fallo. Restauración de copias de Backup en el caso de haberse producido una pérdida de datos. Riesgos asumibles en la empresa:-Fallo en alguna estación PC o portátil durante un periodo inferior a 24horas

Software Fallos debidos a amenazas que pueden afectar al Software que emplea la empresa para desarrollar su actividad de negocio. Pueden ser evitados.

Desarrollar un Plan para Reconstruir Desastres El administrador de red es responsable de disponer un plan de contingencia en caso que ocurra un desastre .Tal plan debe incluir un plan de seguridad y opciones de tolerancia a fallas, incluidos los procedimientos de tolerancia a fallas siguientes:   discos      Almacenar las últimas copias de seguridad en otra ubicación Contar con redundancia de almacenamiento en disco, por ejemplo un disco imagen Instalar un SAI Comprar equipos de repuesto Instalar cable adicional En la instalación de la red, para disponer de cables de Comprar sistemas operativos que dispongan de opciones de tolerancia a fallas Establecer un plan para realizar copias de seguridad en discos, con rotación de

o unidades RAID

seguridad por si se quiere rediseñar la red. Un plan de reconstruccion en caso de desastres debera tener una cuenta lo siguiente:     Que el sistema de cintas se estropee e impida realizar la restauracion de las copias Que los problemas del sistema operativo no se puedan localizar inmediatamente Que una o varias CPUs se estropean Que varios discos no puedan funcionar

de seguridad

 

Que se estropeen unas cuantas cintas de las copias de seguridad Que ocurra un desastre natural

Plan de Seguridad de Recuperación ante Desastres
Un plan de recuperación ante desastres es un proceso de recuperación que cubre los datos, el hardware y el software crítico, para que un negocio pueda comenzar de nuevo sus operaciones en caso de un desastre natural o causado por humanos. Esto también debería incluir proyectos para enfrentarse a la pérdida inesperada o repentina de personal clave, aunque esto no sea cubierto en este artículo, el propósito es la protección de datos. Ante la amenaza de un desastre o después de que ya ha ocurrido lo único que nos puede salvar es la forma en que nos prevenimos antes de que ocurriera. Es por eso que es vital tener un Plan de Recuperación ante Desastres (DRP - Disaster Recovery Plan).

Prevención ante los desastres Enviar respaldos fuera de sitio semanalmente para que en el peor de los casos no se pierda más que los datos de una semana.

Incluir el software así como toda la información de datos, para facilitar la recuperación. Si es posible, usar una instalación remota de reserva para reducir al mínimo la pérdida de datos. Redes de Área de Almacenamiento (SANs) en múltiples sitios son un reciente desarrollo (desde 2003) que hace que los datos estén disponibles inmediatamente sin la necesidad de recuperarlos o sincronizarlos. Protectores de línea para reducir al mínimo el efecto de oleadas sobre un delicado equipo electrónico. El suministro de energía ininterrumpido (SAI). La prevención de incendios - más alarmas, extintores accesibles. El software del antivirus. El seguro en el hardware.

El plan

Para asegurar la continuidad del negocio, es recomendable partir de la siguiente premisa: "Siempre desear lo mejor y planear para lo peor". En un buen plan existen diferentes factores que hay que tomar en cuenta. Los más importantes son: El árbol telefónico: para notificar todo el personal clave del problema y asignarles tareas enfocadas hacia el plan de recuperación. Reservas de memoria: si las cintas de reserva son tomadas fuera de sitio es necesario grabarlas. Si se usan servicios remotos de reserva se requerirá una conexión de red a la posición remota de reserva (o Internet). Clientes: la notificación de clientes sobre el problema reduce al mínimo el pánico. Instalaciones: teniendo sitios calientes o sitios fríos para empresas más grandes. Instalaciones de recuperación móviles están también disponibles en muchos proveedores. Trabajadores con conocimiento. Durante desastre a los empleados se les requiere trabajar horas más largas y más agotadoras. Debe haber un sistema de apoyo para aliviar un poco de tensión. La información de negocio. Las reservas deben estar almacenadas completamente separadas de la empresa (Cummings, Haag y 2005 McCubbrey). La seguridad y la fiabilidad de los datos es clave en ocasiones como estas. Proceso de recuperación

Comprar nuevo equipo (el hardware) o reparar o quitar virus, etc. Llamar el abastecedor de software e instalar de nuevo el software. Recuperar los discos de almacenaje que estén fuera de sitio.

Reinstalar todos los datos de la fuente de respaldo. Volver a ingresar los datos de las pasadas semanas. Tener estrategias periódicas de respaldos de base de datos.

Software Recomendados
Replication Server Es el software de replicación de bases de datos que envía y sincroniza datos satisfaciendo las necesidades competitivas, incluyendo garantía de entrega e inteligencia comercial en tiempo real sin caídas operativas. OpenSwitch Una solución que garantiza a los sistemas disponibilidad ininterrumpida sin complicaciones. Adaptive Server Enterprise Cluster Edition Reduce los costos operativos, brindando una infraestructura de bases de datos que permite al área de TI mejorar los niveles del servicio de aplicaciones, reducir los costos del centro de datos y crear una infraestructura de datos para el crecimiento futuro del negocio. Mirror Activator Una solución para la continuidad del negocio y la recuperación de desastres para bases de datos de misión crítica. Acronis Backup & Recovery Advance 11 Server Ayuda a ser copias de seguridad y recuperar información de los discos duros que están dañados. Otras formas de Recuperar información Es la de pedir o buscar ayuda en empresas que se dedican a dar soporte a las empresas a recuperarse ante un desastre y de esta forma no pierdan dinero ante un desastre.Los

especialistas en reconstrucciones tienen computadoras, sistemas de seguridad, redes y acceso a internet para mantener la operatividad de la organización después de un desastre.

Sistemas distribuidos tolerantes a fallas
La promesa de los sistemasdistribuidos sólo se puede cumplir cuando a la base hardware adecuada sele añaden políticas y mecanismos tolerantes a fallas. El objetivo deldiseño y construcción de sistemas tolerantes a fallas consiste engarantizar que el sistema continúe funcionando de manera correcta comoun todo, incluso en presencia de fallas.

Se dice que un sistema falla cuandono cumple su especificación. En algunos casos, como en un sistema deordenamiento distribuido de productos en un supermercado, una fallapodría provocar la falta de algunos productos en la tienda. En otroscasos, como en un sistema distribuido para el control de tráfico aéreo,una falla podría ser catastrófica. Como las computadoras y los sistemasdistribuidos se utilizan cada vez más en misiones donde la seguridad escrítica, la necesidad de soportar las fallas cada vez es mayor.

Un sistema consiste de un conjuntode componentes de hardware y software y son diseñados para proveer unservicio específico. Los componentes de un sistema pueden estarinterrelacionados entre ellos. Un desperfecto de un sistema ocurrecuando el sistema no desempeña estos servicios de la maneraespecificada. Un estado erróneo en un sistema es un estado en el cualpodría conducir a un fallo en el sistema. Un fallo es una condiciónfísica anormal, las causas de un fallo incluyen: errores de diseño (comoerrores en la especificación del sistema o en la implementación),problemas de fabricación, deterioro por el uso u otros problemasexternos (como condiciones ambientales adversas, interferenciaelectromagnética, entradas imprevistas o el mal uso del sistema). Unerror es una parte del estado del sistema la cual difiere de los valoresesperados.

Unerror del sistema puede ser visto como una manifestación de malfuncionamiento del sistema, el cual podría conducir a un fallo delsistema. Es necesario entonces, que el sistema sea capaz de recuperarsede las fallas, necesitamos deshacernos del estado de error del sistema,en otras palabras, la recuperación de un fallo, es un proceso queinvolucra la restauración de un estado erróneo a un estado libre deerror. CLASIFICACIÓN Y PROPIEDADES DE FALLAS EN SISTEMAS DISTRIBUIDOS.

Clasificación de fallas

Las fallas de un sistema de cómputo pueden clasificarse como sigue:

Falla de procesos:en una falla de proceso,la ejecución arroja un resultado incorrecto, los procesos provocan queel sistema se desvíe de las especificaciones y el proceso puedesuspender su progreso. Ejemplos de errores que causan la falla de losprocesos son los interbloqueos, tiempo expirado, violación deprotección, error en la entrada provista por el usuario, violaciones deconsistencia (puede ocurrir si se emplea la técnica de control deconcurrencia optimista). Dependiendo del tipo de error que cause que unproceso falle, este proceso puede ser abortado o reiniciado desde unestado anterior. Por ejemplo, un proceso interbloqueado puede serrestablecido desde un estado anterior, donde este puede tratar deadquirir nuevamente recursos. Por otro lado, entradas erróneas requierenque el proceso se aborte.

Falla del sistema:una falla de un sistemaocurre cuando el procesador falla en la ejecución. Esto es causado porerrores de software y problemas de hardware (como errores de CPU, fallaen la memoria principal, falla en el bus, falla de energía, etc.). En elcaso de una falla de sistema, el sistema es detenido y reiniciado en unestado correcto. El estado correcto puede estar en algún estadopredefinido o en un estado anterior (punto de revisión) del sistemaguardado en un almacenamiento no volátil.

Una falla del sistema puede ser clasificado como sigue:

Falla de amnesia:ocurre cuando se reiniciael sistema en un estado predefinido, y no depende del estado del sistemaantes de la falla. No se conoce el estado que tenía el sistema antes dela falla.

Falla de amnesia parcial:ocurre cuando se reiniciael sistema y se conoce parte del estado que presentaba antes de ocurrirla falla. También se predefine un estado inicial para fallas.

Falla de pausa:ocurre cuando el sistema se reinicia al mismo estado en que se encontraba antes de la falla.

Falla de aborto (halting):ocurre cuando un sistema nunca se reinicializa.

Falla en medio de almacenamiento secundario:se dice que ocurre unafalla en medio de almacenamiento cuando los datos almacenados no puedenser accedidos (cualquiera de sus partes o en su totalidad). La causa deesta falla normalmente es provocada por error de paridad, daño de lascabezas lectoras, partículas de polvo depositadas en el medio. En casode una falla en el medio de almacenamiento secundario, sus contenidos seencuentran alterados y deberían ser reconstruidos desde una versión delarchivo, que se toma del registro histórico de actividades del archivo.Para tolerar una falla del medio de almacenamiento secundario, elsistema puede ser configurado con un sistema de discos espejos. Unsistema de disco espejo generalmente son dos discos físicamenteindependientes que se comunican con la memoria y/o con el CPU a travésde controladores y buses

independientes. Esto hace que el almacenamientode datos en un disco sea la imagen del otro. Así, un sistema puedetolerar fallas de un disco de subsistema.

Falla en los medios de comunicación:una falla de un medio decomunicación, ocurre cuando un sitio no puede comunicarse con otro sitiooperacional de la red. Esto es ocasionado por la falla del nodo deconmutación y/o por los enlaces de comunicación del sistema. La falla deun nodo de conmutación incluye la falla del sistema y la falla dealmacenamiento secundario, por otro lado, la falla de enlace incluye unaruptura física y ruido en los canales de comunicación. Note que unafalla en un medio de comunicación (esto depende de la topología y laconectividad) puede no causar la pérdida total de las facilidades decomunicación. Por ejemplo, una falla en el medio de comunicación puedesimplemente causar una pérdida del mensaje, la recepción de un mensajecon algunos errores, o la partición de una red donde un segmento desitios pueden ser incomunicados con los sitios en otro segmento, aunquelos sitios dentro de un segmento pueden comunicarse entre sí.

RECUPERACIÓN DE ERRORES.

Recordemos que un error es esa partedel estado del sistema que es distinto de los valores esperados y quepueden conducir a la falla de un sistema, la recuperación de una fallaes un proceso que involucra la recuperación de estados erróneos a unestado libre de error. Hay dos enfoques para la recuperación de unestado de error a un estado libre de error.

Si la naturaleza del error y losdaños causados por la falla pueden ser completamente calculados,entonces es posible remover esos errores del estado del proceso (osistema) y habilitar el movimiento hacia adelante del proceso a unestado libre de error. Esta técnica es conocida como recuperación haciaadelante.

Si no es posible prever lanaturaleza de las fallas y remover todos los errores en el estado delproceso (o sistema), entonces el estado del proceso puede ser restauradoa un estado previo libre de error. Esta técnica es conocida comorecuperación de error hacia atrás.

Note que la recuperación del errorhacia atrás es más simple que la recuperación del error hacia adelante,ya que es independiente de la falla y de los errores causados por lafalla. Además un sistema puede recuperarse de una falla arbitraria porla restauración a un estado previo. Esto generalmente habilita que larecuperación hacia atrás sea provista como un mecanismo de recuperacióngeneral para cualquier tipo de proceso.

Los principales problemas asociados con la recuperación hacia atrás son:

Penalidad en rendimiento:la sobrecarga de trabajo para restaurar el estado del proceso a un estado anterior libre de errores puede resultar muy alto.

No esta garantizado que las fallas no ocurrirán nuevamente cuando se inicialice el procesamiento desde un estado anterior.

Algunos componentes del estado delsistema pueden ser irrecuperables. Por ejemplo, el dinero dispuesto enun cajero automático no puede recuperarse.

La técnica de recuperación haciadelante, por otro lado, provoca una menor sobrecarga, porque sólo esaspartes del estado que se desviaron de un valor esperado necesitan sercorregidas. Sin embargo, esta técnica puede ser usada solo cuando losdaños debido a fallas pueden ser calculados correctamente, por lo tanto,este no es un concepto tan general como la recuperación de error haciaatrás y no puede ser provista como un mecanismo general para recuperarerrores.

Recuperación de error hacia atrás

En la recuperación de error haciaatrás, un proceso es restaurado a un estado anterior con la esperanza deque el estado anterior este libre de errores. Los puntos en laejecución de un proceso en los cuales los procesos pueden serrestaurados más tarde se conocen como puntos de recuperación. Se diceque un punto de recuperación es recuperado cuando el estado actual de unproceso es remplazado por el estado del proceso en el punto derecuperación. Los conceptos anteriores y la discusión que sigue sonaplicables también a nivel del sistema. Una recuperación hecha a nivelde proceso es simplemente un subconjunto de acciones necesarias pararecuperar el sistema completo. En la recuperación del sistema, todos losprocesos que fueron activados necesitan ser restaurados a susrespectivos puntos de recuperación y los datos modificados (en elalmacenamiento secundario) por los procesos necesitan ser restaurados asu estado apropiado.

Hay dos formas de implementar unarecuperación de error hacia atrás, a saber, el enfoque basado en laoperación y el enfoque basado en estado. Estos enfoques son explicadosen el contexto de el siguiente sistema modelo.

Sistema modelo.El sistema que adoptamosconsiste de una máquina simple. La máquina esta conectada a un sistemade almacenamiento secundario y a un sistema de almacenamiento estable(ver figura 1.1.). Un almacenamiento que no

pierde información en unevento de falla del sistema es conocido como un almacenamiento estable.Cuando un proceso accesa a un objeto dato almacenado en un mediosecundario, el objeto dato es traído a la memoria principal si este nose encuentra ya en la memoria. Si el acceso es una operación escribir,la copia del objeto en la memoria principal es actualizada. El objetodato es eventualmente actualizado cuando la copia del objeto en lamemoria principal es liberado al disco por el esquema de paginación ocuando el proceso de actualización del objeto termina. El almacenamientoestable es usado para almacenar los registros históricos y los puntosde recuperación. El contenido de ambos, almacenamiento secundario yalmacenamiento estable pueden sobrevivir a las fallas del sistema. Sinembargo, el contenido del almacenamiento estable es mucho más seguro queel almacenamiento secundario. Se asume que los datos en elalmacenamiento secundario son periódicamente archivados.

Figura 1.1.Máquina que está conectada a un sistema de almacenamiento secundario y a un sistema de almacenamiento estable.

Enfoque basado en la operación

En el enfoque basado en laoperación, todas las modificaciones que son hechas al estado de unproceso son registrados con suficiente detalle, así los estados previosdel proceso pueden ser restaurados dando marcha atrás a todos loscambios hechos al estado. El registro de la actividad del sistema esconocido como registro histórico.

Considere un entorno basado entransacciones donde las transacciones modifican una base de datos. Ental ambiente es deseable tener la capacidad de comprometer o deshacerlas modificaciones realizadas por una transacción. El comprometer(commit) es una acción la cual indica que el proceso o la transacción deactualización se ha completado con éxito, y por lo tanto los cambioshechos a la base de datos pueden ser permanentes. Note que incluso antesde comprometer una transacción, si se modificó pudo haber sidoregistrada en la base de datos por el esquema de paginación. Por lotanto, si una transacción no ha sido comprometida, la actualización dela base de datos podrá deshacerse. Por otro lado, si una parte de labase de datos se pierde por un error de medio de almacenamiento, deberíaser posible reconstruir esa parte.

Protocolo de escritura inmediata (Updating-in-place)

Bajo este esquema de actualizaciónde escritura inmediata, cada operación de actualización (escritura) a unobjeto, se actualiza el objeto y los resultados en un registro segraban en un medio de almacenamiento estable, el cuál, al final de lasoperaciones, tendrá suficiente información para deshacer y rehacercompletamente las operaciones. La información registrada incluye: (1) Elnombre del objeto, (2) El estado antiguo del objeto (usado paradeshacer) y (3) El nuevo estado del objeto (usado para rehacer).

Una operación de actualización recuperable puede ser implementada como una colección de operaciones como sigue:

Operaciónhacer, la cual hace la acción (actualización) y la escribe en el registro histórico.

Operacióndeshacer, la cual, dado un registro histórico escrito por una operación hacer, deshace la acción realizada por la operación hacer.

Operaciónrehacer, la cual, dado un registro histórico escrito por una operación hacer, rehace la acción especificada por la operación hacer.

Operación opcionalvisualización, la cual visualiza el registro histórico.

Cuando una transacción no estácomprometida o falla, los cambios hechos por la transacción a la base dedatos pueden deshacerse, usando operacionesdeshacer(undo). Por otro lado, si una porción de la base de datos va a ser reconstruida, entonces se utiliza la operaciónrehacer(redo) sobre la porción guardada previamente de la base de datos.

El principal problema con la actualización inmediata es que la operaciónhacerno se puededeshacer, si el sistema se dañadespués de una operación de actualización pero antes de que el registrohistórico sea almacenado. Este problema es resuelto por el protocolo deescritura de registro anticipado (write-ahead-log).

Protocolo de escritura de registro anticipado

En el protocolo de escritura deregistro anticipado, una operación de actualización recuperable seimplementa por las siguientes operaciones:

Actualización de un objeto solo después de que el registrodeshaceres guardado.

Antes de comprometer la actualización, los registrosrehacerydeshacerson guardados.

Al reiniciar el sistema después del fallo (de hardware o alguna otra razón), puede ser necesariodeshacerlos cambios hechos por latransacción que estaba en progreso al momento que ocurrió el fallo. Porotro lado, en el reinicio, las operaciones derehacerpodrían haber sidorealizadas si los objetos actualizados estuvieron en la memoriaprincipal en el momento en que falló el sistema. Por lo tanto, ambasacciones dedeshaceryrehacerdeberían trabajarcorrectamente, aun bajo fallas repetitivas, si los protocolosactualización al momento o de escritura de registro anticipado sonusados. Note que también la escritura del registro histórico en cadaoperación de actualización es caro en términos de requerimiento dealmacenamiento y la CPU sufre de sobrecarga innecesaria especialmente silos fallos son raros.

Enfoque basado en estado

En el enfoque basado en estado, parala recuperación, el estado completo de un proceso es guardado cuando seestablece un punto de verificación y la recuperación de un procesoinvolucra reincorporarle el estado guardado y reiniciar la ejecución delproceso desde ese estado. Al proceso de guardado del estado también sele conoce como tomar un punto de verificación. El punto de recuperación,en los que se encuentra un punto de verificación a menudo se le refierecomo punto de revisión. Al proceso de restauración de un proceso a unestado anterior se le refiere como rolar al procesos hacia atrás(rolling back), y el proceso de reiniciar la ejecución en un estadoanterior consume tiempo de CPU y retarda la terminación del proceso, espreferible retroceder a un estado más reciente tanto como sea posible.Por lo tanto, se acostumbra establecer muchos puntos de revisión.

Página sombra.Un caso especial delenfoque de recuperación basado en estado es la técnica basada en páginassombra. Bajo esta técnica, solo una parte del estado del sistema esguardado para facilitar la recuperación. Sin embargo cuando un procesoquiere modificar un objeto, la página que contiene al objeto esduplicada y mantenida en un medio estable. Desde este punto en adelante,solo una de las copias recibirá todas las modificaciones hechas por elproceso. La otra copia no modificada es conocida como página sombra. Siel proceso falla, la copia modificada es descartada y se restablece labase de datos en el estado anterior. Si el proceso se comprometióexitosamente, entonces la página sombra es descartada y la páginamodificada es hecha parte de la base de datos.

ELEMENTOS DE LAS ESTRATEGIAS TOLERANTES A FALLAS.

Un sistema puede ser diseñado paraque sea tolerante a falla desde dos puntos de vista. Un sistema puedeocultar la falla

o puede en caso de ocurrir una falla corregirla yseguir funcionando. Cuando el sistema se diseña para ocultar la falla,cuando ocurre una falla continua con sus funciones específicas. Por otrolado un sistema diseñado para corregir una falla puede o no ejecutarfunciones específicas, sin embargo, puede seguir acciones pararecuperación. Estrategia tolerante a fallas

Redundancia.Con este enfoque, elsistema puede emplear varios procesos, muchos componentes de hardware,muchas copias de datos, etc. Cada uno con independencia en el modo de lafalla, (es decir, si un componente falla no afecta la operación de otrocomponente).

Técnica para sistemas tolerantes a fallas.

Protocolo de compromiso. Protocolo de elección.

La primera técnica se utiliza parasistemas que pueden hasta cierto punto corregir las fallas y el segundo,el protocolo de elección, es utilizado para sistemas que oculten lasfallas.

Efectos de las fallas más comunes.

Un proceso muere.Cuando un proceso muere,es importante que los recursos asignados al proceso sean recuperados, deotra manera pueden estar perdidos permanentemente.

La máquina falla.Cuando una máquina falla,todos los procesos ejecutándose en esa máquina se mueren. La diferenciacon el caso anterior es, como detectar la falla.

La red falla.Una falla de enlace de comunicación puedeparticionar la red ensub-redes, haciendo imposible la

comunicación entre nodos localizadosen sub-redes diferentes. Un proceso no puede notar la diferencia entreuna falla de máquina y una falla de enlace de comunicación, dependiendode la red, en algunos casos se pueden detectar falla de máquina. En lasredes que no detectan falla de máquina (Ethernet), el diseño tolerante afalla debe asumir que la máquina puede estar en operación y que losprocesos en ella están activos. Acciones atómicas y compromiso

La actividad de un sistema esgobernada por una secuencia de primitivas u operaciones atómicas queejecuta permanentemente. Generalmente, una instrucción a nivel demáquina, es indivisible, instantánea, y no puede ser interrumpida (amenos que ocurra una falla), corresponde a una operación atómica. Sinembargo es deseable disponer de un conjunto de instrucciones quecompletan una cierta tarea y hacemos que este grupo sea una operaciónatómica.

El concepto de acción atómica seextiende al concepto de atomicidad desde un nivel de instrucción demáquina hasta una secuencia de instrucciones o un grupo de procesos loscuales deben ellos mismos ser ejecutados atómicamente. Las accionesatómicas forman un bloque básico en la construcción de operacionestolerantes a fallas.

Una transacción agrupa una secuenciade acciones (sobre una base de datos) y al grupo se le trata como unaacción atómica que mantiene la consistencia de la base de datos.

En los sistemas distribuidos, variosprocesos pueden coordinarse para ejecutar una tarea. Sus acciones debenser atómicas con respectos a los otros procesos. Como ejemplo, en unsistema de base de datos distribuidos, una transacción debe procesarseen cada sitio o en ninguno para mantener la integridad de la base dedatos. Esto es atomicidad global. El protocolo que permite unaatomicidad global es el protocolo de compromiso.

Protocolo de compromiso de dos fases

Este protocolo asume que uno de losprocesos cooperativos actúa como coordinador, otros procesos se lesrefiere como subordinados (se asume que los subordinados se ejecutan endiferentes sitios). Éste protocolo asume que se dispone de un medio dealmacenamiento estable en cada sitio y que se encuentra activo elprotocolo de escritura de registro anticipado. Al inicio de latransacción, el coordinador envía el mensaje “inicio de transacción” acada subordinado.

Fase 1. En el sitio del coordinador.

El coordinador envía el mensaje “solicitud de compromiso” a cada subordinado, para solicitarles el compromiso.

El coordinador espera la respuesta de todos los subordinados.

En cada sitio subordinado.

Al recibir el mensaje “solicitud decompromiso”, un subordinado toma las siguientes acciones. Si latransacción ejecutándose en su sitio termina satisfactoriamente, escribelos registrosdeshaceryrehaceren un medio estable y envía un mensaje “de acuerdo” al coordinador. En otro caso, envía el mensaje “abortar” al coordinador.

Fase 2. En el sitio del coordinador.

Si todos los subordinados responden“de acuerdo” y el coordinador también está de acuerdo, entonces elcoordinador escribe el registro “compromiso” en el registro histórico.Luego envía el mensaje “compromiso” a todos los subordinados. En otrocaso, el coordinador envía el mensaje “abortar” a todos lossubordinados.

El coordinador espera un mensaje de “reconocimiento” de cada subordinado.

Si el mensaje “reconocimiento” no esrecibido por el coordinador después de un período de tiempo, elcoordinador reenvía el mensaje “compromiso/abortar” a los subordinados.

Si se reciben todos los “reconocimientos”, el coordinador escribe el registro “completo” al registro histórico.

En cada sitio subordinado.

Al recibir el mensaje “compromiso”,un subordinado libera todos los recursos, ejecuta la transacción y envíaun “reconocimiento”.

Al recibir el mensaje “abortar”, un subordinado deshace la transacción utilizando el registrodeshacer, libera todos los recursos, y envía un “reconocimiento”.

Cuando no hay fallas ni pérdidas de mensajes, es fácil ver que todos los sitios se comprometerán incluyendo al coordinador.

Protocolo de compromiso en presencia de fallas de sitio

Suponga que el coordinador fallaantes de escribir el registro “compromiso”. En la recuperación, elcoordinador difunde el mensaje “abortar” a todos los subordinados. Todoslos subordinados que estaban de acuerdo con el compromiso simplementedeshacen la transacción utilizando el registrodeshacery abortan. Otrossubordinados solamente abortarán la transacción. Note que todos lossubordinados se bloquean mientras no reciban el mensaje “abortar”. Suponer que el coordinador falladespués de escribir el registro “compromiso” pero antes de escribir elregistro “completo”. En la recuperación, el coordinador difunde elmensaje “compromiso” a todos los subordinados y espera elreconocimiento. En este caso también los subordinados se bloqueanmientras no reciban el mensaje “compromiso”.

Suponer que el coordinador falladespués de escribir el registro “completo”. En la recuperación, no haynada que pueda ser hecho por la transacción.

Si un subordinado falla en la fase1, el coordinador puede abortar la transacción porque no recibe ningunarespuesta del subordinado fallido.

Suponer que un subordinado falla en la fase 2, esto es, después de escribir los registrosdeshaceryrehacer. En la recuperación, elsubordinado debe consultar con el coordinador si debe abortar (es decir,si debe ejecutar una operacióndeshacer) o comprometer la transacción. Note que el comprometer significa realizar una operaciónrehacerporque el subordinado pudo fallar antes de actualizar la base de datos.

En el caso de falla en latransmisión de mensajes, el protocolo de dos fases perderá mucho tiempoenviando mensajes y posiblemente la transacción no se ejecute. Elprotocolo de compromiso de dos fases garantiza la atomicidad global, suprincipal desventaja es que es un protocolo con bloqueo, existe otroprotocolo de compromiso sin bloqueo el cual se sale del alcance de estematerial. Protocolo de elección Una técnica común la cual proveetolerancia a fallas en sistemas distribuidos es la replicación de datosen múltiple sitios. Si un sitio no esta disponible, los datos se puedenobtener de otras copias en otros sitios. El protocolo de compromisopuede ser utilizado para actualizar múltiples copias de datos, pero noes resistente en el caso de que se presenten múltiples fallas de sitios,fallas del medio de comunicación y fraccionamiento de red. En elprotocolo de compromiso, cuando un sitio no es recuperable, elcoordinador envía mensajes en repetidas ocasiones y eventualmente decideabortar la transacción, por ello se niega el acceso a los datos. Sinembargo, es deseable que un sitio continúe operando aunque otros tenganfallas, o por lo menos, un fragmento debe seguir funcionado cuando elsistema se ha fragmentado. Una bien conocida técnica para el manejo dedatos replicados es el mecanismo de elección. Con el mecanismo deelección, a cada replica se le asigna algún número de votos y un procesodebe reunir la mayoría de votos antes de que pueda acceder a unareplica. El mecanismo de elección es más tolerante a fallas que elprotocolo de compromiso en el sentido de que permite el acceso a datosbajo fragmentación de red, fallas de sitios y pérdida de mensajes con elcompromiso de mantener la integridad de los datos. Existen dos métodosde elección, el método estático y el dinámico, en este materialabarcaremos solamente el método de elección estático.

Protocolo de elección estático Sistema modelo.Las replicas se almacenanen sitios diferentes. Cada operación de acceso a archivo debe obtener unbloqueo apropiado. El bloqueo otorga reglas que permiten: “unaescritura y ninguna lectura” o “múltiples lecturas y ninguna escritura”en el acceso simultáneo a archivos. Se asume que cada sitio tiene unmanejador de bloqueo que ejecuta las operaciones relacionadas albloqueo, y a cada archivo se le asocia un número de versión, el cual nosdice el número de veces que un archivo ha sido actualizado. El númerode versión se almacena en un medio estable, y cada operación deescritura exitosa en una replica, actualiza su número de versión.

Idea básica.La esencia del algoritmode elección el cual controla el acceso a datos replicados es como sigue:A cada replica se le asigna un cierto número de votos. Esta informaciónse almacena en un medio estable. Se permite una operación de lectura oescritura si se obtiene un cierto número de votos, quórum de lectura oquórum de escritura, respectivamente, de los procesos participantes.

Cuando un proceso ejecutándose en el sitioirealiza una solicitud de operación de lectura o escritura a un archivo, se inicia el siguiente protocolo:

El sitioihace una solicitud de bloqueo al manejador local.

Cuando se acuerda la solicitud, el sitioienvía un mensaje de “solicitud de voto” a todos los sitios.

Cuando un sitiojrecibe el mensaje“solicitud de voto”, hace una solicitud de bloqueo al manejador debloqueo local, si se acuerda la solicitud de bloqueo, entonces devuelveel número de versión de su replica (VNj) y el número de votos asignados a la replica (Vj) al sitioi.

El sitioidecide tiene o no el quórum, basándose en las respuestas recibidas en tiempo de la siguiente manera (Pdenota el conjunto de sitios que respondieron).

Seavel número total de votos asignados a todas las copias. Los valores parar(quórum de lectura) yw(quórum de escritura) son seleccionados de tal manera que:

r+w>v;

w>v/2

Si la solicitud fue de lectura, entonces el total de votos obtenido es: vr= Sumavk, dondekєP.

Si la solicitud fue de escritura: El quórum de escritura es igual a la suma de votos del conjuntoQ, dondeQse determina de la siguiente manera:

vw= Sumavk, kєQ

SeaM= max {VNj : jεP},Q= {jεP : VNj=M} si su copia de archivo está actualizada. La copia está actualizado si el número de versión es igual aM. Si la copia no estaactualizada, la copia actualizada se obtiene de un sitio que la tengaactualizada. Una vez que la copia actualizada se tiene localmente, elsitioiejecuta el siguiente paso.

Si la solicitud es de lectura, el sitioi, lee la copia local. Si la solicitud es de escritura, el sitioiactualiza la copia local . Una vez que

todos los accesos a la copia han concluido, el sitioiactualizaVNiy envía todas las actualizaciones yVNia todos los sitios enQ. Notar que la operación de escritura actualiza solamente las copias actualizadas. Después el sitioihace una solicitud de liberación de bloqueo a su manejador de bloqueo local y a todos los sitios enP.

Todos los sitios que reciben laactualización la ejecutan en sus copias locales, y al recibir unasolicitud de liberar bloqueo liberan el bloqueo.

Los valores seleccionados pararywcombinado con la idea de que las operaciones de escritura actualizan solamente las copias actualizadas garantiza lo siguiente:

Ninguna copia obsoleta es actualizada por una operación de escritura.

Existe un subconjunto de replicas que están actualizadas cuyos votos totales sonw.

El quórum de escriturawes los suficientemente grande tal que no permite escrituras simultáneas sobre dos subconjuntos distintos de replicas.

TECNOLOGÍA RAID: Tolerancia a fallos

Como todos sabemos no es lo mismo una pequeña red de PC,s que podamos tener en casa, que una red corporativa de una gran empresa en la que los PC,s se cuentan por cientos y los servidores por decenas. Cuando en casa tenemos un problema con el PC y la solución mas sencilla es restaurar el sistema operativo junto con los programas que manejamos mas habitualmente ademas de nuestros documentos personales, el único problema que se nos plantea es calcular el tiempo que vamos a necesitar para la reinstalación del equipo y ver si tenemos a mano los drivers de todos los elementos hardware que tenemos instalados. En cambio, si el fallo se produjese en un servidor de un hospital, por ejemplo, podría dejar sin funcionamiento todo un sistema de asignación de ambulancias, citaciones, horarios de quirófanos, etc… Para evitar semejante caos es necesario que un equipo informático o mejor todavía, toda una red sea capaz de poder superar una situación de fallo que provoque pérdida de información y por consiguiente caos y perdida de rendimiento y dinero para la empresa u organización. Al conjunto de medidas empleadas para evitar la perdida de información en equipos informáticos debido a

errores técnicos se le denomina “Tolerancia a Fallos” o lo que es lo mismo, capacidad de superar un fallo técnico sin que se produzcan pérdidas de información y seguir funcionando como si nada hubiese pasado. Dichas medidas se engloban en medidas software y medidas hardware. Medidas Software Las medidas Software empleadas para evitar perdidas de información las podemos encontrar en el propio sistema operativo (Windows NT Server por ejemplo) o en programas específicos diseñados para prevenir y avisar de posibles fallos en los equipos u orientados a salvaguardar la información de los discos en otros elementos externos tales como CD,s CINTAS o Disco Magneto-ópticos. Tomando como ejemplo Windows NT 4.0 Server podemos observar que este sistema operativo posee capacidad para un restablecimiento del sistema en caso de que se produzca un fallo del disco o discos duros, para recuperar datos perdidos en ficheros, para realizar una recuperación del sistema ante un fallo de configuración y sobre todo, posee un sistema de alarmas que avisan de un posible error hardware antes de que éste deje a la máquina inoperativa. Estas capacidades podemos encontrarlas entre otros sitios, en el Visor de Sucesos del Sistema Operativo o en la Administración de la energía eléctrica / SAI a la que está conectada la máquina. Ejemplo de aplicaciones destinadas a garantizar la integridad de la información de uno o varios discos pueden ser aplicaciones de chequeo del equipo (Sisoft SANDRA 2000, CheckIT 5.0, QAplus), aplicaciones de copias de Seguridad (WinZip, WinRAR, Windows Backup, PCBackup) o aplicaciones para generar imágenes de disco que copien exactamente y sin ningún tipo de variación el contenido de los discos seleccionados en otros dispositivos tales como CDROM, Discos Zip, Magneto-ópticos CINTAS, etc.. con el fin de garantizar una restauración exacta del sistema en caso de fallo. Como hemos visto anteriormente, ciertos sistemas operativos son capaces de hacer un seguimiento preventivo de la maquina donde están instalados pero, ¿son capaces de reparar un disco estropeado, recuperar la información y seguir funcionando como si nada hubiese pasado? Evidentemente No, por lo que en un caso de error hardware debemos apoyarnos además de las medidas software, en ciertas medidas hardware que garanticen una salida a este tipo de fallos. Medidas Hardware En medidas hardware se engloban todos aquellos dispositivos que han sido diseñados con el fin de evitar perdidas de información por errores de la máquina donde están instalados o por causas ajenas a ésta, tales como los fatídicos cortes de energía eléctrica. Dichos dispositivos, como norma general, se usan sólo en entornos corporativos aunque desde hace un tiempo parece ser que la tendencia del mercado es introducirlos en el hogar del usuario domestico con el fin de, por supuesto, vender mas pero también de “hecha una mano” a todas aquellas personas que hoy comienzan a usar el PC de casa para trabajar.

SAI : La energía de reserva La SAI (Sistema de Alimentación Ininterrumpida) también conocida con las siglas inglesas UPS es quizá uno de los dispositivos RAID más célebres que se han introducido en nuestras casas. No es mas que una batería recargable que detecta las altas y bajas tensiones de la red eléctrica y los cortes completos de ésta, proporcionando al PC una tensión estable en todo momento y durante un tiempo determinado que depende del modelo de SAI con el fin de evitar averías técnicas y por supuesto, evitar perdidas de información debido a irregularidades del fluido eléctrico. Para que os hagáis una idea, seguramente muchos de vosotros habréis “sufrido” algún corte de luz que os ha dejado sin ese preciado trabajo que estabais haciendo o ha echado por tierra vuestra impresionante partida de Unreal, Quake o Hexxen porque no la habías grabado. Pues bien todos estos problemas desaparecen con la SAI y su capacidad de proporcionar energía eléctrica durante el tiempo suficiente para que podamos grabar nuestro trabajo y apagar el equipo de forma correcta. Se trata de un elemento que no requiere mantenimiento y que en algunos modelos incluye un conector para el cable telefónico del modem con lo que también protege a éste de las sobretensiones de la línea telefónica. Dispositivos de almacenamiento Bajo ese nombre un tanto abstracto y gris se esconden todos aquellos dispositivos en los que podemos almacenar información del PC para que ésta quede grabada de forma externa a la máquina y pueda ser recuperada en caso de fallo. Alguien podría preguntar si se pueden incluir los disquetes de 3½ en este apartado. Bajo mi opinión NO pueden incluirse porque aunque son dispositivos de almacenamiento externo, son extremadamente delicados y pequeños por lo que no cumplen ninguna de las dos características fundamentales de estos dispositivos: primera, seguridad y fiabilidad a la hora de guardar la información y segunda, poseer un tamaño que permita guardar gran cantidad de información en el menor número de discos o cintas posible. Dispositivos de almacenamiento pueden ser Grabadoras / Regrabadoras de CD,s, unidades Zip, Jaz, Magneto-ópticas o unidades de cinta. De todos éstos el único dispositivo exclusivo para almacenar copias de seguridad son las cintas ya que su elevado coste y fiabilidad las hacen casi exclusivas para la empresa. Por el contrario, como todos sabemos, el resto de dispositivos los podemos usar para guardar cualquier tipo de información que queramos a parte de usarlas como dispositivos de copia de seguridad.

Tolerancias de Fallas
III. Introducción

La tolerancia a fallos es un aspecto crítico para aplicaciones a gran escala, ya que aquellas simulaciones que pueden tardar del orden de varios días o semanas

para ofrecer resultados deben tener la posibilidad de manejar cierto tipo de fallos del sistema o de alguna tarea de la aplicación. Sin la capacidad de detectar fallos y recuperarse de estos, dichas simulaciones pueden no llegar a completarse. Es más, algunos tipos de aplicaciones requieren ser ejecutadas en un entorno tolerante a fallos debido al nivel de seguridad requeridos. De cualquier forma, en ciertos casos debería haber algún modo de detectar y responder automáticamente a ciertos fallos del sistema o al menos ofrecer cierta información al usuario en el caso de producirse un fallo. Actualmente, el ámbito de aplicación de las técnicas de tolerancia a fallos se ha extendido a todos aquellos contextos en los que el funcionamiento incorrecto de un computador, o de una de sus partes, puede comportar importantes pérdidas humanas y/o económicas. Así pues, una buena solución informática debe, entre otras muchas cosas, ser fácil de utilizar y mantener, y en caso de problemas, debe ofrecer un comportamiento seguro y robusto, asegurando la continuidad del servicio ofrecido (es decir, tolerando la ocurrencia del problema) u ofreciendo un procedimiento de parada (o avería) del sistema controlado y, en la medida de lo posible, inocuo tanto para los usuarios, como para sus datos y operaciones. Como todos sabemos no es lo mismo una pequeña red de PC,s que podamos tener en casa, que una red corporativa de una gran empresa en la que los PC,s se cuentan por cientos y los servidores por decenas. Cuando en casa tenemos un problema con el PC y la solución mas sencilla es restaurar el sistema operativo junto con los programas que manejamos mas habitualmente ademas de nuestros documentos personales, el único problema que se nos plantea es calcular el tiempo que vamos a necesitar para la reinstalación del equipo y ver si tenemos a mano los drivers de todos los elementos hardware que tenemos instalados. En cambio, si el fallo se produjese en un servidor de un hospital, por ejemplo, podría dejar sin funcionamiento todo un sistema de asignación de ambulancias, citaciones, horarios de quirófanos, etc… Para evitar semejante caos es necesario que un equipo informático o mejor todavía, toda una red sea capaz de poder superar una situación de fallo que provoque pérdida de información y por consiguiente caos y perdida de rendimiento y dinero para la empresa u organización. Al conjunto de medidas empleadas para evitar la perdida de información en equipos informáticos debido a errores técnicos se le denomina “Tolerancia a Fallos” o lo que es lo mismo, capacidad de superar un fallo técnico sin que se produzcan pérdidas de información y seguir

funcionando como si nada hubiese pasado. Dichas medidas se engloban en medidas software y medidas hardware. Aumentar la fiabilidad de un sistema:  Prevención de fallos :se trata de evitar, antes de que el sistema entre en funcionamiento, que se introduzcan fallos  Tolerancia de fallos :se trata de conseguir que el sistema continúe funcionando aunque se produzcan fallos En ambos casos el objetivo es desarrollar sistemas con modos de fallo bien definidos. No son incompatibles El objetivo de tolerancia de fallas Se caracteriza por dividirse en tres fases. 4. Se estudian las diferentes fallas que pueden ser impredecibles o predecibles ya sea en hardware o software. 5. A continuación, se identifican y clasifican las amenazas (fallos, errores, fluctuaciones de corriente eléctrica, averías, etc) que son susceptibles de perturbar el correcto funcionamiento de de una red, centro de computo, etc. 6. En la tercera fase se detallan los distintos medios a nuestra disposición para prevenir, eliminar y/o tolerar las amenazas.

IV.

Sistema de Almacenamiento tolerante a Fallas
Las unidades de disco son dispositivos que pueden fallar con cierta facilidad como el desgaste de la cabeza de lectura por apagarlo repentinamente o por que el disco esta fragmentado, cuando sector MBR esta defectuoso. Por lo cual hay dos formas muy conocidas para tolerancia de fallas para los discos: instalando discos de copias de seguridad (backup) y la otra forma es instalando unidades RAID. Copias de Seguridad (backup) Esta opción la tienen muchos ordenadores, en la cual existen dos discos: principal del cual se hará una copia a la que llamaremos disco imagen o espejo estos discos estarán conectados por una controlador de disco o adaptador SCSI. *SCSI: (Small Computer System Interface)

Interfaz estándar para transferencia de datos entre periféricos en el bus de la computadora. Tanto la placa madre como el dispositivo deben soportar y disponer de un controlador SCSI. Es utilizado especialmente en dispositivos como los discos duros CD/DVD, etc., aunque, en principio, cualquier dispositivo podría soportar el SCSI, como impresoras o escáneres. El SCSI se utiliza en computadoras que necesitan de alto rendimiento. La compatibilidad para dispositivos SCSI puede agregarse a través de una tarjeta de expansión a la placa madre. Dos interfaces SCSI pueden ser incompatibles pues existen muchas variantes (incluso aunque esté estandarizado en ANSI). El sucesor del SCSI paralelo es el SAS Características de SCSI paralelo El SCSI básico permite conectar hasta 8 dispositivos, y el más avanzado 16. El más básico permite transferencias de 5 MB/s y el más rápido 640 MB/s. Intefaz SCSI-1 Fast SCSI FastWide SCSI Ultra SCSI Ultra Wide SCSI Ultra2 SCSI Ultra2 Wide SCSI Ultra3 SCSI Ultra-320 SCSI Conector IDC50; Centronics C50 IDC50; Centronics C50 2 x 50-pin (SCSI-2) 1 x 68-pin (SCSI-3) IDC50 68-pin 50-pin 68-pin; 80-pin (SCA/SCA-2) 68-pin; 80-pin (SCA/SCA-2) 68-pin; 80-pin (SCA/SCA-2) Reloj 5 MHz 10 MHz 10 MHz 20 MHz 20 MHz 40 MHz 40 MHz 40 MHz DDR 80 MHz DDR Máximos Longitud Dispositivos 6m 1,5 a 3 m 8 8

Velocidad 5 MB/s 10 MB/s

20 MB/s

1,5 a 3 m

16

20 MB/s 40 MB/s 40 MB/s 80 MB/s

1,5 a 3 m 1,5 s 3 m SD SD

8 16 8 16

160 MB/s

SD

16

320 MB/s

SD

16

Ultra-640 SCSI

68-pin; 80-pin

160 MHz DDR

640 MB/s

?

16

Estándares SCSI y tipos de conexiones SCSI - 1 Es un estándar obsoleto, creado a mediados de los 80´s. Usaba un bus de 8 bits con drivers de colector abierto single-ended (asimétricos), con los cuales se realizaban transferencias asíncronas de datos y comandos. Los drivers (y receptores) fueron fabricados con tecnología bipolar con lo cual la mayor consideración se pone al Bus de DC y la terminación pasiva. Utiliza conectores internos y externos de baja densidad con 50 pines, al conector externo de baja densidad se le conoce como conector Centronics o conector SCSI-1. SCSI - 2 Es un estándar completo que define las capas física y de protocolo, el cual utiliza transferencias asíncronas de comandos y transferencias síncronas de datos; a velocidades de 20 Megatransferencias / segundo, es decir 10 Mbytes/sec. El SCSI-2 se define usando tecnología bipolar con colector abierto o con transceivers asimétricos de lógica negativa, terminación activa o pasiva y transcievers con bus diferencial basados en la EIA485 permitida para SCSI-2. Los conectores usados son: para tipo A, interno de baja densidad con 50 pines, externo de baja densidad tipo Centronics y el externo de alta densidad con 50 pines, llamado conector SCSi-2. Los conectores B para bus wide (de 16 bits) resultaron imprácticos ya que requerían un conector de 68 pines de alta densidad. Este estándar fue considerado poco factible debido a la estructura de sus comandos y a su interface eléctrica, finalmente terminó adoptándose hasta 1994. SCSI - 3 Es un estándar que cambió en toda su estructura, ahora cubre las capaz físicas y los protocolos básicos específicos para cada interface, la capa de comandos primarios (SPC) y la capa del protocolo específico. Esta capa del protocolo específico contiene, dentro del bloque de comandos (SBC), los comandos para interface con disco duro, el flujo de comandos para unidades de cinta (SSC), comandos del controlador para arreglos RAID (SCC), Comandos de multimedia (MMC) e incluye comandos de servicio (SES), etc.; todo esto da como resultado un modelo con estructura global (SAM). Interface paralela SCSI (SPI)

Este estándar define las conexiones eléctricas y señales del bus paralelo, su conjunto de comandos queda definido por el protocolo SPI (SCSI Interlock Protocol), el cual define el conector P de 68 pines de alta densidad para wide bus en un mismo cable y a éste se le refiere como conector SCSI-3. El estándar SPI incluye velocidades hasta de FAST SCSI (las velocidades del Wide Fast SCSI son de 20Mbytes/sec), las interfaces eléctricas son definidas en términos de tecnología CMOS con terminación a los 0.2 Volts en vez de los 0.5. El cable A se le llama SCSI-2, pero no se le incluye en la SPI (Este estándar se adopta en 1995, pero se vuelve obsoleto para julio de 1999, pasando al SPI-2). Fast - 20 Este estándar se le conoce como Ultra-SCSI y duplica la velocidad del SPI a los 20 Megatransfers/Sec, y a los 40 MB/Sec en wide bus. No es un estándar completo solo incluye la sección requerida para el Fast-20, las demás secciones usan el SPI (se adopta en 1996 y se vuelve obsoleto para 1999, pasando al SPI-2). SPI - 2 Conocido como Ultra2-SCSI, duplica nuevamente la velocidad a FAST-40, 40 Megatransfers/Sec o a 80 Mbytes/Sec en wide bus, usando una nueva interface eléctrica, de bajo voltage diferencial llamada LVD SCSI. Para velocidades arriba de Fast SCSI no se puede ser asimétrica, Este estándar incluye el SIP, con conector VHDCI de 68 pines y el conector SCA-2 (Single Connector Attachement), también se incluyen los conectores SCSI-2 A y SPI P. Este estándar es un documento completo que no hace referencias a estándares anteriores, solo una para todas las interfaces paralelas con velocidades de hasta Fast-40 (se adoptó en 1999 y reemplazó los SPI, SIP y Fast-20). SPI - 3 Nuevamente, este estándar dobla la velocidad a Fast-80DT, conocida como Ultra3 SCSI o Ultra 160 con 80 Megatransfers/Sec o 160 Mbytes/Sec en wide bus. Con este estándar se dieron muchos cambios; Fast-80DT es el único wide bus, vuelve obsoletos los HVD SCSI y el bus de datos de 32 bits con cable Q. Además, define: temporización para LVD SCSI en los flancos de subida y bajada de la señal de relog de REQ/ACK, Doble transición (DT) en wide bus, verificación por ciclo redundante (CRC), validación de dominio en SDV-TR, empaquetado de mensajes y comandos, y Quick arbitration. Este estándar es un documento que no hace referencia a ningún otro anterior y solo una referencia para toda interface paralela con velocidad de hasta Fast-80DT. Hace obsoletos los HVD, SCAM y el bus de datos de 32 bits. SPI - 4 En éste nuevamente se duplica la velocidad a Fast-160DT, se le conoce como Ultra-320 SCSI-160 Megatransfers/Sec y 320 Mbytes/Sec solo en wide bus.

EPI (Enhanced Parallel Interface) Su reporte técnico describe como diseñar sistemas SCSI, las longitudes da cables y cargas son definidas por los parámetros eléctricos donde se permite tomar ventaja de menores cargas y cables que soportan mayores velocidades de transferencia. Este reporte técnico describe como trabajar dispositivos de 68 pines (wide) y de 50 (narrow) en el mismo sistema. El EPI incluye documentación sobre "Expanders", Bridging expanders, switches y conectores comunes los cuales no están documentados en el estándar. Referencia Rápida para Cables SCSI-1 Cable externo A es el de conector Centronics de 50 pines (C50M) con espaciado de 85 mil o 2.16 mm SCS-2 Cable externo A es el de conector de alta densidad con 50 pines (MiniD50M) con espaciado de 50 mil o 1.27 mm SCSI-3 Cable externo P es el de conector de alta densidad de 68 pines (MiniD68M) con espaciado de 50 mil o 1.27 mm SCSI SPI-2 cable externo P de muy alta densidad (VHDCI), incorrectamente llamado SCSI-4 o 5, es el de conector de 68 pines VHDCI (0.8mm o 68mil) (Nota: Los SCSI-4 y 5 no son estándares, el SCSI-3 se subdividió en documentos separados.) SCSI-1, SCSI-2 cable externo A es el de cable plano con conector de 50 pines con espaciado de 100 mil o 2.54 mm SCSI-3 cable externo P es el de cable plano de alta densidad con conector de 68 pines con espaciado de 50 mil o 1.27 mm Observa si el conector de tu interface SCSI es de 50 pines; en cuyo caso se trata de un sistema narrow, o si el conector es de 68 pines; entonces es un wide.

Para determinar si tu interface es diferencial o asimétrica necesitarás un multímetro. Desconecta el cable de tu interface (Antes de DESCONECTAR el cable SCSI siempre APAGA tu computadora y dispositivos SCSI) y mide la resistencia entre los pines 2 y 24 si el conector es de 50 pines de alta densidad o centronics, entre los pines 2 y 33 si el conector es de 68 pines o entre los pines 3 y 49 si el conector es DB50. SI la medición es de unos cuantos décimos de Ohm o menos entonces tienes una interface asimétrica, si la medición es poco menos de 1 Ohm (o 1 Ohm inclusive) entonces tu interface es diferencial. Conectores SCSI

Host or Host Adapter Connector Most SCSI SLOW (5 Mbyte/sec) computers and host adapters use the Centronicstype 50-pin connector. Also some 8bit Fast computers and host adapters. Old Sun and DG Computers Many 8-bit SCSI FAST (Hasta 10 Mbytes/sec) computers and host adapters use this 50-pin HighDensity connector. Apple/Mac and some older Sun 8bit workstations . All FAST/WIDE (16-bit)

SCSI-3 computers and host adapters plus old DEC single-ended SCSI use this 68-pin High Density connector. Standard connection for systems using hot swappable drives. SCA interface drives connect to a SCSI backplane that provides power, configuratio n settings such as SCSI ID, and termination of the SCSI bus Si requieres información adicional o quieres saber si tu interface es LVD (Low Voltage Differential) lee al FAQ de Paralan, su glosario de términos sobre SCSI es muy bueno. Te recomiendo que también visites la página de Adaptec (por supuesto que todo está en inglés)

The Low Byte is sometimes called the Low Data Byte.

The High Byte is sometimes called the High Data Byte.

El presente trabajo es una compilación de información de diferentes fuentes, así que no me interesa ganar dinero de esto y el único objetivo es DIVULGAR INFORMACIÓN CONFIABLE EN NUESTRO PROPIO IDEOMA

Introducción
SCSI inició con un bus narrow (conector de 50 pines) transfiriendo un byte a la vez y creció a un bus wide (conector de 68 u 80 pines) transfiriendo 2 bytes a la vez en SCSI-3 SPI. En SPI-2 se agregó el LVD SCSI permitiendo transferencias a alta velocidad con un plan de crecimiento. El SCSI está siguiendo básicamente las reglas de las Leyes de Moore; duplica su rendimiento con cada generación. SPI-3 agregó un SCSI empaquetado con lo que se redujeron los excesos en el protocolo. El conector SCA-2 de 80 pines integró las señales de configuración y alimentación para dispositivos hot pluggin que se conectan a backplane. Estos dispositivos solo deben ser usados en sistemas con backplane. Las siete generaciones SCSI (ver tabla arriba) pueden correr en el mismo bus lógico, solo se requiere aislar el bus LVD SCSI de alta velocidad del bus lento SE o del segmento de bus HVD. Las interfaces SCSI ofrecen diferentes maneras de mejorar la conexión entre los dispositivos y los arreglos SCSI como las cajas SCSI RAID (Redundant array of independent disks) o las JBODs (Just a box of Disks). Para SCSI RAID se utiliza el protocolo Fibre channel (usa comunicación serial por twisted pair, coaxial y fibra óptica)

Estándares SCSI y tipos de conexiones
SCSI - 1 Es un estándar obsoleto, creado a mediados de los 80´s. Usaba un bus de 8 bits con drivers de colector abierto single-ended (asimétricos), con los cuales se realizaban transferencias asíncronas de datos y comandos. Los drivers (y receptores) fueron fabricados con tecnología bipolar con lo cual la mayor consideración se pone al Bus de DC y la terminación pasiva. Utiliza conectores internos y externos de baja densidad con 50 pines, al conector externo de baja densidad se le conoce como conector Centronics o conector SCSI-1. SCSI - 2 Es un estándar completo que define las capas física y de protocolo, el cual utiliza transferencias asíncronas de comandos y transferencias síncronas de datos; a velocidades de 20 Megatransferencias / segundo, es decir 10 Mbytes/sec. El SCSI-2 se define usando tecnología bipolar con colector abierto o con transceivers asimétricos de lógica negativa, terminación activa o pasiva y transcievers con bus diferencial basados en la EIA485 permitida para SCSI-2. Los conectores usados son: para tipo A, interno de baja densidad con 50 pines, externo de baja densidad tipo Centronics y el externo de alta densidad con 50 pines, llamado conector SCSi-2. Los conectores B para bus wide (de 16 bits) resultaron imprácticos ya que requerían un conector de 68 pines de alta densidad. Este estándar fue considerado poco factible debido a la estructura de sus comandos y a su interface eléctrica, finalmente terminó adoptándose hasta 1994. SCSI - 3 Es un estándar que cambió en toda su estructura, ahora cubre las capaz físicas y los protocolos básicos específicos para cada interface, la capa de comandos primarios (SPC) y la capa del protocolo específico. Esta capa del protocolo específico contiene, dentro del bloque de comandos (SBC), los comandos para interface con disco duro, el flujo de comandos para unidades de cinta (SSC), comandos del controlador para arreglos RAID (SCC), Comandos de multimedia (MMC) e incluye comandos de servicio (SES), etc.; todo esto da como resultado un modelo con estructura global (SAM). Interface paralela SCSI (SPI)

Este estándar define las conexiones eléctricas y señales del bus paralelo, su conjunto de comandos queda definido por el protocolo SPI (SCSI Interlock Protocol), el cual define el conector P de 68 pines de alta densidad para wide bus en un mismo cable y a éste se le refiere como conector SCSI-3. El estándar SPI incluye velocidades hasta de FAST SCSI (las velocidades del Wide Fast SCSI son de 20Mbytes/sec), las interfaces eléctricas son definidas en términos de tecnología CMOS con terminación a los 0.2 Volts en vez de los 0.5. El cable A se le llama SCSI-2, pero no se le incluye en la SPI (Este estándar se adopta en 1995, pero se vuelve obsoleto para julio de 1999, pasando al SPI-2). Fast - 20 Este estándar se le conoce como Ultra-SCSI y duplica la velocidad del SPI a los 20 Megatransfers/Sec, y a los 40 MB/Sec en wide bus. No es un estándar completo solo incluye la sección requerida para el Fast-20, las demás secciones usan el SPI (se adopta en 1996 y se vuelve obsoleto para 1999, pasando al SPI2). SPI - 2 Conocido como Ultra2-SCSI, duplica nuevamente la velocidad a FAST-40, 40 Megatransfers/Sec o a 80 Mbytes/Sec en wide bus, usando una nueva interface eléctrica, de bajo voltage diferencial llamada LVD SCSI. Para velocidades arriba de Fast SCSI no se puede ser asimétrica, Este estándar incluye el SIP, con conector VHDCI de 68 pines y el conector SCA-2 (Single Connector Attachement), también se incluyen los conectores SCSI-2 A y SPI P. Este estándar es un documento completo que no hace referencias a estándares anteriores, solo una para todas las interfaces paralelas con velocidades de hasta Fast-40 (se adoptó en 1999 y reemplazó los SPI, SIP y Fast-20). SPI - 3 Nuevamente, este estándar dobla la velocidad a Fast-80DT, conocida como Ultra3 SCSI o Ultra 160 con 80 Megatransfers/Sec o 160 Mbytes/Sec en wide bus. Con este estándar se dieron muchos cambios; Fast-80DT es el único wide bus, vuelve obsoletos los HVD SCSI y el bus de datos de 32 bits con cable Q. Además, define: temporización para LVD SCSI en los flancos de

subida y bajada de la señal de relog de REQ/ACK, Doble transición (DT) en wide bus, verificación por ciclo redundante (CRC), validación de dominio en SDV-TR, empaquetado de mensajes y comandos, y Quick arbitration. Este estándar es un documento que no hace referencia a ningún otro anterior y solo una referencia para toda interface paralela con velocidad de hasta Fast-80DT. Hace obsoletos los HVD, SCAM y el bus de datos de 32 bits. SPI - 4 En éste nuevamente se duplica la velocidad a Fast-160DT, se le conoce como Ultra-320 SCSI-160 Megatransfers/Sec y 320 Mbytes/Sec solo en wide bus. EPI (Enhanced Parallel Interface) Su reporte técnico describe como diseñar sistemas SCSI, las longitudes da cables y cargas son definidas por los parámetros eléctricos donde se permite tomar ventaja de menores cargas y cables que soportan mayores velocidades de transferencia. Este reporte técnico describe como trabajar dispositivos de 68 pines (wide) y de 50 (narrow) en el mismo sistema. El EPI incluye documentación sobre "Expanders", Bridging expanders, switches y conectores comunes los cuales no están documentados en el estándar. Referencia Rápida para Cables SCSI-1 Cable externo A es el de conector Centronics de 50 pines (C50M) con espaciado de 85 mil o 2.16 mm SCS-2 Cable externo A es el de conector de alta densidad con 50 pines (MiniD50M) con espaciado de 50 mil o 1.27 mm SCSI-3 Cable externo P es el de conector de alta densidad de 68 pines (MiniD68M) con espaciado de 50 mil o 1.27 mm SCSI SPI-2 cable externo P de muy alta densidad (VHDCI), incorrectamente llamado SCSI-4 o 5, es el de conector de 68 pines VHDCI (0.8mm o 68mil) (Nota: Los SCSI-4 y 5 no son estándares, el SCSI-3 se subdividió en documentos separados.) SCSI-1, SCSI-2 cable externo A es el de cable plano con conector de 50 pines con espaciado de 100 mil o 2.54 mm

SCSI-3 cable externo P es el de cable plano de alta densidad con conector de 68 pines con espaciado de 50 mil o 1.27 mm

¿Qué tipo de Interface tengo?
Lo más importante es determinar si se trata de una interface diferencial (HVD) o asimétrica (Single-ended) y se es de 16 bits (wide) o de 8 bits (narrow). Solo sigue estos pasos: Observa si el conector de tu interface SCSI es de 50 pines; en cuyo caso se trata de un sistema narrow, o si el conector es de 68 pines; entonces es un wide. Para determinar si tu interface es diferencial o asimétrica necesitarás un multímetro. Desconecta el cable de tu interface (Antes de DESCONECTAR el cable SCSI siempre APAGA tu computadora y dispositivos SCSI) y mide la resistencia entre los pines 2 y 24 si el conector es de 50 pines de alta densidad o centronics, entre los pines 2 y 33 si el conector es de 68 pines o entre los pines 3 y 49 si el conector es DB50. SI la medición es de unos cuantos décimos de Ohm o menos entonces tienes una interface asimétrica, si la medición es poco menos de 1 Ohm (o 1 Ohm inclusive) entonces tu interface es diferencial.

Conectores SCSI

Host or Host Adapter

Connector Most SCSI SLOW (5 Mbyte/sec) computers and host adapters use the Centronics-type 50-pin connector. Also some 8-bit Fast computers and host adapters.

Old Sun and DG Computers

Many 8-bit SCSI FAST (Hasta 10 Mbytes/sec) computers and host adapters use this 50-pin HighDensity connector. Apple/Mac and some older Sun 8bit workstations. All FAST/WIDE (16-bit) SCSI-3 computers and host adapters plus old DEC single-ended SCSI use this 68-pin High Density connector.
Standard connection for systems using hot swappable drives. SCA interface drives connect to a SCSI backplane that provides power, configuration settings such as SCSI ID, and termination of the SCSI bus

Si requieres información adicional o quieres saber si tu interface es LVD (Low Voltage Differential) lee al FAQ de Paralan, su glosario de términos sobre SCSI es muy bueno. Te recomiendo que también visites la página de Adaptec (por supuesto que todo está en inglés)

The Low Byte is sometimes called the Low Data Byte.

The High Byte is sometimes called the High Data Byte.

El presente trabajo es una compilación de información de diferentes fuentes, así que no me interesa ganar dinero de esto y el único objetivo es DIVULGAR INFORMACIÓN CONFIABLE EN NUESTRO PROPIO IDEOMA Definición de tarjeta controladora SCSI Es una tarjeta para expansión de capacidades que permite la conexión de varios tipos de dispositivos internos SCSI ("Small Computer System Interface"), esto es principalmente discos duros y puertos. La tarjeta controladora se inserta dentro de las ranuras de expansión ó "Slots" integradas en la tarjeta principal ("Motherboard") y se atornilla al gabinete para evitar movimientos y por ende fallas. Este tipo de tarjetas integran uno ó varios puertos para conectar los dispositivos externos tales como unidades lectoras de CD-ROM, escáneres y algunos tipos de impresoras entre otros. Actualmente se utilizan para la adaptación del estándar SCSI en las tarjetas principales (Motherborad) que carezcan de este tipo de conectividad.

Figura 1. Tarjeta controladora SCSI, marca Adaptec®, modelo 3892B365, con conector SCSI 68 terminales externo y 60 terminales interno.

Características generales de la tarjeta controladora SCSI + Se utilizan en tarjetas principales para poder adaptar la tecnología de discos duros y puertos SCSI a una tarjeta con tecnología de conectores IDE. + Cuentan con un conector especial que permite insertarlas en las ranuras de expansión de la tarjeta principal. + Estos dispositivos son muy utilizados para grandes servidores de grandes empresas principalmente. + Existen tarjetas principales con conectores SCSI integrados, por lo que se puede prescindir de la controladora.

Dispositivos internos que puede manejar la tarjeta controladora SCSI + Dispositivos de almacenamiento magnético: principalmente discos duros y algunos tipos de unidades ópticas lectoras de CD-ROM.

Figura 2. Disco duro interno SCSI de 3.5", interno para computadora de escritorio, marca Maxtor® 68 Pines, capacidad 36 GB,

Partes que componen la tarjeta controladora SCSI Los componentes son visibles, ya que no cuenta con cubierta protectora; son básicamente los siguientes:

1.- Panel de conector SCSI: tienen la función de interconectar los discos duros y unidades ópticas tipo SCSI con la tarjeta principal ("Motherboard"). 2.- Tarjeta: es la placa plástica sobre la cuál se encuentran montados todos los chips y circuitos. 3.- Conector para la ranura: es el encargado de transmitir datos entre los puertos de la tarjeta y la tarjeta principal ("Motherboard"). 4.- Placa de sujeción: es metálica y permite soportar los puertos así como la sujeción hacia el chasis del gabinete. 5.- Puerto: permite la conexión de dispositivos externos SCSI con la tarjeta y su respectiva comunicación con la tarjeta principal ("Motherboard"). Figura 3. Esquema de partes de la tarjeta controladora SCSI. Partes de la tarjeta controladora IDE y sus partes.

Tipos de conectores para las ranuras Se muestran los conectores comenzando con los mas recientes y su respectiva ranura de expansión, hasta los mas antiguos. - PCI ("Peripheral Components Interconect"): integra una capacidad de datos de 32 bits y 64 bits para el microprocesador Intel® Pentium, tiene una velocidad de transferencia de hasta 125.88 Megabytes/s (MB/s) a 503.54 MB/s respectivamente, cuentan con una velocidad interna de trabajo de 33 MHz para 32 bits y 66 MHz para 64 bits. - ISA-16 ("Industry Standard Architecture - 16"): maneja datos a 16 bits, tienen una velocidad de transferencia de hasta 20 Megabytes/s (MB/s), cuentan con una velocidad interna de trabajo de 4.77 MHz, 6 Mhz, 8 MHz y 10 MHz. - ISA-8 ("Industry Standard Architecture - 8"): maneja datos a 8 bits, tiene una velocidad de transferencia de hasta 20 Megabytes/s (MB/s) y cuentan con una velocidad interna de trabajo de 4.77 MHz, 6 Mhz, 8 MHz y 10 MHz. Conect or Descripci ón Conector de la tarjeta y su respectiv a ranura Conector de la tarjeta y su respectiv a ranura Imagen

PCI

ISA 16

ISA 8

Conector de la tarjeta y su respectiv a ranura

Puertos que puede manejar la tarjeta controladora SCSI Hay varios tipos de puertos y estándares SCSI, se muestra 1 de los mas comunes: Nombre del puerto SCSI 68

Usos Para conectar unidades lectoras de cintas, impresoras y escáneres.

Esquema

Versiones del estándar SCSI para tarjetas y dispositivos + SCSI-I: cuenta con una velocidad de transferencia de datos de 5 MB/s, cuenta con un conector de 50 pines para los dispositivos y soporta 7 de ellos. + SCSI-II: cuenta con una velocidad de transferencia de datos de 10 MB/s, cuenta con un conector de 50 pines para los dispositivos y soporta 7 de ellos. + UltraSCSI ó SCSI III: cuenta con una velocidad de transferencia de datos de 20 MB/s, cuenta con un conector de 50 pines y alta densidad para los dispositivos y soporta 7 de ellos. + Ultra WideSCSI: cuenta con una velocidad de transferencia de datos de 40 MB/s, cuenta con un conector de 68 pines y alta densidad para los dispositivos y soporta 15 de ellos. + Ultra 2 SCSI: cuenta con una velocidad de transferencia de datos de 80 MB/s, cuenta con un conector de 68 pines y alta densidad para los dispositivos y soporta 15 de ellos.

Usos específicos de la tarjeta controladora SCSI Se usa en los siguientes casos: a) Para utilizar tecnología SCSI en una tarjeta principal con conectores IDE. b) Si se necesita alta velocidad de transmisión de datos entre el disco duro y el resto del sistema.

c) Si las características de la placa no tienen la capacidad requerida por el usuario.

6.3.1 Interfaz SCSI: Aspectos físicos
§1 Sinopsis

Con objeto de que el lector pueda tener una visión lo más cercana posible al hardware que se encontrará cuando tenga que habérselas con un dispositivo SCSI, comentamos a continuación algunas de las características físicas más sobresalientes de estos dispositivos.
§2 Cables

Una característica especial de esta interfaz, que la distingue de otras. Por ejemplo, ATA/IDE, es que los dispositivos pueden estar dentro del equipo (en la misma caja que la placa-base) o fuera, como dispositivos externos (esta característica ha sido copiada por la interfaz Serial-ATA). En uno y otro caso se suelen utilizar cables de tipo distinto. Los dispositivos internos se conectan a un bus de cable plano. Este cable suele terminar en un conector en la parte posterior del equipo en el que se puede conectar una prolongación externa. El conductor correspondiente al pin 1 del conector suelen estar pintado de rojo. Los cables externos son redondos y apantallados, formados por 25 o 34 pares trenzados y organizados en capas. Situando al interior los que transmiten señales de mayor velocidad (REQ y ACK); las líneas de control en una capa intermedia, y las de datos en la capa exterior. Lás páginas adjuntas muestran las disposiciones de pares y asignación de pines en cables externos de 68 y 50 conductores respectivamente ( SE/HDV68 SE/HDV-50). Nota: La pantalla debe ser conectada a la carcasa del conector, pero no a las líneas de tierra de las señales SCSI.

§3 Extensores

Las distintas tecnología y tipos de cables empleados (medios físicos de transporte), hacen que en ocasiones, sea necesario conectar dispositivos de distinto tipo. También puede presentarse la necesidad de ampliar la distancia de ciertos dispositivos externos sobre la máxima permitida. Para resolver el problema se utilizan dispositivos especiales denominados extensores ("expanders"); regeneradores (de señal), y convertidores, que pueden realizar distintas funciones. El esquema de utilización se muestra en las figuras adjuntas [1]. Disponen de su propia fuente de alimentación para los circuitos convertidores & amplificadores de señal.
§4 Terminadores de BUS

Como muchos otros buses (por ejemplo Ethernet de cable coaxial), los buses SCSI requieren de ciertos adaptadores de impedancia en sus extremos, que mitiguen o anulen la capacidad de reflexión de las señales que se origina en los dispositivos de transmisión (especialmente en los de alta frecuencia). En el bus SCSI, los terminadores pueden ser de varios tipos:

Terminador pasivo (resistencias). Es la forma más simple y económica. Consiste en dos resistencias por línea: una de 220 Ohms entre TERMPWR y la señal, y otro de 330 Ohms entre la línea de señal y tierra. Es la solución más económica, pero con el inconveniente de que las fluctuaciones en la tensión de TERMPWR (Term Power), producen elevaciones de tensión en las señales, lo que puede producir errores. La norma SCSI-2 recomienda terminadores activos siempre que sea posible para los sistemas SE. Por su parte la tecnología HVD utiliza exclusivamente es te tipo de terminador. Terminador activo. Para evitar los inconvenientes de las fluctuaciones en la tensión TERMPWR del sistema pasivo, se utilizan reguladores de tensión que las minimizan. En este caso se utiliza una sola resistencia de 110 Ohms desde el regulador a la línea de señal, lo que es más parecido a la impedancia del cable SCSI. El resultado son menores reflexiones, mayor estabilidad de la señal y menor tasa de errores. FTP ("Force Perfect Termination"). En realidad este sistema no está reconocido en las especificaciones SCSI, aunque es la solución adoptada por diversos fabricantes. Existen diversos diseños todos ellos basados en diodos derivadores que intentan compensar las diferencias de impedancia entre el cable SCSI y el dispositivo. Terminador LVD. Una tipo de terminador activo diseñado específicamente para los buses LVD. Está recogido en las especificaciones SPI-2 y SPI-3 ( 6.3).

Terminador LVD/MSE. Es una variedad multimomdo del anterior. Dependiendo de la tensión existente en la señal DIFFSENSE del cable, estos serminadores se configuran como LVD o SE. La mayoría de los nuevos diseños incluyen este tipo de terminador.

El tipo de terminador depende del tipo de bus SCSI utilizado. Por lo general los terminadores pasivos son adecuados para distancias cortas y buses lentos y lentos (8 bits y 5 MHz). Para distancias largas, que suelen presentarse en dispositivos externos y velocidades altas se recomiendan los activos. Nota: Los buses SCSI son muy sensibles a la calidad de los cables y a su correcta terminación, por lo que debe prestarse especial atención a estos elementos (incluyendo los conectores), en especial en equipos de altas prestaciones. Recuerde que la primera causa de problemas en sistemas SCSI se deriva de una inadecuada terminación del bus. Los terminadores son obligatorios en ambos extremos (físicos) del bus. Por lo general, tanto el adaptador host, como el resto de dispositivos SCSI disponen de un terminador integrado (auto-terminación), que puede ser activado y desactivado. En el caso de que el dispositivo sea uno de los extremos del bus, el auto-terminador debe ser activado (es lo que suele ocurrir cuando el dispositivo es el propio controlador host). Si por el contrario, no es el elemento terminal, debe desactivarse. En caso que el último dispositivo no disponga de esta característica de auto-terminación, debe emplearse un módulo terminador externo en el extremo correspondiente del bus.
§5 Conectores SCSI

Para la conexión de los dispositivos al bus SCSI, se utilizan diversos tipos de conectores, algunos de los cuales se muestran en las figuras, donde puede apreciarse la gran variedad utilizada. En la mayoría de los casos se muestran ambos conectores, macho (M) y hembra (F). Esta última, montada generalmente en el lado del dispositivo, mientras que el macho suele estar en el lado del cable. Ejemplo Tipo IDC50M 50 IDC50F HD68M 68 HD68F Pin es Uso Narro w: SCSI1 y 2, Ultra SCSI Ultra2 LVD y Ultra Wide Cometario Interno 8 bit

Interno/Externo. aproximadamente 1 7/8" de ancho (47 mm)

CN50M

SCSI3 SCSI1y SCSI2 50

Externo. Denominado también Centronics C50. Utilizado por la mayoría de los adaptadores lentos (5 MB/s) y por algunos rápidos (10 MB/s). Externo. Aproximadament e 1 3/8" (35 mm) de ancho. Adaptado res de 50 pines de alta densidad utilizados por muchos dispositivos FAST SCSI de 8 bits. Externo.

CN50F

HD50M

SCSI2y SCSI3 50

HD50F

DB25M

SCSI1

25 DB25F

Utilizado por antiguos Macs, dispositivos Zip, escaners y antiguas estaciones de trabajo SUN. Externo Apple PowerBooks

HDI30M

30

DB50M 50 DB50F DB37M DB37F VHDCI -M 68

SCSI1

Utilizados en las antiguas estaciones Sparc de Sun y Data General

37

SCSI1

Ultra SCSI 2y3

"Very HighDensity Connector Interface". Popular en las tarjetas RAID. El macho es de 0.8 mm Utilizado en cámaras digitales en Japon Utilizado en los antiguos sistemas rs6000 de IBM

VHDCI -F

HPCN5 0

50

HDCN 60
§6 Jumpers de configuración SCSI

60

Los controladores de los discos SCSI son más sofisticados que los IDE/ATA, y en consecuencia, suelen disponer de más ajustes ("jumpers") de control. Además, en lo que se refiere al tipo y número de jumpers utilizados, tienden a variar mucho entre los distintos fabricantes y modelos . Los más importantes y frecuentes son los que se citan a continuación. Aunque debemos advertir que algunas unidades SCSI tienen características especiales que se controlan mediante jumpers adicionales, y que algunas otras los han sustituido por comandos software que son enviados mediante el adaptador host. Es frecuente que los jumpers de estas unidades estén agrupados en lo que se denomina el bloque de opciones ("option block").

Identificación de unidad (SCSI Device ID): Se refiere a los jumpers que configuran el número de unidad dentro de la cadena SCSI (recuerde que cada

 

unidad debe disponer de un número de identificación único 6.3). Las unidades SCSI de conector estrecho pueden tener un conjunto de 3 jumpers, con lo que puede asignárseles un número de 0 a 7, mientras que las anchas tienen 4, con lo que la selección puede variar entre 0 y 15 (algunas unidades no utilizan jumpers para configurar la identificación del dispositivo). Activador del terminador (Termination Activate): Algunas unidades incluyen un terminador de bus que puede ser activado si la unidad es la última de la cadena SCSI ( 6.3). Este jumper activa o desactiva dicho terminador interno. No todas las unidades disponen de esta opción de auto-terminación. Desactivar autor-arranque (Disable Auto Start): Esta opción avisa a la unidad para no arrancar en el mismo instante en que se conecta la energía, sino esperar a una orden de arranque desde el bus SCSI. Es una medida que se utiliza para evitar un excesivo consumo de energía en el arranque. Algunos fabricantes han invertido el sentido de este jumper. Por defecto sus unidades no arrancan automáticamente, sino que permanecen a la espera de la señal del bus; en este caso la instalación del jumper habilita el arranque automático. Retardar auto-arranque (Delay Auto Start): En este caso el jumper indica al dispositivo que arranque de forma automática pero no de forma inmediata, sino después de cierto número de segundos después que se ha establecido el suministro de energía. Su utilidad es también disminuir el consumo total en el arranque cuando se instalan sistemas con muchas unidades (discos duros) SCSI. Rotación escalonada (Stagger Spin): Es una versión mejorada de la anterior (arranque retardado). Cuando se instala esta opción en un sistema con muchos dispositivos SCSI, cada unidad retarda su arranque un tiempo que se calcula multiplicando su número de identificación por una constante. Esto garantiza que en ningún caso habrá dos unidades que arranquen simultáneamente. Ancho/Estrecho (Narrow/Wide): Algunas unidades disponen de un jumper que controla su modo de funcionamiento ancho o estrecho. Forzar SE (Force SE): Esta opción permite que las nuevas unidades Ultra2, Wide Ultra2, Ultra160, Ultra160+ o cualquier otro dispositivo que utilice tecnología de bus LVD ("Low voltage differential") sea forzado a utilizar la tecnología Terminación Simple SE ("Single Ended") [2]. Desactivar paridad (Disable parity): Esta opción desactiva el control de paridad en el bus SCSI. Se utiliza para garantizar la compatibilidad de las nuevas unidades con los controladores antiguos que no implementaban este control.

La figura muestr a el esque ma del "Bloqu e de opcion es" de una unidad de disco duro SCSI Quantu m Atlas 10K.

A continuación se incluyen algunas especificaciones de montaje relativas a otra unidad SCSI. En este caso es un disco Seagate ST12400N.

SEAGATE TECHNOLOGY, INC. ST-12400N SCSI-2 Fast (Hawk 2) /-----------\ | REAR VIEW | \-----------/ (ST-12400N only)

(C)opyright 1993

50 pin I/O Cable Connection | J1/------------------------1\ /---------\ -|:::::::::::::::::::::::::|-| 0 0 0 0 |-\-------------------------/ \-5-G-G-12/

TOP (HDA) BOTTOM

/-----------------\ | RIGHT SIDE VIEW | \-----------------/ BACK /-\ J2

(Both ST-12400N and ST-12400NC)

12345678

TOP (HDA)

FRONT

OF DRIVE

J1|----------------------P-W-A----------------------- OF \-/ :::::::: BOTTOM DRIVE |||||||| |Terminator Power /||||||\ Reserved /|Terminator Power -/||||\- Start Delay (12 secs * ID) | Enable T-Res --/||\-- Motor Start | Parity Enable ---/\--- Write Protect | | | /--------------------------------\ \-| Termination Power-source Table | |----------------------------------------------\ |-----....-----....-----PWA edge----| | | | 1 2 1 2 1 2 | | /-\ /-\ /---\ A Drive Supplies Bus | | |o|o o|o| \o-o/ B Drive Supplies Own | | \o/o o\o/ o o C Bus Supplies Drive | | A B C | \---------Default------------------------------/ /----------------\ | LEFT SIDE VIEW | \----------------/

(ST-12400N only) If these ID jumpers are used, then ID jumpers shown in front view ARE NOT USED.

FRONT TOP (HDA) J5 /--1\ /-\BACK OF --------P-W-A-------------------------------|:::|-|J1 OF DRIVE BOTTOM \---/ \-/DRIVE ||| ID 1 -/|\- ID 4 ID 2 /------------\ | FRONT VIEW | \------------/

(Both ST-12400N and ST-12400NC)

TOP (HDA) J6 /-----1\ --P-W-A--------------------------|::::::|* BOTTOM \------/ | 123456 LED -/ |||||| ID 4 /||||\ Reserved ID 2 -/||\- Remote LED (pin-3 +5v) ID 1 --/\-- Spindle Synchronization (pin-6 REF SIG+, default If these ID jumper are used, then jumper installed) ID jumpers shown in left side view J5 or 80 pin I/O cable ARE NOT USED. ST-12400N Hawk 2

UNFORMATTED CAPACITY (MB) ________________2537 FORMATTED CAPACITY (xx SECTORS) (MB) _____2148 AVERAGE SECTORS PER TRACK ________________83 rounded down ACTUATOR TYPE ____________________________ROTARY VOICE COIL TRACKS ___________________________________49,799 CYLINDERS ________________________________2,621 user HEADS ______PHYSICAL______________________19 DISCS (3.5 in) ___________________________10 MEDIA TYPE _______________________________THIN FILM RECORDING METHOD _________________________ZBR RLL (1,7) INTERNAL TRANSFER RATE (mbits/sec)________26.8 to 45.6 EXTERNAL TRANSFER RATE (mbyte/sec) _______5 Async EXTERNAL TRANSFER RATE (mbyte/sec) _______10 Sync SPINDLE SPEED (RPM) ______________________5,411 AVERAGE LATENCY (mSEC) ___________________5.54 BUFFER ___________________________________256/1024 KByte Read Look-Ahead, Adaptive, Multi-Segmented Cache INTERFACE ________________________________SCSI-2 FAST ASA SECTORS PER DRIVE ________________________ TPI (TRACKS PER INCH) ____________________3000 AVERAGE ACCESS (ms) (read/write)__________9.0/10.5 Drive level without controller overhead SINGLE TRACK SEEK (ms) ___________________1 MAX FULL SEEK (ms) _______________________19 MTBF (power-on hours) ____________________500,000 SHOCK (G's): operating (Read/Write) __________10 nonoperating ____________________60 ACOUSTICS (typ/max dBA) __________________/ POWER REQUIREMENTS: +12V START-UP (amps) _2.0 +12V TYPICAL (amps) __0.54 +5V START-UP (amps) __0.8 +5V TYPICAL (amps) ___0.43 TYPICAL (watts) ______9 MAXIMUM (watts) ______ WRITE PRECOMP (cyl) ______________________N/A REDUCED WRITE CURRENT (cyl) ______________N/A LANDING ZONE (cyl) _______________________AUTO PARK IBM AT DRIVE TYPE ________________________0 or NONE Physical: Height (inches/mm): Width (inches/mm): Depth (inches/mm): Weight (lbs/kg): 1.63/41.4 4.00/101.6 5.75/146.1 2.5/0.99

Already low-level formatted at the factory with twelve spare sectors per cylinder and two spare cylinders/unit. ZBR = Zone Bit Recording = Variable sectors per track Seagate reserves the right to change, without notice, product offerings or specifications. (08/09/94)

6.3 La Interfaz SCSI §1 Antecedentes

La historia de la interfaz SCSI se remonta a 1979, cuando Shugart Associates, un fabricante de discos, buscaba una interfaz para sus futuras unidades. La intención era conseguir una interfaz que soportara un direccionamiento lógico de bloques en lugar del sistema CHS, Cilindro, Cabeza y Sector ( 6.2) que se venía utilizando. Además debía proporcionar una interfaz paralela de 8 bits en lugar de las señales analógicas serie que utilizaban por entonces las controladoras, así como una serie de comandos genéricos en sustitución de las líneas de control que acompañaban a las líneas de datos. La interfaz fue denominada SASI (Shugart Associates Systems Interface), y su especificación incluía algunos comandos de 6 Bytes y una interfaz de terminación sencilla. A finales de 1981, Shugart y NCR ("National Cash Register"), un fabricante de ordenadores, presentaron la especificación al comité ANSI, que la aceptó como documento de trabajo bajo el nombre de SCSI ("Small Computer System Interface"), pronunciado scuzzi. En el periodo siguiente se le añadieron muchas mejoras importantes, incluyendo la capacidad de los dispositivos de competir por el uso del bus (arbitraje); desconectar y reconectar temporalmente del bus durante la ejecución de comandos, y tener más de un adaptador host en un bus SCSI. En 1984 se presentó al ANSI un borrador con la propuesta del estándar cuando ya existían en el mercado muchos de los nuevos dispositivos. El estándar fue aprobado en 1986 como SCSI-1.
§2 La interfaz SCSI

En realidad SCSI es un tipo de bus; la interfaz SCSI, conocida también como adaptador host, adopta la forma de una tarjeta que se inserta en una ranura de la placa base, de la que sale un bus (cable), en el que se pueden conectar varios dispositivos. Este adaptador host es en realidad un puente entre el bus SCSI y el bus de la placa-base [5]. Desde el punto de vista del Sistema, los dispositivos SCSI son muy eficientes. Soportan comandos del tipo "Rebobina esta cinta" o "Formatea este disco" sin intervención del procesador, con lo que se ahorra tiempo de proceso. Esto es especialmente importante en sistemas multitarea como Unix, Linux, OS/2, Novell Netware y los sistemas MS, a partir de Windows 95. El bus SCSI es muy flexible, y no solo permite conectar discos, también otros, periféricos, como escáneres, unidades de cinta, CD-ROM, DVDs, Etc. Estos dispositivos integran la electrónica necesaria que los independiza del adaptador host, y permite que este ignore las características concretas de cada dispositivo conectado. Nota: Como puede verse, las "controladoras" SCSI están embebidas en los propios dispositivos, sin embargo, en el lenguaje coloquial a veces nos referimos al adaptador host como la "controladora SCSI".

Como todo lo relativo a esta tecnología tan cambiante (del hardware), la interfaz SCSI ha sufrido sucesivas implementaciones y mejoras: Existen variantes: SCSI-1, SCSI-2, SCSI3, Fast-SCSI, Wide-SCSI, Ultra-2 SCSI, Ultra 320 SCSI, Fiber Channel SCSI... Este interfaz es el que se considera mas profesional y de mayor rendimiento, por lo que se utiliza en equipos de altas prestaciones. Puede alcanzarse velocidades de 320 MB/s.
§3 Anchura del bus SCSI

Existen dos anchuras de bus SCSI: Estrecho (de 8 bits) y ancho (de 16 bits). El primero fue el definido en el estándar SCSI-1. Por su parte, el bus ancho fue definido en el estándar SCSI-2. Este último ha ido incrementando su popularidad desde su introducción, ya que permite utilizar dispositivos de 16 bits y el doble de ancho de banda que el "estrecho" para cualquier frecuencia utilizada en el bus (más detalles sobre los cables y otros detalles del hardware SCSI, en la página siguiente 6.3.1). El SCSI ancho requería utilizar un nuevo tipo de cable (denominado "B") de 68 pines en lugar del tradicional cable de 50 pines del bus estrecho denominado cable A. Pronto se vio que la utilización de dos tipos de cables era molesto y costoso, por lo que se definió un nuevo tipo de cable de 68 pines denominado "P". Nota: El cable muy ancho ("Very wide") de 32 bits, que requería dos cables de 68 conductores, fue definido en el estándar SCSI-2, aunque nunca fue aceptado por los fabricantes debido a su costo. Después de cierto tiempo fue finalmente eliminado de la norma en SPI-3 [7]. La necesidad de prestaciones cada vez más altas, especialmente para los discos duros, motivó el abandono del bus SCSI estrecho en favor del ancho, lo que ha generado algunos malentendidos en la terminología. Tradicionalmente el bus estrecho era considerado el estándar (por defecto), y no se hacía ninguna mención a la palabra "Estrecho". Por ejemplo, decir Ultra SCSI implica operación en bus estrecho; los buses anchos operando a velocidad Ultra fueron denominados Wide Ultra SCSI. Desde luego por el tiempo en que se creó el estándar Ultra2 SCSI, los buses estrechos comenzaban a perder popularidad, por lo que la mayoría de las unidades Ultra2 son anchas, y mucha gente dejó de decir explícitamente Wide Ultra2 SCSI, diciendo en su lugar Ultra2 SCSI, aunque la primera es la denominación técnicamente correcta.

Los métodos de transferencia superiores a Ultra2 han acabado por eliminar completamente los buses estrechos. Los estándares SPI-3 y SPI-4 se refieren exclusivamente a implementaciones de bus ancho. Es posible mezclar dispositivos anchos y estrechos en el mismo bus, pero existen tres cuestiones que deben ser tenidas en cuenta: la anchura física del cable; el modo de operación utilizado, SE, HVD o LVD y los terminadores. La primera puede resolverse mediante convertidores especiales que permiten pasar de un tipo de cable a otro (ver figura). La segunda se resuelve utilizando adaptadores host especialmente diseñados para admitir ambos tipos de dispositivos, o mediante extensores adecuados ( 6.3.1).
§4 La cadena SCSI; identificación

El cable SCSI tipo A (estrecho) permite conectar hasta 8 dispositivos físicos, recomendándose que su longitud no exceda de 3 metros [1]. Cada dispositivo de canal debe competir por el uso del bus, y se identifica por un número ID de identificación (0/7) que se selecciona en la propia unidad y que determina además su prioridad. El propio adaptador (host) se cuenta como un dispositivo, por lo que en realidad pueden conectarse 7 dispositivos por canal (cable). Los dispositivos de mayor ID tienen prioridad más elevada. De forma que el 7 es el de prioridad más alta. El cable tipo P (ancho) permite conectar hasta 16 dispositivos, numerados del 0 al 15. En este caso, las prioridades de los ID añadidos (8 al 15) aumenta progresivamente a partir del 8, aunque el 15 tiene menor prioridad que el 0. Como consecuencia, el orden de prioridades en orden creciente es como sigue: 8, 9, 10, 11, 12, 13, 14, 15, 0, 1, 2, 3, 4, 5, 6, 7 Generalmente pueden instalarse hasta cuatro adaptadores host por máquina; cada uno con hasta 7/14 dispositivos según el tipo de cable. Además existen adaptadores multicanal que disponen de varios cables. Como el adaptador host cuenta como un dispositivo, debe tener su propia ID, y es frecuente que venga seleccionado por defecto como 7 por el fabricante (la prioridad más alta). La selección de la ID de cada unidad se realiza por jumpers (en binario, para lo que se necesitan 3 jumpers) o por una sencilla rueda o botón que hace que cambie el número asignado a la unidad [2]. Recuerde que la identificación de cada unidad del bus no tiene ninguna relación con su posición física dentro del mismo. Nota: Tener en cuenta que algunos sistemas exigen que el disco de arranque esté seleccionado con una ID específica. En las antiguos adaptadores Adaptec [3] la ID del disco de arranque debía ser 0, en las modernas puede ser cualquiera. Actualmente existe una generación de dispositivos SCSI dotados de tecnología SCAM ("SCSI Configuted AutoMatically"), que permite que el número ID del dispositivo pueda

ser cambiado dinámicamente. Esta tecnología permite que los adaptadores host puedan asignar los números ID de los dispositivos conectados en el bus de forma automática (una especie de Plug and Play), con lo que se evita la posibilidad de conflictos. Además de lo anterior, la interfaz SCSI permite asignar un número de identificación LUN ("Logical Unit Number") a cada unidad lógica definida dentro de cada unidad física. Con independencia de las limitaciones que pudiera imponer el SO, las unidades SCSI pueden contener hasta 15 particiones. Como consecuencia de lo anterior, la identificación completa de una unidad SCSI comprende los siguientes parámetros:
  

Número de adaptador (pueden coexistir varios en el sistema) Número de canal (número de cable). Como se ha indicado, un adaptador puede ser multicanal y disponer de varios cables. Número de dispositivo (unidad física) ID dentro del canal. Hemos señalado que este número no depende de la posición física dentro del cable, sino de una asignación que puede efectuarse por hardware (también automáticamente), y que la prioridad depende de este número. Número de partición lógica LUN dentro de cada unidad.

Como puede verse, esta interfaz permite una gran adaptabilidad y posibilidad de crecimiento. Como se ha dicho, los dispositivos SCSI integran en sí mismos la lógica de control (en este sentido son análogos a los dispositivos IDE). En realidad, un disco IDE y uno SCSI son idénticos, salvo que el SCSI tiene además un adaptador para el bus incluido en la controladora, y no puede ser conectado directamente a la placa-base como el IDE; tiene que conectarse al bus SCSI.
§5 Modos de operación

Desde el punto de vista eléctrico se han utilizado tres tecnologías en este bus:
  

SE ("Single Ended") Terminación simple. Señal por diferencial de alto voltaje HVD ("High Voltage Differential"), basada en EIA485 Seña- por diferencial de bajo voltaje LVD ("Low Voltage Differential").

SE es la forma inicial de transportar la señal de 8 bits sobre cables de 50 conductores. Cada señal es referenciada respecto a tierra, por lo que hay 8 pares señal/referencia (16 conductores) para la señal.

Como el sistema SE se mostraba demasiado sensible al ruido; para aumentar la velocidad se ideó el sistema de voltaje diferencial, ahora denominado HVD (diferencial alto). Este método utiliza dos líneas para cada señal, de forma que una es inversa de la otra, utilizando la lógica estándar de ±5 V. que venía usándose en la electrónica del PC desde sus orígenes. La señal medida es la diferencia de ambas (de ahí el nombre "Diferencial"). Aunque más costoso, HVD es menos propenso al ruido que el anterior, permitiendo mayores velocidades y longitudes de cable.

Cuando se intentó sobrepasar el límite de 40 MB/s del sistema HVD, se descubrió que las señales podían cambiar más rápidamente si la tensión utilizada era menor, por lo que se mantuvo el esquema diferencial pero utilizando una lógica de 3 V. A esta nueva forma se la denominó de diferencial bajo LVD. Nota: La mayor facilidad de conmutación y menor consumo eléctrico (menor calentamiento y disipación de energía) que lleva aparejada la disminución de la tensión de funcionamiento, no fue un descubrimiento exclusivo de la tecnología SCSI. En realidad los desarrollos se sumaron a la tendencia dominante de disminuir la tensión de trabajo en los circuitos digitales, donde las propias placas-base también empezaban a abandonar los 5 Voltios de la tecnología TTL ("Transistor Transistor Logic") tradicional, en favor de lógicas LWTTL ("Low Voltage TTL") y ECL ("Emitter Coupled Logic") de 3.3 V.

El problema de la norma LVD es que no era compatible eléctricamente con las anteriores. Como se había mantenido especial cuidado en que los nuevos estándares fuesen compatibles hacia atrás, se desarrollaron controladoras LVD híbridos o multimodo, denominados LVD/MSE ("Low Voltage Differential / Multimode Single Ended"), que funcionaban como SE cuando están conectados a un bus SE. Actualmente solo se fabrican controladores LVD. Nota: La compatibilidad SE/LVD requiere un adaptador para el cable, ya que SE utiliza un cable estrecho y los dispositivos LVD utilizan el cable ancho. Respecto a la compatibilidad HVD/LVD, en realidad nunca ha existido. En caso necesario debe utilizarse un adaptador especial (Extensores 6.3.1).
§6 Instalación lógica

El adaptador host debe instalarse de forma que no colisione con el resto de los dispositivos instalados en el equipo (direcciones E/S, IRQ y canal DMA utilizados). Aunque la moderna tecnología PnP resuelve bastante bien este tipo de problemas. Por supuesto es conveniente que el adaptador soporte la norma ASPI (ver a continuación). Es posible montar sistemas que dispongan de unidades de disco SCSI y normales (por ejemplo ATA/IDE). Ya sea como unidades aisladas o coexistiendo con otro tipo. Las unidades SCSI aparecen en el setup de la BIOS como "No instalado". Cada unidad SCSI que se conecte al sistema debe tener sus propios controladores ("Drivers"), que normalmente son suministrados por el fabricante, aunque los discos duros son una excepción, dado que suelen venir incluidos en todos los Sistemas Operativos. En principio estos "drivers" eran específicos para cada conjunto de dispositivo/adaptador (host), lo que constituía un auténtico problema. Para resolverlo ha surgido una interfaz universal denominada ASPI ("Advanced SCSI Programming Interface"), de modo que los fabricantes de dispositivos SCSI solo tienen que proporcionar drivers que comuniquen con la interfaz ASPI.

Nota: la Interfaz avanzada del programador SCSI (ASPI) fue desarrollada inicialmente por Adaptec como una interfaz para enviar comandos a los adaptadores host. Posteriormente ha sido adoptada por el resto de los fabricantes. Actualmente está considerada como el método estándar para acceder a los dispositivos SCSI y ATAPI/IDE ( 6.1). Técnicamente la interfaz ASPI consiste en una capa de software que actúa de front-end entre los programas y el adaptador host, haciendo que aquellos puedan ser independientes del adaptador concreto utilizado. Los controladores ASPI aceptan comandos ASPI normalizados, y ejecutan los pasos necesarios para enviar comandos ASCII al destino. Por ejemplo, los adaptadores host Adaptec AHA-152x y AHA-274x son muy diferentes, pero la interfaz ASPI para ellas es la misma. Desde el punto de vista del usuario, la interfaz ASPI es una capa de software que se encarga de manejar la comunicación entre todo tipo de software y los periféricos que se adaptan a esta norma. Por ejemplo, grabadoras de CDs. En ocasiones ocurre que alguno de sus módulos sea alterado como consecuencia de instalaciones de software. Para que el conjunto funcione correctamente es necesario que todos los módulos ASPI sean de la misma versión y estén actualizados. El sitio de Adaptec www.adaptec.com es un buen sitio para buscar los últimos drivers para los sistemas operativos Windows (o el sitio del fabricante de su adaptador SCSI). Adaptec ha creado una utilidad denominada ASPICHK que explora el sistema y determina si los módulos ASPI son de la misma versión (uno de los motivos de problema más frecuentes) y funcionan correctamente.
§6.1 DOS y Windows

Los Sistemas Windows 95 y posteriores cuentan con adaptación ASPI automática, en cambio el MS-DOS no acepta directamente comandos ASPI, a menos que sea cargado el controlador correspondiente, lo que se realiza en el fichero config.sys por ejemplo: DEVICEHIGH /L:2,14912 =ASPI3X70.SYS
§6.2 Linux

Debemos recordar que la asignación que realizan los Sistemas Operativos de los dispositivos SCSI, se realiza en el momento de la carga inicial del Sistema, en función del escanéo que se realiza sobre el hardware instalado. El resultado es que la adición o eliminación de un dispositivo puede originar el cambio de denominación del resto de la cadena en el próximo arranque del Sistema. En el caso de los dispositivos SCSI, la asignación de estos dispositivos es complicada, ya que pueden coexistir distintos tipos en un mismo canal: discos, unidades de cinta, DVDs, etc. Además los controladores RAID, que son muy frecuentes con estas unidades de altas prestaciones, se presentan como una única unidad frente al bus del Sistema, aunque en realidad pueden contener varias unidades físicas de disco (cada una con su propia división interna). Finalmente, algunos dispositivos, como unidades de CDs; DVDs y dispositivos de

almacenamiento USB (discos móviles), utilizan una emulación IDE-SCSI que los hace aparecer con sus propios adaptadores. La asignación que hace Linux de los dispositivos SCSI depende del orden en que aparecen los dispositivos durante la carga inicial, y responde a las siguientes reglas:
/dev/s /dev/sd /dev/st Designación genérica de las unidades SCSI Designación genérica de las unidades de discos SCSI Designación genérica de las unidades de cinta SCSI Designación genérica de las unidades CD SCSI

/dev/sr /dev/scd
/dev/sg

Recientemente algunos sistemas Linux han cambiado la forma de controlar los dispositivos SCSI, de forma que aparecen todos mediante una designación genérica de este tipo seguida de un número. Por ejemplo, /dev/sg0; /dev/sg1; etc. Para conocer cual es la correspondencia con la designación tradicional puede utilizarse la utilidad sg_map. Por ejemplo, en un caso determinado produce la siguiente salida:

/dev/sg0 /dev/sda
/dev/sda /dev/sda1 /dev/sda2 ... Primera Unidad en el primer canal del primer controlador host Primera unidad lógica en la primera unidad. Segunda unidad lógica en la primera unidad

La mejor forma de comprobar las unidades SCSI montadas en el sistema es el comando sginfo -l. A continuación se muestra la salida en un caso determinado: /dev/scd0 /dev/sr0 /dev/sg0 [=/dev/sda scsi0 ch=0 id=0 lun=0] También mediante la orden dmesg | grep scsi, que en el caso anterior, produce el sigiente resultado:

scsi0 : SCSI emulation for USB Mass Storage devices Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0 sr0: scsi-1 drive A continuación puede obtenerse los detalles de cada unidad con el mismo condado. Por ejemplo, para los detalles de la unidad anterior sería: sginfo -a /dev/scd0
§7 Estándares SCSI

Algunos de los estándares son bastante confusos y tienen varias versiones, además, la terminología adoptada por los diversos fabricantes no es homogénea con la terminología oficial. Nota: En general, cuando se habla de bus SCSI se sobreentiende una conexión paralela; abreviadamente SPI ("SCSI Parallel Interface"), de la que existen diversos estándares (SPI, SPI-2, SPI-3, SPI-4 y SPI-5). Aunque también existen estándares SCSI para conexión serie, como la utilizada en SCSI-FCP . A continuación se muestra un resumen y una cronología de la evolución del bus SPI.

Estándar SASI

Comentario 1979 Shugart Associates Systems Interface. En realidad no fue un estándar sino la solución técnica de un fabricante. Como se ha indicado, el primer estándar SCSI se publicó en 1986. Opera sobre un bus asíncrono de 8 bits a unos 2 MB/s, sobre cables de 50 conductores, denominado cable A, con una longitud máxima de 6 metros. Este cable debía estar dotado de un terminador pasivo (resistencias) de 132 ohmios adaptador). 6.3.1; admite 7 dispositivos (además del

SCSI-1

Tenía el problema de que muchos de sus comandos eran optativos, por lo que había gran posibilidad que un dispositivo concreto no respondiese exactamente como se esperaba. Para subsanar el problema, un grupo de fabricantes se agruparon para adoptar un conjunto de 18 comandos básicos, que se denominó CCS y que fuese admitido por todos los periféricos. Este conjunto de comandos fue la base de lo que luego sería el estándar SCSI-2.

SCSI-2

Aprobado en 1989, es una ampliación de la especificación SCSI-1 que introdujo una mayor velocidad operativa y algunas otras mejoras.

Opera sobre un bus síncrono a 5 y 10 MB/s, esta última denominada Fast-SCSI-2, sobre un bus de 8 bits, aunque existe una versión de 16 bits denominada Wide-SCSI-2. Esta última admite un máximo de 15 dispositivos (además del adaptador) en el mismo bus. Las versiones de 8 y 16 bits utilizan cables de 50 y 68 conductores respectivamente, este último denominado cable P. Esta norma define un terminador de cable activo (regulado por voltaje) que mejora la integridad de la transmisión; mejora la normalización de los comandos, e introduce la posibilidad de enviar al dispositivo una cola de comandos que este ejecutará de la forma que estime más conveniente. Esta habilidad es especialmente útil en Sistemas Operativos multiproceso en los que diversas tareas pueden enviar diversos comandos a la misma unidad.
SCSI-3 En este punto el estándar se desglosa en una serie de normas independientes que comprenden tres áreas: Juego de órdenes (comandos); protocolos de transporte y capa física. En consecuencia, a partir de aquí no puede hablarse propiamente de SCSI-4, SCSI-5, Etc. porque cada especificación sigue un desarrollo independiente.

Nota: Esta arquitectura es conocida como SAM-2 ("SCSI Architecture Model"), en contraposición a SAM (o SAM-1) que se refiere a las normas anteriores (todo-en-uno). Las normas relativas al juego de órdenes se dividen en dos grupos; las que son comunes a todos los dispositivos ("Primary Command Set") SPC, SPC-2, SPC-3, y las que son específicas de un determinado tipo de dispositivo (discos, escaneres, cintas, Etc) que tienen sus propias siglas:
        

Block commands (por ejemplo, discos); SBC, SBC-2 Reduced Block Commands (discos); RBC Stream Commands (dispositivos de cinta); SSC, SSC-2, SSC-3 Media Changer Commands (jukeboxs); SMC, SMC-2 Multi Media Commands (DVDs); MMC, MMC2, MMC-3, Etc. Enclosure Services; SES, SES-2. Controller Commands (p.e. dispositivos RAID); SCC, SCC-2. Object-based Storage Devices; OSD. Management Server Commands; MSC.

Las especificaciones relativas a los protocolos de transporte adoptan sus propias siglas. Algunas relativas a una arquitectura serie emergente y a las tecnologías que permiten compatibilizarlas con el estándar serie ATA (ver a continuación). Siglas como ; FCP ("Fibre Channel Protocol"); SSP ("Serial SCSI Protocol"); SMP ("Serial Management Protocol"); FCP (" Fibre Channel Protocol") y STP ("Serial ATA Tunneling Protocol"). Finalmente, las especificaciones relativas a la capa física tienen también sus propias denominaciones [6]: SPI ("SCSI Parallel Interface") SPI-2 SPI-3, SPI-4; SAS ("Serial Attached SCSI"). Etc. A partir de aquí se introdujeron mejoras que extendían la funcionalidad de SCSI-2 manteniendo compatibilidad descendente con las antiguas versiones. Existen buses de 8 y 16 bits sobre cables A y cables P, y se introduce la tecnología SCAM . Simultáneamente la maquinaria de márketing introducía nombres que hicieron más o menos fortuna, como Ultra-X SCSI y Fast-Y SCSI.
Fast-Wide SCSI Ultra-SCSI Aparecida en 1992 incorpora los estándares SPI/SIP. Consigue tasas de transferencia de 20 MB/s. Aparecida en 1995, proporciona una amplitud de banda doble, acercándola al siguiente nivel de rendimiento, pero manteniendo los cables, conexione y alojamientos existentes. Permite velocidades de transferencia de 20 MB/s con 8 bits y de 40 MB/s con 16 bits. Ultra-2 Aparecida en 1997. Sigue la norma SPI-2 ("SCSI Parallel Interface") y alcanza 80 MB/s. Utiliza la señal por diferencial de bajo voltaje LVD ("Low Voltage Differential") antes comentada. Aparece en 1999 y consigue velocidades de 160 MB/s con la norma SPI-3. Incluye un sistema CRC ("Cyclic Redundancy Chec") de detección y corrección de errores.

Ultra-3

Paralelamente a los esfuerzos anteriores, habían estado desarrollarse soluciones serie para el bus SCSI. Conocidas bajo las siglas SAS ("Serial Attached SCSI") cuentan con un

protocolo de transporte específico; SSP ("Serial SCSI Protocol"); su evolución como estándar independiente ha sido el siguiente:
Estándar FCP Comentario Aparece en 1995 con el nombre de canal de fibra ("Fibre channel"). Utiliza enlaces ópticos a 100 MB/s. Las primera realizaciones prácticas se efectuaron en el campo de los superordenadores. Posteriormente se extendieron al ámbito de servidores departamentales y equipos profesionales de gama alta. Es conocida también como FC-AL ("Fiber Channel Arbitrared Loop") Esta norma de 1998 es conocida también como FireWire e IEEE 1394. Alcanza 50 MB/s y está pensada para enlaces inalámbricos. En el 2002 se mejora el estándar anterior de canal de fibra, alcanzándose 200 MB/s. Puede conectar hasta 126 dispositivos en un mismo bus. En el mismo año (2002) aparece este nuevo estándar conocido como InfiniBand. Alcanza 250 MB/s. Aparecido en 2003, es un estándar SCSI para su utilización en enlaces Ethernet a 100 MB/s. Conocido también como GigaBit Ethernet. 2003 Comienzan los estudios para una especificación serie unificada. En Enero de este año Seagate introduce en el mercado el primer dispositivo de disco SAS sobre un equipo HP.

SBP-2

FCP-2

SRP

iSCSI

SAS

A partir de 2002, los esfuerzos en el desarrollo de nuevas interfaces serie tienden a converger en una arquitectura única que englobe los dos estándares serie que venían utilizándose; SAS (Serial Attached SCSI) y SATA ("Serial ATA/ATAPI"). En este año, la STA ("SCSI Trade Association y el Grupo de Trabajo SAS ("Serial Attached SCSI Working Group") anuncian un acuerdo de colaboración. En Enero del año siguiente, el STA y el Grupo de Trabajo SATA II ("Serial ATA Working Group") acuerdan aunar esfuerzos para armonizar sus respectivas especificaciones.

§8 Evolución

A la fecha (2004) los dispositivos SCSI, principalmente discos, siguen siendo la elección de preferencia en sistemas de gama alta, en los que se exigen altas prestaciones. Sin embargo están perdiendo protagonismo en favor del estándar Serial-ATA, que alcanza velocidades que empiezan a ser comparables a una fracción del costo de aquellos. Otros dispositivos que usaban conexión SCSI, como escaners y cintas utilizan conexiones USB-2.
§9 BWebografía

STA, "SCSI Trade Association"

www.scsita.org/

Un buen punto de información sobre esta tecnología, es esta asociación, que engloba a los fabricantes de este tipo de dispositivos. Uno de sus comités, denominado T10 se encarga de los estándares www.t10.org/.

Librería Virtual WWW

www.scsilibrary.com/

La sección SCSI de la Librería Virtual WWW es otra buena fuente de información Inicio.

[1] La longitud máxima autorizada depende del estándar. Lógicamente es menor para los dispositivos más rápidos. [2] Tenga en cuenta que la segunda causa de fallo más frecuente en la instalación de unidades SCSI está en la inadecuada selección del número de unidad. [3] Adaptec es actualmente (2002) uno de los fabricantes de adaptadores host SCSI más importantes. [4] Información obtenida del sistema de ayuda del programa CD-R Diagnostics 1.4 Copyright 1997-1999, CD-ROM Productions [5] Algunas placas-base avanzadas disponen de controladora SCSI integrada. En especial las destinadas a servidores de gama alta. [6] Como puede verse, en algunos casos, las especificaciones engloban aspectos de la capa de transporte y la física. [7] La tercera generación de la interfaz paralela SCSI fue denominada Interfaz paralela SCSI-3 (SCSI Parallel Interface-3) o abreviadamente SPI-3.

uno. Unidades RAID (Redundant Array of Inexpensive Disks): Conjunto de Discos Baratos describen básicamente esta fabulosa solución hardware contra fallos. RAID se compone básicamente de una controladora a la que se conectan una serie de discos duros en los que la información se graba de tal manera que si falla uno de los discos, el resto sigue funcionando de forma eficaz ya que conocen exactamente la información perdida. Esta capacidad de la tecnología RAID para salir de situaciones comprometidas se basa en 6 tipos de funcionamiento diferentes, pero antes de describirlos veamos un pequeño ejemplo para entender mejor porqué dicha tecnología resulta tan beneficiosa.

Significa matriz redundante de discos independientes. RAID es un método de combinación de varios discos duros para formar una única unidad lógica en la que se almacenan los datos de forma redundante. Ofrece mayor tolerancia a fallos y más altos niveles de rendimiento que un sólo disco duro o un grupo de discos duros independientes. En este método, la información se reparte entre varios discos, usando técnicas como el entrelazado de bloques (RAID nivel 0) o la duplicación de discos (RAID nivel 1) para proporcionar redundancia, reducir el tiempo de acceso, y/o obtener mayor ancho de banda para leer y/o escribir, así como la posibilidad de recuperar un sistema tras la avería de uno de los discos. Un RAID, para el sistema operativo, aparenta ser un sólo disco duro lógico (LUN). La tecnología RAID protege los datos contra el fallo de una unidad de disco duro. Si se produce un fallo, RAID mantiene el servidor activo y en funcionamiento hasta que se sustituya la unidad defectuosa. RAID ofrece varias opciones, llamadas niveles RAID, cada una de las cuales proporciona un equilibrio distinto entre tolerancia a fallos, rendimiento y coste. Todos los sistemas RAID suponen la pérdida de parte de la capacidad de almacenamiento de los discos, para conseguir la redundancia o almacenar los datos de paridad. Los sistemas RAID profesionales deben incluir los elementos críticos por duplicado: fuentes de alimentación y ventiladores redundantes y Hot Swap. De poco sirve disponer

de un sistema tolerante al fallo de un disco si después falla por ejemplo una fuente de alimentación que provoca la caída del sistema.
Niveles de RAID La elección de los diferentes niveles de RAID va a depender de las necesidades del usuario en lo que respecta a factores como seguridad, velocidad, capacidad, coste, etc. Cada nivel de RAID ofrece una combinación específica de tolerancia a fallos (redundancia), rendimiento y coste, diseñadas para satisfacer las diferentes necesidades de almacenamiento. La mayoría de los niveles RAID pueden satisfacer de manera efectiva sólo uno o dos de estos criterios. No hay un nivel de RAID mejor que otro; cada uno es apropiado para determinadas aplicaciones y entornos informáticos. De hecho, resulta frecuente el uso de varios niveles RAID para distintas aplicaciones del mismo servidor. Oficialmente existen siete niveles diferentes de RAID (0-6), definidos y aprobados por el el RAID Advisory Board (RAB). Luego existen las posibles combinaciones de estos niveles (10, 50,...). Los niveles RAID 0, 1, 0+1 y 5 son los más populares. RAID 0: Disk Striping "La más alta transferencia, pero sin tolerancia a fallos".

También conocido como "separación ó fraccionamiento". Los datos se desglosan en pequeños segmentos y se distribuyen entre varias unidades. Este nivel de "array" o matriz no ofrece tolerancia al fallo. El fallo de cualquier disco de la matriz tendría como resultado la pérdida de los datos y sería necesario restaurarlos desde una copia de seguridad. Por lo tanto, RAID 0 no se ajusta realmente al acrónimo RAID. Consiste en una serie de unidades de disco conectadas en paralelo que permiten una transferencia simultánea de datos a todos ellos, con lo que se obtiene una gran velocidad en las operaciones de lectura y escritura. La velocidad de transferencia de datos aumenta en relación al número de discos que forman el conjunto. Esto representa una gran ventaja en operaciones secuenciales con ficheros de gran tamaño. Por lo tanto, este array es aconsejable en aplicaciones de tratamiento de imágenes, audio, video o CAD/CAM, es decir, almacenamiento a gran velocidad pero que no requiera tolerancia a fallos. Se necesita un mínimo de dos unidades de disco para implementar una solución RAID 0.

RAID 1: Mirroring "Redundancia. Más rápido que un disco y más seguro"

También llamado "Mirroring" o "Duplicación" (Creación de discos en espejo). Se basa en la utilización de discos adicionales sobre los que se realiza una copia en todo momento de los datos que se están modificando. RAID 1 ofrece una excelente disponibilidad de los datos mediante la redundancia total de los mismos. Para ello, se duplican todos los datos de una unidad o matriz en otra. De esta manera se asegura la integridad de los datos y la tolerancia al fallo, pues en caso de avería, la controladora sigue trabajando con los discos no dañados sin detener el sistema. Los datos se pueden leer desde la unidad o matriz duplicada sin que se produzcan interrupciones. RAID 1 es una alternativa costosa para los grandes sistemas, ya que las unidades se deben añadir en pares para aumentar la capacidad de almacenamiento. RAID 1 es una buena solución para las aplicaciones que requieren redundancia cuando hay sólo dos unidades disponibles. Los servidores de archivos pequeños son un buen ejemplo. Se necesita un mínimo de dos unidades para implementar una solución RAID 1 RAID 2: "Acceso paralelo con discos especializados. Redundancia a través del código Hamming"

El RAID nivel 2 adapta la técnica usada para detectar y corregir errores en memorias de estado sólido. RAID 2 no ha sido a penas implementado en productos comerciales, lo que también es debido a que requiere características especiales en los discos y no usa discos estándares.

RAID 3: "Acceso síncrono con un disco dedicado a paridad"

Dedica un único disco al almacenamiento de información de paridad. La información de ECC (Error Checking and Correction) se usa para detectar errores. La operación I/O accede a todos los discos al mismo tiempo. Se necesita un mínimo de tres unidades para implementar una solución RAID 3. RAID 4: "Acceso Independiente con un disco dedicado a paridad."

Dedica un disco para guardar la información de paridad de los otros discos. Este nivel de RAID se implementa poco comercialmente. Se necesita un mínimo de tres unidades para implementar una solución RAID 4. La diferencia con el RAID 3 está en que se puede acceder a los discos de forma individual. RAID 5: "Acceso independiente con paridad distribuida."

Este array ofrece tolerancia al fallo, pero además, optimiza la capacidad del sistema permitiendo una utilización de hasta el 80% de la capacidad del conjunto de discos. Esto lo consigue mediante el cálculo de información de paridad y su almacenamiento alternativo por bloques en todos los discos del conjunto. Si cualquiera de las unidades de disco falla, se puede recuperar la información en tiempo real, sobre la marcha, mediante una simple operación de lógica de O exclusivo, sin que el servidor deje de funcionar. Así pues, para evitar el problema de cuello de botella que plantea el RAID 4 con el disco de comprobación, el RAID 5 no asigna un disco específico a esta misión sino que asigna un bloque

alternativo de cada disco a esta misión de escritura. Al distribuir la función de comprobación entre todos los discos, se disminuye el cuello de botella y con una cantidad suficiente de discos puede llegar a eliminarse completamente, proporcionando una velocidad equivalente a un RAID 0. RAID 5 es el nivel de RAID más eficaz y el de uso preferente para las aplicaciones de servidor básicas para la empresa. Comparado con otros niveles RAID con tolerancia a fallos, RAID 5 ofrece la mejor relación rendimiento-coste en un entorno con varias unidades. Este nivel de array es especialmente indicado para trabajar con sistemas operativos multiusuarios. Se necesita un mínimo de tres unidades para implementar una solución RAID 5. Su resultado óptimo de capacidad se obtiene con siete o más unidades. RAID 5 es la solución más económica por megabyte, que ofrece la mejor relación de precio, rendimiento y disponibilidad para la mayoría de los servidores. RAID 6: "Acceso independiente con doble paridad"

Similar al RAID 5, pero incluye un segundo esquema de paridad distribuido por los distintos discos y por tanto ofrece tolerancia extremadamente alta a los fallos y a las caídas de disco, ofreciendo dos niveles de redundancia. Hay pocos ejemplos comerciales en la actualidad, ya que su coste de implementación es mayor al de otros niveles RAID, ya que las controladoras requeridas que soporten esta doble paridad son más complejas y caras que las de otros niveles RAID. Así pues, comercialmente no se implementa. Combinación de Niveles RAID Algunos Niveles RAID pueden combinarse en un mismo Arreglo de Discos. Es muy común encontrar Sistemas Disk Array que admiten la combinación de 0+1 es decir, un striping de discos (RAID 0) espejados (RAID 1). Esta combinación requiere de por lo menos 4 discos (un mínimo de 2 discos en striping más igual cantidad espejando ese striping). Esta combinación brinda alta confiabilidad y velocidad, pero es ideal para bajas capacidades (el 50% de los discos está dedicado a la redundancia).

La tolerancia a fallas y la capacidad Un Sistema Disk Array configurado en un Nivel RAID tolerante a fallas, ocupará determinada capacidad para albergar los datos de paridad. Tomemos como ejemplo un Sistema Disk Array compuesto por 4 discos de 20GB cada uno, de modo que nuestro Sistema tendrá 80GB de capacidad total (4 x 20GB). • Si lo configuramos en RAID 1, el 50% de la capacidad total estará dedicada a la redundancia, de modo que tendremos 40GB de capacidad disponible para albergar datos. • Si al mismo sistema lo configuramos en RAID 3 o en RAID 5, un 20% de la capacidad total estará dedicada a los datos de paridad de manera que tendremos (aprox.) 60GB disponibles para almacenar datos. • Si en cambio lo configuramos en RAID 3 o en RAID 5 más un disco en hot-spare para que tolere la falla de dos discos, tendremos entonces 40GB de capacidad disponible. Back-up El Disk Array y el Back-Up Un Disk Array nos brinda seguridad de trabajo con nuestros datos, ya que en caso que falle algún componente o de hecho, se dañe alguno de los discos rígidos, el Sistema seguirá funcionando ininterrumpidamente y Ud. no perderá sus datos -dependiendo de los niveles de seguridad que Ud. haya elegido-. Sin embargo, tener los datos en un Sistema Disk Array no significa que los datos estén resguardados. El resguardo de datos se hace para que sea lo que fuere que ocurra con nuestros discos rígidos, ya sean fallas del hardware, errores o siniestros -como robo, incendio, inundaciones, boicot, error humano, derrumbes en el edificio donde esté el sistema, etc.- que provoquen la pérdida parcial o total de nuestros datos; tengamos una copia de los datos de el día anterior o por lo menos de una semana atrás. Esa copia es el backup, que debe realizarse sobre una cinta o un medio óptico, y debe guardarse en un lugar físico distinto y alejado de donde se encuentran los discos. Entonces un Sistema Disk Array requiere indefectiblemente el Back-up.

Actualmente, todo el mundo experimenta el continuo incremento de la cantidad de datos que necesita archivar, consultar y transmitir. Los datos de computación son de misión crítica y nadie debería poner en riesgo sus negocios por no haberse preocupado de resguardar sus datos. Una estrategia de back-up adecuada es el seguro más efectivo contra incendios, inundaciones, crash de discos, errores humanos, robos, boicots o virus. Todas esas cosas pueden provocar la pérdida de sus datos y con ellos los datos de sus clientes, sus proyectos, y negocios; o -en el mejor de los casos- horas y horas de operaciones para recuperar los datos. Además de sus funciones de backup, un sistema de almacenamiento en cinta es útil en otras aplicaciones como el almacenamiento jerárquico, el archivo, o la distribución de datos. Recordar que: Sólo hay dos tipos de datos... Los datos que han sido 'backupeados" y los que no se han perdido... TODAVIA.

El costo de no hacer back-up Una posibilidad diaria: que ocurra un desastre. Y actualmente, puede ocurrir. Incluso muy frecuentemente ocurre la pérdida de archivos aislados. El costo de recuperar esos datos puede ser muy significativo. La pérdida de archivos y datos, implica una gran pérdida de tiempo y también la pérdida de negocios o clientes en situaciones críticas o si no puede encontrar la información cuando la necesita.
RAID es una forma de almacenar los mismos datos en distintos lugares (por tanto de modo redundante) en múltiples discos duros. Al colocar los datos en discos múltiples, las operaciones I/O (input/output, de entrada y salida) pueden superponerse de un modo equilibrado, mejorando el rendimiento del sistema. Dado que los discos múltiples incrementan el tiempo medio entre errores (mean time between failure, MTBF), el almacenamiento redundante de datos incrementa la tolerancia a fallos. Un RAID, para el sistema operativo, aparenta ser un sólo disco duro lógico. El RAID emplea la técnica conocida como "striping" (bandeado o creación de bandas), que incluye la partición del espacio de almacenamiento de cada disco en unidades que van de un sector (512 bytes) hasta varios megabytes. Las bandas de todos los discos están interpaginadas (interleaved) y se accede a ellas en orden. En un sistema de un solo usuario donde se almacenan grandes registros (como imágenes médicas o de otro tipo), las bandas generalmente se establecen para ser muy pequeñas (quizá de 512 bytes) de modo que un solo registro esté ubicado en todos los discos y se pueda acceder a él rápidamente leyendo todos los discos a la vez. En un sistema multiusuario, un mejor rendimiento demanda que se establezca una banda lo suficientemente ancha para contener el registro de tamaño típico o el de mayor tamaño. Esto permite acciones I/O superpuestas en los distintos discos. 3. Funcionamiento del RAID Básicamente el RAID es un sistema el cual permite almacenar información en una cantidad de discos (n), de tal forma que agilice el proceso maquina-disco. El sistema RAID evitará en lo más posible la pérdida de data de la siguiente manera: Los discos optimizados para RAID poseen circuitos integrados que detecta si el disco está fallando, de ser así este circuito se encargará por encima del tiempo real de sacar la información y almacenarla en los otros discos, o si es el caso en el "hot spare". Un hot spare es un disco que permanece siempre en el sistema esperando a que otro se estropee y él entre directamente en funcionamiento. Una de las ventajas del sistema RAID es la posibilidad, con los discos hot swap, de conectarlos y desconectarlos en "caliente", es decir, que si un disco falla no hará falta el apagar el sistema para remplazarlo. Otras de las ventajas de RAID: 1. Reconstrucción y Regeneración Cuando un disco falla la información redundante en los discos y los datos en los discos buenos son usados para regenerar la información de disco averiado. Striping Es el acto de unir dos o más discos físicos en un solo disco lógico con el fin de dividir los datos entre los diferente discos para ofrecer una significativa mejora en el rendimiento del conjunto de los discos. Los datos son divididos a través de los discos. La lectura y escritura es compartida La búsqueda de datos clásica fuerza a la lectura y escritura a no recordar su posición resultando más movimientos de cabezas y peor eficiencia

La lectura de datos es etiquetada y reordenada. Los movimientos de las cabezas de lectura - escritura se realizan mas eficientemente cuando se buscan datos. Ventajas de los discos RAID El rendimiento general del sistema aumenta ya que pueden funcionar de forma paralela con los diferentes discos del conjunto. Dependiendo del nivel de RAID que escojamos, si uno de los discos del conjunto falla, la unidad continúa funcionando, sin pérdida de tiempo ni de datos. La reconstrucción de los datos del disco que ha fallado se hace de forma automática sin intervención humana. En el caso de algunos sistemas operativos la regeneración de datos se hace desde software por ejemplo en el Windows NT, aunque en estos sistemas se pueden usar controladoras RAID que sí regenerarían los datos automáticamente. La capacidad global del disco aumentará, ya que se suman las capacidades de los diferentes discos que componen el conjunto. ¿Porqué usar RAID? Las operaciones de I/O a disco son relativamente lentas, primordialmente debido a su carácter mecánico. Una lectura o una escritura involucra, normalmente, dos operaciones. La primera es el posicionamiento de la cabeza lecto/grabadora y la segunda es la transferencia desde o hacia el propio disco. El posicionamiento de la cabeza está limitado por dos factores: el tiempo de búsqueda (seek time) y el retardo por el giro del disco hasta la posición de inicio de los datos (latencia rotacional). La transferencia de datos, por su parte, ocurre de a un bit por vez y se ve limitada por la velocidad de rotación y por la densidad de grabación del medio Una forma de mejorar el rendimiento de la transferencia es el uso de varios discos en paralelo; esto se basa en el hecho de que si un disco solitario es capaz de entregar una tasa de transferencia dada, entonces dos discos serían capaces, teóricamente, de ofrecer el doble de la tasa anterior; lo mismo sucedería con cualquier operación. La adición de varios discos debería extender el fenómeno hasta un punto a partir del cual algún otro componente empezará a ser el factor limitante. Muchos administradores o encargados de sistemas intentan llevar a cabo esta solución en forma básicamente manual, distribuyendo la información entre varios discos de tal forma de intentar asegurar una carga de trabajo similar para cada uno de ellos. Este proceso de "sintonía" podría dar buenos resultados de no ser por dos factores principales: No consigue mejorar las velocidades de transferencia de archivos individuales, sólo mejora la cantidad de archivos accesados en forma concurrente. Es obvio que el balance no es posible de mantener en el tiempo debido a la naturaleza eminentemente dinámica de la información. Una forma bastante más efectiva de conseguir el objetivo es el uso de un arreglo de discos, el cual según la definición del RAID Consultory Board es "una colección de discos que integran uno o más subsistemas combinados con un software de control el cual se encarga de controlar la operación del mismo y de presentarlo al Sistema Operativo como un sólo gran dispositivo de almacenamiento". Dicha pieza de software puede ser integrada directamente al Sistema Operativo o residir en el propio arreglo; así como el arreglo puede ser interno o externo. Novell Netware incluye, desde hace algún tiempo, soporte para arreglos de discos. El espejado y la duplicación de discos son ejemplos de arreglos basados en software. Más recientemente fabricantes independientes han ofrecido al mercado arreglos de discos basados en software que pueden correr en formato NLM (Netware Loadable Module) sobre un Servidor Netware. Las soluciones de arreglos basadas en hardware son principalmente implementadas mediante el uso de controladoras SCSI (Small Computer System Interface) especializadas, las cuales a menudo están dotadas de procesadores propios para liberar a la CPU del sistema de la tarea de control y de cachés para mejorar aún más el desempeño. Para Netware cualquiera de las dos soluciones, software o hardware, será visualizada como un único y gran disco virtual. Así pues un arreglo de discos ofrecerá un mejor desempeño debido a que dividirá en forma automática los requerimientos de lectura/escritura entre los discos que lo conforman. Por ejemplo, si una operación de lectura/escritura involucra a cuatro bloques de 4 Kb cada uno, entonces un arreglo de 4 discos podría, teóricamente, entregar cuatro veces la tasa de operación de un disco único, esto debido a que el disco único sólo podría atender a un bloque en forma simultánea, mientras que en el arreglo cada disco podría manejar un sólo bloque cada uno y como operan al mismo tiempo

En la práctica, sin embargo, dichos niveles no se obtienen debido, principalmente, a la carga de trabajo inherente al control del propio arreglo. Además el uso de varios discos se emplea para construir cierto nivel de redundancia de los datos y es este nivel de redundancia y la forma de implementarlo lo que crea los niveles de RAID. Arreglos paralelos vs. independientes Arreglos paralelos: éstos son aquellos en que cada disco participa en todas las operaciones de entrada/salida. Este tipo de arreglo ofrece tasas altísimas de transferencia debido a que las operaciones son distribuidas a través de todos los discos del arreglo y ocurren en forma prácticamente simultánea. La tasa de transferencia será muy cercana, 95%, a la suma de las tasas de los discos miembros, mientras que los índices de operaciones de entrada/salida serán similares a las alcanzadas por un disco individual. En español: un arreglo paralelo accesará sólo un archivo a la vez pero lo hará a muy alta velocidad. Algunas implementaciones requieren de actividades adicionales como la sincronización de discos. Los RAID de niveles 2 y 3 se implementan con arreglos paralelos. Arreglos independientes: son denominados así aquellos arreglos en los cuales cada disco integrante opera en forma independiente, aún en el caso de que le sea solicitado atender varios requerimientos en forma concurrente. Este modelo ofrece operaciones de entrada/salida sumamente rápidas debido a que cada disco está en posición de atender un requerimiento por separado. De esta forma las operaciones de entrada/salida serán atendidas a una velocidad cercana, 95%, a la suma de las capacidades de los discos presentes, mientras que la tasa de transferencia será similar a la de un disco individual debido a que cada archivo está almacenado en sólo un disco. Los niveles 4 y 5 de RAID se implementan con arreglos independientes, mientras que los niveles 0 y 1 pueden ser implementados por cualquiera de las categorías, sin perjuicio de suelan ser implementados en forma de arreglos independientes. Stripping y mirroring RAID a niveles 0, 1 y 0 & 1 puede ser implementado, tanto en forma de arreglos independientes o paralelos. Netware lo implementa como arreglos independientes a nivel del propio Sistema Operativo y, por lo tanto, no precisa de hardware o software adicional. 5. Tipos de RAID Como ya se mencionaron hay al menos nueve tipos de RAID además de un grupo no redundante (RAID-0) RAID-0. Esta técnica tiene bandeado paro no tiene redundancia de datos. Ofrece el mejor rendimiento pero no tolerancia a los fallos. RAID-1. Este tipo también se conoce como creación de discos espejo y consiste de al menos dos discos duros que duplican el almacenamiento de datos. No hay bandeado. El rendimiento de la lectura se mejora pues cualquiera de los dos discos puede leerse al mismo tiempo. El rendimiento de escritura es el mismo que el del almacenamiento en un solo disco. El RAID-1 proporciona el mejor rendimiento y la mejor tolerancia a fallos en un sistema multiusuario. RAID-2. Este tipo usa bandeado en todos los discos, con algunos de estos dedicados a almacenar información de verificación y corrección de errores (error checking and correcting, ECC). No tiene ninguna ventaja sobre el RAID3. RAID-3. Este tipo usa bandeado y dedica un disco al almacenamiento de información de paridad. La información de verificación de errores (ECC) incrustada se usa para detectar errores. La recuperación de datos se consigue calculando el O exclusivo (XOR) de la información registrada en los otros discos. Dado que una operación I/O accede a todos los discos al mismo tiempo, el RAID-3 no puede traslapar I/O. Por esta razón, el RAID-3 es mejor para sistemas de un solo usuario con aplicaciones que contengan grandes registros. RAID-4. Este tipo usa grandes bandas, lo cual significa que podemos leer registros de cualquier disco individual. Esto nos permite aprovechar la I/O traslapada para las operaciones de lectura. Dado que todas las operaciones de escritura tienen que actualizar el disco de paridad, no es posible la superposición I/O para ellas. El RAID-4 no ofrece ninguna ventaja sobre el RAID-5. RAID-5. Este tipo incluye un grupo rotatorio de paridad, con lo que resuelve las limitaciones de escritura en RAID-4. Así, todas las operaciones de lectura y escritura pueden superponerse. El Raid 5 almacena información de paridad pero no datos redundantes (aunque la información de paridad puede usarse para reconstruir datos). El RAID-5 exige al menos tres y usualmente cinco discos en el conjunto. Es mejor para los sistemas multiusuario en los cuales el rendimiento no es crítico, o que realizan pocas operaciones de escritura. RAID-6. Este tipo es similar al RAID-5, pero incluye un segundo esquema de paridad distribuido por los distintos

discos y por tanto ofrece tolerancia extremadamente alta a los fallos y las caídas de disco. Hay pocos ejemplos comerciales en la actualidad. RAID-7. Este tipo incluye un sistema operativo incrustado de tiempo real como controlador, haciendo las operaciones de caché a través de un bus de alta velocidad y otras características de un ordenador sencillo. Un vendedor ofrece este sistema. RAID-10. Este tipo ofrece un conjunto de bandas en el que cada banda es un grupo de discos RAID-1. Esto proporciona mejor rendimiento que el RAID-1, pero a un costo mucho mayor. RAID-53. Este tipo ofrece un conjunto de bandas en el cual cada banda es un conjunto de discos RAID-3. Esto proporciona mejor rendimiento que el RAID-3, pero a un costo mucho mayor. Pero de todos estos los que más destacan son los niveles 0,1,3,5, y 10 o RAID 0&1. Todos los demás vienen siendo variaciones de estos últimos. En la siguiente página explicaremos más a fondo las ventajas y la forma de configuración de estos últimos niveles. RAID 0: Este tipo de arre glo utili za una técnica llamada "striping", la cual distribuye la información en bloques entre los diferentes discos. Es el único nivel de RAID que no duplica la información, por lo tanto no se desperdicia capacidad de almacenamiento. Se requieren mínimo dos discos. RAID 0 Ventajas: RAID-0 permite acccesar más de un disco a la vez, logrando una tasa de transferencia más elevada y un rápido tiempo de acceso. Por no utilizar espacio en información redundante, el costo por Megabyte es menor. Desventaja: No existe protección de datos. No existe información en cuanto a Paridad. Ambientes donde implementarlo: Es una buena alternativa en sistemas donde sea más importante el rendimiento que la seguridad de los datos. Es decir ambientes que puedan soportar una pérdida de tiempo de operación para poder reemplazar el disco que falle y

reponer toda la información. RAID 1: Este nivel de RAID usa un tipo de configuración conocido como "mirroring", ya que la información de un disco es completamente duplicada en otro disco. Así mismo, también se puede duplicar el controlador de disco (duplexing). Se desperdicia el 50% de la capacidad y sólo maneja dos discos. RAID 1 Ventajas: Se protege la información en caso de falla tanto del disco como del controlador (en caso de duplex), ya que si un disco suspende su operación el otro continua disponible. De este modo se evita la pérdida de información y las interrupciones del sistema debido a fallas de discos. Desventajas: Gran consumo de necesidades hardware, 100% paridad y coste alto pues es necesario el doble de discos.

Ambientes donde implementarlo: RAID-1 está diseñado para sistemas donde la disponibilidad de la información es esencial y su reemplazo resultaría difícil y costoso (más costoso que reponer el disco en sí). Típico en escrituras aleatorias pequeñas con tolerancia a fallas. El problema de este tipo de arreglos es el costo que implica duplicar los discos. RAID 3: Conocido también como "striping con paridad dedicada", utiliza un disco de protección de información separado para almacenar información de control codificada. Esta información de control codificada o paridad proviene de los datos almacenados en los discos y permite la reconstrucción de la información en caso de falla. Se requieren mínimo tres discos y se utiliza la capacidad de un disco para la información de control. RAID 3 Ventajas: RAID-3 proporciona una alta disponibilidad del arreglo, así como una tasa de transferencia elevada, mejorando de ese modo el rendimiento del sistema. Desventajas: Un disco de paridad dedicado puede convertirse en un cuello de botella porque cada cambio en el grupo RAID requiere un cambio en la información de paridad. No plantea una solución al fallo simultáneo en dos discos. Está especialmente recomendado para aplicaciones que requieran archivos de datos de un gran tamaño (vídeo, imágenes, DataWare House). Ambientes donde implementarlo: Es típico para transferencia larga de datos en forma serial , tal como aplicaciones de imágenes o video RAID 5: Este nivel de RAID es conocido como "striping con paridad distribuida", ya que la información se reparte en bloques como RAID-0, pero un bloque de cada disco se dedica a la paridad. Es decir la data codificada se añade como otro sector que rota por los discos igual que los datos ordinarios. Se requieren mínimo tres discos. RAID 5 Ventajas: Es el esquema de protección de información más usado comúnmente, ya que proporciona un buen rendimiento general con una mínima pérdida de capacidad. Además el sistema tiene suficiente redundancia para ser tolerante a fallos. Desventajas: Menores prestaciones que en RAID 1. No plantea una solución al fallo simultáneo en dos discos. Es recomendable para aplicaciones lectura/escritura, tal como RAID 10: Es un nivel de arreglo de distribuye en bloques como en RAIDAmbientes donde implementarlo: intensas de entrada/salida y de procesamiento de transacciones. discos, donde la información se 0 adicionalmente, cada disco se duplica como RAID-1 , creando un segundo nivel de arreglo. Se conoce como "striping de arreglos duplicados". Se requieren, dos canales, dos discos para cada canal

y se utiliza el 50% de la capacidad para información de control. También se le conoce como RAID 0&1 RAID 10 Ventajas: Este nivel ofrece un 100% de redundancia de la información y un soporte para grandes volúmenes de datos, donde el precio no es un factor importante. Desventajas: Coste elevado, gran overhead y 100% de redundancia Ambientes donde implementarlo: Ideal para sistemas de misión crítica donde se requiera mayor confiabilidad de la información, ya que pueden fallar dos discos inclusive (uno por cada canal) y los datos todavía se mantienen en línea. Es apropiado también en escrituras aleatorias pequeñas. Glosario Hot swap: Son discos que se reemplazan en caliente. Esto quiere decir que si alguno de los discos RAID se estropeara físicamente bastaría con quitarlo y poner otro sin tener que apagar el sistema. Hot spare: Disco sobrante. Es un disco que permanece siempre en el sistema esperando a que uno se estropee y él entre directamente en funcionamiento. Integridad de los datos: es la capacidad que tiene un disco de aguantar un error de grabación, de corrupción o pérdida de datos. Para tal efecto se tiene que seleccionar un disco RAID o una alternativa. El nivel de integridad es uno de los primeros criterios que se han de investigar. Mirroring: Haciendo espejo. Es un nivel de RAID (el nivel 1) que pasa por hacer una copia íntegra de un disco en otro. Paridad: es una información redundante que es guardada para regenerar datos perdidos por un error en el disco. La paridad se genera haciendo un XOR sobre los datos de los discos y aguardándolo en otro disco o en un disco dedicado a este efecto, esto dependerá del nivel RAID que usemos. RAID: Redundat Array of Inexpensive Disk Conjunto de discos con información redundante de bajo costo. Reconstrucción o regeneración: Cuando un disco falla la informacón redundante en los discos y los datos en los discos buenos son usados para regenerar la informacón del disco averiado. Striping: es el acto de unir dos o más discos físicos en un solo disco lógico con el fin de dividir los datos entre los diferentes discos para ofrecer una significativa mejora en el rendimiento del conjunto de los discos.

RAID
En informática, el acrónimo RAID (del inglés Redundant Array of Independent Disks), «conjunto redundante de discos independientes», anteriormente conocido como Redundant Array of Inexpensive Disks, «conjunto redundante de discos baratos») hace referencia a un sistema de almacenamiento que usa múltiples discos duros o SSD entre los que se distribuyen o replican los datos. Dependiendo de su configuración (a la que suele llamarse «nivel»), los beneficios de un RAID respecto a un único disco son uno o varios de los siguientes: mayor integridad, mayor tolerancia a fallos, mayor throughput

(rendimiento) y mayor capacidad. En sus implementaciones originales, su ventaja clave era la habilidad de combinar varios dispositivos de bajo coste y tecnología más antigua en un conjunto que ofrecía mayor capacidad, fiabilidad, velocidad o una combinación de éstas que un solo dispositivo de última generación y coste más alto. En el nivel más simple, un RAID combina varios discos duros en una sola unidad lógica. Así, en lugar de ver varios discos duros diferentes, el sistema operativo ve uno solo. Los RAID suelen usarse en servidores y normalmente (aunque no es necesario) se implementan con unidades de disco de la misma capacidad. Debido al decremento en el precio de los discos duros y la mayor disponibilidad de las opciones RAID incluidas en los chipsets de las placas base, los RAID se encuentran también como opción en las computadoras personales más avanzadas. Esto es especialmente frecuente en las computadoras dedicadas a tareas intensivas y que requiera asegurar la integridad de los datos en caso de fallo del sistema. Esta característica no está obviamente disponible en los sistemas RAID por software, que suelen presentar por tanto el problema de reconstruir el conjunto de discos cuando el sistema es reiniciado tras un fallo para asegurar la integridad de los datos. Por el contrario, los sistemas basados en software son mucho más flexibles (permitiendo, por ejemplo, construir RAID de particiones en lugar de discos completos y agrupar en un mismo RAID discos conectados en varias controladoras) y los basados en hardware añaden un punto de fallo más al sistema (la controladora RAID). Todas las implementaciones pueden soportar el uso de uno o más discos de reserva (hot spare), unidades preinstaladas que pueden usarse inmediatamente (y casi siempre automáticamente) tras el fallo de un disco del RAID. Esto reduce el tiempo del período de reparación al acortar el tiempo de reconstrucción del RAID.

Contenido
[ocultar]

1 Niveles RAID estándar o 1.1 RAID 0 (Data Striping) o 1.2 RAID 1 o 1.3 RAID 2 o 1.4 RAID 3 o 1.5 RAID 4 o 1.6 RAID 5 o 1.7 RAID 6 o 1.8 RAID 5E y RAID 6E 2 Niveles RAID anidados o 2.1 RAID 0+1 o 2.2 RAID 1+0 o 2.3 RAID 30 o 2.4 RAID 100 o 2.5 RAID 50

   

3 Niveles RAID propietarios o 3.1 Paridad doble o 3.2 RAID 1.5 o 3.3 RAID 7 o 3.4 RAID S o RAID de paridad o 3.5 Matrix RAID o 3.6 Linux MD RAID 10 o 3.7 IBM ServeRAID 1E o 3.8 RAID Z 4 Posibilidades de RAID o 4.1 Lo que RAID puede hacer o 4.2 Lo que RAID no puede hacer 5 Véase también 6 Notas 7 Productores de Raid Hardware 8 Enlaces externos

[editar] Niveles RAID estándar
Los niveles RAID más comúnmente usados son:
  

RAID 0: Conjunto dividido RAID 1: Conjunto en espejo RAID 5: Conjunto dividido con paridad distribuida

[editar] RAID 0 (Data Striping)

Diagrama de una configuración RAID 0.

Un RAID 0 (también llamado conjunto dividido o volumen dividido) distribuye los datos equitativamente entre dos o más discos sin información de paridad que proporcione redundancia. Es importante señalar que el RAID 0 no era uno de los niveles RAID originales y que no es redundante. El RAID 0 se usa normalmente para incrementar el rendimiento, aunque también puede utilizarse como forma de crear un pequeño número de grandes discos virtuales a partir de un gran número de pequeños discos físicos. Un RAID 0 puede ser creado con discos de diferentes tamaños, pero el espacio de almacenamiento añadido al conjunto estará limitado por el tamaño del disco más pequeño (por ejemplo, si un disco de 300 GB se divide con uno de 100 GB, el tamaño del conjunto resultante será sólo de 200 GB, ya que cada disco aporta 100GB). Una buena implementación de un RAID 0 dividirá las operaciones de lectura y escritura en bloques de igual tamaño, por lo que distribuirá la información equitativamente entre los dos discos. También es posible crear un RAID 0 con más de dos discos, si bien, la fiabilidad del conjunto será igual a la fiabilidad media de cada disco entre el número de discos del conjunto; es decir, la fiabilidad total —medida como MTTF o MTBF— es (aproximadamente) inversamente proporcional al número de discos del conjunto (pues para que el conjunto falle es suficiente con que lo haga cualquiera de sus discos).

Diagrama de una configuración RAID 1.

[editar] RAID 1
Un RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en dos o más discos. Esto resulta útil cuando el rendimiento en lectura es más importante que la capacidad. Un conjunto RAID 1 sólo puede ser tan grande como el más pequeño de sus discos. Un RAID 1 clásico consiste en dos discos en espejo, lo que incrementa exponencialmente la fiabilidad respecto a un solo disco; es decir, la probabilidad de fallo del conjunto es igual al producto de las probabilidades de fallo de cada uno de los discos (pues para que el conjunto falle es necesario que lo hagan todos sus discos).

Adicionalmente, dado que todos los datos están en dos o más discos, con hardware habitualmente independiente, el rendimiento de lectura se incrementa aproximadamente como múltiplo lineal del número del copias; es decir, un RAID 1 puede estar leyendo simultáneamente dos datos diferentes en dos discos diferentes, por lo que su rendimiento se duplica. Para maximizar los beneficios sobre el rendimiento del RAID 1 se recomienda el uso de controladoras de disco independientes, una para cada disco (práctica que algunos denominan splitting o duplexing). Como en el RAID 0, el tiempo medio de lectura se reduce, ya que los sectores a buscar pueden dividirse entre los discos, bajando el tiempo de búsqueda y subiendo la tasa de transferencia, con el único límite de la velocidad soportada por la controladora RAID. Sin embargo, muchas tarjetas RAID 1 IDE antiguas leen sólo de un disco de la pareja, por lo que su rendimiento es igual al de un único disco. Algunas implementaciones RAID 1 antiguas también leen de ambos discos simultáneamente y comparan los datos para detectar errores. La detección y corrección de errores en los discos duros modernos hacen esta práctica poco útil. Al escribir, el conjunto se comporta como un único disco, dado que los datos deben ser escritos en todos los discos del RAID 1. Por tanto, el rendimiento no mejora. El RAID 1 tiene muchas ventajas de administración. Por ejemplo, en algunos entornos 24/7, es posible «dividir el espejo»: marcar un disco como inactivo, hacer una copia de seguridad de dicho disco y luego «reconstruir» el espejo. Esto requiere que la aplicación de gestión del conjunto soporte la recuperación de los datos del disco en el momento de la división. Este procedimiento es menos crítico que la presencia de una característica de snapshot en algunos sistemas de archivos, en la que se reserva algún espacio para los cambios, presentando una vista estática en un punto temporal dado del sistema de archivos. Alternativamente, un conjunto de discos puede ser almacenado de forma parecida a como se hace con las tradicionales cintas.

[editar] RAID 2

RAID 2 Un RAID 2 divide los datos a nivel de bits en lugar de a nivel de bloques y usa un código de Hamming para la corrección de errores. Los discos son sincronizados por la controladora para funcionar al unísono. Éste es el único nivel RAID original que actualmente no se usa. Permite tasas de trasferencias extremadamente altas.

Teóricamente, un RAID 2 necesitaría 39 discos en un sistema informático moderno: 32 se usarían para almacenar los bits individuales que forman cada palabra y 7 se usarían para la corrección de errores.

[editar] RAID 3

Diagrama de una configuración RAID 3. Cada número representa un byte de datos; cada columna, un disco. Un RAID 3 usa división a nivel de bytes con un disco de paridad dedicado. El RAID 3 se usa rara vez en la práctica. Uno de sus efectos secundarios es que normalmente no puede atender varias peticiones simultáneas, debido a que por definición cualquier simple bloque de datos se dividirá por todos los miembros del conjunto, residiendo la misma dirección dentro de cada uno de ellos. Así, cualquier operación de lectura o escritura exige activar todos los discos del conjunto, suele ser un poco lento porque se producen cuellos de botella. Son discos paralelos pero no son independientes (no se puede leer y escribir al mismo tiempo). En el ejemplo del gráfico, una petición del bloque «A» formado por los bytes A1 a A6 requeriría que los tres discos de datos buscaran el comienzo (A1) y devolvieran su contenido. Una petición simultánea del bloque «B» tendría que esperar a que la anterior concluyese.

[editar] RAID 4

Diagrama de una configuración RAID 4. Cada número representa un bloque de datos; cada columna, un disco.

Un RAID 4, también conocido como IDA (acceso independiente con discos dedicados a la paridad) usa división a nivel de bloques con un disco de paridad dedicado. Necesita un mínimo de 3 discos físicos. El RAID 4 es parecido al RAID 3 excepto porque divide a nivel de bloques en lugar de a nivel de bytes. Esto permite que cada miembro del conjunto funcione independientemente cuando se solicita un único bloque. Si la controladora de disco lo permite, un conjunto RAID 4 puede servir varias peticiones de lectura simultáneamente. En principio también sería posible servir varias peticiones de escritura simultáneamente, pero al estar toda la información de paridad en un solo disco, éste se convertiría en el cuello de botella del conjunto. En el gráfico de ejemplo anterior, una petición del bloque «A1» sería servida por el disco 0. Una petición simultánea del bloque «B1» tendría que esperar, pero una petición de «B2» podría atenderse concurrentemente.

[editar] RAID 5

Diagrama de una configuración RAID 5. Un RAID 5 usa división de datos a nivel de bloques distribuyendo la información de paridad entre todos los discos miembros del conjunto. El RAID 5 ha logrado popularidad gracias a su bajo coste de redundancia. Generalmente, el RAID 5 se implementa con soporte hardware para el cálculo de la paridad. RAID 5 necesitará un minimo de 3 discos para ser implementado. En el gráfico de ejemplo anterior, una petición de lectura del bloque «A1» sería servida por el disco 0. Una petición de lectura simultánea del bloque «B1» tendría que esperar, pero una petición de lectura de «B2» podría atenderse concurrentemente ya que seria servida por el disco 1. Cada vez que un bloque de datos se escribe en un RAID 5, se genera un bloque de paridad dentro de la misma división (stripe). Un bloque se compone a menudo de muchos sectores consecutivos de disco. Una serie de bloques (un bloque de cada uno de los discos del conjunto) recibe el nombre colectivo de división (stripe). Si otro bloque, o alguna porción de un bloque, es escrita en esa misma división, el bloque de paridad (o una parte del mismo) es recalculada y vuelta a escribir. El disco utilizado por el bloque de paridad está escalonado de una división a la siguiente, de ahí el término «bloques de

paridad distribuidos». Las escrituras en un RAID 5 son costosas en términos de operaciones de disco y tráfico entre los discos y la controladora. Los bloques de paridad no se leen en las operaciones de lectura de datos, ya que esto sería una sobrecarga innecesaria y disminuiría el rendimiento. Sin embargo, los bloques de paridad se leen cuando la lectura de un sector de datos provoca un error de CRC. En este caso, el sector en la misma posición relativa dentro de cada uno de los bloques de datos restantes en la división y dentro del bloque de paridad en la división se utilizan para reconstruir el sector erróneo. El error CRC se oculta así al resto del sistema. De la misma forma, si falla un disco del conjunto, los bloques de paridad de los restantes discos son combinados matemáticamente con los bloques de datos de los restantes discos para reconstruir los datos del disco que ha fallado «al vuelo». Lo anterior se denomina a veces Modo Interino de Recuperación de Datos (Interim Data Recovery Mode). El sistema sabe que un disco ha fallado, pero sólo con el fin de que el sistema operativo pueda notificar al administrador que una unidad necesita ser reemplazada: las aplicaciones en ejecución siguen funcionando ajenas al fallo. Las lecturas y escrituras continúan normalmente en el conjunto de discos, aunque con alguna degradación de rendimiento. La diferencia entre el RAID 4 y el RAID 5 es que, en el Modo Interno de Recuperación de Datos, el RAID 5 puede ser ligeramente más rápido, debido a que, cuando el CRC y la paridad están en el disco que falló, los cálculos no tienen que realizarse, mientras que en el RAID 4, si uno de los discos de datos falla, los cálculos tienen que ser realizados en cada acceso. El RAID 5 requiere al menos tres unidades de disco para ser implementado. El fallo de un segundo disco provoca la pérdida completa de los datos. El número máximo de discos en un grupo de redundancia RAID 5 es teóricamente ilimitado, pero en la práctica es común limitar el número de unidades. Los inconvenientes de usar grupos de redundancia mayores son una mayor probabilidad de fallo simultáneo de dos discos, un mayor tiempo de reconstrucción y una mayor probabilidad de hallar un sector irrecuperable durante una reconstrucción. A medida que el número de discos en un conjunto RAID 5 crece, el MTBF (tiempo medio entre fallos) puede ser más bajo que el de un único disco. Esto sucede cuando la probabilidad de que falle un segundo disco en los N-1 discos restantes de un conjunto en el que ha fallado un disco en el tiempo necesario para detectar, reemplazar y recrear dicho disco es mayor que la probabilidad de fallo de un único disco. Una alternativa que proporciona una protección de paridad dual, permitiendo así mayor número de discos por grupo, es el RAID 6. Algunos vendedores RAID evitan montar discos de los mismos lotes en un grupo de redundancia para minimizar la probabilidad de fallos simultáneos al principio y el final de su vida útil. Las implementaciones RAID 5 presentan un rendimiento malo cuando se someten a cargas de trabajo que incluyen muchas escrituras más pequeñas que el tamaño de una división (stripe). Esto se debe a que la paridad debe ser actualizada para cada escritura,

lo que exige realizar secuencias de lectura, modificación y escritura tanto para el bloque de datos como para el de paridad. Implementaciones más complejas incluyen a menudo cachés de escritura no volátiles para reducir este problema de rendimiento. En el caso de un fallo del sistema cuando hay escrituras activas, la paridad de una división (stripe) puede quedar en un estado inconsistente con los datos. Si esto no se detecta y repara antes de que un disco o bloque falle, pueden perderse datos debido a que se usará una paridad incorrecta para reconstruir el bloque perdido en dicha división. Esta potencial vulnerabilidad se conoce a veces como «agujero de escritura». Son comunes el uso de caché no volátiles y otras técnicas para reducir la probabilidad de ocurrencia de esta vulnerabilidad.

[editar] RAID 6

Diagrama de una configuración RAID 6. Cada número representa un bloque de datos; cada columna, un disco; p y q, códigos Reed-Solomon. Un RAID 6 amplía el nivel RAID 5 añadiendo otro bloque de paridad, por lo que divide los datos a nivel de bloques y distribuye los dos bloques de paridad entre todos los miembros del conjunto. El RAID 6 no era uno de los niveles RAID originales. El RAID 6 puede ser considerado un caso especial de código Reed-Solomon.1 El RAID 6, siendo un caso degenerado, exige sólo sumas en el campo de Galois.2 Dado que se está operando sobre bits, lo que se usa es un campo binario de Galois ( ). En las representaciones cíclicas de los campos binarios de Galois, la suma se calcula con un simple XOR. Tras comprender el RAID 6 como caso especial de un código Reed-Solomon, se puede ver que es posible ampliar este enfoque para generar redundancia simplemente produciendo otro código, típicamente un polinomio en (m = 8 significa que estamos operando sobre bytes). Al añadir códigos adicionales es posible alcanzar cualquier número de discos redundantes, y recuperarse de un fallo de ese mismo número de discos en cualquier puntos del conjunto, pero en el nivel RAID 6 se usan dos únicos códigos. Al igual que en el RAID 5, en el RAID 6 la paridad se distribuye en divisiones (stripes), con los bloques de paridad en un lugar diferente en cada división.

El RAID 6 es ineficiente cuando se usa un pequeño número de discos pero a medida que el conjunto crece y se dispone de más discos la pérdida en capacidad de almacenamiento se hace menos importante, creciendo al mismo tiempo la probabilidad de que dos discos fallen simultáneamente. El RAID 6 proporciona protección contra fallos dobles de discos y contra fallos cuando se está reconstruyendo un disco. En caso de que sólo tengamos un conjunto puede ser más adecuado que usar un RAID 5 con un disco de reserva (hot spare). La capacidad de datos de un conjunto RAID 6 es n-2, siendo n el número total de discos del conjunto. Un RAID 6 no penaliza el rendimiento de las operaciones de lectura, pero sí el de las de escritura debido al proceso que exigen los cálculos adicionales de paridad. Esta penalización puede minimizarse agrupando las escrituras en el menor número posible de divisiones (stripes), lo que puede lograrse mediante el uso de un sistema de archivos WAFL.

[editar] RAID 5E y RAID 6E

RAID 5E Se suele llamar RAID 5E y RAID 6E a las variantes de RAID 5 y RAID 6 que incluyen discos de reserva. Estos discos pueden estar conectados y preparados (hot spare) o en espera (standby spare). En los RAID 5E y RAID 6E, los discos de reserva están disponibles para cualquiera de las unidades miembro. No suponen mejora alguna del rendimiento, pero sí se minimiza el tiempo de reconstrucción (en el caso de los discos hot spare) y las labores de administración cuando se producen fallos. Un disco de reserva no es realmente parte del conjunto hasta que un disco falla y el conjunto se reconstruye sobre el de reserva.

[editar] Niveles RAID anidados
Muchas controladoras permiten anidar niveles RAID, es decir, que un RAID pueda usarse como elemento básico de otro en lugar de discos físicos. Resulta instructivo

pensar en estos conjuntos como capas dispuestas unas sobre otras, con los discos físicos en la inferior. Los RAID anidados se indican normalmente uniendo en un solo número los correspondientes a los niveles RAID usados, añadiendo a veces un «+» entre ellos. Por ejemplo, el RAID 10 (o RAID 1+0) consiste conceptualmente en múltiples conjuntos de nivel 1 almacenados en discos físicos con un nivel 0 encima, agrupando los anteriores niveles 1. En el caso del RAID 0+1 se usa más esta forma que RAID 01 para evitar la confusión con el RAID 1. Sin embargo, cuando el conjunto de más alto nivel es un RAID 0 (como en el RAID 10 y en el RAID 50), la mayoría de los vendedores eligen omitir el «+», a pesar de que RAID 5+0 sea más informativo. Al anidar niveles RAID, se suele combinar un nivel RAID que proporcione redundancia con un RAID 0 que aumenta el rendimiento. Con estas configuraciones es preferible tener el RAID 0 como nivel más alto y los conjuntos redundantes debajo, porque así será necesario reconstruir menos discos cuando uno falle. (Así, el RAID 10 es preferible al RAID 0+1 aunque las ventajas administrativas de «dividir el espejo» del RAID 1 se perderían.) Los niveles RAID anidados más comúnmente usados son:
   

RAID 0+1: Un espejo de divisiones RAID 1+0: Una división de espejos RAID 30: Una división de niveles RAID con paridad dedicada RAID 100: Una división de una división de espejos

[editar] RAID 0+1

Diagrama de una configuración RAID 0+1. Un RAID 0+1 (también llamado RAID 01, que no debe confundirse con RAID 1) es un RAID usado para replicar y compartir datos entre varios discos. La diferencia entre un RAID 0+1 y un RAID 1+0 es la localización de cada nivel RAID dentro del conjunto final: un RAID 0+1 es un espejo de divisiones.3

Como puede verse en el diagrama, primero se crean dos conjuntos RAID 0 (dividiendo los datos en discos) y luego, sobre los anteriores, se crea un conjunto RAID 1 (realizando un espejo de los anteriores). La ventaja de un RAID 0+1 es que cuando un disco duro falla, los datos perdidos pueden ser copiados del otro conjunto de nivel 0 para reconstruir el conjunto global. Sin embargo, añadir un disco duro adicional en una división, es obligatorio añadir otro al de la otra división para equilibrar el tamaño del conjunto. Además, el RAID 0+1 no es tan robusto como un RAID 1+0, no pudiendo tolerar dos fallos simultáneos de discos salvo que sean en la misma división. Es decir, cuando un disco falla, la otra división se convierte en un punto de fallo único. Además, cuando se sustituye el disco que falló, se necesita que todos los discos del conjunto participen en la reconstrucción de los datos. Con la cada vez mayor capacidad de las unidades de discos (liderada por las unidades serial ATA), el riesgo de fallo de los discos es cada vez mayor. Además, las tecnologías de corrección de errores de bit no han sido capaces de mantener el ritmo de rápido incremento de las capacidades de los discos, provocando un mayor riesgo de hallar errores físicos irrecuperables. Dados estos cada vez mayores riesgos del RAID 0+1 (y su vulnerabilidad ante los fallos dobles simultáneos), muchos entornos empresariales críticos están empezando a evaluar configuraciones RAID más tolerantes a fallos que añaden un mecanismo de paridad subyacente. Entre los más prometedores están los enfoques híbridos como el RAID 0+1+5 (espejo sobre paridad única) o RAID 0+1+6 (espejo sobre paridad dual). Son los más habituales por las empresas.[cita requerida]

[editar] RAID 1+0

Diagrama de una configuración RAID 10. Un RAID 1+0, a veces llamado RAID 10, es parecido a un RAID 0+1 con la excepción de que los niveles RAID que lo forman se invierte: el RAID 10 es una división de espejos.3

En cada división RAID 1 pueden fallar todos los discos salvo uno sin que se pierdan datos. Sin embargo, si los discos que han fallado no se reemplazan, el restante pasa a ser un punto único de fallo para todo el conjunto. Si ese disco falla entonces, se perderán todos los datos del conjunto completo. Como en el caso del RAID 0+1, si un disco que ha fallado no se reemplaza, entonces un solo error de medio irrecuperable que ocurra en el disco espejado resultaría en pérdida de datos. Debido a estos mayores riesgos del RAID 1+0, muchos entornos empresariales críticos están empezando a evaluar configuraciones RAID más tolerantes a fallos que añaden un mecanismo de paridad subyacente. Entre los más prometedores están los enfoques híbridos como el RAID 0+1+5 (espejo sobre paridad única) o RAID 0+1+6 (espejo sobre paridad dual). El RAID 10 es a menudo la mejor elección para bases de datos de altas prestaciones, debido a que la ausencia de cálculos de paridad proporciona mayor velocidad de escritura.

[editar] RAID 30

Diagrama de una configuración RAID 30. El RAID 30 o división con conjunto de paridad dedicado es una combinación de un RAID 3 y un RAID 0. El RAID 30 proporciona tasas de transferencia elevadas combinadas con una alta fiabilidad a cambio de un coste de implementación muy alto. La mejor forma de construir un RAID 30 es combinar dos conjuntos RAID 3 con los datos divididos en ambos conjuntos. El RAID 30 trocea los datos en bloque más pequeños y los divide en cada conjunto RAID 3, que a su vez lo divide en trozos aún menores, calcula la paridad aplicando un XOR a cada uno y los escriben en todos los discos del conjunto salvo en uno, donde se almacena la información de paridad. El tamaño de cada bloque se decide en el momento de construir el RAID.Etc... El RAID 30 permite que falle un disco de cada conjunto RAID 3. Hasta que estos discos que fallaron sean reemplazados, los otros discos de cada conjunto que sufrió el fallo son puntos únicos de fallo para el conjunto RAID 30 completo. En otras palabras, si alguno de ellos falla se perderán todos los datos del conjunto. El tiempo de recuperación necesario (detectar y responder al fallo del disco y reconstruir el conjunto sobre el disco nuevo) representa un periodo de vulnerabilidad para el RAID.

[editar] RAID 100

RAID 100. Un RAID 100, a veces llamado también RAID 10+0, es una división de conjuntos RAID 10. El RAID 100 es un ejemplo de «RAID cuadriculado», un RAID en el que conjuntos divididos son a su vez divididos conjuntamente de nuevo. Todos los discos menos unos podrían fallar en cada RAID 1 sin perder datos. Sin embargo, el disco restante de un RAID 1 se convierte así en un punto único de fallo para el conjunto degradado. A menudo el nivel superior de división se hace por software. Algunos vendedores llaman a este nivel más alto un MetaLun o Soft Stripe. Los principales beneficios de un RAID 100 (y de los RAID cuadriculados en general) sobre un único nivel RAID son mejor rendimiento para lecturas aleatorias y la mitigación de los puntos calientes de riesgo en el conjunto. Por estas razones, el RAID 100 es a menudo la mejor elección para bases de datos muy grandes, donde el conjunto software subyacente limita la cantidad de discos físicos permitidos en cada conjunto estándar. Implementar niveles RAID anidados permite eliminar virtualmente el límite de unidades físicas en un único volumen lógico.

[editar] RAID 50

RAID 50.

Un RAID 50, a veces llamado también RAID 5+0, combina la división a nivel de bloques de un RAID 0 con la paridad distribuida de un RAID 5, siendo pues un conjunto RAID 0 dividido de elementos RAID 5. Un disco de cada conjunto RAID 5 puede fallar sin que se pierdan datos. Sin embargo, si el disco que falla no se reemplaza, los discos restantes de dicho conjunto se convierten en un punto único de fallo para todo el conjunto. Si uno falla, todos los datos del conjunto global se pierden. El tiempo necesario para recuperar (detectar y responder al fallo de disco y reconstruir el conjunto sobre el nuevo disco) representa un periodo de vulnerabilidad del conjunto RAID. La configuración de los conjuntos RAID repercute sobre la tolerancia a fallos general. Una configuración de tres conjuntos RAID 5 de siete discos cada uno tiene la mayor capacidad y eficiencia de almacenamiento, pero sólo puede tolerar un máximo de tres fallos potenciales de disco. Debido a que la fiabilidad del sistema depende del rápido reemplazo de los discos averiados para que el conjunto pueda reconstruirse, es común construir conjuntos RAID 5 de seis discos con un disco de reserva en línea (hot spare) que permite empezar de inmediato la reconstrucción en caso de fallo del conjunto. Esto no soluciona el problema de que el conjunto sufre un estrés máximo durante la reconstrucción dado que es necesario leer cada bit, justo cuando es más vulnerable. Una configuración de siete conjuntos RAID 5 de tres discos cada uno puede tolerar hasta siete fallos de disco pero tiene menor capacidad y eficiencia de almacenamiento. El RAID 50 mejora el rendimiento del RAID 5, especialmente en escritura, y proporciona mejor tolerancia a fallos que un nivel RAID único. Este nivel se recomienda para aplicaciones que necesitan gran tolerancia a fallos, capacidad y rendimiento de búsqueda aleatoria. A medida que el número de unidades del conjunto RAID 50 crece y la capacidad de los discos aumenta, el tiempo de recuperación lo hace también.

[editar] Niveles RAID propietarios
Aunque todas las implementaciones de RAID difieren en algún grado de la especificación idealizada, algunas compañías han desarrollado implementaciones RAID completamente propietarias que difieren sustancialmente de todas las demás.

[editar] Paridad doble

Diagrama una configuración RAID de doble paridad. Una adición frecuente a los niveles RAID existentes es la paridad doble, a veces implementada y conocida como paridad diagonal.4 Como en el RAID 6, hay dos conjuntos de información de chequeo de paridad, pero a diferencia de aquél, el segundo conjunto no es otro conjunto de puntos calculado sobre un síndrome polinomial diferente para los mismos grupos de bloques de datos, sino que se calcula la paridad extra a partir de un grupo diferente de bloques de datos. Por ejemplo, sobre el gráfico tanto el RAID 5 como el RAID 6 calcularían la paridad sobre todos los bloques de la letra A para generar uno o dos bloques de paridad. Sin embargo, es bastante fácil calcular la paridad contra múltiples grupos de bloques, en lugar de sólo sobre los bloques de la letra A: puede calcularse la paridad sobre los bloques de la letra A y un grupo permutado de bloques. De nuevo sobre el ejemplo, los bloques Q son los de la paridad doble. El bloque Q2 se calcularía como A2 xor B3 'xor P3, mientras el bloque Q3 se calcularía como A3 xor P2 xor C1 y el Q1 sería A1 xor B2 xor C3. Debido a que los bloques de paridad doble se distribuyen correctamente, es posible reconstruir dos discos de datos que fallen mediante recuperación iterativa. Por ejemplo, B2 podría recuperarse sin usar ninguno de los bloque x1 ni x2 mediante el cálculo de B3 xor P3 xor Q2 = A2, luego A2 xor A3 xor P1 = A1, y finalmente A1 xor C3 xor Q1 = B2. No es recomendable que el sistema de paridad doble funcione en modo degradado debido a su bajo rendimiento.

[editar] RAID 1.5
RAID 1.5 es un nivel RAID propietario de HighPoint a veces incorrectamente denominado RAID 15. Por la poca información disponible, parece ser una implementación correcta de un RAID 1. Cuando se lee, los datos se recuperan de ambos discos simultáneamente y la mayoría del trabajo se hace en hardware en lugar de en el controlador software.

[editar] RAID 7
RAID 7 es una marca registrada de Storage Computer Corporation, que añade cachés a un RAID 3 o RAID 4 para mejorar el rendimiento.

[editar] RAID S o RAID de paridad
RAID S es un sistema RAID de paridad distribuida propietario de EMC Corporation usado en sus sistemas de almacenamiento Symmetrix. Cada volumen reside en un único disco físico, y se combinan arbitrariamente varios volúmenes para el cálculo de paridad. EMC llamaba originalmente a esta característica RAID S y luego la rebautizó RAID de paridad (Parity RAID) para su plataforma Symmetrix DMX. EMC ofrece también actualmente un RAID 5 estándar para el Symmetrix DMX.

[editar] Matrix RAID

Diagrama una configuración Matriz RAID. Matrix RAID („matriz RAID‟) es una característica que apareció por vez primera en la BIOS RAID Intel ICH6R. No es un nuevo nivel RAID. El Matrix RAID utiliza dos o más discos físicos, asignando partes de idéntico tamaño de cada uno de ellos diferentes niveles de RAID. Así, por ejemplo, sobre 4 discos de un total de 600GB, se pueden usar 200 en raid 0, 200 en raid 10 y 200 en raid 5. Actualmente, la mayoría de los otros productos RAID BIOS de gama baja sólo permiten que un disco participen en un único conjunto. Este producto está dirigido a los usuarios domésticos, proporcionando una zona segura (la sección RAID 1) para documentos y otros archivos que se desean almacenar redundantemente y una zona más rápida (la sección RAID 0) para el sistema operativo, aplicaciones, etcétera.

[editar] Linux MD RAID 10

RAID 10 La controladora RAID software del kernel de Linux (llamada md, de multiple disk, „disco múltiple‟) puede ser usada para construir un conjunto RAID 1+0 clásico, pero también permite un único nivel RAID 10 con algunas extensiones interesantes.3 En particular, soporta un espejado de k bloques en n unidades cuando k no es divisible por n. Esto se hace repitiendo cada bloque k veces al escribirlo en un conjunto RAID 0 subyacente de n unidades. Evidentemente esto equivale a la configuración RAID 10 estándar. Linux también permite crear otras configuraciones RAID usando la controladora md (niveles 0, 1, 4, 5 y 6) además de otros usos no RAID como almacenamiento multirruta y LVM2.

[editar] IBM ServeRAID 1E

Diagrama una configuración RAID 1E.

La serie de adaptadores IBM ServeRAID soportan un espejado doble de un número arbitrario de discos, como se ilustra en el gráfico. Esta configuración es tolerante a fallos de unidades no adyacentes. Otros sistemas de almacenamiento como el StorEdge T3 de Sun soportan también este modo.

[editar] RAID Z
El sistema de archivos ZFS de Sun Microsystems implementa un esquema de redundancia integrado parecido al RAID 5 que se denomina RAID Z. Esta configuración evita el «agujero de escritura» del RAID 55 y la necesidad de la secuencia leer-modificar-escribir para operaciones de escrituras pequeñas efectuando sólo escrituras de divisiones (stripes) completas, espejando los bloques pequeños en lugar de protegerlos con el cálculo de paridad, lo que resulta posible gracias a que el sistema de archivos conoce la estructura de almacenamiento subyacente y puede gestionar el espacio adicional cuando lo necesita.

[editar] Posibilidades de RAID
[editar] Lo que RAID puede hacer

RAID puede mejorar el uptime. Los niveles RAID 1, 0+1 o 10, 5 y 6 (sus variantes, como el 50) permiten que un disco falle mecánicamente y que aun así los datos del conjunto sigan siendo accesibles para los usuarios. En lugar de exigir que se realice una restauración costosa en tiempo desde una cinta, DVD o algún otro medio de respaldo lento, un RAID permite que los datos se recuperen en un disco de reemplazo a partir de los restantes discos del conjunto, mientras al mismo tiempo permanece disponible para los usuarios en un modo degradado. Esto es muy valorado por las empresas, ya que el tiempo de no disponibilidad suele tener graves repercusiones. Para usuarios domésticos, puede permitir el ahorro del tiempo de restauración de volúmenes grandes, que requerirían varios DVD o cintas para las copias de seguridad. RAID puede mejorar el rendimiento de ciertas aplicaciones. Los niveles RAID 0, 5 y 6 usan variantes de división (striping) de datos, lo que permite que varios discos atiendan simultáneamente las operaciones de lectura lineales, aumentando la tasa de transferencia sostenida. Las aplicaciones de escritorio que trabajan con archivos grandes, como la edición de vídeo e imágenes, se benefician de esta mejora. También es útil para las operaciones de copia de respaldo de disco a disco. Además, si se usa un RAID 1 o un RAID basado en división con un tamaño de bloque lo suficientemente grande se logran mejoras de rendimiento para patrones de acceso que implique múltiples lecturas simultáneas (por ejemplo, bases de datos multiusuario).

[editar] Lo que RAID no puede hacer

RAID no protege los datos. Un conjunto RAID tiene un sistema de archivos, lo que supone un punto único de fallo al ser vulnerable a una amplia variedad de riesgos aparte del fallo físico de disco, por lo que RAID no evita la pérdida de datos por estas causas. RAID no impedirá que un virus destruya los datos, que éstos se corrompan, que sufran la modificación o borrado accidental por parte del usuario ni que un fallo físico en otro componente del sistema afecten a los datos. RAID no simplifica la recuperación de un desastre. Cuando se trabaja con un solo disco, éste es accesible normalmente mediante un controlador ATA o SCSI incluido en la mayoría de los sistemas operativos. Sin embargo, las controladoras RAID necesitan controladores software específicos. Las herramientas de recuperación que trabajan con discos simples en controladoras genéricas necesitarán controladores especiales para acceder a los datos de los conjuntos RAID. Si estas herramientas no los soportan, los datos serán inaccesibles para ellas. RAID no mejora el rendimiento de todas las aplicaciones. Esto resulta especialmente cierto en las configuraciones típicas de escritorio. La mayoría de aplicaciones de escritorio y videojuegos hacen énfasis en la estrategia de buffering y los tiempos de búsqueda de los discos. Una mayor tasa de transferencia sostenida supone poco beneficio para los usuarios de estas aplicaciones, al ser la mayoría de los archivos a los que se accede muy pequeños. La división de discos de un RAID 0 mejora el rendimiento de transferencia lineal pero no lo demás, lo que hace que la mayoría de las aplicaciones de escritorio y juegos no muestren mejora alguna, salvo excepciones. Para estos usos, lo mejor es comprar un disco más grande, rápido y caro en lugar de dos discos más lentos y pequeños en una configuración RAID 0. RAID no facilita el traslado a un sistema nuevo. Cuando se usa un solo disco, es relativamente fácil trasladar el disco a un sistema nuevo: basta con conectarlo, si cuenta con la misma interfaz. Con un RAID no es tan sencillo: la BIOS RAID debe ser capaz de leer los metadatos de los miembros del conjunto para reconocerlo adecuadamente y hacerlo disponible al sistema operativo. Dado que los distintos fabricantes de controladoras RAID usan diferentes formatos de metadatos (incluso controladoras de un mismo fabricante son incompatibles si corresponden a series diferentes) es virtualmente imposible mover un conjunto RAID a una controladora diferente, por lo que suele ser necesario mover también la controladora. Esto resulta imposible en aquellos sistemas donde está integrada en la placa base. Esta limitación puede obviarse con el uso de RAID por software, que a su vez añaden otras diferentes (especialmente relacionadas con el rendimiento).
2001)

Fiabilidad y tolerancia

de fallos
Objetivos
Veremos

cuáles son los factores que

afectan a la fiabilidad de un sistema También veremos algunas técnicas para tolerar fallos de Software

Fallos de funcionamiento
Los

fallos de funcionamiento de un sistema pueden tener su origen en
– Una especificación inadecuada – Errores de diseño del software – Averías en el hardware – Interferencias transitorias o permanentes en las comunicaciones
Nos

centraremos en el estudio de los errores de software

Conceptos básicos

La

fiabilidad (reliability) de un sistema es una medida de su conformidad con una especificación autorizada de su comportamiento Una avería (failure) es una desviación del comportamiento de un sistema respecto de su especificación Las averías se manifiestan en el comportamiento externo del sistema, pero son el resultado de errores (errors) internos Las causas mecánicas o algorítmicas de los errores se llaman fallos (faults)

Fallos encadenados
Los

fallos pueden ser consecuencia de averías en los

componentes del sistema (que son también sistemas)
averia fallo error averia fallo

Tipos de fallos
Fallos

transitorios permanentes

– desaparecen solos al cabo de un tiempo – ejemplo: interferencias en comunicaciones
Fallos

– permanecen hasta que se reparan – ejemplo: roturas de hardware, errores de diseño de software
Fallos

intermitentes

– fallos transitorios que ocurren de vez en cuando – ejemplo: calentamiento de un componente de hardware

Debe impedirse que los fallos de todos estos tipos causen averías

Tipos de avería (failure modes)

Prevención y tolerancia de fallos
Hay

dos formas de aumentar la fiabilidad de un sistema:
– Prevención de fallos
» Se trata de evitar que se introduzcan fallos en el sistema antes de que entre en funcionamiento

– Tolerancia de fallos
» Se trata de conseguir que el sistema continúe funcionando aunque se produzcan fallos En ambos casos el objetivo es

desarrollar sistemas con tipos de averías bien definidos

Prevención de fallos
Se

realiza en dos etapas:

– Evitación de fallos
» Se trata de impedir que se introduzcan fallos durante la construcción del sistema

– Eliminación de fallos
» Consiste en encontrar y eliminar los fallos que se producen en el sistema una vez construido

Técnicas de evitación de fallos
Hardware

– Utilización de componentes fiables – Técnicas rigurosas de montaje de subsistemas – Apantallamiento de hardware
Software

– Especificación de requisitos rigurosa o formal – Métodos de diseño comprobados – Lenguajes con abstracción de datos y modularidad – Utilización de entornos de desarrollo con computador (CASE) adecuados para gestionar los componentes

Técnicas de eliminación de fallos
Comprobaciones

– Revisiones de diseño – Verificación de programas – Inspección de código
Pruebas

(tests)

– Son necesarias, pero tienen problemas:
» no pueden ser nunca exhaustivas

» sólo sirven para mostrar que hay errores, no que no los hay » a menudo es imposible reproducir las condiciones reales » los errores de especificación no se detectan

Limitaciones de la prevención de fallos
Los

componentes de hardware fallan, a pesar de las técnicas de prevención
– La prevención es insuficiente si
» la frecuencia o la duración de las reparaciones es inaceptable » no se puede detener el sistema para efectuar operaciones de mantenimiento Ejemplo: naves espaciales no

tripuladas La alternativa es utilizar técnicas de tolerancia de fallos

Grados de tolerancia de fallos
Tolerancia

completa (fail operational)

– El sistema sigue funcionando, al menos durante un tiempo, sin perder funcionalidad ni prestaciones
Degradación

aceptable (fail soft, graceful degradation)
– El sistema sigue funcionando con una pérdida parcial de funcionalidad o prestaciones hasta la reparación del fallo
Parada

segura (fail safe)

– El sistema se detiene en un estado que asegura la integridad del entorno hasta que se repare el fallo

El grado de tolerancia de fallos necesario depende de la aplicación

Redundancia
La

tolerancia de fallos se basa en la redundancia Se utilizan componentes adicionales para detectar los fallos y recuperar el comportamiento correcto

Esto

aumenta la complejidad del sistema y puede introducir fallos adicionales Es mejor separar los componentes tolerantes del resto del Sistema

Redundancia en hardware
Redundancia

estática

– Los componentes redundantes están siempre activos – Se utilizan para enmascarar los fallos – Ejemplo:
» Redundancia modular triple (ó N), TMR/NMR Redundancia dinámica

– Los componentes redundantes se activan cuando se detecta un fallo – Se basa en la detección y posterior recuperación de los fallos – Ejemplos:
» sumas de comprobación » bits de paridad

Tolerancia de fallos de software
Técnicas

para detectar y corregir errores de diseño Redundancia estática
– Programación con N versiones
Redundancia

dinámica

– Dos etapas: detección y recuperación de fallos – Bloques de recuperación
» Proporcionan recuperación hacia atrás

– Excepciones
» Proporcionan recuperación hacia adelante

Programación con N versiones
Diversidad

de diseño

– N programas desarrollados independientemente con la misma especificación – sin interacciones entre los equipos de desarrollo
Ejecución

concurrente

– proceso coordinador (driver)

» intercambia datos con los procesos que ejecutan las versiones

– todos los programas tienen las mismas entradas – las salidas se comparan – si hay discrepancia se realiza una votación

Redundancia dinámica en software
Cuatro etapas:
1. Detección de errores
» no se puede hacer nada hasta que se detecta un error

2. Evaluación y confinamiento de los daños
» diagnosis: averiguar hasta dónde ha llegado la información errónea

3. Recuperación de errores
» llevar el sistema a un estado correcto, desde el que pueda seguir funcionando (tal vez con funcionalidad parcial)

4. Reparación de fallos
» Aunque el sistema funcione, el fallo puede persistir y hay que Repararlo