Cliente híbrido
# Cliente híbrido

Una estación de trabajo sin disco, computador sin disco, o cliente híbrido, es una estación de trabajo o computador personal sin disco duro o tarjeta gráfica, que emplea el arranque por red (pc net) para cargar su sistema operativo desde un servidor. También puede decirse que una computadora actúa como estación de trabajo sin disco, si sus discos no son usados y se usa el arranque por red.

Las estaciones de trabajo sin disco (o las computadoras que actúan como tales) son a veces conocidas como las computadoras de red o clientes híbridos. El cliente híbrido puede simplemente significar una estación de trabajo sin disco, o puede ser usado en un sentido más particular para indicar a una estación de trabajo sin disco que corra remotamente algunas, pero no todas, las aplicaciones, como en la arquitectura computacional de cliente ligero.

Las ventajas de los nodos sin disco pueden incluir un costo de producción más bajo, costos de funcionamiento más bajos, una operación más silenciosa, y ventajas de manejabilidad (por ejemplo, una instalación de software manejada centralmente).

Una vez más, por razones de la manejabilidad, en muchas universidades y en algunas organizaciones grandes, las PC son usadas en una configuración similar, con algunas o todas las aplicaciones almacenados remotamente pero ejecutadas localmente. Sin embargo, éstos no son estaciones sin disco si todavía se cargan (boot) desde un disco duro local.

## Distinción entre las estaciones sin disco y la computación centralizada

Las estaciones de trabajo sin disco procesan datos, por lo tanto, usan su propio CPU y memoria RAM para correr software, pero ellas no almacenan datos persistentemente, esa tarea se le deja a un servidor. Esto es distinto a los clientes ligeros, en los cuales todo el proceso significativo sucede remotamente, en el servidor, el único software que corre en un cliente ligero es el "ligero" software de cliente ligero (es decir un software relativamente pequeño y simple), el cual maneja simples tareas de la entrada/salida para comunicarse con el usuario, como por ejemplo, dibujar una caja de diálogo en la pantalla o esperar por la entrada del usuario.

Un término colectivo abarcando tanto a la computación de cliente ligero, y su predecesor tecnológico, los terminales de texto (que solo muestran texto), es la computación centralizada. Tanto los clientes ligeros como los terminales de texto pueden requerir poderosas instalaciones centrales de procesamiento en los servidores, para poder realizar todas las tareas significativas de procesamiento para todos los clientes.

Los computadores sin disco pueden ser vistos como un compromiso entre los clientes pesados (tales como computadores personales ordinarios) y la computación centralizada, usando el almacenamiento central para la eficacia, pero no requiriendo el procesamiento centralizado, y haciendo el uso eficiente de la poderosa capacidad de cálculo de incluso el más lento de los CPU contemporáneos, que tenderían a estar desocupados durante mucha parte del tiempo bajo el modelo computacional centralizado.

| | Computación centralizada o Cliente ligero | Computador sin disco | Cliente pesado |
| - | - | - | - |
| Se usa disco duro local | No | No | Sí |
| Se usa procesamiento local de propósito general | No | Sí | Sí |

## Principios de operación

El sistema operativo (OS) para una estación de trabajo sin disco es cargado desde un servidor, usando el arranque por red. En algunos casos, puede ser usado un almacenamiento removible para iniciar el proceso de carga, tal como una unidad de memoria flash USB, u otros medios booteables tales como el disco floppy, un CD o un DVD. Sin embargo, el firmware en muchas computadoras modernas puede ser configurado para localizar un servidor y comenzar el proceso de carga automáticamente, sin la necesidad de insertar medios booteables.

Después de que el proceso carga (bootstraping) haya sido iniciado, como se describió anteriormente, el bootstraping tomará lugar según uno de tres acercamientos principales.

* En el primer acercamiento, usado, por ejemplo por el Linux Terminal Server Project (LTSP), el núcleo del sistema operativo se carga en memoria y luego el resto del sistema operativo es accedido vía una conexión de sistema de archivos de red hacia el servidor. Un pequeño disco RAM puede ser creado para almacenar temporalmente archivos localmente. Este acercamiento a veces es llamado la técnica de la "raíz de NFS" cuando es usado con los sistemas operativos de cliente Linux o Unix.
* En el segundo acercamiento, el núcleo del OS es cargado, y parte de la memoria de sistema es configurada como un disco RAM grande, y después el resto de la imagen del OS es leída (fetched) y cargada en el disco RAM. Ésta es la implementación que Microsoft ha elegido para su característica de carga remota de Windows XP empotrado.
* En el tercer acercamiento, las operaciones de disco son virtualizadas y son traducidas realmente a un protocolo de red. Los datos que usualmente son almacenados en una unidad de disco son entonces almacenados en archivos de discos virtuales alojados en un servidor. Las operaciones de disco tales como peticiones de lectura/escritura de sectores de disco son traducidas en las peticiones correspondientes de red y procesadas por un servicio o demonio corriendo en el lado del servidor. Ésta es la implementación que es usada por el manejador de imagen de Neoware, Ardence, VHD, y varios productos "carga sobre iSCSI". Este tercer acercamiento se diferencia del primero en que lo que está remoto no es un sistema de archivos sino realmente un dispositivo de disco (o dispositivo raw) y en que el OS cliente no es consciente que no está corriendo un disco duro. Esta es la razón por la cual este acercamiento es llamado a veces "Disco Duro Virtual" o "Disco Virtual de Red".

    Este tercer acercamiento hace más fácil usar el OS del cliente que teniendo una imagen completa del disco en RAM o usando un sistema de archivos de solo lectura. Y es compatible con la mayor parte de OS modernos (Linux y Windows, sabiendo que Windows no puede vivir en medios de solo lectura). En este acercamiento, el sistema usa algún "cache de escritura" que almacena cada dato que una estación de trabajo sin disco ha escrito. Este caché de escritura es usualmente un archivo, almacenado en un servidor (o en el almacenamiento del cliente, si tiene alguno). También puede ser una porción de la RAM del cliente. Este caché de escritura puede ser persistente o volátil. Cuando es volátil, todos los datos que han sido escritos por un cliente específico al disco virtual son desechados cuando por ejemplo, dicho cliente es reiniciado, pero, los datos de usuario pueden permanecer persistentes si están almacenados en los perfiles (itinerantes) de usuario o las carpetas home (que están almacenados en los servidores remotos). Los dos principales productos comerciales (uno de Hewlett-Packard, y otro de Citrix Systems) que permiten el despliegue de los nodos sin disco que pueden arrancar (boot) clientes de OS de Microsoft Windows y Linux usan este tipo de caché. El producto de Citrix no puede usar caché de escritura persistente, pero los productos de VHD y HP pueden.

## Comparación con los clientes pesados

### Instalación y mantenimiento de software

La instalación del software y el mantenimiento del software instalado pueden ser más eficientes con esencialmente una sola imagen del sistema operativo (OS) para un arreglo de máquinas (con quizás algunos arreglos personalizados para las particulares diferencias entre las configuraciones de hardware entre los nodos). Además, cualquier cambio en el sistema hecho durante la operación del mismo, debido a la acción del usuario, a gusanos, virus, etc, puede ser eliminado cuando la energía es removida (si la imagen es copiada a un disco RAM local) como con el cargador remoto de Windows XP empotrado, o prohibido completamente (si la imagen es un sistema de archivo de red). Esto permite el uso en áreas de acceso público (tales como bibliotecas) o en las escuelas etc., en donde los usuarios pudieran desear experimentar o intentar "hackear" el sistema.

Sin embargo, no es necesario implementar la carga por red (network booting) para alcanzar cualquiera de las ventajas indicadas arriba - los PC ordinarios (con la ayuda de software apropiado) pueden ser configurados para descargar y reinstalar sus sistemas operativos todas las noches, por ejemplo, con trabajo extra comparado a usar la imagen de disco compartida de la que las estaciones de trabajo sin disco se cargan.

Realmente, una de las mejores cosas sobre los nodos sin disco modernos, es que pueden compartir la misma imagen de disco, usando una relación 1:N (1 imagen de disco usada simultáneamente por N nodos sin disco). Esto hace muy fácil instalar y mantener software de aplicaciones: El administrador necesita instalar o mantener la aplicación solamente una vez, y los clientes pueden tener la nueva aplicación tan pronto como se carguen desde la imagen actualizada. Se hace posible compartir la imagen de disco porque los nodos usan el caché de escritura: Ningún cliente compite para cualquier escritura en una imagen compartida de disco, porque cada cliente escribe a su propio caché.

Todos los sistemas de nodos sin disco modernos también pueden usar una relación 1:1 de cliente a imagen de disco, donde un cliente "es dueño" de una imagen de disco y escribe directamente dicha imagen. Entonces, no es usado el caché de escritura.

Hacer una modificación en una imagen de disco compartida usualmente es hecha de esta manera:

* El administrador hace una copia de la imagen compartida de disco que quiere actualizar (esto puede ser hecho fácilmente porque el archivo de imagen de disco se abre solo para lectura)
* El administrador carga una estación de trabajo sin disco en el modo 1:1 (modo sin compartir) desde la copia de la imagen de disco que acaba de hacer
* El administrador hace cualquier modificación a la imagen de disco (por ejemplo instala un nuevo software de aplicación, aplicando los parches o hotfixes…)
* El administrador apaga la estación de trabajo sin disco que estaba usando la imagen de disco en modo 1:1
* El administrador comparte la imagen de disco modificada
* Las estaciones de trabajo sin disco usan la imagen de disco compartida (1: N) tan pronto como son reiniciadas.

### Almacenamiento centralizado

El uso del almacenamiento de disco central también hace un uso más eficiente del almacenamiento en disco. Esto puede cortar los costos de almacenamiento, liberando capital para invertir en tecnologías de almacenamiento más confiables y más modernas, tales como arreglos RAID que soporten operaciones redundantes, y redes de área de almacenamiento que permiten la adición en caliente de almacenamiento sin ninguna interrupción. Además, esto significa que las pérdidas de unidades de disco debido a fallas mecánicas o eléctricas, que son eventos altamente probables estadísticamente sobre un período de años, con una gran cantidad de discos implicados, son a menudo, menos probables para que sucedan (porque típicamente hay menos unidades de disco que puedan fallar), y menos probable de causar interrupción (porque probablemente serían parte de arreglos RAID). Esto también significa que los nodos en sí mismos tienen menos probabilidad de tener fallas de hardware que los clientes pesados.

Los nodos sin disco comparten estas ventajas con los clientes delgados.

**Desempeño del almacenamiento centralizado**

Sin embargo, esta eficiencia de almacenamiento puede venir a un precio. Como frecuentemente sucede en la computación, la eficacia de almacenamiento creciente a veces viene al precio de un desempeño disminuido.

Una gran cantidad de nodos haciendo demandas simultáneamente en el mismo servidor pueden enlentecer la experiencia de cada uno. Sin embargo, esto puede ser mitigado instalando granes cantidades de memoria RAM en el servidor (que acelera operaciones de lectura mejorando el desempeño del caché), al agregar más servidores (que distribuyen la carga de trabajo de la entrada-salida), o agregando más discos a un arreglo RAID (que distribuya la carga de trabajo física de la entrada-salida). En todo caso éste es también un problema que puede afectar hasta cierto punto a cualquier red de cliente-servidor, puesto que, por supuesto, los clientes pesados también usan los servidores para almacenar datos de usuario.

De hecho, en algunos ambientes, los datos de usuario pueden ser mucho más significativos en tamaño y pueden ser accedidos más frecuentemente que los sistemas operativos y programas, así que moverse a un modelo sin disco no necesariamente causará una degradación de desempeño notable.

Un mayor ancho de banda de la red (es decir, mayor capacidad) también puede ser usado en un modelo sin disco, comparado a un modelo de cliente pesado. Esto no necesariamente significa que necesitará ser instalada una infraestructura de red de más alta capacidad, esto simplemente podría significar que será usada una proporción más elevada de la capacidad de la red existente.

Finalmente, dependiendo de la naturaleza de la aplicación y de la capacidad de la infraestructura de la red y del servidor, la combinación de latencias de la transferencia de datos de la red (transfiriendo físicamente los datos sobre la red), y la latencia de contención (esperando que el servidor procese las solicitudes de otros nodos antes que la del suyo), pueden llevar a una inaceptable degradación en el desempeño, comparado a usar unidades de disco locales.

### Otras ventajas

Otro ejemplo de una situación donde un nodo sin disco sería útil, es en un posible ambiente peligroso donde los computadores probablemente puedan ser dañados o destruidos, haciendo así una ventaja la necesidad de nodos baratos, y de mínimo hardware. Una vez más los clientes ligeros también pueden ser usados aquí.

Las máquinas sin disco también pueden consumir poca energía y hacer poco ruido, lo que implica potenciales ventajas ambientales y los hace el ideal para algunas aplicaciones de clusters de computadores.tuche

## Comparación con los clientes ligeros

Las corporaciones importantes tienden a implementar clientes ligeros en vez de híbridos (usando Microsoft Windows Terminal Server u otro software de este tipo), puesto que para el cliente puede ser usada una especificación de hardware mucho más baja (que esencialmente actúa como una simple "ventana" para el servidor central, el cual es el que está corriendo realmente el sistema operativo de los usuarios como sesiones de autenticación). Por supuesto, los nodos sin disco también pueden ser usados como clientes ligeros. Por otra parte, las computadoras de cliente ligero están aumentando en potencia al punto que están llegando a ser adecuadas para algunas aplicaciones, sustituyendo estaciones de trabajo sin disco completamentas.

Tanto las arquitecturas de cliente ligero como las estaciones de trabajo sin nodo, emplean clientes sin disco que tienen ventajas sobre clientes pesados (ver arriba), pero se diferencian con respecto a la localización del procesamiento.

### Ventajas de los nodos sin disco sobre los clientes ligeros

* Carga distribuida. El procesamiento de la carga de los nodos sin disco es distribuido. Cada usuario tiene su propio ambiente de procesamiento aislado, apenas afectando a otros usuarios en la red, mientras su carga de trabajo no sea intensiva en el sistema de archivos. Los clientes ligeros confían en el servidor central para el procesamiento y por lo tanto requieren un servidor rápido. Cuando el servidor central está ocupado y es lento, ambos tipos de clientes serán afectados, pero los clientes ligeros se relentizarán completamente, mientras que las estaciones de trabajo sin disco solo serán ralentizadas cuando acceden los datos en el servidor.
* Mejor desempeño en multimedia. Los nodos sin disco tienen ventajas sobre los clientes ligeros en aplicaciones ricas en multimedia que serían intensivas en ancho de banda si estuvieron completamente servidas. Por ejemplo, los nodos sin disco están bien adaptados para los video juegos.
* Soporte de periféricos. Los nodos sin disco son típicamente computadores personales ordinarios o estaciones de trabajo que simplemente no tienen disco duro, lo que significa que puede ser agregada la usual gran variedad de periférico de estos. Por contraste, los clientes ligeros son cajas típicamente muy pequeñas, selladas, sin la posibilidad de extensión interna, y la posibilidad limitada o no existente de extensión externa. Incluso si por ejemplo, un dispositivo USB pueda ser conectado físicamente a un cliente ligero, el software del cliente ligero puede no poder soportar los periféricos más allá de los dispositivos básicos de entrada y salida. Por ejemplo, puede no ser compatible con las tabletas gráficas, las cámaras digitales o los escáneres.

### Ventajas de clientes ligeros sobre los nodos sin disco

* Hardware más barato. El hardware es más barato en clientes ligeros, puesto que los requisitos de procesamiento son mínimos en él, y la aceleración 3D y el soporte elaborado de audio usualmente no son proporcionados. Por supuesto, si fuese apropiado, también puede ser comprada una estación de trabajo sin disco, con un CPU barato, y un mínimo soporte multimedia. Así, el ahorro en costos para algunas organizaciones puede ser más pequeño que lo que parece al principio. Sin embargo, muchas organizaciones grandes habitualmente compran hardware con una especificación más alta que la necesaria para cubrir las necesidades de las aplicaciones y usuarios particulares, o para asegurar la no obsolescencia futura (ver abajo). Hay también menos razones "racionales" para sobreespecificar el hardware que a menudo entran en juego: los departamentos son derrochadores usando el presupuesto para así retener su nivel actual de presupuesto para el próximo año; o incertidumbre sobre el futuro, o carencia de conocimiento técnico, o falta de cuidado y atención, al elegir las especificaciones del PC. Tomando todos estos factores en cuenta, los clientes ligeros pueden traer los más substanciales ahorros, pues, en el modelo del cliente ligero, solamente los servidores son probablemente sustancialmente "bañados en oro" y/o "asegurados contra la obsolescencia".
* Aseguramiento contra la obsolecencia. Esto no es un problema para los clientes ligeros, que probablemente permanecerán siendo útiles para la totalidad de su ciclo de reemplazo, uno a cuatro años, o aún más, ya que la carga está en los servidores. Hay problemas cuando se trata de los nodos sin disco, pues la carga de procesamiento es potencialmente mucho más alta, significando así que se requiere más consideración al comprar. Las redes de clientes ligeros pueden requerir servidores más poderosos en el futuro, mientras que una red nodos sin disco puede necesitar en el futuro una mejora del servidor, del cliente, o ambas.
* Menos consumo de ancho de banda de red. Las redes de cliente ligero tienen potencialmente menos consumo de ancho de banda de red, puesto que muchos datos son simplemente leídos por el servidor y procesados allí mismo, y solamente transferidos al cliente en pequeñas piezas, a medida que sean necesarias para la exhibición en pantalla. También, transfiriendo datos gráficos a la pantalla generalmente es más adecuado para las tecnologías de compresión y optimización de datos eficientes (ver por ejemplo, la tecnología NX) que transfiriendo arbitrariamente programas, o datos de usuario. En muchos escenarios de aplicaciones típicas, tanto el total consumo de ancho de banda como el consumo de "ráfagas", se esperaría menor para un cliente ligero eficiente, que para una estación de trabajo sin disco.
