MARCO TEORICO
FAUSTO JAVIER GUZMAN JHONALEXANDER ORTIZ CASTAÑO
SISTEMAS DISTRIBUIDOS JAIRO HERNANDEZ
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS FACULTAD TECNOLOGICA INGENIERÍA EN TELEMÁTICA BOGOTA 2013
MARCO TEÓRICO
Hoy en día, con los grandes avances informáticos, el crecimiento de la demanda de procesamiento, del internet, de administrar recursos; se ha visto la necesidad de realizar distribución de procesamiento, de compartir recursos, de realizar actividades conjuntas, entre otras actividades de operación de negocio o de investigación. Los sistemas distribuidos son la solución a dicho planteamiento, puesto que brindan una solución tecnológica, que si es bien diseñada, puede ser mucho más económica que un sistema centralizado, contando alta disponibilidad y velocidad de transmisión.
Para poder desarrollar el caso estudio hay que hablar como tal de un sistema distribuido y sus características; voy a dar una definición de lo que he entendido gracias a la lectura de los libros “Sistemas Operativos distribuidos” de Andrew Tanenbaum y “ Sistemas
distribuidos: conceptos y diseño” de George Coulouris, que me han aportado gran cantidad de conocimiento; pues bien, para mí un sistema distribuido es la unión de muchos procesadores a través de una red de comunicación para lograr un objetivo común, haciendo ver la red de computadoras como una sola computadora ante el usuario ya sea a nivel de hardware o software; este tipo de sistemas tienen tanto sus ventajas como: procesadores más poderosos y a menos costos, desarrollo de Estaciones con más capacidades, las estaciones satisfacen las necesidades de los usuarios, uso de nuevas interfaces, avances en la Tecnología de Comunicaciones, disponibilidad de elementos de Comunicación, desarrollo de nuevas técnicas, compartición de Recursos, dispositivos (Hardware) programas (Software), Eficiencia y Flexibilidad, respuesta Rápida, ejecución Concurrente de procesos (En varias computadoras), empleo de técnicas de procesamiento distribuido, disponibilidad y Confiabilidad, tolerancia a fallas, mayores servicios que elevan la funcionalidad ( Monitoreo, Telecontrol, Correo Eléctrico, Etc.), escalabilidad; tiene desventajas como: velocidad de propagación de información ( Muy lenta a veces), servicios de replicación de datos y servicios con posibilidades de fallas, Mayores controles de acceso y proceso, mayores implementaciones con respecto a la seguridad de la información, administración más compleja, costos.
En las redes corporativas de grandes empresas, un sistema centralizado a veces trae muchos inconvenientes, por sobre todo cuando dichas empresas tienen varias sedes ya que todos los servicios y aplicaciones dependen de un solo servidor o nodo, en el
momento que aquel servidor o la red de comunicación falle, es donde se ve necesaria la implementación de un sistema distribuido, ya que tiene las siguientes características: Concurrencia: esta es una característica muy importante ya que permite que varios usuarios o máquinas realicen peticiones simultáneas a servidores de la misma aplicación, como por ejemplo un sistema de autenticación; se puede potenciar esta característica añadiendo más recursos. No tiene un reloj global: No hay un parámetro que defina como tal un reloj o un sincronismo, es decir la comunicación es asincrónica, y se realiza sincronización a través del flujo de mensajes. Escalabilidad: muy importante que dentro de un sistema distribuido se puedan seguir añadiendo recursos o usuarios sin que el rendimiento se vea afectado. Convergencia o heterogeneidad: que permita el uso de diferentes tecnologías, sistemas operativos y lenguajes de programación. Tolerancia a fallas: esta característica permite de que si hay un fallo en un componente de la red esta pueda seguir funcionando y ejecutando los procesos. Transparencia: Permite ver una red de computadoras como una sola ya que para el usuario es transparente la topología, los fallos, el modo de acceso local o remoto, la ubicación de los equipos y el tamaño de la red. Movilidad y ubicuidad: permite que el usuario se pueda conectar desde cualquier lugar, en cualquier momento, ya sea con un portátil, o un equipo móvil de bajo coste. A su vez estas características presentan un reto al momento de diseñar, ya que la idea es cumplir con las parámetros anteriormente dichos, seguido a esto, tratando de amortizar las posibles desventajas que tiene un sistema distribuido, como lo son la seguridad con un sistema de identificación de usuario, encriptación de la señal; Replicación pues pienso que es tanto ventaja como desventaja ya que hace que la información sea altamente disponible y en caso de fallo no se ve afectada, pero esto conlleva a un consumo de recursos mayor, por consiguiente mayores costos. Los mejor ejemplo de un sistema distribuido es la internet que es la red de redes, ya que cumple con la mayoría de los requisitos, en cuanto a protocolos el internet posee varios servicios abiertos, el más conocido es el WORLD WIDE WEB, aunque también tenemos correo electrónico y FTP, todos estos son escalables por adición de servidores. También como sistemas distribuidos hay intranets que ya son administradas por empresas u organizaciones. Estamos muy ligados a compartir recursos a través de la web y no nos
damos cuenta de todos los protocolos y servicios que están detrás, como las conexiones cliente servidor, protocolo HTTP que nos muestra los párrafos de las páginas y el orden en cómo deben aparecer, DNS que asigna los nombres en la red, URL que ayuda a ubicar los recursos en la web, un sin fin de cosas que están conectadas para proporcionarnos los servicios que consumimos. Por último los sistemas distribuidos son una tendencia mundial, están en constante crecimiento y evolución, un gran ejemplo lo es el internet, aunque hay grandes desafíos que se enfrentan diariamente sobre todo la seguridad y la administración pero que más adelante con la ayuda de software se pueden superar, viendo esto, son muchas más ventajas respecto a un sistema centralizado, ya que en un futuro todo con lo que interactuamos va a estar conectado, y puede ser que lo podamos manejar con un control universal que puede ser una aplicación para celular o portátil y que nos permita automatizar procesos, además al momento de implementar el sistema distribuido para el caso estudio es muy importante tener en cuenta las anteriores características mencionadas, con esto se lograra un desarrollo óptimo, además de aportar para nuestro perfil profesional.