Apuntes 2

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 7

La infraestructura básica para el desarrollo de la conexión de otras redes, red de telefonía

básica como opciones de respuesta campo de interconexión, interconexión local, otra


pregunta puede ser es un ejemplo de una interconexión a nivel privado local y como
respuesta nos ponen el uso de redes de área local el uso de redes telefónicas el uso de
redes de datos, otra pregunta es: es el protocolo que ofrece soluciones de seguridad a las
conexiones http y las respuestas son: shttp, tsp scl

4.1 Elementos de un Sistema distribuido

Un sistema informático, desde el punto de vista del usuario y de una forma muy general,
estará constituido por un conjunto de elementos (hardware y software), capaces de
realizar, conjuntamente, una determinada función orientada hacia la resolución del
problema objeto de la aplicación de dicho sistema informático.

Dichos elementos serán, bien tareas (programas), bien recursos (periféricos, ficheros),
entre los que podrán establecerse determinadas relaciones. Por ejemplo, comunicaciones
entre tareas con objeto de intercambiar información para la cooperación en la resolución
de una determinada función; comunicaciones entre tareas y recursos con objeto de que
las primeras utilicen los servicios de los de segundos. Así pues, para que tales relaciones
puedas establecerse será necesario que en dicho sistema informático exista un conjunto
de elementos, un mecanismo que las materialice.

En un sistema centralizado, es decir, basado en un computador, la responsabilidad del


establecimiento de dichas relaciones corresponde generalmente a un sistema operativo.

Considerando únicamente los aspectos que ahora nos interesa destacar, en este tipo de
maquinas, un sistema operativo, bien orientado a la manipulación de ficheros, bien sea
orientado hacia el control de las aplicaciones en tiempo real, estar constituido
básicamente por un conjunto de programas que se ejecuten en el propio computador y
que realizan dicho servicio de comunicación entre los elementos mencionados.

Igualmente, desde el punto de vista del usuario, un sistema informático distribuido


continuara viéndose de la misma forma que cualquier otro sistema informático, es decir,
estará constituido por un conjunto de elementos entre los cuales podrán establecerse
relaciones. La particularidad consistirá en que los elementos que se comunican podrán
estar ubicados en maquinas distintas, en maquinas distribuidas.

4.2 Aplicaciones cliente/servidor

El modelo cliente/servidor (C/S), la computación cliente/servidor, la tecnología


cliente/servidor y la arquitectura cliente/servidor se refieren a un modelo de diseño que
se puede pensar como aplicaciones que se ejecutan en una red de área local (LAN). En
términos muy básicos, puede describir que el cliente solicita las solicitudes de trabajo. Las
computadoras en la red se programan para desempeñar eficazmente el trabajo dividiendo
las tareas del procesamiento entre clientes y servidores.

Cuando piensa en el modelo cliente/servidor, debe pensar en un sistema que coloca a los
usuarios como el centro del trabajo, con su interacción con datos que son el concepto
clave. Aunque hay dos elementos funcionando -el cliente y el servidor- el objetivo del
modelo C/S es que los usuarios lo vean como un sistema. De hecho, se espera que los
usuarios no adviertan como desempeña la red cliente/servidor su procesamiento
distribuido, debido a que debe tener la apariencia de un sistema unificado. En una red de
igual a igual, las PCs pueden actuar como el servidor o l cliente, dependiendo de los
requerimientos de la aplicación.

Cliente/servidor es una arquitectura de red en la que cada ordenador o proceso en la res


es cliente o servidor. Normalmente, los servidores son computadoras potentes dedicadas
a gestionar unidades de disco (servidor de ficheros), impresoras (servidor de impresoras),
trafico de red (servidor de red), datos (servidor de base de datos) o incluso aplicaciones
(servidor de aplicaciones), mientras que los clientes son maquinas menos potentes y usan
los recursos que ofrecen los servidores.

La arquitectura cliente/servidor implica la realización de aplicaciones distribuidas. La


principal ventaja de esta arquitectura es que permite separar las funciones según su
servicio, permitiendo situar en cada función en la plataforma mas adecuada para su
ejecución. Además, también presenta las siguientes ventajas:

 Las redes de ordenadores permiten que múltiples procesadores puedan ejecutar


partes distribuidas de una misma aplicación, logrando concurrencia de procesos.

 Existe la posibilidad de migrar aplicaciones de un procesador a otro con


modificaciones mínimas en los programas.

 Se obtiene una escalabilidad de la aplicación. Permite la ampliación horizontal o


vertical de las aplicaciones. La escalabilidad horizontal se refiere a la capacidad de
añadir o suprimir estaciones de trabajo que hagan uso de la aplicación (clientes),
sin que afecte sustancialmente al rendimiento general. La escalabilidad vertical
permite la migración hacia servidores de mayor o menor capacidad y velocidad o
de un tipo diferente.

 Posibilita el acceso a los datos independientemente de donde se encuentre el


usuario.

4.3 Sistemas distribuidos en la Red

Existe una gran confusión entre una red de computadoras y un sistema distribuido. La
diferencia principal radica n que, en un sistema distribuido, un conjunto de computadoras
independientes aparece ante sus usuarios como un sistema consistente y único. Por lo
general, tiene un modelo o paradigma único que se presenta a los usuarios. Con
frecuencia, una capa de software que se ejecuta sobre el sistema operativo, denominada
middleware, es la responsable de implementar este modelo. Un ejemplo bien conocido
de un sistema distribuido es World Wide Web, en la cual todo se ve como un documento
(una pagina web).

En una red de computadoras no existe esta consistencia, modelo ni software. Los usuarios
están expuestos a las maquinas reales, y el sistema no hace ningún intento por que las
maquinas se vean y actúen de manera similar. Si las maquinas tienen hardware diferente y
distinto sistemas operativos, eso es completamente transparente para los usuarios. Si un
usuario desea ejecutar un programa de una maquina remota, debe registrarse en ella y
ejecutarlo desde ahí.

De hecho, un sistema distribuido es un sistema de software construido sobre una red. El


software le da un alto grado de consistencia y transparencia. De este modo, la diferencia
entre una red y un sistema distribuido esta en el software (sobre todo en el sistema
operativo), mas que en el hardware.

No obstante, tienen muchas cosas en común. Por ejemplo, tanto los sistemas distribuidos
como las redes de computadoras necesitan mover archivos. La diferencia en quien invoca
el movimiento, el sistema o el usuario.

4.4 Sistemas distribuidos basados en coordinación.

En SD basados en coordinación, el enfoque recae en como ocurre la coordinación entre


proceso. La principal ventaja de los sistemas distribuidos de bases de datos es la mayor
complejidad que se requiere para garantizar una coordinación adecuada entre nodos. Este
aumento de la complejidad se refleja a varios niveles.

 Mayor coste de desarrollo de software. Es mas difícil estructurar un sistema de


bases de datos distribuidos y, por tanto, su coste es mayor.
 Mayor posibilidad de que se produzcan errores. Puesto que los nodos del sistema
distribuido operan en paralelo, es mas difícil garantizar que los algoritmos sean
correctos.

 Mayor tiempo de procesamiento. El intercambio de mensajes y los cálculos


adicionales que se requieren para coordinar los nodos son un gasto de tiempo
extra que no existe en los sistemas centralizados.

 Otro problema importante es que en las redes de comunicación varía entre unos
pocos megabits por segundo a 100 megabits por segundo.

4.5 Herramientas de desarrollo.

Al igual que en cualquiera de las tecnologías orientadas a objetos, la falta de estándares


también afecta el diseño de datos orientada a objetos. No existe una metodología
estándar ampliamente aceptada que guie el proceso ni un conjunto de reglas (como las
reglas de normalización en el modelo relacional) para evaluar el diseño. Sin embargo, esta
situación esta mejorando. En 1989, un grupo seleccionado de practicantes orientados a
objetos formaron el Object Management Group (OMG) para garantizar la
interoperabilidad entre todos los diferentes sistemas orientados a objetos (lenguajes,
ambientes, bases de datos, etc.). El OMG produce estándares y especificaciones
independientes del proveedor para componentes y sistemas basados en objetos.

4.5.1 CORBA.

Tal y como se ha indicado en la sección previa, la implementación de una arquitectura de


objetos distribuidos requiere un middleware (intermediarios de peticiones de objetos)
para gestionar las comunicaciones entre los objetos distribuidos. En principio los objetos
en el sistema pueden implementarse utilizando diferentes lenguajes de programación, los
objetos pueden ejecutarse sobre diferentes plataformas y sus nombres no necesitan ser
conocidos por el resto de los objetos dl sistema. Se requiere middleware a dos niveles
para soportar la computación de objetos distribuidos.

1. A nivel de comunicación lingüística, el middleware proporciona funcionalidades


que permiten a los objetos intercambiar datos y controlar la información sobre
diferentes computadoras. Se han desarrollado estándares como CORBA y COM
(Pritchard, 1999).

2. A nivel de componentes, el middleware proporciona una base para desarrollar


componentes compatibles. Estándares tales como componentes CORBA, EJB o
Active X (Szyperski, 2002) proporcionan una base para la implementación de
componentes con métodos estándar que pueden requerirse y usarse por otros
componentes.
3. Los servicios fundamentales de CORBA, que proporcionan servicios de
computación distribuida tales como gestión de seguridad y directorios.

4. Facilidades CORBA horizontales tales como facilidades de interfaz de usuario,


facilidades para gestión de sistema, y otras. La denominación facilidades
horizontales sugiere que estas facilidades son comunes a muchos dominios de
aplicación y, por lo tanto, se usan en muchas aplicaciones diferentes.

4.5.2 RMI

¿Qué es RMI (Remote Method Invocation)? Es una tecnología JAVA que permite enviar
mensajes a objetos situados en otra maquina virtual desde una aplicación que este
ejecutándose en una maquina virtual.

En su versión Básica requiere que toda la aplicación (tanto el cliente como el servidor)
estén desarrollados en JAVA.

Método 1 ( ) Máquina Virtual


Máquina Virtual Servidor RMI
Cliente RMI Objeto remoto
Respuesta Método 1 ( )

Esto permite tener los objetos distribuidos en diversas máquinas. Esta tecnología permite
que se puedan pasar argumentos al método remoto y recibir los datos que devuelve (en
ambos casos pueden ser tipos primitivos u objetos de clases que sean serializables). Cada
servicio RMI (objeto remoto) se define mediante una interface, que fija los métodos que
se pueden invocar n el objeto remoto. Esta interface debe estar disponible en el cliente y
en el servidor.

La tecnología RMI no es un concepto nuevo. Antes de la programación orientada a objetos


existía tecnología que permitía realizar llamadas a funciones y procedimientos remotos
(RPC, Remote Procedure Calls). Los sistemas que utilizan RMI se dividen en dos categorías:
clientes y servidores. El servidor proporciona un servicio RMI y el cliente llama a métodos
del objeto ofrecido por el servicio.

También podría gustarte