Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RELOJES EN SISTEMAS
DISTRIBUIDOS
Jose Pua Figueroa
7°ISC
361711108
■ La sincronización distribuida de relojes trata de solucionar los
problemas surgidos por la necesidad de comunicar distintos
computadores que trabajan en una tarea conjunta.
■ Estos problemas ocurren debido a que cada computador posee
relojes independientes cuya arquitectura, por muy precisa que sea,
hace imposible que tenga tiempos idénticos.
■ Dicha sincronización se ha logrado mediante el estudio de diversas
técnicas y métodos (Algoritmo de Cristian, Algoritmo de Berkeley,
etcétera)
Algoritmo de Cristian
■ Usa sincronización externa e interna. Es un algoritmo centralizado en un servidor de
tiempo UTC, que manda el tiempo a un receptor de nuestro sistema que se
denominará receptor de UTC, el resto de clientes se sincronizarán con dicho
equipo.
■ Los clientes mandarán peticiones periódicas al receptor UTC pidiéndole el tiempo
UTC, y éste le responderá lo más rápido posible. Obviamente, el cliente sólo
sincroniza si el tiempo UTC de respuesta es mayor que el de la petición.
■ Problemas:
■ Si el servidor falla. Una solución sería tener más servidores.
■ No existe control sobre fraudes o malfuncionamiento por parte del servidor.
■ Escalabilidad.
Algoritmo de Berkeley
■ Sincronización interna, no dispone de señal UTC. Es un algoritmo centralizado en un
servidor maestro elegido por todas las computadoras conectadas. El servidor
periódicamente muestrea el tiempo de las computadoras y con esa información
estima un tiempo que es comunicado al resto de las máquinas para su
sincronización.
■ Problemas:
■ Si el servidor falla. Una solución sería elegir a un nuevo maestro.
■ Escalabilidad.
RELOJES LÓGICOS
■ Reloj hardware
■ Cuando utilizamos una base de tiempo Universal, se dice que utilizamos Relojes
Físicos. Son útiles en aplicaciones que se manejan eventos secuenciados a alta
velocidad, de tal suerte que no hay recursos disponibles para organizar la
sincronización; En ciertos sistemas (por ejemplo, los sistemas de tiempo real), es
importante la hora real del reloj.
■ Para estos sistemas se necesitan relojes fisicos externos. Por razones de eficiencia
y redundancia, por lo general son recomendables varios relojes fisicos, lo cual
implica dos problemas:
1.- Cómo sincronizamos los relojes con la hora exacta del mundo real?
2.- Cómo sincronizamos los relojes entre sí?
Reloj software