CLIENTE- SERVIDOR El cliente es una aplicación informática o un computador que accede a un servicio remoto en otro computador, conocido como servidor, normalmente a través de una red de telecomunicaciones.1 El término se usó inicialmente para los llamados terminales tontos, dispositivos que no eran capaces de correr programas por sí mismos, pero podían conectarse e interactuar con computadores remotos por medio de una red y dejar que éste realizase todas las operaciones requeridas, mostrando luego los resultados al usuario. Se utilizaban sobre todo porque su coste en esos momentos era mucho menor que el de un computador. Estos terminales tontos eran clientes de un computador mainframe por medio del tiempo compartido. Actualmente se suelen utilizar para referirse a programas que requieren específicamente una conexión a otro programa, al que se denomina servidor y que suele estar en otra máquina. Ya no se utilizan por criterios de coste, sino para obtener datos externos (por ejemplo páginas web, información bursatil o bases de datos), interactuar con otros usuarios a través de un gestor central (como por ejemplo los protocolos bittorrent o IRC), compartir información con otros usuarios (servidores de archivos y otras aplicaciones Groupware) o utilizar recursos de los que no se dispone en la máquina local (por ejemplo impresión) Uno de los clientes más utilizados, sobre todo por su versatilidad, es el navegador web. Muchos servidores son capaces de ofrecer sus servicios a través de un navegador web en lugar de requerir la instalación de un programa específico. Tipos Existen varios tipos de clientes, dependiendo de la cantidad de tareas que realice el cliente en comparación con el servidor. Almacenamiento de datos local Proceso de datos local Cliente pesado Sí Sí Cliente híbrido No Sí Cliente liviano No No Cliente pesado Artículo principal: Cliente pesado Un cliente pesado tiene capacidad de almacenar los datos y procesarlos, pero sigue necesitando las capacidades del servidor para una parte importante de sus funciones. Un cliente de correo electrónico suele ser un cliente pesado. Puede almacenar los mensajes de correo electrónico del usuario, trabajar con ellos y redactar nuevos mensajes, pero sigue necesitando una conexión al servidor para envíar y recibir los mensajes. Cliente híbrido Artículo principal: Cliente híbrido Un cliente híbrido no tiene almacenados los datos con los que trabaja, pero sí es capaz de procesar datos que le envía el servidor. Muchos programas de colaboración almacenan remotamente los datos para que todos los usuarios trabajen con la misma información, y utilizan clientes híbridos para acceder a esa información. Cliente liviano Artículo principal: Cliente liviano Un cliente liviano no tiene capacidad de procesamiento y su única función es recoger los datos del usuario, dárselos al servidor, y mostrar su respuesta. Los primeros navegadores web eran clientes livianos, simplemente mostraban las páginas web que solicitaba el usuario. Actualmente, el uso de lenguajes de script, programas Java y otras funciones de DHTML dan una capacidad de procesamiento a los navegadores, por lo que se consideran clientes Híbridos. Ya vimos ( A3.1) que Internet es una gigantesca red, que incluye sub-redes, de ordenadores interconectados. En ella coexisten muchas clases de ordenadores; tamaños; Sistemas Operativos, etc. Pero desde un punto de vista funcional las tareas están generalmente agrupadas, de forma que desde esta perspectiva (de su funcionalidad), podemos establecer tres grandes grupos: Servidores, Clientes y Correos o enrutadores. Los servidores son máquinas que actúan como "almacenes" de información. Esta información es solicitada por los ordenadores-cliente, y el servidor responde a tales peticiones devolviendo los datos solicitados. Este paradigma de funcionamiento Cliente-Servidor es utilizado constantemente en la informática distribuida (donde existen muchos ordenadores interconectados). Como existen muchos tipos de almacenes de información, existen muchas clases de servidores. Por ejemplo: Servidores DNS. Al tratar del servicio de direcciones ( 1.e), hemos visto que se encargan de devolver la dirección IP (numérica) en respuesta a una petición alfabética, o cuando menos la dirección de otro servidor DNS que contiene dicha información. Servidores de Correo. Los que almacenan y reexpiden los mensajes de correo electrónico (email). Funcionan exactamente igual que el servicio de correos convencional. La información que manejan son mensajes de correo. Servidores Web ("Web server"). Almacenan "Sitios" Web. Inicialmente fueron exclusivamente páginas de Hipertexto en formato HTML, aunque actualmente guardan también imágenes; música (sonidos), e incluso ficheros ejecutables; bases de datos, etc. Actualmente casi todos los sitios Internet están adoptando la apariencia (la interfaz) Web, y responden a las peticiones de los navegadores. La información que está viendo en este momento proviene de un servidor Web donde están alojadas estas páginas, una copia han viajado a su ordenador a requerimiento de su navegador que las muestra según las recibe. Servidores FTP. Son almacenes de ficheros preparados para ser descargados y consultados mediante técnicas FTP. Inicialmente, casi toda la información habida en lnternet estaba en estos servidores. Aunque muchas instituciones y universidades mantienen servidores de este tipo, con gigantescos directorios de ficheros, su utilización (como otras muchas del Internet) está descendiendo en favor del "formato" Web. Los programas para "bajar" ficheros de servidores FTP, otrora muy populares, están prácticamente desapareciendo como aplicaciones "stand-alone" [1], aunque por supuesto el concepto FTP se usa amplia y cotidianamente. Servidores de Noticias ("News server"). Almacenan los cientos de miles (millones) de mensajes hacia/desde decenas de miles de grupos de noticias que existen en la Red. Servidor de terminales ("Terminal Server"). Un ordenador utilizado para conectar muchos módems así como una conexión de red de alta velocidad a otro ordenador (host). El servidor de terminales hace el trabajo de atender las llamadas telefónicas de los módems y pasar la comunicación al host (un nodo Internet) por la línea de alta velocidad. Esta función se conoce en informática con el nombre de "Front-End". Cuando la operación entre clientes y servidores se realiza a través de una red (como es el caso de Internet), la información viaja codificada a lo largo de redes que pueden ser del tamaño de un edificio o de tamaño planetario. En caso de redes grandes, aparte de servidores y clientes, se necesita un tercer tipo de máquinas para gestionar las transmisiones. Se denominan enrutadores ("Routers"), y funcionan como elementos de recepción y transmisión de tráfico Internet. Estos equipos (junto con los telefónicos) tienen una finalidad exclusivamente transmisora de la información, sin importar el uso o contenido que pueda tener la información transportada ( 4.6). El paradigma cliente-servidor no solo se utiliza en referencia a las máquinas físicas, también a los programas que las hacen funcionar según su utilidad. Por ejemplo, son frecuentes expresiones tales como "cliente de correo" o "servidor de noticias" en referencia a programas. La primera se refiere al que utilizamos normalmente para interrogar nuestro buzón e-mail, "bajar" el correo y manipularlo (verlo, imprimirlo, borrarlo, etc.). El segundo se refiere a un programa o sistema de ellos, que en un servidor (máquina) realiza el trabajo de alojar los mensajes de noticias, atender las peticiones de los "clientes", etc.