2.1 Comunicación: comunicación
con cliente – servidor, comunicación con llamada a procedimiento remoto,
comunicación en grupo, tolerancia a fallos.
TCP es un protocolo orientado a conexión. No hay
relaciones maestro/esclavo. Las aplicaciones, sin embargo, utilizan un modelo
cliente/servidor en las comunicaciones.
Un servidor es una aplicación que ofrece un servicio a usuarios de Internet; un cliente es el que pide ese servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el mismo o en diferentes sistemas.
Un servidor es una aplicación que ofrece un servicio a usuarios de Internet; un cliente es el que pide ese servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el mismo o en diferentes sistemas.
Los usuarios invocan la parte cliente de la aplicación, que construye una solicitud para ese servicio y se la envía al servidor de la aplicación que usa TCP/IP como transporte.
El servidor es un programa que recibe una solicitud, realiza el servicio requerido y devuelve los resultados en forma de una respuesta. Generalmente un servidor puede tratar múltiples peticiones (múltiples clientes) al mismo tiempo.
Figura: El modelo de aplicación
cliente/servidor
Algunos servidores esperan las solicitudes en puertos bien conocidos de modo que sus clientes saben a que zócalo IP deben dirigir sus peticiones. El cliente emplea un puerto arbitrario para comunicarse. Los clientes que se quieren comunicar con un servidor que no usa un puerto bien conocido tienen otro mecanismo para saber a qué puerto dirigirse. Este mecanismo podría usar un servicio de registro como Portmap, que utiliza un puerto bien conocido.
Llamada A Procedimiento Remoto
Ø Creado por
Bireel & Nelson en 1984.
Ø Permiten a los
programas llamar procedimientos localizados en otras máquinas.
Ø Un proceso X en
una máquina A, puede llamar un procedimiento localizado en una máquina B.
Ø Información
puede llevarse del proceso invocador al invocado dentro de los parámetros.
Ø Ningún mensaje u
operación de E/S es visible para el programador.
Problemas
a resolver:
Ø Procedimiento
invocador e invocado se ejecutan en diferentes máquinas, i.e. diferentes
direcciones y posiblemente diferentes arquitecturas.
Ø Ambas máquinas
pueden fallar.
2.2 Sincronización: relojes
físicos, relojes lógicos, usos de la sincronización.
Reloj Logico
Las computadoras poseen un circuito
para el registro del tiempo conocido como dispositivo reloj. Este es un
cronómetro que consistente en un cristal de cuarzo de precisión sometido a una
tensión eléctrica que oscila con una frecuencia bien definida que depende de la
forma en que se corte el cristal, el tipo de cristal, la magnitud de la
tensión.
A cada cristal se le
Asocian dos registros:
Registro contador.
Registro mantenedor.
Cada oscilación del cristal decrementa
en “1” al contador y cuando el contador llega a “0”, se genera una
interrupción, y el contador se vuelve a cargar mediante el registro mantenedor.
Se puede programar un cronómetro para que genere una interrupción “x” veces
por segundo.
Cada interrupción se denomina marca de reloj.
Para una Computadora y
un Reloj, no les interesan los pequeños desfasajes del reloj porque todos los
procesos de la máquina usan el mismo reloj y tendrán consistencia interna, lo
que importan sin los tiempos relativos.
Para varias computadoras
con sus respectivos relojes es imposible garantizar que los cristales de
computadoras distintas oscilen con la misma frecuencia. ya que hay una pérdida
de sincronía en los relojes (de software), es decir que tendrán valores distintos
al ser leidos. La diferencia entre los valores del tiempo se llama distorsión
del reloj y podría generar fallas en los programas dependientes del tiempo.
Lamport demostró que la sincronización
de relojes es posible y presentó un algoritmo para lograrlo. Este señaló que la
sincronización de relojes no tiene que ser absoluta ya que si 2 procesos no
interactúan no es necesario que sus relojes estén sincronizados. Este algiritmo
se asigna un periodo de tiempo a cada evento.
Relojes Fisico
La idea es proveer de un único bloque de tiempo para el sistema. Los procesos pueden usar la marca física del tiempo provista o leída de un reloj central para expresar algún orden en el conjunto de acciones que inician. La principal ventaja de este mecanismo es la simplicidad, aunque existen varios inconvenientes: el correcto registro del tiempo depende en la posibilidad de recibir correctamente y en todo momento, el tiempo actual desplegado por el reloj físico; los errores de transmisión se convierten en un impedimento para el orden deseado, el grado de exactitud depende de las constantes puestas en el sistema.
El algoritmo de Lamport
proporciona un orden de eventos sin ambigüedades pero los valores de tiempo
asignados a los eventos no tienen porqué ser cercanos a los tiempos reales en
los que ocurren.
En ciertos sistemas (ej.: sistemas de
tiempo real ), es importante la hora real del reloj ya que se precisan relojes
físicos externos (más de uno). Estos se deben sincronizar:
Con los relojes del mundo real. Entre sí, la medición del tiempo real con alta
precisión no es sencilla. Estos son los relojes que podemos visualizar en
esquina inferior de nuestra computadora.
2.3 Nominación: características y
estructuras, tipos de nombres, resolución y distribución, servidores y agentes
de nombres, mapeo de direcciones, mapeo de rutas, modelo de Terry.
Un
nombre es más que una cadena de caracteres. Representa un punto de acceso hacia
un objeto. La característica principal de un sistema de nombre es que no debe
de presentar ambigüedades, para un momento dado, un nombre refiere a uno y sólo
un recurso en el sistema.
TIPOS
DE NOMBRES USUARIO Y DE SISTEMA
•
Identificadores de puertos y procesos.
•
Nombres textuales de servicios.
•
Identificadores de recursos.
•
Nombres de archivos.
•
Direcciones físicas y lógicas de redes.
•
El nombre de un objeto, por ejemplo un recurso o servidor; especifica lo que
busca un proceso.
•
Una dirección especifica dónde se encuentra el objeto.
•
Una ruta especifica cómo llegar ahí.
La
modificación no autorizada del iPhone OS constituye una fuente muy importante
de inestabilidad, interrupciones de los servicios y otros problemas.
Se
pueden clasificar a las violaciones de seguridad en tres categorías:
· Liberación no autorizada de
información. Ocurre cuando una persona no autorizada tiene la posibilidad de
leer y tomar ventaja de la información almacenada en una computadora. También
se incluye el uso no autorizado de un programa.
· Modificación no autorizada de información.
Este tipo de violación se da cuando una persona tiene la posibilidad de alterar
la información almacenada en un sistema computacional.
· Bloqueo no autorizado de servicios. Se
da cuando una persona no autorizada bloquea la capacidad de algún usuario
autorizado, a accesar la información almacenada en un sistema computacional.
La
seguridad en los sistemas computacionales puede dividirse en dos tipos:
· Seguridad externa (llamada comúnmente
seguridad física), se encarga de regular el acceso al hardware del sistema,
incluyendo: discos, cintas, reguladores y no-breaks, acondicionadores de aire,
terminales, procesadores.
· Seguridad interna se encarga del
acceso y uso del software almacenado en el sistema. A diferencia de la seguridad
física, existe el tema de autenticación, en el cual el usuario se registra
(login) en el sistema para accesar a los recurso de hardware y software del
mismo.
Servidor
DNS
- Traducir
su nombre de dominio en una dirección IP
- Asignar nombres a todas las máquinas de una red y trabajar con nombres de
dominio en lugar de IPs.
Un
servidor DNS permite acceder a un dominio en internet entre los millones
existentes. Básicamente su función es atender a las peticiones hechas por los
distintos programas que acceden a internet y resolver la dirección IP asociada
al dominio consultado. Cuando el servidor recibe una consulta realiza una
búsqueda en caso de que ese servidor no disponga de la respuesta, el servidor
comienza la búsqueda a través de uno o varios Servidores DNS hasta encontrar
una respuesta positiva o negativa.
2.4 Comunicación de procesos a
través del paso de mensajes en sistemas distribuidos.

No hay comentarios:
Publicar un comentario