Articulo de referencia

Control de recuperación de errores

En informática , el control de recuperación de errores ( ERC ) ( Western Digital : recuperación de errores con límite de tiempo ( TLER ), Samsung / Hitachi : límite de tiempo de...

En informática , el control de recuperación de errores ( ERC ) ( Western Digital : recuperación de errores con límite de tiempo ( TLER ), Samsung / Hitachi : límite de tiempo de finalización de comandos ( CCTL )) es una función de los discos duros que permite al administrador del sistema configurar el tiempo que el firmware de la unidad puede dedicar a recuperarse de un error de lectura o escritura. Limitar el tiempo de recuperación permite una mejor gestión de errores en entornos RAID de hardware o software . En algunos casos, existe un conflicto sobre si la gestión de errores debe realizarse en el disco duro o en la implementación RAID, lo que provoca que las unidades se marquen como inutilizables y una degradación significativa del rendimiento, cuando esto podría haberse evitado.

Descripción general

Los discos duros modernos cuentan con la capacidad de recuperarse de algunos errores de lectura/escritura mediante la reasignación interna de sectores y la realización de otras formas de autodiagnóstico y recuperación. Este proceso puede tardar varios segundos o, en caso de uso intensivo, minutos, durante los cuales el disco no responde. Los controladores RAID de hardware y las implementaciones RAID de software están diseñados para reconocer un disco que no responde en pocos segundos y marcarlo como poco fiable, lo que indica que debe retirarse del servicio y reconstruirse la matriz a partir de los datos de paridad . Este es un proceso largo que degrada el rendimiento y, si fallan más discos debido a la carga de trabajo adicional resultante, puede ser catastrófico.

Si la unidad es intrínsecamente fiable pero presenta algunos sectores defectuosos, TLER y funciones similares evitan que un disco se marque innecesariamente como "fallido", limitando el tiempo dedicado a corregir los errores detectados antes de notificar al controlador de la matriz sobre una operación fallida. De esta forma, el controlador de la matriz puede gestionar la recuperación de los datos afectados, en lugar de marcar toda la unidad como defectuosa.

Valores predeterminados típicos

En la práctica, TLER y funciones similares limitan el rendimiento del manejo de errores en la unidad, para permitir que los controladores RAID de hardware y las implementaciones RAID de software gestionen el error si este resulta problemático.

En general, las unidades empresariales de Western Digital , como Raptor , Caviar RE2 y RE2-GP (Edición RAID), vienen con TLER Read "Enabled" (7 segundos) y TLER Write "Enabled" (7 segundos), mientras que las unidades de escritorio, como Caviar SE, SE16 y GP, vienen con TLER Read and Write Disabled (configurado como 0 segundos, para deshabilitarlo).

Consideraciones sobre sistemas independientes frente a RAID

En una matriz RAID, es recomendable habilitar TLER para evitar que el tiempo de recuperación tras un error de lectura o escritura en el disco supere el límite de tiempo de espera de la implementación RAID. Si una unidad agota el tiempo de espera, será necesario volver a agregarla manualmente a la matriz, lo que requiere reconstruirla y resincronizarla. La habilitación de TLER evita este problema interrumpiendo la corrección de errores antes de que se agote el tiempo de espera, para que solo se notifiquen los fallos en los segmentos de datos. El resultado es una mayor fiabilidad en la matriz RAID.

En una configuración independiente, se debe deshabilitar TLER. Dado que la unidad no es redundante, informar de segmentos como fallidos solo aumentará la intervención manual. Sin un controlador RAID de hardware ni una implementación RAID de software para desconectar el disco, la recuperación normal (sin TLER) es la más estable.

En una configuración RAID por software, la utilidad de TLER depende del sistema operativo . Por ejemplo, en FreeBSD, la pila ATA/CAM controla los tiempos de espera y los incrementa progresivamente a medida que se producen. Por lo tanto, si un disco de escritorio sin TLER comienza a demorar la respuesta a la lectura de un sector, FreeBSD reintentará la lectura con tiempos de espera cada vez mayores para evitar que el disco se elimine prematuramente del array.

ZFS

El sistema de archivos ZFS fue diseñado para escribir datos inmediatamente en un sector que se reporta como defectuoso o que tarda demasiado tiempo en leerse (como en las unidades que no son TLER); esto generalmente forzará una reasignación inmediata del sector en un sector débil en la mayoría de las unidades.

controladores RAID

Los valores de tiempo de espera de desconexión para los distintos controladores RAID de hardware pueden variar entre fabricantes; por lo tanto, TLER debería activarse antes de que el controlador agote el tiempo de espera de la unidad. Por ejemplo, el 3ware 9650SE utiliza 20 segundos como tiempo de espera, [ 1 ] mientras que para el LSI Logic utilizado en la serie x de IBM es de 10 segundos. [ 2 ]

La tecnología Intel Matrix RAID / Intel Rapid Storage , ampliamente disponible e integrada en las placas base de servidores Intel y en las placas base de ordenadores de sobremesa modernos, es un controlador de pseudo-hardware, no un verdadero controlador RAID de hardware.

RAID por software

Linux mdadm simplemente espera y deja que la unidad complete su recuperación; sin embargo, el tiempo de espera predeterminado para el comando de la capa de disco SCSI (/sys/block/sd?/device/timeout) es de 30 segundos, [ 3 ] después de lo cual intentará reiniciar la unidad y, si eso falla, la pondrá fuera de línea. [ 4 ]

Cambios en el ERC

Estándar ATA-8

El estándar ATA-8 de 2006 define un comando de control de recuperación de errores SCT . [ 5 ] Para discos duros que implementan esta interfaz, la utilidad smartctl (parte del paquete smartmontools ) se puede usar para cambiar el tiempo de espera de recuperación de errores a través de . [ 6 ] En 2018, ACS-4 agregó una funcionalidad para que la configuración persista después del reinicio; ahora es compatible con smartctl. [ 7 ]-l scterc

Es posible que controlar el comportamiento del tiempo de espera mediante la utilidad smartctl no funcione en todos los discos duros, ya que algunos fabricantes han modificado sus discos de escritorio para que no incluyan la compatibilidad con el parámetro ERC, [ 8 ] [ 9 ] supuestamente para impulsar las ventas de sus modelos RAID/empresariales más caros. Richard Gregory, quien escribió el parche ERC original para smartctl, informa que Western Digital retiró la compatibilidad con ERC lanzando un nuevo modelo sin previo aviso. [ 6 ]

En Windows, el programa HDAT2 está disponible además de smartctl (que es multiplataforma ). [ 6 ]

Estándar SCSI

SBC-4 describe un campo LÍMITE DE TIEMPO DE RECUPERACIÓN en la página del modo de recuperación de errores de lectura/escritura que se utiliza para definir cómo la unidad realiza la recuperación de errores. [ 10 ] El programa sdparm puede cambiar esta configuración con --set=RTL. [ 11 ]

Utilidades del proveedor

Western Digital

La utilidad WDTLER.EXE permite activar o desactivar el parámetro TLER en discos duros Western Digital. Esta utilidad está escrita para DOS . Funciona en todos los discos duros Western Digital compatibles conectados al ordenador y realiza cambios en ellos. El cambio se mantiene incluso después de reiniciar el equipo. Western Digital solía mencionar esta herramienta en sus preguntas frecuentes . [ 12 ]

La utilidad incluye tres archivos por lotes: TLERSCAN.BAT para obtener el estado actual de la configuración TLER en todos los discos duros, TLER-ON.BAT para habilitar TLER y TLER-OFF.BAT para deshabilitarlo. El archivo TLER-ON.BAT incluido configura el tiempo de lectura y escritura de TLER en siete segundos. También es posible usar la utilidad WDTLER.EXE directamente con parámetros para un tiempo de espera personalizado.-r# -w#

Western Digital afirma que usar la utilidad WDTLER.EXE en discos más recientes puede dañar el firmware y dejar el disco inservible. Western Digital ya no ofrece esta utilidad, y no se podrá modificar la configuración TLER en discos nuevos. Los discos RE solo son compatibles con matrices RAID, mientras que los discos Caviar solo son compatibles con usos sin RAID. La utilidad sigue funcionando en discos más antiguos .

Hitachi

El servicio de atención al cliente de Hitachi declaró en 2009 que existe una herramienta de funciones para cambiar el ERC (denominada CCTL). [ 12 ]

Seagate

Seagate proporciona una utilidad openSeaChest que le permite consultar y cambiar muchas configuraciones de firmware, incluido TLER. Si no puede usar para configurar TLER, los comandos de línea de comandos relevantes son y .smartctl -l scterc,x,yopenSeaChest_Configure -d /dev/sg0 --sctReadTimeropenSeaChest_Configure -d /dev/sg0 --sctWriteTimer

Referencias

  1. "Guía del usuario para 9650SE 9690SA del conjunto de códigos completo 9.5.2" . lsi.com . Archivado del original el 3 de febrero de 2012. Consultado el 10 de junio de 2015 .
  2. Disponible en la utilidad de configuración RAID de la BIOS > Propiedades avanzadas del dispositivo
  3. "linux/sd.h en master · torvalds/linux · GitHub" . GitHub .
  4. "Subsistema SCSI de Linux: SCSI EH" . kernel.org .
  5. Conjunto de comandos ATA/ATAPI (ATA8-ACS)
  6. 1 2 3 Richard Gregory. "Descripción del autor del parche original para smartctl que implementó esa característica" . Archivado del original el 10 de septiembre de 2013. Recuperado el 15 de febrero de 2013 .
  7. "#1427 (Agregar soporte para las funciones del temporizador de recuperación de errores SCT agregadas en ACS-4) – smartmontools" . www.smartmontools.org .
  8. "Re: md RAID con unidades SATA o SAS de clase empresarial" . spinics.net .
  9. "Preguntas frecuentes de Seagate: ¿Qué es el control de recuperación de errores?" . seagate.com .
  10. "INCITS 506-202x - Tecnología de la información - Comandos de bloque SCSI - 4 (SBC-4) borrador revisión 22" . 15 de septiembre de 2020. Consultado el 22 de mayo de 2023 .
  11. Manual del programador de Linux – Administración y comandos privilegiados de Manned.orgsdparm(8)  
  12. 1 2 "Rosca TLER/CCTL/ERC" . [D]uro|Foro . 16 de noviembre de 2010.
  • Wiki de Linux Raid: Discrepancia de tiempo de espera
  • Respuesta a la pregunta frecuente de Western Digital ID 1397: Diferencia entre las unidades de la edición Desktop y las unidades de la edición RAID (Enterprise)
  • Hoja informativa sobre la recuperación de errores con límite de tiempo (TLER) , Western Digital, enero de 2013.
  • Samsung CCTL