TEMA:
4.- Relojes lógicos de Lamport y Ejemplo: Transmisión totalmente
ordenada
INTEGRANTE: ARBILDO BORJA, ROCÍO JENNY
CÓDIGO 1531410
INTRODUCCIÓN
La sincronización de relojes en los sistemas distribuidos permite asegura que los
procesos se ejecuten cronológicamente y además respetar el orden de cada acción. Para
ello las computadoras contienen un circuito que realiza dicha acción conocida como
reloj. Dicho reloj funciona como un cronometro de cristal de cuarzo oscila cuando se
ejecuta una tensión eléctrica, cada oscilación registra una disminución en 1 del contador
cuando el contador toma el valor de 0 se produce una interrupción y el contador cargar.
Los relojes están funcionando de cuerdo al tiempo real a su vez estas tienen que
coincidir con cada nodo sin importar el tiempo real.
RELOJES LÓGICOS DE LAMPORT Y EJEMPLO: Transmisión totalmente
ordenada
Definición
Es un contador de software que se incrementa monótonamente, su valor no
depende de un reloj físico.
Algoritmo de Lamport
Creado por Lamport en el año 1978 quien invento un mecanismo con el cual la
relación sucedió antes se captura en valor numérico la cual fue llamada reloj lógico.
Para sincronizar los relojes lógicos Lamport definió la relación ocurre antes de
(ocurrencia anterior). Un ejemplo de lo que sucede es:
- Si a y b son eventos de un proceso, y a ocurre antes que b, entonces a b es
verdadera.
- Si es el evento que envía el mensaje y b es recepción entonces a b es
verdadero.
Cuando dos eventos no intercambian mensajes ni a través de tercera entonces estos
no son verdaderas, si “x” y “y” ocurren en momentos diferentes entonces no x y
no son verdaderos tampoco lo es y x. Estos eventos so concurrentes que no se
pude decir cuando ocurren.
El algoritmo de Lamport tiene como objetivo alcanzar un orden los eventos en un
sistema distribuido. No se sincroniza los relojes, sino ordena los eventos según la
relación de orden que tengan
Reloj lógico de Lamport:
Es asignar un tiempo a los sucesos que se puedan ordenar mediante relaciones “sucede
antes que”.
Se necesita una manera de medir el tiempo en un evento “y” se le asigna un tiempo C.
Dichos valores también tendrán sus propiedades que se establecen en el principio y,
además:
- De que si a b, entonces C(q) < C(b)
- El tiempo de reloj C siempre va hacia delante siempre agregando, valor ese
modificado agregando un valor positivo.
Los procesos de un computador son sencillos, aunque afectan la forma en que los
mensajes se ejecuta:
- Existe un reloj local.
- Cada vez que se envía un mensaje se le agrega una marca con el tiempo en que
se está enviando el mensaje.
- Cuando el mensaje es enviado se agrega la propiedad de envió de mensaje y :
A. Si la marca de tiempo es menor al tiempo de envío se asume que las
computadoras están sincronizadas.
B. En caos la marca de tiempo de es mayor o igual al tiempo local se
cambia el tiempo local con la marca de tiempo del mensaje recibido.
El algoritmo de Lamport tiene un mecanismo que asigna tiempo a evento. Un ejemplo
es considerar 3 procesos, cada uno de ellos ejecutándose de diferentes maquinas con su
propio reloj. Cuando el host P1 ha hecho 6 marcas en el proceso P2 se ejecutan 8
marcas y 10 marcas para el proceso P3. Cada uno de los relojes esta avanzando a una
velocidad constante, pero a su vez estas son diferentes debido a los cristales.
Fuente:
https://www.studocu.com/pe/document/universidad-tecnologica-del-peru/arquitectura-
de-computadoras/informe/relojes-logicos-de-lamport-y-ejemplo/5967643/view
A continuación, se muestra el detalle del avance de los tiempos en dos computadoras C1
y C2. Además, se aprecia como C2 cambia su tiempo a partir de la llegada de un
mensaje con una marca de tiempo mayor que su tiempo local.
Figura 02: Evolución de eventos en el algoritmo de Lamport
Lamport utiliza la relación “ocurre antes de”:
Si “c” sale en “60” debe llegar en “61” o en un tiempo posterior.
Cada mensaje acarrea el tiempo de envío, de acuerdo con el reloj del emisor.
Cuando un mensaje llega y el reloj del receptor muestra un valor anterior al
tiempo en que se envió el mensaje:
o El receptor adelanta su reloj para que tenga una unidad más que el
tiempo de envío.
No se sincronizan relojes,
sino que se ordenan eventos
según la relación de orden
No se sincronizan relojes,
sino que se ordenan eventos
según la relación de orden
Ejemplo: Transmisión totalmente ordenada.
Son las base de datos replicadas a nivel nacional para el mejor rendimiento de las
aplicación que pueden ser dañadas por la lentitud de las consultas o por algún tema de
seguridad las réplicas están en lima y Arequipa. El cliente ubicado en lima desea
agregar s/200 a su tarjeta de ahorros que cuenta con S/1000. En el mismo momento
tenemos aun cliente en Arequipa que esta haciendo un abono la cual hará que la cuente
este incrementada con 1% del interés. En ambos se envía una actualización al servidor
de base de datos, sin embargo, debido a la lentitud de la red las actualizaciones pueden
llegar desordenadas.
La actualización del cliente Lima llega antes que la actualización del interés del cliente
en Arequipa. Por lo cual la base datos de Arequipa se actualiza con 1% de incremento y
luego con S/200. Por ende, la base de datos Lima tendrá un momento s/1200, mientras
en Arequipa se mostrará s/1000. Este problema requiere de una transmisión totalmente
ordenada para la solución los relojes lógicos de Lamport pueden utilizarse para realizar
transmisión tota mediante grupos de proceso que transmiten los mensajes donde cada
mensaje se registra con el tiempo actual de su remitente. Y los remitentes se registras
según fueron enviados.
Aplicación
Es turno de atención que cada cliente tiene cuando es atendido en el baco
Mapa Mental
3.1. Ventajas
Se asigna un tiempo a cada evento lo que permite tener mensajes
ordenados.
El algoritmo permite tener actualiza los sistemas distribuidos por
ejemplo las bases de datos que se encuentran en distintos sitios.
3.2. Desventajas
Por la cantidad de procesos se pueden se pueden encolar algunos
mensajes.
Cada proceso debe revisar su turno de ejecución lo que genera
demoras para que sea ejecutado.
3.3. Conclusiones
El envió de mensajes entre computadoras es importan para la réplica
de procesos.
El algoritmo Lamport permite que los eventos relacionados en
diferentes procesos ocurran en un orden correcto.
Recomendación
No es importante que los procesos este de acuerdo en la hora pero
sí importa que ocurran en el mismo orden en que fueron
ejecutadas
3.4. Referencia
Camacho, J. (2015). Sistemas distribuidos de información. Obtenido de
https://prezi.com/7nidr-qvktgr/sistemas-distribuidos-de-
informacion/
Chu, J. (s.f.). ¿Qué es MOM? Obtenido de 2014:
http://jaimechuupc.blogspot.com/2014/12/que-es-mom.html
Del Rio Flores, A. (2016). Obtenido de RMI Remote Method Invocation:
https://docplayer.es/2568141-Rmi-remote-method-
invocation.html
Leonel, E. (2012). 1, 12 y 13 Tipos de Sistemas Distribuidos e
Investigación 01. Obtenido de 1, 12 y 13 Tipos de Sistemas
Distribuidos e Investigación 01:
https://www.academia.edu/34493387/1_12_y_13_Tipos_de_Siste
mas_Distribuidos_e_Investigaci%C3%B3n_01
Risi , W. (2008). Enterprise Application Integration. Mucho más que
productos de moda. Obtenido de Enterprise Application
Integration. Mucho más que productos de moda:
https://sg.com.mx/content/view/340