Вы находитесь на странице: 1из 19

ITSPE

Instituto Tecnolgico Superior De Perote

Programacin en Ambiente Cliente Servidor

Investigacin

Ingeniera En Informtica

Samuel Martnez Ramos

Alumno: Ren Ramn Guerrero Roldan 1005S044 SABATINO

ITSPE

Sistemas distribuidos La computacin distribuida se define como una coleccin de computadoras que poseen sus propios componentes de hardware y de sistemas de transmisin de mensajes pero que operan bajo un solo punto de vista lgico, resolviendo as tareas de forma que ante los usuarios pareciera una sola mquina. De esta manera se pueden resolver problemas de cmputo que son muy grandes para un equipo si ste se divide en pequeos problemas que utilizan recursos remotos de manera coordinada con los propios recursos del equipo, a travs de protocolos de comunicacin establecidos en un esquema cliente-servidor. Para lograr esto es necesaria la utilizacin de sistemas operativos adecuados, que permitan contribuir con los elementos cooperativos de procesamiento al mismo tiempo que mantienen su capacidad de procesamiento de tareas locales. Desde el punto de vista del usuario, el sistema operativo distribuido se comporta igual que uno convencional pero la administracin de recursos es variable y de forma adaptativa. Principales caractersticas del sistema operativo El sistema operativo destinado a la operacin de un sistema distribuido presenta las siguientes caractersticas: Es un sistema operativo de nivel amplio: El uso de componentes es independiente del tipo y localidad donde sean empleados. Implementa control distribuido de acuerdo al principio de autonoma cooperativa: todos los elementos involucrados tienen igual oportunidad de tomar decisiones de un momento dado. Estos procesos de decisin autnomos cooperativos exhiben una mayor complejidad que aquellos basados en decisiones jerrquicas. Provee componentes abstractos del sistema y en muchos casos est basado en ellos: el sistema distribuido est desarrollado a partir de controladores especiales para la mquina y posee una interface cercana al hardware que soporta las operaciones del sistema pero sigue estando representado de forma coherente y lgica para el usuario. Carece de reloj global: Las coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realizacin de una tarea, no tienen una temporizacin general, est ms bien distribuida a los componentes.
|

ITSPE

Comunicacin interprocesos: Esto implica el uso de protocolos de transporte para establecer el enlace entre procesos sobre la red de conexin de los componentes. Administracin y asignacin de recursos: Contempla la asignacin de recursos a usuarios, toma de decisin de en dnde debern ser ejecutadas las peticiones, creacin e instalacin de nuevos recursos en la red, soporte de replicacin para procesos crticos, mecanismos de control de concurrencia y sincronizacin. Administracin de nombres: Asignacin y mantenimiento de los nombres de los recursos, localizacin de servidores/usuarios, mantenimiento de directorios, etc. Reinicio luego de fallas: para ello implementa varias capas de operacin a nivel de arquitectura de sistema. Funciones de proteccin: especificacin de derechos mecanismos de autentificacin, polticas de acceso, etc. de acceso,

De esta manera se asegura que el sistema distribuido proveer al usuario Ayuda para la solucin de problemas Minimizacin del costo de acceso a los recursos tantos locales como compartidos Maximizacin y simplificacin de las facilidades de comunicacin con otros usuarios o programas.

Modelos de computacin distribuida Existen distintos modelos de sistemas distribuidos que es pueden clasificar en la siguientes categoras. Modelo de minicomputadora: Consiste de varias minicomputadoras conectadas por una red de comunicacin. Cada minicomputadora tiene su propio grupo de usuarios, los que pueden tener acceso a los recursos de otros a travs de la red de datos.
|

ITSPE

Modelo de Workstation: Consiste en varias estaciones de trabajo interconectadas en red. Cada usuario debe darse de alta desde su computadora home antes de poder enviar trabajos para ejecucin. Cada Workstation tiene su propio disco duro y sistema de archivos. Si el sistema determina que la estacin del usuario no posee la suficiente capacidad de procesamiento, transfiere el trabajo de forma automtica hacia el equipo que tiene menor actividad en ese momento. La desventaja de este modelo es el desperdicio de procesamiento si uno o ms equipos no estn haciendo uso de su CPU. Modelo de Workstation-Server: consiste en varias Workstation y minicomputadoras interconectadas en red. Existe la potencialidad de tener estaciones sin disco, el sistema de archivos puede ser el de una computadora completa o alguno compartido de las distintas minicomputadoras conectadas. Se pueden utilizar otras microcomputadoras para proveer otros tipos de servicios, como base de datos, impresiones, etc. Estas mquinas se conocen comnmente como servidores. Por lo general se distribuyen los recursos en varios servidores lo que aumenta la confiabilidad y la rapidez en caso de fallas. Modelo de pool de procesadores: este modelo dispone de un conjunto de servidores que son compartidos y asignados conforme a la demanda. Cada procesador en el pool tiene su propia memoria y ejecuta un programa de sistema o de aplicacin que le permite participar del cmputo distribuido. Este modelo no soporta conexin de estaciones directamente a los procesadores, si no solo por medio de la red de interconexiones. Las terminales pueden ser estaciones sin disco o terminales grficos. La administracin y asignacin de recursos es hecha por un servidor dedicado llamado de ejecucin y no existe el concepto de computadora home, por lo que el usuario no se da de alta en alguna maquina en particular. Modelo hbrido: Combina las mejores caractersticas de Workstation y Pool. Esto se logra agregando a la red de estaciones de trabajo un pool de procesadores que pueden ser asignados dinmicamente dependiendo del uso que se necesite en el momento. Su desventaja es que es muy costoso de implementar. Modelo de computacin en grid: En la computacin de malla o grid, todos los recursos de un nmero indeterminado de computadoras son englobados para ser tratados como un nico superordenador de manera transparente. De esta manera un equipo conectado en red (como el internet por ejemplo) puede ceder parte o todo su procesamiento para una tarea nica.

ITSPE

Requisitos del diseo A la hora de disear un sistema distribuido, independiente del sistema operativo sobre el que se sustenta, se deben cumplir ciertos requisitos de diseo analizados a continuacin. Transparencia El ambiente operativo distribuido debe volver invisibles (transparentes) a todas las mquinas que lo integran y con las cuales trabajan las personas. Se definen Transparencia de acceso (poder usar los recursos del sistema independientemente de su localizacin), Transparencia de localizacin (los recursos tienen nombres consistentes, y pueden usarse desde cualquier sitio que est el usuario), Transparencia de replicacin (las rplicas de procesos y recursos se crean y administran en forma automtica) y Transparencia a fallas (las fallas en componentes deben ser resueltas con componentes de respaldo, automticamente). Confiabilidad Un sistema distribuido debe tener mayor confiabilidad que uno centralizado, debido a la presencia de mltiples componentes que funcionan como respaldo. Debe considerar conceptos como la eliminacin de fallas (usando componentes individuales de alta confiabilidad), tolerancia a fallas (duplicando los recursos por medio de tcnicas de redundancia), y la recuperacin de fallas (determinando la existencia de fallas y aplicando diversas tcnicas para resolverlas). Flexibilidad Un sistema distribuido debe tener flexibilidad de modificacin (intentar resolver los problemas de reemplazo o modificacin de componentes debido a errores) y flexibilidad de expansin (facilidad de aadir nueva funcionalidad al ambiente operativo). Escalabilidad Es la capacidad del sistema para adaptarse a una demanda incrementada de servicio. Esto se logra evitando entidades centralizadas (el paralelismo siempre mejora el rendimiento en un sistema distribuido), evitando algoritmos centralizados (para tener datos ms disponibles y reducir contienda por recursos centralizados) y ejecutando la mayora de las operaciones en las estaciones clientes (a fin de no tener tiempo gastado de CPU).
|

ITSPE

Sistemas que soportan cmputo distribuido Sistemas operativos de procesamiento distribuido: BProc, DragonFly BSD, Genesis, Kerrighed, Mosix/OpenMosix, OpenSSI, Plurix, entre otros. Computacin en GRID: proyecto SETI@Home, en el cual trabajan computadoras alrededor de todo el planeta para buscar vida extraterrestre. Qu es RMI? El mecanismo RMI (Remote Method Invocation) permite que una aplicacin o applet se comunique con objetos que residen en programas que se ejecutan en mquinas remotas. En esencia, en lugar de crear un objeto, el programador liga el objeto remoto con un representante local, conocido como stub. Los mensajes dirigidos al objeto remoto se envan al stub local, como si fuera el objeto real. El stub acepta los mensajes que se le enven, y a su vez, los enva al objeto remoto, el cual invoca sus mtodos apropiados. El resultado de la invocacin de los mtodos en el objeto remoto se enva de regreso al stub local, que los remite al emisor original de la llamada. Aparte de ligar el stub con el objeto remoto, el cdigo escrito por el programador para comunicar con el objeto remoto es igual al cdigo que se utilizara si el objeto se encontrara en una aplicacin o applet local. RMI se caracteriza por la facilidad de su uso en la programacin por estar especficamente diseado para Java; proporciona paso de objetos por referencia (no permitido por SOAP), recoleccin de basura distribuida (Garbage Collector distribuido) y paso de tipos arbitrarios (funcionalidad no provista por CORBA). A travs de RMI, un programa Java puede exportar un objeto, con lo que dicho objeto estar accesible a travs de la red y el programa permanece a la espera de peticiones en un puerto TCP. A partir de ese momento, un cliente puede conectarse e invocar los mtodos proporcionados por el objeto. La invocacin se compone de los siguientes pasos: Encapsulado (marshalling) de los parmetros (utilizando la funcionalidad de serializacin de Java). Invocacin del mtodo (del cliente sobre el servidor). El invocador se queda esperando una respuesta. Al terminar la ejecucin, el servidor serializa el valor de retorno (si lo hay) y lo enva al cliente.
|

ITSPE

El cdigo cliente recibe la respuesta y contina como si la invocacin hubiera sido local.

La arquitectura RMI puede verse como un modelo de cuatro capas. Primera capa La primera capa es la de aplicacin y se corresponde con la implementacin real de las aplicaciones cliente y servidor. Aqu tienen lugar las llamadas a alto nivel para acceder y exportar objetos remotos. Cualquier aplicacin que quiera que sus mtodos estn disponibles para su acceso por clientes remotos debe declarar dichos mtodos en una interfaz que extienda java.rmi.Remote. Dicha interfaz se usa bsicamente para "marcar" un objeto como remotamente accesible. Una vez que los mtodos han sido implementados, el objeto debe ser exportado. Esto puede hacerse de forma implcita si el objeto extiende la clase UnicastRemoteObject (paquete java.rmi.server), o puede hacerse de forma explcita con una llamada al mtodo exportObject() del mismo paquete. Segunda capa La capa 2 es la capa proxy, o capa stub-skeleton. Esta capa es la que interacta directamente con la capa de aplicacin. Todas las llamadas a objetos remotos y acciones junto con sus parmetros y retorno de objetos tienen lugar en esta capa. Tercera capa La capa 3 es la de referencia remota, y es responsable del manejo de la parte semntica de las invocaciones remotas. Tambin es responsable de la gestin de la replicacin de objetos y realizacin de tareas especficas de la implementacin con los objetos remotos, como el establecimiento de las persistencias semnticas y estrategias adecuadas para la recuperacin de conexiones perdidas. En esta capa se espera una conexin de tipo stream (stream-oriented connection) desde la capa de transporte. Cuarta Capa La capa 4 es la de transporte. Es la responsable de realizar las conexiones necesarias y manejo del transporte de los datos de una mquina a otra. El protocolo de transporte subyacente para RMI es JRMP (Java Remote Method Protocol), que solamente es "comprendido" por programas Java.

ITSPE

Elementos Toda aplicacin RMI normalmente se descompone en 2 partes: Un servidor, que crea algunos objetos remotos, crea referencias para hacerlos accesibles, y espera a que el cliente los invoque. Un cliente, que obtiene una referencia a objetos remotos en el servidor, y los invoca.

Com/Dcom Tecnologa Microsoft COM (Component Object Model) en el Windows de la familia de sistemas operativos de Microsoft permite a los componentes de software para comunicarse. COM es utilizado por los desarrolladores para crear componentes de software reutilizables, los componentes se unen para crear aplicaciones, y tomar ventaja de los servicios de Windows. Los objetos COM pueden ser creados con una variedad de lenguajes de programacin. Lenguajes orientados a objetos, como C + +, proporcionar mecanismos de programacin que facilitan la ejecucin de objetos COM. La familia de tecnologas COM incluye COM +, COM distribuido (DCOM) y controles ActiveX . Microsoft proporciona interfaces COM para muchas interfaces de programacin de aplicaciones de Windows, como Direct Show, Fundacin de Medios, API Packaging, Windows Animation Manager, dispositivos porttiles de Windows y Microsoft Active Directory (AD). COM se utiliza en aplicaciones tales como la familia de productos Microsoft Office. Por ejemplo, la tecnologa OLE COM permite que los documentos de Word para vincular dinmicamente los datos en hojas de clculo Excel y COM Automation permite a los usuarios crear scripts en sus aplicaciones para realizar tareas repetitivas o controlar una aplicacin de otro. Distributed Component Object Model (DCOM), en espaol Modelo de Objetos de Componentes Distribuidos, es una tecnologa propietaria de Microsoft para desarrollar componentes software distribuidos sobre varios ordenadores y que se comunican entre s. Extiende el modelo COM de Microsoft y proporciona el sustrato de comunicacin entre la infraestructura del servidor de aplicaciones COM+ de Microsoft. Ha sido abandonada en favor del framework .NET.1 2 La adicin de la "D" a COM fue debido al uso extensivo de DCE/RPC, o ms especficamente la versin mejorada de Microsoft, conocida como MSRPC. En trminos de las extensiones que aade a COM, DCOM tena que resolver los problemas de

ITSPE

Aplanamiento - Serializar y deserializar los argumentos y valores de retorno de las llamadas a los mtodos "sobre el cable". Recoleccin de basura distribuida, asegurndose que las referencias mantenidas por clientes de las interfaces sean liberadas cuando, por ejemplo, el proceso cliente ha cado o la conexin de red se pierde. Uno de los factores clave para resolver estos problemas es el uso de DCE/RPC como el mecanismo RPC subyacente bajo DCOM. DCE/RPC define reglas estrictas en cuanto al aplanamiento y a quin es responsable de liberar la memoria. DCOM fue uno de los mayores competidores de CORBA. Los defensores de ambas tecnologas sostenan que algn da seran el modelo de cdigo y servicios sobre Internet. Sin embargo, las dificultades que supona conseguir que estas tecnologas funcionasen a travs de cortafuegos y sobre mquinas inseguras o desconocidas, signific que las peticiones HTTP normales, combinadas con los navegadores web les ganasen la partida. Microsoft, en su momento intent y fracas anticiparse a esto aadiendo un transporte extra HTTP a DCE/RPC denominado "ncacn_http" (Connection-based, over HTTP).

Versiones alternativas e implementaciones El Open Group tiene una implementacin DCOM llamada COMsource, cuyo cdigo fuente est disponible, as como la documentacin completa, suficiente para su uso y suficiente tambin para implementar una versin interoperable de DCOM. De acuerdo con la documentacin, COMsource viene directamente del cdigo fuente de Windows NT 4.0, e incluso incluye el cdigo fuente de un Servicio de Registro de Windows NT. El equipo de Wine tambin est implementando DCOM. Lo hacen para conseguir la interoperabilidad binaria, y no estn interesados en la parte de distribucin sobre la red de DCOM, que es proporcionada por MSRPC. Si bien se centran en implementar representacin de datos en red a travs de los APIs de Microsoft, dicha implementacin tratar de ser tan compatible como sea posible con MSRPC.

ITSPE

AMOEBA Es un sistema operativo de propsito general. Est diseado para tomar un conjunto de mquinas y hacerlas funcionar como un solo sistema integrado. Los usuarios no se dan cuenta del nmero y localizacin de procesadores que corren sus comandos. Est propuesto para ambos: Computacin distribuida: mltiples usuarios independientes trabajan en diferentes proyectos. Computacin paralela: un usuario usando 50 CPUs juega ajedrez en paralelo.

Objetivos del diseo Las metas bsicas del diseo fueron: Distribucin: conectar juntas muchas mquinas. Paralelismo: permitir a trabajos individuales usar mltiples CPUs fcilmente. Transparencia: tener una coleccin de computadores actuando como un solo sistema. Rendimiento : archivar todo de una manera eficiente

Arquitectura del sistema Un tpico sistema Amoeba consistir de tres clases funcionales de mquinas. Primero cada usuario tiene su estacin de trabajo para correr la interface de usuario, el sistema X window. Esta estacin de trabajo puede ser de ingeniera, o una terminal especializada X. Segundo existe un conjunto de procesadores que son dinmicamente asignados a usuarios, como son requeridos. Estos procesadores pueden ser parte de un multiprocesador o multicomputador, ser una coleccin de computadores de una sola tarjeta o un grupo de estaciones de trabajo asignados para este propsito.

ITSPE

Tercero, hay servidores especializados como son servidores de archivo y de directorio que corren todo el tiempo. Ellos pueden correr en un procesador del conjunto de procesadores, o en hardware dedicado, o como se desee. Conceptos fundamentales en amoeba Microkernel + arquitectura de Servidor. Fue diseado con arquitectura microkernel. Esto significa que cada mquina en un sistema Amoeba corre una pequea, e idntica pieza de software llamada el Kernel. El kernel soporta procesos bsicos, comunicacin y objetos primitivos. Tambin manipula dispositivos de I/O y administracin de memoria. As el sistema est estructurado como una coleccin de procesos independientes. Algunos de estos son procesos de usuario corriendo aplicaciones de programa. Los procesos son llamados clientes y otros servidores. La funcin bsica del microkernel es proveer un ambiente en el cual clientes y servidores puedan correr y comunicarse unos con otros. Threads (hilos) En muchos sistemas operativos tradicionales un proceso consiste de un espacio de direcciones y de un solo hilo de control. En Amoeba, cada proceso tiene su propio espacio de direcciones, pero puede contener mltiples threads de control. Cada hilo tiene su propio contador de programa y su propia pila, pero comparte cdigo y datos globales con otros hilos en sus procesos.

Llamadas a procedimientos remotos RPC Los hilos a menudo necesitan comunicarse unos con otros. Los hilos en un solo proceso pueden comunicarse va memoria compartida, pero los hilos ubicados en procesos diferentes necesitan un mecanismo diferente. El mecanismo de comunicacin bsico de Amoeba es el RPC. La comunicacin consiste de un hilo cliente enviando un mensaje a un hilo servidor, mientras el hilo servidor bloqueado enva un mensaje de retorno, en el cual el cliente a la vez es desbloqueado Amoeba tiene una librera especial de procedimientos llamada stubs y es la que provee el servicio de acceso remoto, adems tiene un lenguaje especial llamado Amoeba Interface Languaje (AIL) para generar automticamente estos procedimientos stub.
|

ITSPE

Comunicacin en grupo. Para muchas aplicaciones la comunicacin, uno a varios es necesaria, en el cual un solo transmisor enva un mensaje a mltiples receptores. Amoeba provee una facilidad bsica, fiable en los grupos de comunicacin totalmente ordenado, en el cual todos los receptores estn garantizando conseguir todos los mensajes de grupo en exactamente el mismo orden. Objetos y capacidades Hay dos conceptos fundamentales en Amoeba: objetos y capacidades. Todos los servicios y comunicacin estn en base a ellos. Un objeto es conceptualmente un tipo de dato abstracto. Esto es, un objeto es una estructura de datos en el cual ciertas operaciones estn definidas. Por ejemplo, un directorio es un objeto al cual ciertas operaciones pueden ser aplicadas, como son ingresar nombre y mirar nombre. Cuando un objeto es creado, el servidor crea un valor de 128 bit llamado una capacidad y retorna al llamador. Las capacidades son protegidas criptogrficamente para prevenir interferencias. Todos los objetos en el sistema son nombrados y protegidos usando ste, un esquema simple y transparente. Administracion de memoria El modelo es simple y eficiente. Un espacio de direcciones del proceso consiste de uno o ms segmentos mapeados a direcciones virtuales de un usuario especfico. Cuando un proceso es ejecutado todos los segmentos estn en memoria. No hay paginacin ni swapping en el presente, as solamente puede correr programas que quepan en la memoria fsica. La primera ventaja de este esquema es simplicidad y alto rendimiento. La primera desventaja tambin es que no es posible correr programas ms grandes que la memoria fsica. Entrada/Salida E/S es tambin manipulada por los hilos del kernel. Para leer bloques desde un disco, por ejemplo, un proceso de usuario tiene la autorizacin apropiada, hace RPC con un hilo de disco E/S en el kernel.

ITSPE

Software fuera de Kernel El trabajo del microkernel de Amoeba es soportar hilos, RPC, administracin de memoria y E/S. Servidor de archivos Bullet El servidor de archivos ha sido diseado para alto rendimiento y es llamado el servidor Bullet. Almacena archivos contiguamente en disco, excepto para archivos muy grandes. Debe existir una mquina con 16 Mb de RAM dedicada para este fin. Servidor de directorios. El contraste a algunos sistemas operativos el manejador de archivos y archivo de nombres estn separados en Amoeba. Compiladores Existen los compiladores de C estndar, Pascal, Modula 2, BASIC y Fortran 77. Programacin en paralelo Un nuevo lenguaje llamado Orca ha sido desarrollado y permite a los programadores crear sus propios tipos de datos en cualquier proceso en diferentes mquinas en rutas compartidas controladas. Las operaciones en cada objeto son ejecutadas en cada ruta para proveer la ilusin de la existencia de una sola copia compartida por todas las mquinas. Utilidades Amoeba provee un gran nmero de utilidades modelados despus de los programas que vienen con UNIX. Entre otros, estos incluyen awk, basename, cal, cat, ediff, chmod, cmp, comm, compress, cp, cpdir, rm, rmdir, time, who, tty, tail, tar, etc.,y muchos otros

Emulacin UNIX Para ayudar a los programas UNIX de puertos en el ambiente Amoeba, una librera de emulacin, llamada Ajax, ofrece mejor compatibilidad con POSIX
|

ITSPE

P1003.1. Algunos programas que conforman POSIX trabajan sin modificacin. Ellos simplemente tienen que ser compilados y enlazados en Amoeba. TCP/IP Si bien el mecanismo bsico de comunicacin en Amoeba es el protocolo Amoeba FLIP, un servidor especial es provedo para permitir la comunicacin TCP/IP por medio de RPCs al servidor TCP/IP. De esta manera las mquinas pueden ser accedidas por medio del Internet. X Windows La interface de usuario de Amoeba es el estndar de la industria el Sistema X Window (X11R6). Para servidores X corriendo en estaciones de trabajo, una versin especial de X est disponible aquel usa el Amoeba RPC para comunicaciones de alto rendimiento. Conexin a UNIX. Un driver especial para UNIX es provedo con Amoeba que puede enlazar al kernel de Unix de SunOS 4.1.1 (o superior), permitiendo a los programas UNIX comunicarse con los programas de Amoeba ASPECTOS NO TCNICOS DE AMOEBA Disponibilidad del cdigo fuente. Todas las distribuciones acadmicas de Amoeba contienen el cdigo fuente completo. Los binarios para el soporte de las mquinas son tambin incluidos. Amoeba sin las trabas de la licencia AT&T Amoeba fue escrito de la nada. Aunque se provee de una emulacin POSIX, no contiene cdigo AT&T de ninguna clase. Documentacin Amoeba viene con una documentacin sobre las 1000 pginas. Estn organizadas en varios volmenes. Mquinas en las que corre Amoeba Amoeba actualmente corre en las siguientes arquitecturas:
|

ITSPE

Sun 4c y MicroSPARC SPARCstations Intel 386/486/Pentium/Pentium Pro (IBM AT bus, PCI bus) Tarjetas 68030 VME bus Estaciones de trabajo Sun 3/60 & Sun 3/50

Configuracin requerida. Amoeba es un sistema distribuido heterogneo. Aunque en teora trabaja en una sola mquina, en la prctica ms de una mquina es requerida. Recomendamos por lo menos 5 mquinas: un servidor de archivos, una estacin de trabajo y 3 conjuntos de procesadores. Configuracin mnima para sistemas 386/486/Pentium. Servidor de archivos: >= 16MB RAM, un disco de 300 MB, unidad floppy 3.5, tarjeta ethernet, tarjeta VGA, teclado, monitor, ratn. Estacin de trabajo: >= 8 MB RAM, tarjeta ethernet, tarjeta VGA, teclado, monitor, ratn. Conjunto de procesadores: >= 4 MB RAM, unidad floppy 3.5, tarjeta ethernet. Soporte a tarjetas ethernet: SMC/WD 8013, NE 2100, NE2000, 3Com 503

Precio Amoeba es gratuito para universidades que tienen acceso FTP o WWW. Conjuntos de manuales pueden ser impresos por 500 US. Licencia comercial y soporte est provedo por ACE, b.v. en Amsterdam. Soporte Aunque Amoeba es todava un sistema experimental, en vez de calidad de produccin y producto pulido (por ejemplo la emulacin UNIX no est completa al 100%), puede ser usado tranquilamente por cualquiera que est interesado en sistemas distribuidos.
|

ITSPE

GRID La computacin en grid o en malla es un nuevo paradigma de computacin distribuida en el cual todos los recursos de un nmero indeterminado de computadoras son englobados para ser tratados como un nico superordenador de manera transparente. La computacin grid es una tecnologa innovadora que permite utilizar de forma coordinada todo tipo de recursos (entre ellos cmputo, almacenamiento y aplicaciones especficas) que no estn sujetos a un control centralizado. En este sentido es una nueva forma de computacin distribuida, en la cual los recursos pueden ser heterogneos (diferentes arquitecturas, supercomputadores, clusters...) y se encuentran conectados mediante redes de rea extensa (por ejemplo Internet). Desarrollado en mbitos cientficos a principios de los aos 1990, su entrada al mercado comercial siguiendo la idea de la llamada Utility computing supone una importante revolucin. El trmino grid se refiere a una infraestructura que permite la integracin y el uso colectivo de ordenadores de alto rendimiento, redes y bases de datos que son propiedad y estn administrados por diferentes instituciones. Puesto que la colaboracin entre instituciones envuelve un intercambio de datos, o de tiempo de computacin, el propsito del grid es facilitar la integracin de recursos computacionales. Universidades, laboratorios de investigacin o empresas se asocian para formar grid para lo cual utilizan algn tipo de software que implemente este concepto. Qu es un GRID? Llamamos grid al sistema de computacin distribuido que permite compartir recursos no centrados geogrficamente para resolver problemas de gran escala. Los recursos compartidos pueden ser ordenadores (PC, estaciones de trabajo, supercomputadoras, PDA, porttiles, mviles, etc), software, datos e informacin, instrumentos especiales (radio, telescopios, etc.) o personas/colaboradores. La computacin grid ofrece muchas ventajas frente a otras tecnologas alternativas. La potencia que ofrecen multitud de computadores conectados en red usando grid es prcticamente ilimitada, adems de que ofrece una perfecta integracin de sistemas y dispositivos heterogneos, por lo que las conexiones entre diferentes mquinas no generarn ningn problema. Se trata de una solucin altamente escalable, potente y flexible, ya que evitarn problemas de falta
|

ITSPE

de recursos (cuellos de botella) y nunca queda obsoleta, debido a la posibilidad de modificar el nmero y caractersticas de sus componentes. Estos recursos se distribuyen en la red de forma transparente pero guardando unas pautas de seguridad y polticas de gestin de carcter tanto tcnico como econmico. As pues, su objetivo ser el de compartir una serie de recursos en la red de manera uniforme, segura, transparente, eficiente y fiable, ofreciendo un nico punto de acceso a un conjunto de recursos distribuidos geogrficamente en diferentes dominios de administracin. Esto nos puede llevar a pensar que la computacin Grid permite la creacin de empresas virtuales. Es importante saber que una grid es un conjunto de maquinas distribuidas que ayudan a mejorar el trabajo sobre software pesados Caractersticas Capacidad de balanceo de sistemas: no habra necesidad de calcular la capacidad de los sistemas en funcin de los picos de trabajo, ya que la capacidad se puede reasignar desde la granja de recursos a donde se necesite; Alta disponibilidad. con la nueva funcionalidad, si un servidor falla, se reasignan los servicios en los servidores restantes; Reduccin de costes: con esta arquitectura los servicios son gestionados por "granjas de recursos". Ya no es necesario disponer de "grandes servidores" y podremos hacer uso de componentes de bajo coste. Cada sistema puede ser configurado siguiendo el mismo patrn;

Se relaciona el concepto de grid con la nueva generacin del protocolo IP. El nuevo protocolo de Internet IPv6 permitir trabajar con una Internet ms rpida y accesible. Una de las ideas clave en la superacin de las limitaciones actuales de Internet IPv4 es la aparicin de nuevos niveles de servicio que harn uso de la nueva capacidad de la red para intercomunicar los ordenadores. Este avance en la comunicacin permitir el avance de las ideas de grid computing al utilizar como soporte la altsima conectividad de Internet. Es por ello que uno de los campos de mayor innovacin en el uso del grid computing, fuera de los conceptos de supercomputacin, es el desarrollo de un estndar para definir los Grid Services frente a los actuales Web Services.

ITSPE

Desventajas No obstante, la computacin grid presenta algunos inconvenientes que deben solucionarse. Estos problemas son: Recursos heterogneos: la computacin grid debe ser capaz de poder manejar cualquier tipo de recurso que maneje el sistema, si no resultar totalmente intil. Descubrimiento, seleccin, reserva, asignacin, gestin y monitorizacin de recursos son procesos que deben controlarse externamente y que influyen en el funcionamiento del grid. Necesidad de desarrollo de aplicaciones para manejar el grid, as como desarrollo de modelos eficientes de uso. Comunicacin lenta y no uniforme. Organizativos: dominios de administracin, modelo de explotacin y costes, poltica de seguridad... Econmicos: precio de los recursos, oferta/demanda

Ventajas y requisitos En definitiva, grid supone un avance respecto a la World Wide Web: El World Wide Web proporciona un acceso transparente a informacin que est almacenada en millones de ordenadores repartidos por todo el mundo. Frente a ello, el grid es una infraestructura nueva que proporciona acceso transparente a potencia de clculo y capacidad de almacenamiento distribuida por una organizacin o por todo el mundo. Los requisitos que debe cumplir cualquier grid son: Los datos deben compartirse entre miles de usuarios con intereses distintos. Se deben enlazar los centros principales de supercomputacin, no slo los PC. Se debe asegurar que los datos sean accesibles en cualquier lugar y en cualquier momento. Debe armonizar las distintas polticas de gestin de muchos centros diferentes. Debe proporcionar seguridad. Y los beneficios que se obtienen: Proporciona un mecanismo de colaboracin transparente entre grupos dispersos, tanto cientficos como comerciales.
|

ITSPE

Posibilita el funcionamiento de aplicaciones a gran escala. Facilita el acceso a recursos distribuidos desde nuestros PC. Todos estos objetivos y beneficios se engloban en la idea de "e-Ciencia".

Estos beneficios tendrn repercusin en muchos campos: Medicina (imgenes, diagnosis y tratamiento). Bioinformtica (estudios en genmica y protemica). Nanotecnologa (diseo de nuevos materiales a escala molecular). Ingeniera (diseo, simulacin, anlisis de fallos y acceso remoto a instrumentos de control). Recursos naturales y medio ambiente (previsin meteorolgica, observacin del planeta, modelos y prediccin de sistemas complejos).

La tecnologa derivada del grid abre un enorme abanico de posibilidades para el desarrollo de aplicaciones en muchos sectores. Por ejemplo: desarrollo cientfico y tecnolgico, educacin, sanidad, y administracin pblica.

Вам также может понравиться