Está en la página 1de 14

Sincronización

Relojes Físicos

Se requiere:

 Sincronizar los relojes físicos con la hora real.


 Sincronizar los relojes físicos ente si.
 Se toma en cuenta el Tiempo Universal Coordinado
(UTC)

15
Relojes Físicos

Principio:
– utiliza un servidor de tiempos que proporciona referencias
fiables (por ejemplo, un servidor que se sincroniza
periódicamente con UTC)
– el cliente envía una petición al servidor (mreq)
– el servidor contesta enviando la referencia de tiempo en
otro mensaje (mt)
– retardo de los mensajes: min + d
• min es el tiempo mínimo de transmisión. Es constante
y se puede determinar a partir de las características de
la red
• d es variable y depende de la carga del sistema y de la
red
15
Algoritmo de Cristian
• Cristian propone sincronizar un conjunto de relojes de
maquinas a partir de una que este sincronizada
externamente (tiempo u hora real), a través de la red de
comunicaciones de datos entre computadoras.

• Cada maquina solicita el tiempo periódicamente. Se debe


tener en cuenta las interrupciones del servidor y el tiempo
de transmisión.

15
Algoritmo de Cristian

 Un proceso p hace una petición de tiempo al servidor en un


mensaje mr.
 El servidor responde con un mensaje mt en el que incluye su
tiempo TUTC

 El proceso que
recibe el mensaje mt
actualiza su reloj con
el tiempo TUTC, por
lo que el cliente
sincroniza su reloj a
TUTC + TVIAJE/2.
Algoritmo de Cristian

• Adecuado para sincronización con UTC.


• Si T1 y T0 se miden con el mismo reloj entonces el
tiempo de transmisión del mensaje: (T1-T0)/2
• Si se conoce I (tiempo de atención de la
interrupción), el tiempo en propagar el mensaje es el
siguiente: (T1-T0-I)/2
• Valor que devuelve el servidor se incrementa en (T1-
T0-I)/2
Algoritmo de Cristian
Ejemplo
Algoritmo de Cristian

• ¿Qué petición debería usar el cliente? Calcula la precisión y


desviación obtenidas

• Conociendo que el tiempo mínimo de transmisión es de 7 ms,


¿cambia en algo la respuesta anterior?
16
Sincronización de Relojes
Algoritmo de Berkeley
 Sincronización interna entre procesadores
 El servidor de tiempo realiza un muestreo periódico de todas
las máquinas para pedirles el tiempo.
 Calcula el tiempo promedio, excluyendo las respuestas
espurias y le indica a todas las máquinas que avancen su
reloj a la nueva hora o que disminuyan la velocidad

8
Ejemplo
Algoritmo de Berkeley

A A A

B C B C B C

Tpromedio= (+25-10+0)/3= +5
T(A) 3:00 0 + 5 min 3:05
T(B) 3:25 -25 + 5 min 3:05
T(C) 2:50 +10 + 5 min 3:05 8
Ejemplo
Algoritmo de Berkeley

Nodos Tiempo
Servidor 15:12 0
Cliente 1 14:10 -62
Cliente 2 16:00 +48
Cliente 3 15:36 +24

Tpromedio= (-62+48+24)/4= +2.5=+2

S 15:12 0 + 2 min 15:14


C1 14:10 +62 + 2 min 15:14
C2 16:00 -48 + 2 min 15:14
C3 15:36 -24 + 2 min 15:14 8
Ejemplo
Algoritmo de Berkeley

• el coordinador solicita los tiempos a los demás nodos


• el coordinador calcula un tiempo medio a partir de las
medidas obtenidas, excluyendo las respuestas espurias y las
que no llegan en plazo

• el coordinador envía a cada nodo su desviación con respecto


a la media, para que realice el ajuste

• si el coordinador falla, se elige un nuevo coordinador


8
Ejemplo
Algoritmo de Berkeley

Tpromedio=

Desviación=

8
Ejemplo
Algoritmo de Berkeley

También podría gustarte