Cliente liviano

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
Comparación en tamaño entre el Clientron U700 (un cliente liviano) y un computador de escritorio tradicional.

Un cliente liviano o cliente delgado (thin client o slim client en inglés) es una computadora cliente o un software de cliente en una arquitectura de red cliente-servidor que depende primariamente del servidor central para las tareas de procesamiento, y se enfoca principalmente en transportar la entrada y la salida entre el usuario y el servidor remoto. En contraste, un cliente pesado realiza tanto procesamiento como sea posible y transmite solamente los datos para las comunicaciones y el almacenamiento al servidor.

Muchos dispositivos de cliente liviano ejecutaban solamente navegadores web o programas de escritorio remoto, lo que significaba que todo el procesamiento significativo ocurría en el servidor. Sin embargo, dispositivos recientes vendidos como clientes livianos pueden correr sistemas operativos completos tales como GNU/Linux Debian, calificándolos como nodos sin disco o clientes híbridos. Algunos clientes livianos también son llamados "terminales de acceso".

Consecuentemente, el término "cliente liviano", en términos de hardware, incluye a cualquier dispositivo comercializado o usado como un cliente liviano en la definición original, incluso si sus capacidades reales son mucho mayores. El término también es usado en un sentido incluso más amplio que incluye nodos sin disco.[1]

Introducción[editar]

Al diseñar un sistema informático, hay decisiones que tomar acerca del procesamiento, el almacenamiento, el software y la interfaz de usuario. Con la realidad de una red confiable de alta velocidad, es posible cambiar la localización de cualquiera de estos componentes con respecto a los otros. Una red con velocidad de gigabits es más rápida que un bus PCI y muchas unidades de disco, así que cada función puede estar en una localización diferente. Las decisiones serán tomadas dependiendo del costo total, el costo de operación, la confiabilidad, el desempeño, y la usabilidad del sistema. El cliente liviano está cercanamente conectado con la interface de usuario.

En un sistema cliente liviano-servidor, el único software que es instalado en el cliente liviano es la interfaz de usuario, algunas aplicaciones frecuentemente usadas, y un sistema operativo de red. Este software puede ser cargado de una unidad de disco local del servidor en tiempo de arranque, o según lo que se necesite. Al simplificar la carga en el cliente liviano, éste puede ser un dispositivo muy pequeño y de bajo consumo de energía, que representa costos de compra y de operación más bajos en cada puesto. El servidor, o un cluster de servidores tiene el peso total de todas las aplicaciones, servicios, y datos. Al mantener algunos servidores ocupados y muchos clientes livianos ligeramente cargados, los usuarios pueden esperar una administración de sistemas más fácil y costos más bajos, así como todas las ventajas de la computación en red: almacenamiento y respaldo centralizados y una seguridad más fácil.

Debido a que los cliente livianos son numerosos pero relativamente pasivos y de bajo mantenimiento, el sistema entero es más simple y más fácil de instalar y operar. A medida que el costo del hardware baja y el costo de emplear un técnico, de la energía, y disponer los desperdicios, aumenta, crecen las ventajas de los clientes livianos. Por otro lado, desde la perspectiva del usuario, la interacción por medio del monitor, el teclado, y el ratón cambia poco respecto a usar un cliente pesado.

Un solo PC puede manejar de manera habitual cinco o más clientes livianos. Un PC con mayor capacidad o un servidor puede soportar hasta cien clientes livianos a la vez. Un servidor de alto rango puede manejar sobre 700 clientes.[2]

Los clientes livianos son una gran inversión para las escuelas y los negocios que quieren maximizar el número de estaciones de trabajo que pueden comprar con un presupuesto. Una unidad simple de $70 puede reemplazar un computador en una escuela o un negocio. También ahorraría mucha energía a largo plazo, debido consumo bajo de energía del cliente liviano.

Ventajas de los clientes livianos[editar]

Un terminal de cliente liviano dentro de una biblioteca pública.

Obviamente, el control de imagen del cargador es mucho más simple cuando son usados solamente los clientes livianos - típicamente una sola imagen de cargador puede acomodar un rango muy amplio de las necesidades del usuario, y ser manejado centralizadamente, dando por resultado:

  • Menores costos de administrativos de IT. Los clientes ligeros son manejados casi enteramente en el servidor. El hardware tiene menos lugares donde puede fallar, el entorno local es altamente restringido, y el cliente es más simple y a menudo carece de almacenamiento permanente, proporcionando protección contra el malware.
  • Información centralizada. Como la información se encuentra en un solo lugar facilita la realización de backups y evita que se guarden archivos que no sean de la empresa.
  • Más fácil de asegurar. Los clientes livianos pueden ser diseñados de modo que ni siquiera los datos de aplicación residan en el cliente (apenas son exhibidos en la pantalla), centralizando la protección contra el malware y reduciendo los riesgos de hurto de los datos físicos.
  • Seguridad de datos mejorada. Si un dispositivo del cliente ligero sufre una seria desgracia o accidente de trabajo, no se perderá ningún dato, puesto que residen en el servidor de terminales y no en el dispositivo de punto de operación.
  • Más bajos costos de hardware. El hardware del cliente liviano es generalmente más barato porque no contiene disco duro, memoria de aplicaciones, o un procesador poderoso. Generalmente también tienen un período más largo antes de requerir una mejora o llegar a ser obsoletos. Hay menos piezas móviles y uno actualiza o mejora el servidor y la red en lugar de los clientes, porque la limitación en su desempeño es la resolución de pantalla que tiene un ciclo de vida muy largo. Muchos clientes pesados son reemplazados después de 3 años para evitar fallas del hardware en servicio y para usar el último software, mientras que los clientes livianos pueden hacer la misma bien definida tarea de desplegar imágenes por 10 años. Los requisitos totales de hardware para un sistema de cliente liviano (incluyendo tanto servidores como clientes) son generalmente mucho más bajos comparados a un sistema con clientes pesados. Una razón de esto es que el hardware es mejor utilizado. Un CPU en una estación de trabajo pesada está ocioso la mayor parte del tiempo. Con los clientes livianos, los ciclos del CPU son compartidos. Si varios usuarios están corriendo la misma aplicación, solo necesita ser cargada una sola vez en un servidor central (si la aplicación está escrita para soportar esta capacidad). Con los clientes pesados, cada estación de trabajo debe tener en memoria su propia copia del programa.
  • Menos consumo de energía. El hardware dedicado de cliente liviano tiene mucho más bajo consumo de energía que los típicos PC de clientes pesados, ahorran hasta un 80% de electricidad y cuidan el medio ambiente. Esto no sólo reduce los costos de energía en los sistemas de computación, en algunos casos puede significar que los sistemas de aire acondicionado no son requeridos o no necesitan ser actualizados lo que puede ser un ahorro de costos significativo y contribuir a alcanzar los objetivos en ahorro de energía. Sin embargo, son requeridos más poderosos servidores y sistemas de comunicaciones.
  • Una más fácil gerencia de fallas de hardware. Si un cliente liviano falla, un reemplazo puede ser fácilmente colocado mientras el cliente es reparado; el usuario no será incomodado porque sus datos no están en el cliente.
  • Vale menos para la mayoría de los ladrones. El hardware del cliente liviano, ya sea si es dedicado o un simple hardware viejo que ha sido reorientado vía cascada, es menos útil fuera de un ambiente de servidor de cliente. Los ladrones interesados en el equipo de computación pueden tener un rato mucho más duro revendiendo cosas robadas de hardware de cliente liviano, y éste es mucho menos valioso.
  • Operable en ambientes hostiles. La mayoría de los clientes livianos no tienen piezas móviles así que pueden ser usados en ambientes polvorientos sin la preocupación que puede haber con la obstrucción de los ventiladores de los PC que puede recalentarlos y quemarlos.
  • Menos ancho de banda de la red. Puesto que los servidores de terminales típicamente residen en la misma espina dorsal de red (backbone network)) de alta velocidad que los servidores de archivo, la mayor parte del tráfico de red está confinado al cuarto del servidor. En un ambiente de cliente pesado si ud. abre un documento 10MB, éstos 10MB son transferidos del servidor de archivos a su PC. Cuando usted lo guarda, hay otra transferencia de 10MB de su PC al servidor. Cuando usted lo imprime sucede lo mismo otra vez, otros 10MB son transferidos sobre la red a su servidor de impresión y entonces 10MB hacia la impresora. Esto es altamente ineficiente. En un ambiente de cliente liviano solamente los movimientos del ratón, las pulsaciones del teclado y las actualizaciones de la pantalla son transmitidas desde/hasta el usuario final. Sobre protocolos eficientes tales como AIC o NX esto puede consumir tan poco como un ancho de banda de 5 kbit/s.[cita requerida]Plantilla:Dubious Aunque esta declaración hace algunas asunciones muy fuertes sobre el ambiente de operación.
  • Uso más eficiente de los recursos de computación. Un típico cliente pesado será especificado para hacer frente a la carga máxima de las necesidades del usuario, lo que puede ser ineficiente en los momentos en que no es usado. En contraste, los clientes livianos usan solamente la cantidad exacta de recursos de computación requeridos para la tarea actual. En una red grande, hay una alta probabilidad que la carga de cada usuario fluctuará en un ciclo diferente a la de otro usuario, es decir, los picos de uno corresponderán muy probablemente a los bajos de uso de otro. Éste es un resultado natural del efecto aditivo de muchas cargas independientes al azar. La carga total será distribuida normalmente sobre un promedio y no sobre la suma de las cargas máximas posibles, ver el teorema del límite central. La carga resultante promedio es en tiempos n el promedio de la carga independiente con una desviación estándar de que la carga independiente media con una desviación estándar de \frac{1}{ \sqrt{n}} veces la desviación estándar de las cargas independientes. La probabilidad de una carga total más que algunas desviaciones estándar sobre la carga promedio es extremadamente pequeña.
  • Simple trayectoria de actualización de hardware. Si el pico de recursos está sobre un límite predefinido, es un proceso relativamente simple agregar otro componente a un rack de servidor (ya sea energía, procesamiento, o almacenamiento), empujando los recursos exactamente a la cantidad requerida. Las unidades existentes pueden continuar sirviendo junto a la nueva, mientras que un modelo de cliente pesado requiere que sea reemplazada una unidad de escritorio completa, resultando en tiempo muerto para el usuario, y el problema de disponer de la unidad vieja.
  • Menor ruido. El ya mencionado retiro de ventiladores reduce el ruido producido por la unidad. Esto puede crear un ambiente de trabajo más agradable y más productivo.
  • Menos hardware desperdiciado. El hardware contiene metales pesados y plásticos y requiere energía y recursos para ser construido. Los clientes livianos pueden permanecer en servicio por más tiempo y producen menos hardware excedente que una equivalente instalación de cliente pesado porque pueden ser hechos sin partes móviles. Los ventiladores y unidades de disco del computador (usados para enfriar y el almacenamiento de datos en los clientes pesados) tienen tiempo medio antes de fallas de muchas miles de horas pero los transistores y los conductores en el cliente liviano tienen tiempos medios antes de fallas de millones de horas [1]. Un cliente pesado es considerado viejo después de uno o dos ciclos de la ley de Moore para mantener el procesamiento con el aumento de software inflado (bloatware), pero un cliente liviano puede hacer el mismo trabajo simple año tras año. Por otro lado, un cliente liviano, será reemplazado solamente cuando carezca de una cierta característica considerada esencial. Con audio, video, y USB, los clientes livianos han cambiado poco en 15 años, siendo esencialmente PCs sencillos a los que se les han quitado componentes.

Ventajas de los clientes pesados[editar]

  • Menos requerimientos del servidor. Un servidor de cliente pesado no requiere tan alto nivel de desempeño como un servidor de cliente liviano (puesto que los clientes pesados por sí mismos hacen mucho del procesamiento de la aplicación). Esto puede resultar en servidores más baratos, aunque en la práctica, muchos servidores de cliente liviano son en realidad equivalentes a los servidores de archivos en cuanto a las especificaciones pero con memoria adicional.
  • Mejor desempeño multimedia. Los clientes pesados tienen ventajas en aplicaciones ricas en multimedia que serían intensivas en ancho de banda si estuvieran completamente residentes en los servidores. Por ejemplo, los clientes pesados están bien adaptados para la edición de vídeo y el video juego, dos casos donde el ancho de banda de la red usado por clientes livianos será probablemente mucho más grande. (Compare con "menos ancho de banda de la red", arriba en la lista de ventajas del cliente liviano).
  • Más flexibilidad. En algunos sistemas operativos (como Microsoft Windows) los productos de software son diseñados para los computadores personales que tienen sus propios recursos locales. El intentar correr este software en un ambiente de cliente liviano puede ser difícil o imposible, especialmente para aplicaciones que tienen muchos objetos o bibliotecas compartidos que sean accedidos con frecuencia.
  • Mejor soporte de periféricos. Los clientes livianos son típicamente cajas 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 de USB puede ser conectado físicamente a un cliente liviano, el software del cliente liviano puede no 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 digitalizadoras, cámaras digitales o scanners.
  • Apropiado para conexiones de red pobres. Los clientes livianos pueden ser inusualmente lentos, o muy frustrantes para usar, sobre una conexión de red de alta latencia. Por otra parte, no trabajan en absoluto cuando la red está caída. Con un cliente pesado, puede ser posible trabajar fuera de línea, aunque la manera orientara a red en la que mucha gente trabaja hoy en día, significa que el uso del cliente pesado también puede ser restringido si la red está caída.
  • Más fácil de reorientar. Puede ser usado en aplicaciones de cliente liviano, cuando el hardware se vuelve obsoleto para el uso de cliente pesado. Debido a que es estándar y puede operar de una manera autónoma, el hardware de cliente pesado es más fácil de revender o donar cuando debe ser retirado.

Software de administración de cliente liviano[editar]

La mayoría de los grandes y moderados despliegues de clientes livianos usan algún tipo de software de gerencia. Las compañías como Citrix (XenApp), IGEL Technology (Remote Management Suite), Wyse (Rapport), 2X (ThinClientServer), NoMachine, ACP (ThinManager), ThinSoftInc y Symantec (Altiris Deployment Solution), tienen productos que varían en costo y funcionalidad. Todos estos productos mejoran el sistema operativo de servidor básico, agregando características como Server Load Balancing, Application Publishing, Shadowing, Local Storage Options y Session Reconnection.

Ejemplo de usos de los clientes livianos y clientes pesados[editar]

En la práctica, parece que hay poco donde elegir para decantarse entre una y otra arquitectura para la mayoría de las aplicaciones. Pocas situaciones se decantan claramente hacía una u otra. Los proyectos de computación distribuida como SETI@home (que utilizan una gran cantidad de ordenadores remotos para realizar un análisis computacional intensivo) son aplicaciones que requieren clientes pesados. Por otro lado los sistemas de difusión de entretenimiento multimedia o la difusión de material educativo a muchos clientes puede ser realizada mejor con clientes livianos, ya que se difunde el mismo material a todos los clientes.

Ejemplo del proceso de arranque de un cliente liviano[editar]

  1. Cargar el kernel de Linux en la memoria del cliente liviano. Esto puede hacerse de distintas maneras, entre ellas: PXE, gPXE, Etherboot o yaboot.
  2. En la mayoría de los casos usando una tarjeta de red con PXE para arrancar es la forma más rápida y sencilla de hacerlo.
  3. Una vez que el kernel ha sido cargado en la memoria, comenzará la ejecución.
  4. El núcleo inicializa todo el sistema y los periféricos que reconozca.
  5. Durante el proceso de carga del núcleo, una imagen initramfs también será cargada en la memoria.
  6. Normalmente, cuando el núcleo ha terminado de arrancar, se pondrá en marcha el nuevo task launcher upstart, que se encargará de la puesta en marcha de un servidor o una estación de trabajo. Pero, en este caso, hemos instruido al kernel para que cargue un pequeño shell script en su lugar. Este script se llama /init,y reside en la raíz de initramfs.
  7. El script /init empieza por montar /proc y /sys, arranca udev para descubrir e inicializar el hardware, especialmente la tarjeta de red, que es necesaria en todo aspecto para arrancar de aquí en más. También, crea un pequeño disco en RAM, donde se puede guardar cualquier cosa que se necesite, por ejemplo, para configurar el archivo xorg.conf.
  8. Se configura la interfaz de loopback de la red. Esta es la interfaz de la red que tiene 127.0.0.1 como dirección IP.
  9. Se corre un cliente DHCP para hacer otra consulta al servidor DHCP Esta nueva consulta obtiene información tal como el nfs root server, el default gateway y otros parámetros importantes del sistema del archivo dhcp.conf
  10. Cuando el cliente DHCP obtiene una respuesta del servidor, la información que se recibe se usa para configurar la interfaz Ethernet y para determinar desde que servidor se va a montar el root.
  11. Hasta este momento el sistema de directorios ha sido un disco ram. Ahora el script /init montará un nuevo sistema de directorios vía NBD o NFS. En el caso que sea vía NBD, la imagen que será cargada será generalmente /opt/ltsp/images/i386.img. Si la raíz es montada vía NFS, entonces el directorio que será exportado desde el servidor es típicamente /opt/ltsp/i386. No es posible montar el nuevo sistema de directorios como /i. Primero debe ser montado a un directorio separado. Luego hará un run-init, que cambiará el sistema de directorios raíz actual por un nuevo sistema de directorios. Cuando esta etapa se completa, el sistema de directorios quedará montado en /. Cualquier directorio que necesite ser creado o escrito para un arranque normal , como por ejemplo /tmp, o /var, son montados en este momento.
  12. Una vez que el montado del nuevo sistema de directorios fue finalizado, se ha terminado con el script /init y se necesita llamar al verdadero programa /sbin/init.
  13. El programa init va a leer el directorio /etc/event.d y comenzará a configurar el ambiente del cliente fino. A partir de aquí se ejecutará el primer comando de /etc/rcS.d.
  14. El primer comando S32ltsp-client-setup configurará muchos aspectos del ambiente del cliente fino, como por ejemplo chequear si los dispositivos locales necesitan ser arrancados, cargar algún módulo específico, etc.
  15. A continuación el programa init va a comenzar a ejecutar comandos en el directorio /etc/rc2.d
  16. Uno de los items en el directorio /etc/rc2.d es el comando S20ltsp-client-core que estará ejecutándose mientras el cliente fino está arrancando.
  17. El archivo lts.conf será parseado, y todos los parámetros en ese archivo que hacen referencia a ese cliente fino serán definidos como variables de ambiente para ser usadas por el script S20ltsp-client-core.
  18. Si el sonido está configurado el demonio pulseaudio se activará permitiendo conexiones remotas de audio desde el servidor para tocar en el cliente.
  19. Si el cliente soporta dispositivos locales, el programa ltspfsd es ejecutado permitiendo al servidor leer de dispositivos como "memory sticks" o CD mapeados con el cliente fino.
  20. En este momento alguna de las sesiones definidas en el archivo lts.conf será ejecutada. Las sesiones por pantalla es lo que se va a ver en todas las pantallas de las terminales. Éstas son las pantallas virtuales estándares que tienen las distribuciones de GNU/Linux, por ejemplo de Alt-F1, hasta Alt-F10. Por defecto va a correr en la pantalla 1 un "getty" estándar basado en caracteres (SCREEN_01 en el archivo lts.conf). También, si no se especifica nada en el archivo lts.conf , un script de pantalla ldm va a ser ejecutado en SCREEN_07. El LTSP Display Manager (ldm) es el administrador de login por defecto para LTSP.
  21. Si SCREEN_07 esta cargada con un valor ldm, o startx, entonces el sistema X Windows será ejecutado brindándole una interfaz gráfica al usuario.Por defecto el servidor Xorg va a testear la tarjeta, va a crear un archivo /etc/X11/xorg.conf con valores por defecto en el disco ram de la terminal y va a comenzar xorg con esa configuración.
  22. El servidor X va a crear un túnel cifrado ssh hacia al servidor LTSP (en caso de ldm) o una consulta XDMCP (en el caso de startx). Para cualquiera de los dos casos va a aparecer una caja de login en la terminal.
  23. En este momento el usuario puede loguearse. Cuando lo haga obtendrá una sesión en el servidor.

Esto confunde a mucha gente al principio. Están sentados en un cliente ligero, pero están ejecutando una sesión en el servidor. Todos los comandos que se ejecutan se ejecutan en el servidor, pero la salida se mostrará en el cliente fino.

Clientes livianos con servidores de terminal y virtualización[editar]

En la empresa ha habido un renovado interés en clientes livianos debido a su capacidad de virtualizar los escritorios. El aumento de conexiones a Internet de alta velocidad en el hogar y en el trabajo ha aumentado el interés reciente en clientes livianos. Los clientes livianos ahora pueden replicar un sistema operativo entero usando el software de virtualización, lo cual hace un tiempo no era posible. Esto ha aumentado la cantidad de programas y software que un cliente liviano puede correr. Ashlee Vance ha indicado en el New York Times que "la tecnología (del cliente liviano) está haciendo una reaparición, y las grandes compañías como Hewlett-Packard, Sun Microsystems, Wyse (ahora Dell) y Samsung están aumentando sus inversiones en sistemas de cliente liviano".[3]

Los clientes livianos con software de virtualización y servicios de terminal han sido reconocidos como una manera eficiente en costo de entregar sistemas operativos y al mismo tiempo bajar los costos de energía y de consumo. Aqua Connect, proveedor de servicios terminal para el Mac, y BOSaNOVA, un vendedor de clientes livianos, formaron un equipo en 2008 para ofrecer el Mac OS vía clientes livianos para bajar los costos de energía.[4] Usando los servidores de terminal y los productos de virtualización con los clientes livianos puede crear los laboratorios de computación verde que bajan los costos de energía y consumo.

Protocolos[editar]

Algunos de los protocolos usados para la comunicación entre clientes livianos y servidores son:

Referencias[editar]

  1. Thin client definition from the Webopedia computer dictionary
  2. «Capacity and Scaling of Microsoft Terminal Server on the Unisys ES7000/one Enterprise Server» (2006). Consultado el 22-09-2008.
  3. «Revived Fervor for Smart Monitors linked to a Server». New York Times (2008-10-12).
  4. «Aqua Connect and BOSaNOVA Team Up to Deliver Green Terminal Services». DABCC (2008-10-16).

Véase también[editar]

Enlaces externos[editar]

Wikilibros