Implement Ac i on Client Es

download Implement Ac i on Client Es

of 140

Transcript of Implement Ac i on Client Es

  • 7/22/2019 Implement Ac i on Client Es

    1/140

    INSTITUTO POLITCNICO NACIONAL

    CENTRO DE INNOVACIN YDESARROLLO TECNOLGICO EN

    CMPUTO.

    IMPLEMENTACIN DE CLIENTES LIGEROS DENTRO DE UN

    CENTRO DE CMPUTO

    TESIS

    PARA OBTENER EL GRADO DE:

    MAESTRA EN TECNOLOGA EN CMPUTO

    PRESENTA:

    ING. RUBN GONZLEZ ZAINEZ

    DIRECTOR:

    M. en C. JESS ANTONIO LVAREZ CEDILLO

    2008

  • 7/22/2019 Implement Ac i on Client Es

    2/140

    2

  • 7/22/2019 Implement Ac i on Client Es

    3/140

    3

  • 7/22/2019 Implement Ac i on Client Es

    4/140

    4

    NDICE DE CONTENIDO

    ndice ....................................................................................................................... 2Glosario ................................................................................................................... 7Titulo ..................................................................................................................... 12Resumen ................................................................................................................ 12Abstract.................................................................................................................. 12Antecedentes.......................................................................................................... 12Introduccin........................................................................................................... 12Objetivo ................................................................................................................. 14Objetivos Particulares............................................................................................ 14Motivacin............................................................................................................. 14Problemtica detectada .......................................................................................... 15

    Contribucin .......................................................................................................... 15Solucin propuesta ................................................................................................ 16Cmo trabajan estas terminales Clientes Ligeros?........................................... 17En dnde se pueden implementar el uso de los clientes ligeros? ........................ 17Ambientes de trabajo que funcionan bajo esta forma de trabajo........................... 17

    Captulo 1El Paradigma Cliente-Servidor

    1.1 Paradigma Cliente-Servidor ............................................................................ 18

    1.2 Caractersticas de clientes y servidores ........................................................... 181.3 Programas servidores y computadoras clase servidor ..................................... 191.4 Solicitudes, respuestas y direccin de flujo de datos....................................... 191.5 Protocolos de transportacin e interaccin cliente-servidor............................ 201.6 Servicios mltiples en una computadora ......................................................... 201.7 Identificacin de los servicios ......................................................................... 211.8 Varias copias de un servidor para un solo servicio .........................................221.9 Creacin de servidores dinmicos ................................................................... 221.10 Protocolos de transportacin y comunicacin no ambigua .......................... 231.11 Transportacin orientada a conexin y sin conexiones ................................ 231.12 Servicios orientados a la conexin y no orientados a la conexin ............... 24

    1.13 Primitivas de servicio ................................................................................... 261.14 Servicio asequible por medio de varios protocolos ...................................... 281.15 Interacciones cliente-servidor complejas ...................................................... 281.16 Interacciones y dependencias circulares ....................................................... 291.17 Servicios proporcionados por mltiples servidores ...................................... 291.18 Servidores Proxy y cach ............................................................................. 301.19 Procesos de igual a igual .............................................................................. 311.20 Variaciones en el modelo cliente servidor ................................................ 32

  • 7/22/2019 Implement Ac i on Client Es

    5/140

    5

    1.21 Cdigo mvil ................................................................................................. 321.22 Agentes mviles ........................................................................................... 331.23 Computadoras de red .................................................................................... 341.24 Clientes ligeros ............................................................................................. 341.25 Implementacin de clientes Ligeros ............................................................. 35

    Captulo 2Protocolo TCP/IP

    2.1 Introduccin a TCP/IP .................................................................................... 362.2 Historia de TCP/IP ......................................................................................... 372.3 objetivos de TCP/IP ........................................................................................ 382.4 El protocolo IP ................................................................................................ 392.4. 1 La funcin de IP ......................................................................................... 422.4.2 Direccionamiento IP .................................................................................... 422.4.3 Formato de cabecera de datagramas IP ....................................................... 462.4.4 IP versin 6 .................................................................................................. 472.5 TCP.................................................................................................................. 482.5.1 Servicio Terminal a Terminal y datagramas ................................................ 492.5.2 Formato de segmento TCP .......................................................................... 502.5.3 Corrientes de datos en TCP ......................................................................... 512.5.4 Control de flujo por medio de Ventanas en TCP ....................................... 522.5.5 Confiabilidad ............................................................................................... 522.5.6 Comunicacin fiable con TCP .................................................................... 532.5.7 Precedencia y seguridad .............................................................................. 532.6 Sockets utilizados por TCP/IP ........................................................................ 542.7 Puntos fuertes y dbiles de TCP/IP ................................................................ 542.8 Clases de direcciones Internet ........................................................................ 54

    Captulo 3Protocolos Remotos

    3.1 El Papel de los Protocolos .............................................................................. 563.2 Definicin de Protocolo de red ....................................................................... 563.3 Introduccin a Protocolos Remotos ............................................................... 563.4 Protocolo TELNET ........................................................................................ 573.4.1 Cmo funciona TELNET ............................................................................ 573.4.2 Limitaciones de TELNET ........................................................................... 583.4.3 Transmisin de datos en TELNET .............................................................. 583.5 DHCP (Configuracin Dinmica de Hosts) ................................................... 593.5.1 Funcionamiento del protocolo DHCP ......................................................... 603.6 FTP ................................................................................................................. 613.6.1 Anatoma de FTP ......................................................................................... 623.7 NFS (Network File System Sistema de archivos de red) ............................ 623.8 SNMP (Protocolo Simple de Administracin de Red) ................................... 623.8.1 Elementos de Mensajes SNMP .................................................................. 63

  • 7/22/2019 Implement Ac i on Client Es

    6/140

    6

    3.9 SMTP .............................................................................................................. 643.9.1 Arquitectura del correo SMTP .................................................................... 653.9.2 Entrega de correo electrnico ...................................................................... 653.9.3 Caractersticas de SMTP ............................................................................. 653.10 DNS (Dominio de nombres de Sistemas) ..................................................... 66

    3.10.1 Elemento del servicio DNS ....................................................................... 663.10.2 Transporte de mensajes DNS .................................................................... 673.11 http (Hypertext Transfer Protocol) ............................................................... 673.11.1 Conceptos sobre http ................................................................................. 683.12 POP3 (Post Office Protocol) ......................................................................... 683.13 Funcionamiento del protocolo POP3 .......................................................... 693.14 PPP (Point to Point Protocol) ....................................................................... 693.15 IRC (Internet Relay Chat) ............................................................................ 703.16 RIP (Routing Information Protocol) ............................................................. 703.17 OSPF (Open Shortest Path First). ................................................................. 713.18 IRDP (IICMP Router Discovery Protocol) ................................................ 723.19 VNC Virtual Network Computing (Computacin en Red Virtual) ............. 723.20 SSH ............................................................................................................... 733.20.1 Caractersticas del protocolo ..................................................................... 743.20.2 Puerto TCP/IP y otras opciones ................................................................. 753.20.3 Identificacin de la versin del protocolo ................................................ 753.20.4 Intercambio de claves y autentificacin del equipo servidor .................. 763.20.5 El nombre de usuario ................................................................................ 763.20.6 Fase de autentificacin ............................................................................. 773.20.7 Operaciones de preparacin ....................................................................... 773.20.8 Sesin interactiva e intercambio de datos ................................................. 783.21 SSH2 ........................................................................................................... 783.21.1 Arquitectura ............................................................................................... 783.22 Rdesktop ....................................................................................................... 803.23 X-WINDOW: Interfaces Grficas de Usuario para UNIX ........................... 80

    Captulo 4Diseo e Implementacin

    4.1 Qu es un cliente Ligero ................................................................................. 834.1.1 Propiedades de un Cliente Ligero................................................................. 834.2 Progresos tecnolgicos en computadoras ........................................................ 834.3 Depreciacin de Computadoras en Mxico.................................................... 864.4 Construccin de un cliente ligero ................................................................... 874.4.1 Construccin del gabinete del cliente Ligero ............................................... 884.5 Diseo de un sistema para clientes ligeros en GNU/LINUX. ........................ 904.5.1 Porque programar en Linux......................................................................... 904.5.2 Kernel .......................................................................................................... 904.5.3 Los mdulos cargables del kernel ................................................................ 924.5.4 Distribuciones Live CD............................................................................. 92

  • 7/22/2019 Implement Ac i on Client Es

    7/140

    7

    4.5.5 Qu es Syslinux. .......................................................................................... 944.5.6 Que no es Syslinux ....................................................................................... 944.5.7 Arranque desde Kanoppix live CD.......................................................... 944.6 Creacin de nuestra distribucin para Clientes ligeros .................................. 954.7 Protocolos de conexin en la interfaz de Gambas .......................................... 98

    4.7.1 SSH (Secure Shell) ...................................................................................... 984.7.2 VNC. (Virtual Network Computing) ......................................................... 1104.7.3 RDESKTOP. (Remote Desktop Protocol).................................................. 1134.7.4 TELNET. (Terminal Networking)............................................................. 1144.7.5 TERMINAL X ........................................................................................... 1174.8 Gambas (Gambas Almost Jeans BASIC) ..................................................... 1174.8.1 Elementos de Gambas ............................................................................... 1194.9 Pruebas realizadas......................................................................................... 120

    Captulo 5Conclusiones

    5.1 Conclusiones.................................................................................................. 1225.2 Trabajos futuros............................................................................................. 125

    Anexo .................................................................................................................. 127Referencias ......................................................................................................... 137

  • 7/22/2019 Implement Ac i on Client Es

    8/140

    8

    NDICE DE FIGURAS

    1.1 Cliente y servidor que usan el protocolo TCP/IP por una interred..........................20

    1.2 Dos servidores de una computadora, accedidos por clientes de otras dosComputadoras..........................................................................................................211.3 Seis tipos de servicios diferentes orientado y NO orientado a la conexin.............251.4 Cinco primitivas de servicio para la implementacin de un

    servicio simple orientado a conexin ......................................................................261.5 Paquetes enviados en una interaccin simple cliente-servidor

    sobre una red orientado a conexin.........................................................................271.6 Clientes que invocan a servidores individuales.......................................................301.7 Un servicio proporcionado por mltiples servidores...............................................301.8 Un servidor Proxy de tipo WEB..............................................................................311.9 Una aplicacin distribuida basada en procesos de igual a igual..............................32

    1.10 Clientes ligeros y servidores de clculo ..................................................................352.1 Campos de la cabecera de datagrama IP. Tanto la fuente comoel destino son direcciones de Internet......................................................................47

    2.2 Ejemplo de interred ilustra porqu el TCP es un protocolo detransportacin Terminal a Terminal. El TCP ve al IP como mecanismoque le permite intercambiar mensajes con un TCP remoto.....................................50

    2.3 Formato de segmento TCP. Todos los mensajes transmitidos por el TCPde una mquina al de otra tienen este formato, incluidos datos yacuses de recibo.......................................................................................................51

    4.1 Calculo de la depreciacin sobre algunos activos personales .................................874.2 Lamina metlica y aparatos electrnicos descompuestos........................................88

    4.3 Construccin del gabinete utilizando material de desecho......................................894.4 Montaje de la fuente de voltaje y tarjeta madre (Desktop Boards) .........................894.5 Montaje de CD-ROM, disco duro y conexiones en general....................................894.6 Estructura de Linux .................................................................................................914.7 Protocolos de Cifrado en SSH.................................................................................994.8 Protocolos de Autentificacin .................................................................................994.9 Funcionamiento de TELNET ................................................................................1154.10 Tabla de resultados experimentales con distintos procesadores............................1205.1 Computadoras obsoletas, cinco Power PC, dos G3 y tres Pentium III..................1255.2 Computadoras obsoletas en el centro de cmputo del IIA ....................................126

  • 7/22/2019 Implement Ac i on Client Es

    9/140

    9

    GLOSARIO

    ACTIVE X: Lenguaje de programacin al estilo de Java propuesto por Microsoft.ANSI AMERICAN NATIONAL STANDARD INSTITUTE.: Instituto NacionalAmericano de Estndar.

    API Aplication Program Interface. Interfaz de Aplicacin del Programa. Es el conjuntode rutinas del sistema que se pueden usar en un programa para la gestin de entrada/salida,gestin de ficheros etc.ARCHIE: Software utilizado para localizar archivos en servidores FTP. A partir de 1994ha cado en desuso debido a la aparicin del WWW, o Web.ARCHIVO DE TEXTO: Archivo que utiliza solamente caracteres del estndar ASCII ypor lo tanto que puede ser enviado por correo electrnico sin ningn tipo de modificacin.ASCII: American Standard Code for Information Interchange. Estndar Americanopara Intercambio de Informacin. La tabla bsica de caracteres ASCII esta compuesta por128 caracteres incluyendo smbolos y caracteres de control. Existe una versin extendida de256

    AUI: Asociacin de usuarios de Internet.BANDWITH: Ancho de Banda. Capacidad mxima de un medio de transmisin y/oenlace.BASE DE DATOS:conjunto de datos organizados de modo tal que resulte fcil acceder aellos, gestionarlos y actualizarlos.BIOSBasic Input Output System. Sistema Bsico de Entrada/Salida. Programa residentenormalmente en Eprom que controla la iteracciones bsicas entre el hardware y el Software.BITBinary Digit. Digito Binario. Unidad mnima de informacin, puede tener dos estados"0" o "1".BOOTP Bootstrap Protocol. Protocolo de Arranque-Asignacin. Proporciona a unamquina una direccin IP, Gateway y Netmask. Usado en comunicaciones a travs de lnea

    telefnica.BROWSER. Navegador. Trmino aplicado normalmente a los programas que permitenacceder al servicio WWW.BUS.Va o canal de Transmisin. Tpicamente un BUS es una conexin elctrica de uno oms conductores, en el cual todos los dispositivos ligados reciben simultneamente todo loque se transmite.Byte 1 Byte es un carcter y equivale a 8 bits, 1Kbyte equivale a 1024 bytesCD. Compact Disc. Disco Compacto. Disco ptico de 12 cm de dimetro paraalmacenamiento binario. Su capacidad "formateado" es de 660 Mb. Usado en principio paraalmacenar audio. Cuando se usa para almacenamiento de datos genricos es llamado CD-ROM.COMANDO: Instruccin determinada que indica en un programa la ejecucin de unaaccin especfica como guardar, salir, conectar, etc.CONFIGURACIN: Declaracin de las opciones o caractersticas con las que deberejecutarse determinado archivo programa.DATAGRAMA. Usualmente se refiere a la estructura interna de un paquete de datos.DNS Domain Name System:Sistema de nombres de Dominio. Base de datos distribuidaque gestiona la conversin de direcciones de Internet expresadas en lenguaje natural a unadireccin numrica IP. Ejemplo: 121.120.10.1

    http://www.fac.org.ar/fec/cursofac/glosario.htm#prog#proghttp://www.fac.org.ar/fec/cursofac/glosario.htm#prog#proghttp://www.fac.org.ar/fec/cursofac/glosario.htm#prog#proghttp://www.fac.org.ar/fec/cursofac/glosario.htm#prog#prog
  • 7/22/2019 Implement Ac i on Client Es

    10/140

    10

    EBCDIC: Extended Bynary Coded Decimal Interchange Code Cdigo Extendido deBinario Codificado Decimal. Sistema mejorado de empaquetamiento de nmeros decimalesen sistema binario.ETHERNET:Diseo de red de rea local normalizado como IEEE 802.3. Utilizatransmisin a 10 Mbps por un bus Coaxial. Mtodo de acceso es CSMA/CD.

    FASTETHERNET: Diseo de red Ethernet, donde se alcanzan velocidades de hasta 100Mbps, comnmente son inteligentes y se les permite identificar los nodos que trabajarnms rpido que otros.FTP: File Transfer Protocol. Protocolo de Transferencia de Archivos. Uno de losprotocolos de transferencia de ficheros mas usado en Internet.FUNCION: En programacin, una rutina que hace una tarea particular. Cuando elprograma pasa el control a una funcin, sta realiza la tarea y devuelve el control a lainstruccin siguiente a la que llamo.GATEWAY: Pasarela. Puerta de Acceso. Dispositivo que permite conectar entre si dosredes normalmente de distinto protocolo o un Host a una red.GUI: Graphic User Interface Interfaz Grfica de Usuario.Hardware: A los componentes que es posible ver y tocar se les llama en jergacomputacional "hardware", palabra inglesa cuyo significado es mquina o "cosa dura".HDLC: High-Level Data Link Control,Control de Enlace de Datos de Alto Nivel. Es unprotocolo orientado al bit.HDSL: High bit rate Digital Subscriber Linea, Linea Digital de Abonado de alta velocidad.Sistema de transmisin de datos de alta velocidad que utiliza dos pares trenzados. Seconsiguen velocidades superiores al Megabit en ambos sentidos.HOST:Anfitrin. Computador conectado a Internet. Computador en general.HPFS: high performance file system, Sistema de Archivos de Alto Rendimiento. Sistemaque utiliza el OS/2 opcionalmente para organizar el disco duro en lugar del habitual deFAT.HTML:HyperText Markup Language,Lenguaje de Marcas de Hipertexto. Lenguaje paraelaborar paginas Web actualmente se encuentra en su versin 3. Fue desarrollado en elCERN.http: HyperText Transfer Protocol, Protocolo de Transferencia de Hypertexto. Protocolousado en WWW.IANA: Internet Assigned Number Authority, Autoridad de Asignacin de Nmeros enInternet. Se trata de la entidad que gestiona la asignacin de direcciones IP en Internet.ICMP:Internet Control Message Protocol, Protocolo Internet de Control de Mensajes.INTERNET: Conjunto de redes y ruteadores que utilizan el protocolo TCP/IP y quefunciona como una sola gran red.IPI: Intelligent Peripheral Interface: Interfaz Inteligente de Perifricos. En ATM: InitialProtocol Identifier. Identificador Inicial de Protocolo.IPX: Internet Packet Exchange: Intercambio de Paquetes entre Redes. Inicialmenteprotocolo de Novell para el intercambio de informacin entre aplicaciones en una redNetware.IRC:Internet Relay Chat, Canal de Chat de Internet. Sistema para transmisin de textomultiusuario a travs de un servidor IRC. Usado normalmente para conversar on-linetambin sirve para transmitir ficheros.

  • 7/22/2019 Implement Ac i on Client Es

    11/140

    11

    ISDN: Integrated Services Digital Network, Red Digital de Servicios Integrados. Servicioprovisto por una empresa de comunicaciones que permite transmitir simultneamentediversos tipos de datos digitales conmutados y voz.ISO:International Standard Organization,Organizacin Internacional de Estndares.ISP: Internet Service Provider,Proveedor de Servicios Internet.

    ISS: Internet Security Scanner, Rastreador de Seguridad de Internet. Programa que buscapuntos vulnerables de la red con relacin a la seguridad.ITU: International Telecommunications Union, Union Internacional deTelecomunicaciones. Forma parte de la CCITT. Organizacin que desarrolla estndares anivel mundial para la tecnologa de las telecomunicaciones.LAN: Local Area Network, Red de Area Local. Una red de rea local es un sistema decomunicacin de alta velocidad de transmisin. Estos sistemas estn diseados parapermitir la comunicacin y transmisin de datos entre estaciones de trabajo inteligentes,comnmente conocidas como Computadoras Personales. Todas las PCs, conectadas a unared local, pueden enviar y recibir informacin. Como su mismo nombre lo indica, una redlocal es un sistema que cubre distancias cortas. Una red local se limita a una planta o unedificio.LCP: Link Control Protocol, Protocolo de Control de EnlaceLink Enlace:Unin. Se llama as a las partes de una pgina WEB que nos llevan a otraparte de la misma o nos enlaza con otro servidor.LINUX: Versin Shareware(software distribuido en calidad de prueba) y/oFreeware del conocido sistema operativo Unix. Es un sistema multitarea multiusuario de 32bits para PC.NCP: Network Control Protocol, Protocolo de Control de Red. Es un protocolo delNetwork LayerNET:RedNETBIOS Network BIOS: Network Basic Input/Output System. Bios de una red, es decir,Sistema Bsico de Entrada/Salida de red.Nic Network Interface Card: Tarjeta de Red.NSA: National Security Agency, Agencia Nacional de Seguridad. Organismo americanopara la seguridad entre otras asuntos relacionados con la informtica.NSF: National Science Fundation, Fundacin Nacional de Ciencia. Fundacin americanaque gestiona gran parte de los recursos de Internet.ODBC Open DataBase Connectivity: es una interfaz standard para acceder a bases dedatos relacionales utilizando SQL. Esto le permite trabajar con los datos de una base dedatos como: Oracle, Sybase, Informix, desde cualquier aplicacin que soporte ODBC.OSI Open Systems Interconnection: Interconexin de Sistemas Abiertos. Modelo dereferencia de interconexin de sistemas abiertos propuesto por la ISO. Divide las tareas dela red en siete niveles.POP Post Office Protocol: Protocolo de Oficina de Correos. Protocolo usado porcomputadores personales para manejar el correo sobre todo en recepcin. PPP Point toPOINT PROTOCOL:Protocolo Punto a Punto. Un sucesor del SLIP. El PPP provee lasconexiones sobre los circuitos sncronos o asncronos, entre router y router, o entre host y lared. Protocolo Internet para establecer enlace entre dos puntos.PROXY.Servidor Cach. ElProxy es un servidor de que conectado normalmente al servidor de acceso a la WWW de unproveedor de acceso va almacenando toda la informacin que los usuarios reciben de la

  • 7/22/2019 Implement Ac i on Client Es

    12/140

    12

    WEB, por tanto, si otro usuario accede a travs del proxy a un sitio previamente visitado,recibir la informacin del servidor proxy en lugar del servidor real.PROGRAMA:Es una coleccin de instrucciones que indican a la computadora que debehacer. Un programa se denomina software, por lo tanto , programa, software e instruccinson sinnimos.

    PROTOCOLO: Un conjunto de reglas formales que describen como se trasmiten losdatos, especialmente a travs de la red.RARP: Reverse Address Resolution Protocol. Protocolo de Resolucin de Direccin deRetorno. Protocolo de bajo nivel para la asignacin de direcciones IP a maquinas simplesdesde un servidor en una red fsica.RAM: Random Access Memory. Memoria de Acceso Aleatorio. Varios son los tipos dememoria que se usa en las computadoras. La ms conocida son las RAM. Se les llama asporque es posible dirigirse directamente a la clula donde se encuentra almacenada lainformacin. Su principal caracterstica es que la informacin se almacena en ellasprovisoriamente, pudiendo ser grabadas una y otra vez, al igual que un casette de sonido.La memoria RAM se puede comparar a un escritorio, donde se coloca los papeles con quese va a trabajar. Mientras ms grande el escritorio ms papeles soporta simultneamentepara ser procesados.RAS Remote Access Server: Servidor de Acceso Remoto. RDSI Red Digital deServicios Integrados.Red de telefnica con anchos de banda desde 64Kbps. Similar a lared telefnica de voz en cuanto a necesidades de instalacin de cara al abonado, perodigital. En ingls ISDN.RFC Request For Comment. Peticin de comentarios. Serie dedocumentos iniciada en 1967 que describe el conjunto de protocolos de Internet. Los RFCson elaborados por la comunidad Internet.RIP Routing Information Protocol:Protocolo de Informacin de Routing.ROM Read Only Memory:Memoria slo de lectura. Las memorias ROM se usan paramantener instrucciones permanentes, que no deben borrarse nunca. Estas memorias vienengrabadas de fbrica. Son como los discos fonogrficos, que slo permiten reproducir elsonido. Tienen la ventaja de ser de alta velocidad y bajo costo.ROOT: Raz. En sistemas de ficheros se refiere al directorio raz. En Unix se refiere alusuario principal.ROUTER:Dispositivo conectado a dos o mas redes que se encarga nicamente de tareasde comunicacionesRTC Red Telefnica Conmutada:Red Telefnica para la transmisin de voz.RTP Real Time Protocol: Protocolo de Tiempo Real. Protocolo utilizado para latransmisin de informacin en tiempo real como por ejemplo audio y video en una video-conferencia.SERVIDOR:computadora central de un sistema de red que provee servicios y programasa otras computadoras conectadas. Sistema que proporciona recursos (por ejemplo,servidores de archivos, servidores de nombres). En Interneteste trmino se utiliza muy amenudo para designar a aquellos sistemas que proporcionan informacin a los usuarios dela red.SLIP Serial Line Internet Protocol: Protocolo Internet en Lnea Serial. Protocolo,antecesor del PPP, que permite establecer conexiones TCP/IP a travs de enlaces seriales.SMPT Simple Mail Transfer Protocol:Protocolo de Transferencia Simple de Correo. Esel protocolo usado para transportar el correo a travs de Internet.

    http://www.sitiosargentina.com.ar/Help/diccionario%20tecnico.htm#Internethttp://www.sitiosargentina.com.ar/Help/diccionario%20tecnico.htm#Internet
  • 7/22/2019 Implement Ac i on Client Es

    13/140

    13

    SISTEMA OPERATIVO: programa que administra los dems programas en unacomputadora.SOFTWARE:Esta palabra inglesa que significa "cosa suave", tiene dos significados: (a)uno amplio, de "procedimientos lgicos, para la cooperacin armnica de un grupo depersonas y mquinas, persiguiendo un objetivo comn"; (b) el otro restringido, de

    "programas de computadora", o conjunto de instrucciones, que se pone en la memoria deuna computadora para dirigir sus operaciones.SQL: Structured Query Language. Lenguaje de Peticin Estructurada. Lenguaje para basede datos.SSL: Secure Sockets Layer. Capa de Socket Segura. Protocolo que ofrece funciones deseguridad a nivel de la capa de transporte para TCP.TCP/IP: Transmission Control Protocol / Internet Protocol: Protocolo de Control deTransmisin / Protocolo Internet. Nombre comn para una serie de protocolos desarrolladospor DARPA en los Estados Unidos en los aos 70, para dar soporte a la construccin deredes interconectadas a nivel mundial. TCP corresponde a la capa (layer) de transporte delmodelo OSI y ofrece transmisin de datos. El IP corresponde a la capa de red y ofreceservicios de datagramas sin conexin. Su principal caracterstica es comunicar sistemasdiferentes. Fueron diseados inicialmente para ambiente Unix por Victor G. Cerf y RobertE. Kahn. El TCP / IP son bsicamente dos de los mejores protocolos conocidos.TELNET: Protocolo y aplicaciones que permiten conexin como terminal remota a unacomputadora anfitriona, en una localizacin remota.TIME-OUT: Parmetro que indica a un programa el tiempo mximo de espera antes deabortar una tarea o funcin. Tambin mensaje de error.TOPOLOGA: La "forma" de la red. Predominan tres tipos de tecnologas: Bus, Estrella yAnillo.TX: Abreviatura de Transmisin o Transmitiendo.UDP: User Datagram Protocol. Protocolo de Datagrama de Usuario. Protocolo abierto enel que el usuario (programador) define su propio tipo de paquete.UNICAST Se refiere a Protocolos o Dispositivos que transmiten los paquetes de datos deuna direccin IP a otra direccin IP.UNIX: Sistema operativo multitarea, multiusuario. Gran parte de las caractersticas deotros sistemas mas conocidos como MS-DOS estn basadas en este sistema muy extendidopara grandes servidores. Internet no se puede comprender en su totalidad sin conocer elUnix, ya que las comunicaciones son una parte fundamental en Unix.URL: Uniform Resource Locator.Localizador Uniforme de Recursos. Denominacin queno solo representa una direccin de Internet sino que apunta aun recurso concreto dentro deesa direccin.UTP: Unshielded Twisted Pair, par trenzado no apantallado) es un tipo de cableadoutilizado principalmente para comunicaciones.WWW: WEB o W3 World Wide Web. Telaraa mundial. Sistema de arquitectura cliente-servidor para distribucin y obtencin de informacin en Internet, basado en hipertexto ehipermedia. Fue creado en el Laboratorio de Fsica de Energa Nuclear del CERN, enSuiza, en 1991 y ha sido el elemento clave en el desarrollo y masificacin del uso deInternet.X Window System:Sistema de Ventanas X. El sistema de Ventanas X permite que cadaventana se conecte con una computadora remota.

    http://es.wikipedia.org/wiki/Cableado_estructuradohttp://es.wikipedia.org/wiki/Telecomunicaci%C3%B3nhttp://es.wikipedia.org/wiki/Telecomunicaci%C3%B3nhttp://es.wikipedia.org/wiki/Cableado_estructurado
  • 7/22/2019 Implement Ac i on Client Es

    14/140

    14

    IMPLEMENTACIN DE CLIENTES LIGEROS DENTRO UN

    CENTRO DE CMPUTO

    Resumen

    El siguiente proyecto trata sobre la fabricacin de prototipos de clientes ligeros a partir decomputadoras obsoletas o hardware especialmente diseado para ser utilizado como clienteligero. El prototipo obtenido funciona con un sistema operativo Linux especialmenteadaptado, optimizado y personalizado para trabajar en un ambiente cliente servidor bajouna interfaz de conexin elaborada en el lenguaje de programacin visual Gambas quesatisface las necesidades de los usuarios tanto en ambientes Linux como Windows.

    Abstract

    The next project is about the manufacture of prototypes of "thin clients" from obsoletecomputers or hardware designed to be used as a thin client. The prototype earned runs witha Linux operating system tailored, optimized and customized to work on a environmentclient-server under a connection interface developed in the programming language VisualGambas that meets the needs of users in both Linux and Windows environments.

    Antecedentes

    Introduccin

    En la actualidad, diariamente las empresas e instituciones estn cambiando sus ambientesde trabajo personalizados por la adecuacin del sistema de trabajo cliente servidor, paraobtener servicios. La adaptacin del sistema cliente - servidor en la mayora de los casos nose realiza de una forma optima, la colocacin de las computadoras cliente representan unafuerte inversin para empresas e instituciones, considerando que hay que invertir enequipos robustos respecto a hardware y en software propio para ellos, los equiposcuentan con recursos como procesador y memoria RAM, licencia de sistema operativo,licencia de antivirus y las licencias de programas comerciales de oficina los que senecesiten para llevar a cabo sus actividades.

    Este esquema es claramente costoso e ineficiente sumado a esto las empresas deben decontar con personal dedicado para brindar mantenimiento, correctivo y preventivo a todoslos equipos que lo requieran.

  • 7/22/2019 Implement Ac i on Client Es

    15/140

    15

    Pero estas computadoras clientes se tienden a volverse obsoletas conforme hay nuevosadelantos en hardware y software y tienen que ser sustituidas peridicamente.

    El presupuesto de instituciones educativas destinado a la compra de computadoras nunca essuficiente y rara vez cubre las necesidades que ao con ao se presentan. Es urgente

    encontrar una forma de seguir aprovechando lascomputadoras obsoletas y de hacer delsistema cliente servidor eficiente tanto en lo operativo como en lo econmico.

    Existe un modelo de estacin de trabajo o Terminal llamado Cliente Ligero, en ingls ThinClient, modelo poco conocido en Mxico, se puede implementar a partir de computadorasobsoletas, de bajo rendimiento o hardware especialmente fabricado para utilizarse comocliente ligero.

    El usuario de los clientes ligeros continua utilizando los mismos programas a los que estaacostumbrado, bajo la adaptacin del sistema Cliente Ligero Servidor, que es unaconexin segura, econmica y ecolgica.

  • 7/22/2019 Implement Ac i on Client Es

    16/140

    16

    Objetivo:

    Fabricacin de prototipos de clientes ligeros a partir de computadoras obsoletas con

    hardware especialmente diseado para ser utilizado como cliente ligero, que opere bajo unsistema operativo mnimo en GNU/Linux y que permita elegir el servidor con que se deseetrabajar ya sea que funcione en las plataformas Linux o Windows a la vez que permitaescoger el protocolo de conexin con el servidor. La construccin y la adaptacin de estaestacin de trabajo debe realizarse a un bajo costo.

    Objetivos Particulares:

    Construir prototipos de cliente ligeros a partir de computadoras obsoletas, o bienhardware especializado fabricado para ser utilizado como cliente ligero. Este ltimo

    tiene la ventaja de ser de bajo consumo elctrico, dimensiones pequeas, comparadocon el Hardware de computadoras obsoletas.

    Crear una distribucin de GNU/Linux propia y optimizada para clientes ligeros yque se adapte a distintos entornos de trabajo de tal manera que puede ejecutarsedesde CD-ROM, disco duro y memoria USB flash Drive.

    Elaborar una interfaz grfica por medio del lenguaje de programacin visualGambas. Que pueda ser personalizado para cualquier centro de cmputo deuniversidades y escuelas.

    Implementar el modelo, cliente ligero servidor por medio de los protocolos quesoportan ambientes grficos Terminal X, RDesktop y VNC, y de protocolos que nosoportan grficos como son Telnet y SSH.

    Utilizar el modelo cliente ligero servidor y comprobar su ventaja con otrosmodelos de conexin a servidor remoto.

    Motivacin

    Las computadoras nuevas siguen siendo caras a pesar de la amplia oferta que ofrecen losfabricantes. Elevndose el precio de estas al complementarlas con un sistema operativo, unprograma antivirus, programas bsicos de oficina, etc.

    Muchas de las computadoras nuevas se instalan con un conjunto de programas yaplicaciones en su disco duro local y estas computadoras son utilizadas para realizar unaconexin remota con un servidor. Dejando en evidencia un claro desperdicio de recursos

  • 7/22/2019 Implement Ac i on Client Es

    17/140

    17

    tanto de hardware y software; estas computadoras representan un tipo de problema para elpersonal de soporte tcnico con lo que en pocos aos sern equipos obsoletos.Los procesadores y dispositivos de las computadoras son cada da ms potentes y demandade mayor energa por lo tanto tambin demanda un mtodo de enfriamiento.

    Existe un componente que puede evitar a todos estos problemas y este es el cliente ligero.Otra motivacin muy especial es el desarrollar aplicaciones con aplicaciones de libredistribucin tales como el sistema operativo Linux y el lenguaje de programacin visualGambas; de esta forma se evita la adquisicin de licencias de software de propietario comolo es el sistema operativo Windows junto con sus aplicaciones.

    Es aspecto ecolgico es muy importante, porque al crear clientes ligeros a partir decomputadoras obsoletas, la vida til se incrementa considerablemente en aos, evitando lacompra y el desecho innecesario de computadoras.

    Problemtica Detectada

    Los adelantos en hardware, software y nuevos perifricos hacen que las computadoras enbuenas condiciones sean desplazadas por nuevas, antes que su vida til termineconvirtiendo en un problema para su almacenaje y se convierten en basura informtica.

    Esto representa un gasto econmico tanto para comprar nuevas computadoras como para sualmacenaje, y posteriormente el desecho de computadoras obsoletas.

    Cuando se utiliza el modelo cliente- servidor muchas veces la computadora cliente, trae

    instalado sistema operativo completo y comercial adems que contiene aplicaciones queresiden en su disco duro, el usuario a su vez utiliza aplicaciones y almacena su informacinde manera combinada tanto en su servidor como en computadora local. Esta forma no esadecuada pues exige una buena computadora del lado del cliente y por lo tanto estacomputadora quedar obsoleta cuando ya no pueda manejar nuevas aplicaciones residentesen el disco duro de la computadora que trabaja como servidor.

    Las computadoras al tener disco local, CD-ROM, DVD sistema operativo, y la facilidadpara que el usuario personalice la computadora las convierte en medios inseguros y untrabajo constante para el personal de soporte tcnico.

    Contribucin

    Las contribuciones son muchas, no es nada ms por el aspecto econmico,

  • 7/22/2019 Implement Ac i on Client Es

    18/140

    18

    Se demuestra la versatilidad del GNU/Linux para poder ser reducido ypersonalizado de acuerdo al tipo y necesidades del trabajo que se requiera, en estecaso creacin de clientes ligeros.

    Se demuestra la versatilidad del Lenguaje de programacin visual gambas, que se

    utiliz para la creacin de la interfaz de conexin de un cliente ligero con unservidor.

    Los Protocolos Telnet, SSH, VNC, Terminal X y RDesktop son protocolos que ensu conjunto pueden satisfacer a cualquier usuario, para obtener servicios delservidor para ejecutarse en ambiente Windows o Linux.

    Queda de manifiesto que la implementacin de clientes ligeros tiene comoconsecuencia el ahorro de licencias en entornos Microsoft.

    Se comprueba que conexin cliente ligero-servidor, es la mas eficiente dentro delparadigma cliente servidor. Por lo que se puede trabajar con servidores remotos aun bajo precio y con un reducido consumo de hardware y software por parte delcliente.

    Es posible fabricar clientes ligeros con material de desecho.

    Solucin Propuesta.

    Se propone la adaptacin del modelo cliente servidor como estructura de trabajo, por lo que

    se utiliza una computadora que funciona como servidor con capacidad de almacenamientode informacin grande como por ejemplo 500 GB, una memoria RAM de 2 GB, procesadorque acepte procesamiento por lotes, como Core 2 dual ideal para la atencin de solicitudesconcurrentes. Como equipos clientes se propone la construccin fsica de las estaciones detrabajo, que este caso se denominan clientes ligeros, cuya construccin estar basada en lareutilizacin de componentes internos en buen estado de computadoras en desuso, ademscomo forma de conexin se propone que tenga flexibilidad de establecer comunicacin conel servidor por diferentes formas, empleando para ello protocolos de conexin remota yalgunos de ellos con soporte de grficos, creando para esto una interfaz grfica que lepermita realizar la seleccin del tipo de conexin. Para la creacin de esta se utiliza ellenguaje de programacin visual Gambas. Como sistema operativo propuesto para que

    estos equipos funcionen se plantea la produccin de un sistema mnimo que es una versinreducida del sistema operativo Linux pero adaptada y optimizada para trabajar con estosequipos.

  • 7/22/2019 Implement Ac i on Client Es

    19/140

    19

    Cmo trabajan estas terminales Clientes Ligeros?

    Lo ms destacable de los Clientes Ligeros, es su habilidad para separar: la interfaz de unaaplicacin respecto de la ejecucin de la aplicacin. Durante una sesin de trabajo, slo ladigitacin en el teclado, los clicks del mouse o las actualizaciones de las pantallas transitan

    a travs de las redes de interconexin.

    Todo el procesamiento de los datos se realiza en un servidor central denominado terminalserver.

    Es por esta razn, que un Cliente Ligero (thin client) slo requiere un dcimo del anchode banda requerido por una aplicacin convencional cliente/servidor.

    Basta un terminal server central, dotado de un Sistema Operativo para permitir a cadaCliente Ligero el acceso ilimitado a las aplicaciones instaladas en el servidor.

    Adicionalmente, el uso de Clientes Ligeros, se ve complementado con la posibilidad deemplear PC's antiguas con un software de emulacin. Por ejemplo, si una empresa debereemplazar 50 PC's /Pentium II y Pentium III, podr optar por mantener estas computadorascon el ahorro respectivo. Una PC Pentium III emulando un Cliente Ligero, comenzar aprestar sus servicios operando con aplicaciones de 32-bits, solo utilizando el software deemulacin. An cuando las aplicaciones son realmente ejecutadas en el servidor, elusuario final percibe el mismo efecto que si ejecutase sus aplicaciones en una PC instaladasen su escritorio.

    En este entorno, todos los usuarios siempre ejecutarn una misma versin de la aplicacin,pues sta se encuentra cargada en el servidor, a diferencia de una operacin

    cliente/servidor, donde cada PC cuenta con una versin separada de la aplicacin.

    En dnde se puede implementar el uso de los clientes ligeros?

    La aplicacin de estas terminales es amplia, estos equipos pueden ser instalados en aulas deenseanza, puntos de venta, call centers, salas de Internet, supermercados, bancos, etc. Sinduda su aplicacin es variada, puede representar una inversin muy exitosa.

    Ambientes de trabajo que funcionan bajo esta forma de trabajo

    En Mxico el uso de estos equipos es poco conocido sin embargo empresa norteamericanascon sucursales en Mxico, ya trabajan bajo este esquema de trabajo del sistema clienteservidor tales como Walt Mart y Burger King, el modelo cliente servidor funciona demanera ptima a un bajo costo.

  • 7/22/2019 Implement Ac i on Client Es

    20/140

    20

    Captulo 1

    El paradigma Cliente-Servidor

    En este captulo se presenta el concepto fundamental de todas las aplicaciones de red:interaccin cliente-servidor. Se explica el modelo cliente-servidor y se detalla que estainteraccin proviene de la manera en que operan los protocolos de red.

    1.1Paradigma cliente-servidor

    El paradigma que dispone que una aplicacin espere pasivamente a que otra inicie lacomunicacin penetra una parte tan grande del cmputo distribuido que tiene un nombre:paradigma de interaccin cliente-servidor.

    Los trminos cliente y servidor se refieren a las dos aplicaciones que participan en lacomunicacin. La aplicacin que inicia el contacto se llama cliente, y la que esperapasivamente se denomina servidor.

    1.2Caractersticas de clientes y servidores

    Aunque existen variaciones menores, la mayor parte de las instancias de interaccincliente-servidor poseen las mismas caractersticas generales. Por lo general el software decliente:

    Es un programa de aplicacin arbitrario que se vuelve cliente temporalmentecuando se necesita acceso remoto, pero que tambin lleva a cabo otro cmputolocal.

    Lo llama directamente el usuario y se ejecuta slo durante una sesin.

    Se ejecuta localmente en la computadora personal del usuario.

    Inicia el contacto con el servidor.

    Puede acceder a varios servicios, segn se necesite, pero contacta activamente conun servidor remoto a la vez.

    No se necesita hardware especial ni un sistema operativo complicado.

    En contraste, el software de servidor

    Es un programa privilegiado de propsito especial dedicado a ofrecer un servicio,pero puede manejar varios clientes remotos al mismo tiempo.

  • 7/22/2019 Implement Ac i on Client Es

    21/140

    21

    Se inicia automticamente al arranque del sistema y continua ejecutndose en varias

    sesiones. Opera en una computadora compartida.

    Espera pasivamente el contacto de los clientes remotos.

    Acepta el contacto de varios clientes, pero ofrece un solo servicio.

    Necesita hardware poderoso y un sistema operativo complicado.

    1.3Programas servidores y computadoras clase servidor

    El trmino servidor a veces produce confusiones. Formalmente, se refiere a un programaque espera pasivamente una comunicacin y no a la computadora en la que se ejecuta. Sinembargo, a una computadora que se dedica a ejecutar uno o varios programas servidores se

    le suele llamar errneamente servidor. Los proveedores de hardware contribuyen a laconfusin porque clasifican las computadoras de CPU rpida, gran memoria y sistemaoperativo poderoso como mquinas servidoras.

    Lo recomendable es apegarse a la terminologa correcta desde el punto de vista cientfico yusar el trmino servidor para referirse al programa y no a la computadora. El trminocomputadora claseservidor se refiere a una computadora poderosa que sirve para ejecutarsoftware servidor.

    1.4Solicitudes, respuestas y direccin de flujo de datos

    La informacin puede pasar en ambas direcciones entre el cliente y el servidor. Por locomn, el cliente transmite una solicitud al servidor y ste da respuesta al cliente. Enalgunos casos, el cliente manda varias solicitudes y el servidor emite una serie derespuestas como por ejemplo, una base de datos cliente podra permitir que un usuariobusque ms de un elemento a la vez. En otros casos, el servidor ofrece salida continua sinninguna solicitud, y tan pronto como el cliente contacta con el servidor, ste inicia el envode datos.

    Es importante entender que los servidores pueden aceptar la informacin de entrada ascomo entregar la informacin de salida. Por ejemplo, casi todos los servidores de archivos

    estn configurados para exportar a los clientes un grupo de archivos. Esto quiere decir queun cliente transmite una solicitud con un nombre de archivo y el servidor responde con unacopia. Sin embargo, el servidor de archivos tambin puede estar configurado para importararchivos, es decir, para permitir que el cliente transmita un archivo que el servidor acepta yalmacena en disco.

  • 7/22/2019 Implement Ac i on Client Es

    22/140

    22

    1.5Protocolos de transportacin e interaccin cliente-servidor

    Como parte de los programas de aplicacin, el cliente y el servidor necesitan un protocolode transportacin para comunicarse. En la figura 1.1 se ilustra un cliente y un servidor queutilizan la pila TCP/IP.

    Figura 1.1 Cliente y servidor que usan el protocolo TCP/IP por una interred

    Como se muestra en la figura 1.1, la aplicacin cliente-servidor interacta directamente conel protocolo de la capa de transportacin para establecer la comunicacin y transmitir orecibir informacin. Enseguida, el protocolo de transportacin emplea protocolos de nivelmas bajo para transmitir y recibir mensajes. Por lo tanto, cada computadora necesita la pilacompleta de protocolos para operar un cliente o un servidor.

    1.6Servicios mltiples en una computadora

    Una computadora bastante poderosa puede ejecutar varios clientes y servidores al mismo

    tiempo; se necesitan dos capacidades. Primero, debe tener suficientes recursos de hardwarecomo por ejemplo, procesador rpido y gran memoria, segundo, debe tener un sistemaoperativo que permita que varios programas de aplicacin se ejecuten a la vez como porejemplo Windows UNIX. En tales sistemas, se ejecuta un programa servidor y por cadaservicio ofrecido. Ejemplo, una computadora puede ejecutar un servidor de archivos y unservidor WEB. En la figura 2.2 se ilustra una forma de organizacin.

    cliente

    trans ortacin

    interred

    Interfaz de red

    servidor

    trans ortacin

    interred

    Interfaz de red

    interred

  • 7/22/2019 Implement Ac i on Client Es

    23/140

    23

    Figura 1.2 Dos servidores de una computadora, accedidos por clientes de otras doscomputadoras. El cliente 1 puede acceder al servidor 1 y el cliente 2 al servidor 2.

    En la figura 1.2 se ilustran los clientes de dos computadoras que acceden a dos servidoresde una tercera computadora. Aunque una computadora puede operar varios servidores, slonecesita una conexin fsica a la interred.

    Es til que la computadora opere varios servidores, pues de este modo varios servicioscomparten el hardware. La consolidacin de servidores en una computadora grande, claseservidor, tambin reduce la sobrecarga de la administracin del sistema, pues son menos lascomputadoras que hay que mantener. Adems la demanda ha demostrada que la demandade servidores suele ser espordica, cualquier servidor puede quedar en reposo por largosperiodos, por lo tanto, si la demanda de servicios es escasa, la consolidacin de losservidores en una sola mquina disminuye los costos sin reducir significativamente elrendimiento.

    1.7Identificacin de los servicios

    Los protocolos de transportacin ofrecen mecanismos para que los clientes especifiquen sinambigedades el servicio deseado. El mecanismo asigna a cada servicio un identificadornico y requiere que tanto el cliente como el servidor, lo utilicen. Al comenzar la ejecucinel servidor se registra con el protocolo local especificando el identificador del servicio queofrece. Cuando el cliente contacta con el servidor remoto, especifica el identificador delservicio deseado. Al hacer una solicitud el protocolo de transportacin del servidor usa elidentificador para determinar el programa servidor que manejar la solicitud. Por ejemplo,el protocolo TCP (Protocolo de Control de Transmisin), para identificar los servicios, el

    cliente 1

    trans ortacin

    interred

    Interfaz de red

    servidor 2

    trans ortacin

    interred

    Interfaz de red

    interred

    servidor 1

    trans ortacin

    interred

    Interfaz de red

    servidor 2

  • 7/22/2019 Implement Ac i on Client Es

    24/140

    24

    TCP usa enteros de 16 bits conocidos como nmeros de puerto de protocolo. El TCP asignaun nmero de puerto de protocolo nico a cada servicio. El servidor indica el nmero depuerto del servicio que ofrece y espera una comunicacin. El cliente indica el nmero deservicio deseado al transmitir una solicitud. El TCP del servidor usa el nmero de puerto deprotocolo del mensaje de entrada para determinar el servidor que debe recibir la solicitud.

    1.8 Varias copias de un servidor para un solo servicio

    Tcnicamente, se dice que los sistemas de cmputo que permiten la ejecucin simultneade varios programas de aplicacin manejan el principio de concurrencia, y que un programacon ms de un proceso se llama programa concurrente. La concurrencia es fundamental enel modelo de interaccin cliente-servidor porque un servidor concurrente sirve a variosclientes a la vez, sin que un cliente tenga que esperar la terminacin de otro.

    Para entender la importancia del servicio simultneo, podemos considerar lo que sucede siun servicio necesita bastante tiempo para satisfacer cada solicitud el nombre del archivo yel servidor le devuelve una copia. Si el cliente solicita un archivo pequeo, el servidorpuede mandarlo completo en unos cuantos milisegundos. Sin embargo, pude necesitarvarios minutos para transferir un archivo con imgenes digitalizadas de alta resolucin.

    Si un servidor de archivos maneja una solicitud a la vez, los dems clientes deben esperarmientras el servidor transfiere un archivo a cada uno. Por el contrario, un servidor dearchivos concurrente maneja varios clientes a la vez. Al llegar una solicitud, el servidorasigna la solicitud a un proceso que se ejecuta concurrentemente con los dems procesosexistentes. En esencia, cada solicitud la maneja una copia del servidor. As las solicitudesbreves son satisfechas con rapidez, sin esperar la terminacin de solicitudes mas grandes.

    1.9 Creacin de servidores dinmicos

    Casi todos los servidores concurrentes operan dinmicamente. El servidor crea un procesonuevo para cada solicitud. De hecho, el servidor esta compuesto de dos partes: una queacepta las solicitudes y crea nuevos procesos para ellas, y otra que consiste en el cdigopara manejarlas. Al iniciar un servidor concurrente, slo se ejecuta la primera parte; esdecir el proceso principal del servidor ejecuta la primera parte, que espera la llegada de unasolicitud. Al llegar, el proceso principal crea un proceso nuevo que la maneja: El procesoque maneja la solicitud ejecuta la segunda parte es decir la atiende y termina. Mientras, elproceso principal mantiene en funciones el servidor tras crear un proceso nuevo paramanejar una solicitud, el proceso principal espera la llegada de otra.

    Si N clientes usan un servicio de una computadora, hay N+1 procesos que ofrecen elservicio: el proceso principal espera solicitudes adicionales y estn interactuando Nprocesos de servicio con otros tantos clientes.

  • 7/22/2019 Implement Ac i on Client Es

    25/140

    25

    1.10 Protocolos de transportacin y comunicacin no ambigua

    Al existir varias copias de un servidor existe el problema de saber como interacta elcliente con la copia correcta. Por ello el mtodo utilizado por los protocolos de

    transportacin para identificar a los servidores, considerando que se asigna a cada servicioun nmero de identificador nico, y que las solicitudes del cliente incluyen el identificadorde servicio, lo que permite que el protocolo de transportacin de la computadora asocie lasolicitud de entrada con el servidor correcto. En la prctica, la mayor parte de losprotocolos de transportacin asigna a cada cliente un identificador nico y requiere que elcliente incluya su propio identificador al hacer una solicitud. El protocolo de transportacindel servidor usa ambas identificaciones, la del cliente y la del servidor usa ambasidentificaciones, la del cliente y la del servidor, para seleccionar la copia creada paramanejar al cliente.

    Como ejemplo, considere los identificadores de una conexin TCP. El TCP pide que cadacliente seleccione un nmero de puerto de protocolo local no asignado a otro servicio. Almandar un segmento TCP, el cliente debe poner su propio nmero de puerto de protocoloen el campo de PUERTO FUENTE y el nmero de puerto en el servidor en el campoPUERTO DESTINO. En la computadora del servidor, el TCP usa la combinacin denmeros de puerto fuente y puerto destino, as como las direcciones IP del cliente y elservidor, para identificar la comunicacin. As pueden llegar mensajes de varios clientespara el mismo servicio sin causar problemas. El TCP pasa cada segmento de entrada a lacopia del servidor que ha acordado manejar el cliente.

    1.11 Transportacin orientada a conexin y sin conexiones

    Los protocolos de transportacin manejan dos formas bsicas de comunicacin: orientada aconexin y sin conexiones. Para usar un protocolo de transportacin orientado a conexin,debe establecerse una conexin entre dos aplicaciones, que entonces transmiten datos porella. Por ejemplo, el TCP ofrece una interfaz orientada a conexin entre las aplicaciones. Alemplear TCP, una aplicacin debe solicitar primero que se establezca una conexin conotra. Una vez establecida, ambas intercambian datos. Al terminar la comunicacin, debecerrarse.

    La alternativa es una interfaz sin conexiones que permita que una aplicacin transmitamensajes a un destino en cualquier momento. Al emplear un protocolo de transportacin sinconexiones, la aplicacin transmisora debe especificar un destino en cada mensaje quetransmite. Por ejemplo, en el grupo de protocolos TCP/IP, el Protocolo de Datagrama deUsuario UDP ofrece una transportacin sin conexiones. La aplicacin que utiliza UDPpuede transmitir una secuencia de mensajes, cada uno a un destino diferente.

    Para comunicarse, los clientes y servidores empelan protocolos orientados a conexin obien sin conexiones. En el primer caso, el cliente comienza por establecer la conexin con

  • 7/22/2019 Implement Ac i on Client Es

    26/140

    26

    el servidor. La conexin subsiste mientras el cliente transmite solicitudes y reciberespuestas. Al terminar de usar el servicio, el cliente cierra la conexin.

    Los clientes y servidores que utilizan protocolos sin conexiones intercambian mensajes. Porejemplo, muchos servicios de transportacin sin conexiones necesitan que el cliente

    transmita cada solicitud como un solo mensaje y que los servidores regresen las respuestasde la misma manera.

    1.12 Servicios orientados a la conexin y no orientados a la conexin

    El servicio orientado a conexin se concibi con base en el sistema telefnico, para hablarcon alguien, se levanta el telfono, se marca el nmero, se habla y luego se cuelga. Delmismo modo, para usar un servicio de red orientado a la conexin, el usuario del servicio,primero establece una conexin, la utiliza y luego la abandona. El aspecto fundamental deuna conexin es que funciona como un tubo: el emisor empuja objetos (bits) en un extremoy el receptor los toma en el otro extremo. En la mayora de los casos se conserva el ordenpara que los bits lleguen en el orden en que se enviaron.

    En algunos casos, al establecer la conexin, el emisor, el receptor y la subred realizan unanegociacin sobre los parmetros que se van a utilizar, como el tamao mximo demensajes, la calidad del servicio solicitado y otros temas. Por lo general, un lado hace unapropuesta y el otro la acepta, la rechaza o hace una contrapropuesta.

    En contraste, el servicio no orientado a la conexin, se concibi con base en el sistemapostal. Cada mensaje (carta) lleva completa la direccin de destino y cada una se enruta atravs del sistema, independientemente de las dems. En general, cuando se envan dosmensajes al mismo destino, el primero que se enve ser el primero en llegar. Sin embargo,es posible que el que se envi primero se dilate tanto que el segundo llegue primero.

    Cada servicio se puede clasificar por la calidad del servicio. Algunos de los servicios sonconfiables en el sentido de que nunca pierden datos. Por lo general en un servicio confiableel receptor confirma la recepcin de cada mensaje para que el emisor est seguro de quelleg. Este proceso de confirmacin de recepcin introduce sobrecargas y retardos, que confrecuencia son valiosos pero a veces son indeseables.

    Una situacin tpica en la que un servicio orientado a conexin es apropiado es en latransferencia de archivos. El propietario del archivo desea estar seguro de que lleguencorrectamente todos los bits y en el mismo orden en que se enviaron. Muy pocos clientesque transfieren archivos preferiran un servicio que revuelve o pierde ocasionalmentealgunos bits, aunque fuera mucho ms rpido.

    Un servicio orientado a la conexin confiable tiene dos variantes menores: secuencias demensaje y flujo de bytes. En la primera variante se conservan los lmites del mensaje.Cuando se envan dos mensajes de 1024 bytes, llegan en dos mensajes distintos de 1024bytes, nunca en un solo mensaje de 2048 bytes. En la segunda, la conexin es simplementeun flujo de bytes, sin lmites en los mensajes. Cuando llegan los 2048 bytes al receptor, no

  • 7/22/2019 Implement Ac i on Client Es

    27/140

    27

    hay manera de saber si se enviaron como un mensaje de 2048 bytes o dos mensajes de 1024bytes o 2048 mensajes de un byte. Si se envan las pginas de un libro en mensajesseparados sobre una red a una fotocomponedora, podr ser importante que se conserven loslmites de los mensajes. Por otra parte cuando un usuario inicia sesin en un servidorremoto, todo lo que se necesita es un flujo de bytes desde la computadora del usuario al

    servidor. Los lmites del mensaje no son importantes.Como se menciono antes, para algunas aplicaciones, los retardos del trnsito ocasionadospor las confirmaciones de recepcin son inaceptables. Una de estas aplicaciones es eltrfico de voz digitalizada. Es preferible para los usuarios de telfono escuchar un poco deruido en la lnea de vez en cuando que experimentar un retardo esperando lasconfirmaciones de la recepcin.

    No todas las aplicaciones requieren conexiones, por ejemplo, conforme el uso del correoelectrnico se volvi mas comn, tambin la basura electrnica se torn mas comn. Esprobable que el emisor de correo electrnico basura no desee enfrentarse al problema deconfigurar una conexin y luego desarmarla slo para enviar un elemento. Tampoco es 100por ciento confiable enviar lo esencial, sobre todo si eso es mas costoso. Todo lo que senecesita es una forma de enviar un mensaje nico, que tenga una alta, aunque nogarantizada, probabilidad de llegar. Al servicio no orientado a la conexin no confiable, esdecir; sin confirmacin de recepcin se le conoce como servicio de datagramas, enanaloga con el servicio de telegramas, que tampoco devuelve una confirmacin derecepcin al emisor.

    En otras situaciones se desea la conveniencia de no tener que establecer una conexin paraenviar un mensaje corto, pero la confiabilidad es esencial. Para estas aplicaciones se puedeproporcionar el servicio de datagramas confirmados. Es como enviar una carta certificada ysolicitar una confirmacin de recepcin. Cuando esta regresa, el emisor esta absolutamenteseguro de que la carta se ha entregado a la parte destinada y no se ha perdido durante eltrayecto.

    Otro servicio ms es el de solicitud-respuesta. En este servicio el emisor transmite un solodatagrama que contiene una solicitud, a continuacin el servidor enva la respuesta. Elesquema de solicitud-respuesta se usa comnmente para implementar la comunicacin en elmodelo cliente-servidor: el cliente emite una solicitud y el servidor la responde. La figura1.3 resume los servicios que se acaban de exponer:

    Tipo de conexin Servicio EjemploFlujo confiable de mensajes Secuencia de pginasFlujo confiable de bytes Inicio de sesin remotoOrientado a la conexinConexin no confiable Voz digitalizadaDatagrama no confiable Correo electrnico basuraDatagrama confirmado Correo certificadoNo orientado a la conexinSolicitud-respuesta Consulta de base de datos

    Figura 1.3 Seis tipos de servicios diferentes orientado y NO orientado a la conexin

  • 7/22/2019 Implement Ac i on Client Es

    28/140

    28

    El concepto del uso de la comunicacin no confiable podra ser confuso al principio.

    Primero que nada, la comunicacin confiable en este caso, con confirmacin de recepcinpodra no estar disponible. Por ejemplo, Ethernet no proporciona comunicacin confiable.Ocasionalmente, los paquetes se pueden daar en el trnsito. En segundo lugar, los retardos

    inherentes al servicio confiable podran ser inaceptables, particularmente para aplicacionesen tiempo real como multimedia. Estas son las razones de que coexistan la comunicacinno confiable y la confiable.

    1.13 Primitivas de servicio

    Un servicio se especifica formalmente como un conjunto de primitivas (operaciones)disponibles a un proceso de usuario para que acceda al servicio, estas primitivas le indicanal servicio que desempee alguna accin o reporte sobre una accin que ha tomado unaentidad igual. Si la pila de protocolos se ubica en el sistema operativo, como suele suceder,por lo general las primitivas son llamadas al sistema. Estas llamadas provocan un salto almodo de kernel, que entonces cede el control de la mquina al sistema operativo paraenviar los paquetes necesarios.

    El conjunto de primitivas disponible depende de la naturaleza del servicio que se va aproporcionar. Las primitivas de servicio orientado a conexin son diferentes de las delservicio no orientado a conexin. Como ejemplo mnimo de las primitivas para servicio quese podran proporcionar para implementar un flujo de bytes confiable en un ambientecliente-servidor, vase las primitivas listadas en la figura 1.4

    Primitiva SignificadoLISTEN Bloquea en espera de una conexin entranteCONNECT Establece una conexin con el igual en esperaRECEIVE Bloquea en espera de un mensaje entranteSEND Enva un mensaje al igualDISCONNECT Da por terminada una conexin

    Figura 1.4 Cinco primitivas de servicio para la implementacin de unservicio simple orientado a conexin.

    Estas primitivas se podrn usar como sigue. En primer lugar, el servidor ejecuta LISTENpara indicar que esta preparado para aceptar las conexiones entrantes. Una manera de

    implementar LISTEN es hacer que bloquee la llamada al sistema. Despus de ejecutar laprimitiva, el proceso del servidor se bloquea hasta que aparece una solicitud de conexin.

    A continuacin, el proceso de cliente ejecuta CONNECT para establecer una conexin conel servidor. La llamada CONNECT necesita especificar a quin conecta con quin, as quepodra tener un parmetro que diera la direccin del servidor. El sistema operativo, engeneral, enva un paquete igual solicitndole que se conecte como se muestra en el paso 1de la figura 1.5. El proceso del cliente se suspende hasta que haya una respuesta. Cuando el

  • 7/22/2019 Implement Ac i on Client Es

    29/140

    29

    paquete llega al servidor es procesado ah por el sistema operativo. Cuando el sistema veque el paquete es una solicitud de conexin, verifica si hay un escuchador. En ese caso hacedos cosas: desbloquea al escuchador y enva de vuelta una confirmacin de recepcin, paso2. La llegada de esta confirmacin libera entonces al cliente. En este punto tanto el clientecomo el servidor estn en ejecucin y tiene establecida una conexin. Es importante sealar

    que la confirmacin de recepcin 2 es generada por el cdigo del protocolo mismo, no enrespuesta a una primitiva al nivel de usuario. Si llega una solicitud de conexin y no hay unescuchador, el resultado es indefinido. En algunos sistemas el paquete podra estar puestoen cola durante un breve tiempo de espera de un LISTEN.

    Figura 1.5 Paquetes enviados en una interaccin simple cliente-servidorsobre una red orientada a la conexin.

    El paso siguiente es que el servidor ejecute RECEIVE para prepararse para aceptar laprimera solicitud. Normalmente, el servidor hace esto de inmediato en cuanto esta libre deLISTEN, antes de que la confirmacin de recepcin pueda volver al cliente. La llamadaRECEIVE bloquea al servidor.

    Entonces el cliente ejecuta SEND para transmitir sus solicitudes paso 3, seguidas de la

    ejecucin de RECEIVE para obtener las respuesta.La llegada del paquete de solicitud a la mquina servidor desbloquea el proceso delservidor para que pueda procesar la solicitud. Una vez hecho su trabajo, utiliza SEND paradevolver las respuestas al cliente, paso 4. La llegada de este paquete desbloquea al cliente,que ahora puede revisar la respuesta. Si el cliente tiene solicitudes adicionales las puedehacer ahora. Si ha terminado puede utilizar DISCONNECT para finalizar la conexin. Porlo comn un DISCONNECT inicial es una llamada de bloqueo, que suspende al cliente yenva un paquete al servidor en el cual le indica que ya no es necesaria la conexin, paso 5.

    Llamadas desistema

    KernelControladores

    Pilade

    protocolos

    Proceso delservidor

    KernelControladores

    Pilade

    protocolos

    Mquina cliente Mquina servidor

    1

    2

    3

    4

    5

    6

    1 Solicitud de conexin 2 ACK3 Solicitud de datos 4 Respuesta3 Desconecta 6 Desconecta

    Procesodelcliente

    Sistemaoperativo

  • 7/22/2019 Implement Ac i on Client Es

    30/140

    30

    Cuando el servidor recibe el paquete tambin emite un DISCONNECT, enviando laconfirmacin de recepcin al cliente y terminando la conexin. Cuando el paquete delservidor, paso 6, llega a la mquina cliente, el proceso del cliente se libera y finaliza laconexin. Y as es el modo en que funciona la comunicacin orientada a la conexin.

    Lo anterior no del todo tan sencillo, hay muchas cosas que pueden fallar. La temporizacinpuede estar mal por ejemplo, CONNECT se hace antes del LISTEN, se pueden perderpaquetes, etc.

    1.14 Servicio asequible por medio de varios protocolos

    Los servicios no necesitan elegir entre transportacin sin conexiones y orientada aconexin; es posible usar ambas. Esto quiere decir que el mismo servicio puede estardisponible en varios protocolos de transportacin aumenta la flexibilidad puesto que hacedisponible el servicio a clientes que tal vez no tengan acceso a uno de los dos protocolos detransportacin.

    Existen dos posibles implantaciones de un servidor multiprotocolo. La primera es directa:existen dos servidores para el mismo servicio. Uno se vale de la transportacin sinconexiones y el otro de la transportacin orientada a conexin. La segunda es mscomplicada: un solo programa servidor interacta a la vez con varios protocolos detransportacin. El servidor acepta solicitudes de cualquiera de ellos y usa el protocolo en elque llegan para transmitir sus respuestas.

    1.15 Interacciones cliente-servidor complejas

    Parte de la funcionalidad mas interesante y til del cmputo cliente-servidor se deriva delas interacciones arbitrarias entre clientes y servidores. En particular se nota:

    Una aplicacin cliente no esta restringida a acceder a un solo servidor para un servicio. Unaaplicacin puede ser primero cliente de un servicio y luego de otro. El cliente contacta conotro servidor, tal vez de otra computadora, para cada servicio.

    Una aplicacin cliente no esta restringida a acceder un solo servidor para cada serviciodado. En algunos servicios, cada servidor ofrece informacin diferente a la de otrosservidores de otras computadoras. Por ejemplo, un servidor calendario puede dar la hora yfecha de la computadora en que se ejecuta. Un servidor de una computadora de otro husohorario da una respuesta diferente. En otros servicios, todos los servidores dan la mismainformacin. En tales casos, el cliente puede mandar una solicitud a varios servidores paramejorar el desempeo, el cliente usa la informacin del servidor que responde primero.

    No se evita que una aplicacin servidora lleve a cabo ms interacciones cliente-servidor, elservidor de un servicio puede ser cliente de otro. Por ejemplo, un servidor de archivos quenecesita registrar la hora a la que se accedi a un archivo puede ser el cliente de un servidorhorario. Es decir, al manejar una solicitud por un archivo, el servidor de archivos transmite

  • 7/22/2019 Implement Ac i on Client Es

    31/140

    31

    una solicitud al servidor horario, espera una respuesta y contina manejando la solicitud dearchivo.

    1.16 Interacciones y dependencias circulares

    Se deben planear con mucho cuidado los servidores para evitar dependencias circulares,para evitar el surgimiento de varios problemas como por ejemplo, un servidor de archivosque utiliza un servidor horario para obtener la hora actual al acceder a un archivo. Puederesultar una dependencia circular, si el servidor horario tambin utiliza al servidor dearchivos. Por ejemplo si se pide a un programador que modifique el servidor horario paraque lleve un registro de cada solicitud. Si el programador decide que este servidor se vuelvacliente del servidor horario que, a su vez, es cliente del servidor de archivos, puede resultarun ciclo; el servidor de archivos, se vuelve cliente del servidor horario, que, a su vez escliente del servidor de archivos, etc.

    Aunque las dependencias entre pares de servidores son fciles de detectar y evitar, un grupode dependencias ms grande tal vez no sea tan obvio. Imagine un ciclo de dependencias quecomprenda una docena de servidores, operando cada uno en una computadoraindependiente. Si un programador diferente mantiene cada servidor, puede ser difcilidentificar las dependencias.

    1.17 Servicios proporcionados por mltiples servidores.

    Los servicios pueden implementarse como distintos procesos de servidor en computadorasseparadas interaccionando, cuando es necesario, para proporcionar un servicio a los

    procesos clientes. Los servidores pueden dividir el conjunto de objetos en los que estbasado el servicio y distriburselos entre ellos mismos, o pueden mantener copias replicadasde ellos en varias mquinas. Figura 1.6.

    El Web proporciona un ejemplo tpico de paricin de datos en el que cada servidor Webadministra su propio conjunto de recursos. Un usuario puede emplear un navegador paraacceder al recurso en cualquiera de los servidores.

    La replicacin se utiliza para aumentar las prestaciones y disponibilidad y para mejorar latolerancia a fallos. Proporciona mltiples copias consistentes de datos en proceso que seejecutan en diferentes computadoras figura 1.7. Por ejemplo, el servicio Webproporcionado por altavista.digital.com se encuentra redirigido hacia varios servidores conla base de datos replicada en memoria.

    Otro ejemplo de un servicio basado en datos replicados es el servicio de Informacin deRed de Sun (NIS, Network Information Service), que se utilizara en una red de rea local(LAN) cuando los usuarios entran en el sistema. Cada servidor NIS tiene su propia rplicadel archivo de contrasea que contiene una lista de los nombres de usuarios y las claves deacceso con criptografa.

  • 7/22/2019 Implement Ac i on Client Es

    32/140

    32

    Figura 1.6 Clientes que invocan a servidores individuales.

    Figura 1.7 Un servicio proporcionado por mltiples servidores

    1.18 Servidores Proxy y cach.

    Una cach es un almacn de objetos de datos utilizados recientemente, y que se encuentranms prximos que los objetos en s. Al recibir un objeto nuevo en una computadora seaade al almacn de la cach, reemplazando, si fuera necesario, algunos objetos existentes.Cuando se necesita un objeto de una copia actualizada. Si no, se buscar una copiaactualizada. La cach pueden estar ubicadas en cada cliente o en un servidor Proxy quepuede compartirse desde varios clientes.

    Cliente

    Cliente

    Servidor

    Servidor

    Invocacin

    Resultado

    Invocacin

    Resultado

    Computadora

    Proceso

    Cliente

    Cliente

    Servidor

    Servidor

    Servidor

    Servicio

  • 7/22/2019 Implement Ac i on Client Es

    33/140

    33

    La cach se utilizan intensivamente en la prctica. Los navegadores Web mantiene unacach de las pginas visitadas recientemente, y de otros recursos Web, en el sistema localde archivos del cliente; entonces utilizan una peticin especial http para comprobar si dichapginas han sido actualizadas en el servidor antes de sacarlas en pantalla.

    Los servidores Proxy para el Web proporcionan una cach compartida de recursos Web alas mquinas cliente de uno o ms sitios. El propsito de los servidores Proxy esincrementar la disponibilidad y prestaciones del servicio, reduciendo la carga en redes derea amplia y en servicio Web. Los servidores Proxy pueden desempear otros roles. Porejemplo, pueden ser utilizados para acceder a servidores Web remotos a travs de uncortafuego. Figura 1.8.

    Figura 1.8 Un servidor Proxy de tipo WEB.

    1.19 Procesos de igual a igual

    En esta arquitectura todos los procesos desempean tareas semejantes, interactuandocooperativamente como iguales para realizar una actividad distribuida o cmputo sin

    distincin entre cliente y servidores. En este modelo, el cdigo en los procesos parejos oiguales mantiene la consistencia de los recursos y sincroniza las acciones a nivel de laaplicacin cuando es necesario. Un ejemplo con tres instancias de estas situaciones; nprocesos parejos podrn interactuar entre ellos, dependiendo el patrn de comunicacin delos requisitos de la aplicacin. Figura 1.9.

    Cliente

    Cliente

    Servidorproxy

    Servidorweb

    Servidorweb

  • 7/22/2019 Implement Ac i on Client Es

    34/140

    34

    Figura 1.9 Una aplicacin distribuida basada en procesos de igual a igual.

    1.20 Variaciones en el modelo cliente servidor.

    Pedemos distinguir distintas variaciones del modelo cliente servidor, dependiendo de laconsideracin de los factores siguientes:

    El uso de cdigo mvil y agentes mviles.

    Las necesidades de los usuarios de computadoras de coste bajo y con recursoshardware limitados, que son muy sencillos de manejar.

    El requisito de aadir o eliminar de una forma conveniente dispositivos mviles.

    1.21 Cdigo mvil.

    Los applets1son el ejemplo ms conocido y ms ampliamente extendido de cdigo mvil;

    un usuario que ejecute un navegador y que seleccione un enlace con un applet, cuyo cdigoest almacenado en un servidor Web, descargar el cdigo en el navegador y se ejecutarall, Una ventaja de ejecutar el cdigo descargado localmente es que puede proporcionaruna buena respuesta interactiva puesto que no sufre ni de los retardos ni de la variabilidaddel ancho de banda asociados con la comunicacin en la red.

    1George Couloris y otros 2001 George Colouris, jean Dollimore, Tim Kindberg.(2001) SistemasDistibuidos Conceptos y Diseo. Pp 34-35.

    Aplicacin

    Cdigo decoordinacin

    Aplicacin

    Cdigo decoordinacin

    Aplicacin

    Cdigo decoordinacin

  • 7/22/2019 Implement Ac i on Client Es

    35/140

    35

    Acceder a los servicios significa ejecutar cdigo que pueda invocar sus operaciones.Algunos servicios estn probablemente tan estandarizados que podemos acceder a ellosmediante una aplicacin existente y bien conocida, el Web es el ejemplo ms comn, peroincluso en este caso, algunos sitios Web utilizan funcionalidades que no se encuentran enlos navegadores estndar y precisan la descarga de cdigo adicional. Este cdigo adicional

    puede. Por ejemplo, comunicar con el servidor. Consideremos una aplicacin donde senecesita que los usuarios dispongan de informacin actualizada segn se hagan cambios enel origen de los datos en el servidor. Esto no se puede conseguir mediante las interaccionesnormales con el servidor Web, que siempre se inician por conseguir mediante lasinteracciones con el servidor Web, que siempre se inicia por parte del cliente. La solucines utilizar software adicional que trabaja de una forma a la que a veces se refiere comomodelo push, donde el servidor, en lugar del cliente, es el que inicia las interacciones.

    Por ejemplo, un corredor de bolsa puede proporcionar un servicio personalizado paranotificar a los usuarios los cambios en las cotizaciones; para utilizar dichos servicio, cadausuario debiera haber descargado un applet especial, que recibe las actualizaciones delservidor del corredor, las presenta en pantalla al usuario y quiz realiza operacionesautomticas de compra y venta, desencadenadas por las condiciones prefijadas por elusuario y almacenados localmente en la computadora del mismo.

    1.22 Agentes mviles

    Un agente mvil es un programa en ejecucin2(lo incluye tanto cdigo como datos) que setraslada de una computadora a otra en la red realizando una tarea para alguien; porejemplo, recolectando informacin, y retornando eventualmente con los resultados. Unagente mvil puede hacer muchas solicitudes a los recursos locales de los sitios que visita,por ejemplo, accediendo a anotaciones individuales en una base de datos. Si se comparaesta arquitectura con un cliente esttico que realiza solicitudes de algunos recursos,transfiriendo posiblemente grandes cantidades de datos, hay una reduccin en el coste de lacomunicacin y en el tiempo con la sustitucin de las solicitudes remotas por las locales.

    Se puede utilizar agentes mviles para instalar y mantener software en las computadoras deuna organizacin, o comparar los precios de los productos de un nmero de vendedoresvisitando el sitio de cada vendedor y realizando una serie de operaciones sobre la base dedatos. Un ejemplo inicial, con una idea similar, es el llamado programa gusano (Word)desarrollado en Xerox PARC, y que se diseo para utilizar las computadoras desocupadascon el fin de realizan clculos intensivos2.

    Los agentes mviles (como el cdigo mvil) son una amenaza potencial de seguridad paralos recursos de las computadoras que visitan. El entorno que recibe el agente mvil debedecidir a cul de los recursos locales le estar permitido tener acceso, en base a la dobleidentidad de ste debe incluir de una forma segura en el cdigo y los datos del agente

    2George Couloris y otros 2001 George Colouris, jean Dollimore, Tim Kindberg.(2001) SistemasDistibuidos Conceptos y Diseo. Pp 35-36.

  • 7/22/2019 Implement Ac i on Client Es

    36/140

    36

    mvil. Adems, los agentes mviles tambin pueden ser vulnerables, y pueden no sercapaces de finalizar su tarea si se les niega el acceso a la informacin que necesitan. Lastareas realizadas por agentes mviles pueden realizarse por otros medios. Por ejemplo, Losescaladores (crawlers) Web que necesitan acceder a recursos en servidores Web a travs deInternet trabajan bastante bien realizando invocaciones remotas a los procesos del servidor.

    Por esta razones. La aplicabilidad de agentes mviles puede ser limitada

    3

    .

    1.23 Computadoras de red.

    Las aplicaciones se ejecutan en una computadora de oficina local del usuario. El sistemaoperativo y el software de aplicacin para computadoras de oficina necesitan normalmenteque gran parte del cdigo y datos activos estn ubicados en un disco local. Pero la gestinde los archivos de aplicacin y el mantenimiento del software de base local precisa unesfuerzo tcnico considerable y de una naturaleza que la mayora de los usuarios no estncualificados para proporcionarlo.

    La computadora de red es una respuesta a este problema. Descargar su sistema operativo ycualquier aplicacin software que necesite el usuario desde un servidor de archivosremotos. Las aplicaciones se lanzan localmente pero los archivos se gestionan desde unservidor de archivos remoto. Tambin pueden ejecutarse aplicaciones en red, como unnavegador Web. Como todos los datos y el cdigo de las aplicaciones estn almacenados enun servidor de archivos, los usuarios pueden migrar de una computadora de red a otra. Lascapacidades de procesador y de memoria de una computadora de red pueden restringirsecon el fin de reducir el costo.

    Si se incluyera un disco, alojara un software mnimo3. El resto del disco se utilizara como

    almacenamiento intermedio (cach) manteniendo copias de los archivos de programas ydatos que hayan sido cargados recientemente desde los servidores. El mantenimiento de lacach no precisa esfuerzo manual alguno: los objetos de la cach se invalidan cuando seescribe una nueva versin del archivo en el servidor relevante.

    1.24 Clientes ligeros.

    El trmino cliente ligero se refiere a una capa de aplicacin que soporta una interfaz deusuario basada en ventanas sobre una computadora local del usuario mientras se ejecutanprogramas de aplicacin en una computadora remota3. Esta arquitectura tienen los mismos

    costos bajos de gestin y hardware que en el esquema de computadoras de red, pero enlugar de descargar el cdigo de las aplicaciones en la computadora del usuario, se ejecutaen un servidor de cmputo, un potente computador que tiene capacidad para ejecutar grannmero de aplicaciones simultneamente. El servidor de cmputo ser normalmente un

    3George Couloris y otros 2001 George Colouris, jean Dollimore, Tim Kindberg.(2001) SistemasDistibuidos Conceptos y Diseo. Pp 36-37.

  • 7/22/2019 Implement Ac i on Client Es

    37/140

    37

    multiprocesador o un sistema de computadores fuertemente acoplado (cluster), y queejecuta una versin multiprocesador de un sistema operativo como UNIX o Windows NT.

    El principal inconveniente de una arquitectura de cliente ligeros se encuentra en actividadesgrficas fuertemente interactivas, como CAD o procesos de imagen, en las que los retrasos

    experimentados por los usuarios se ven aumentados por la necesidad de transferir imgenese informacin vectorial entre el cliente ligero y los procesos de aplicacin, padeciendolatencias tanto de red como de sistemas operativos4. Figura 1.10

    Figura 1.10 Clientes ligeros y servidores de clculo

    1.25 Implementacin de clientes Ligeros

    Los sistemas de clientes ligeros son sencillos en concepto y sus implementaciones soninmediatas en algunos entornos. El producto WinFrame de Citrix, es una implementacincomercial del concepto de cliente ligero, utilizada ampliamente, que funciona de una formasimilar. Este producto proporcion