sincronización de relojes gianfranco azzato verónica cuello vanessa quintas marcos retzignac
TRANSCRIPT
SincronizaciSincronización de ón de RelojesRelojes
Gianfranco AzzatoVerónica Cuello
Vanessa QuintasMarcos Retzignac
SincronizaciSincronización de ón de RelojesRelojes
Propiedades de los Algoritmos DistribuidosPropiedades de los Algoritmos Distribuidos•La información relevante se distribuye entrevarias máquinas.
•Los procesos toman las decisiones sólo conbase en la información disponible en forma local.
•Debe evitarse un punto de fallo en el sistema.
•No existe un reloj común o alguna otra fuenteprecisa del tiempo global.
SincronizaciSincronización de ón de RelojesRelojes
Problemas a considerarProblemas a considerar•Tiempos y estados globales.
•Exclusión mutua.
•Algoritmos de elección.
•Operaciones atómicas distribuidas.
NTPNTPNetwork Time ProtocolNetwork Time Protocol
SincronizaciSincronización de ón de RelojesRelojes
SincronizaciSincronización de ón de RelojesRelojes
NTP (Network Time Protocol NTP (Network Time Protocol ))• Mejorar la precisión para las necesidades de
hoy en día Mejoras en los modelos de reloj que predicen con mas Precisión la fase y frecuencia del ruido
Algoritmos que reducen el impacto del retraso y de las imprecisiones del reloj.
Rediseño de los algoritmos de disciplina del reloj que pueden operar con bloqueos de frecuencia, fase o un modelo híbrido.
Las mejoras confirmadas por simulación, incrementan la precisión en un factor de décimas, mientras permiten que los intervalos de sondeo sean mucho mayores sin significantes reducciones en la precisión.
SincronizaciSincronización de ón de RelojesRelojes
• Encapsulado
STRATUM 1 : En este stratum están los servidores primarios que se sincronizan con hora nacional a través de radio, satélite, y módem.
STRATUM 2 : aquí aparecen servidores secundarios y clientes se sincronizan con los servidores primarios a través de la subred jerárquica.
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Encapsulado
NTP (Network Time Protocol NTP (Network Time Protocol ))
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• El Demonio NNTPD
Activo / Pasivo simétrico
Retransmisión / Multirretransmisión
Cliente / Servidor
Transmisión Múltiple
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
Cliente / Servidor : también llamado maestro / esclavo, un cliente se sincroniza igual que el modo RPC convencional
Simétrico: permite que cada uno de los dos servidores sincronizarse con otro para proporcionarse copias de seguridad mutuamente
Broadcast: muchos clientes se pueden sincronizar con uno o varios servidores reduciendo el tráfico en la red cuando están involucrados un gran número de clientes
• Configuraciones NTP
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Esquemas de diferentes Configuraciones
Las workstation usan el modo multicast con múltiples servidores de departamento.
Los servidores de departamento usan modoscliente/servidor con múltiples servidoressecundarios (nivel superior en la subred) y modos simétricos los unos con los otros.
Los servidores secundarios usan modoscliente/servidor con mas de seis servidoresexternos, modos simétricos con los otros y un servidor NTP secundario externo.(buddy)
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Aproximaciones a la arquitectura NTP
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Aproximaciones a la arquitectura NTP
Algoritmo de Intersección: Escogen la mejor y descartan el resto
Algoritmo de Cloustering: Escogen la mejor y descartan el resto
Algoritmo de Selección y Combinación: computan la media de los offsets de tiempo.
Filtro del Bucle y variación de la frecuencia del Oscilador (VFO): implementan bloqueos híbridos de la fase y la frecuencia realimentando a los otros filtros para minimizar el jitter y fluctuaciones NTP.
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Proceso de Descomposición
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
• Aplicaciones de NTP• Fisica: la comunicación entre computadoras es mas fácil si loscomputadores están sincronizados y está menos sujeta a desfases • Geofísica: necesita de medidas exactas de tiempo para determinar epicentros de terremotos y así por el estilo.
• Correo electrónico: Fiabilidad en la fecha y hora de los mensajes.• Proxy-cache: En el intercambio de documentos entre servidores es muy importante que los tiempos que cada servidor asocia al documento (últimamodificación, tiempo en la cache, etc...) sean precisos para el correcto funcionamiento de la política de refresco y expiración de documentos de la cache.
• Seguridad en la red: La detección de problemas de seguridad frecuentemente exige poder comparar datos de los acceso de máquinas diferentes, para lo que es imprescindible la coincidencia horaria de las mismas.
NTP (Network Time Protocol NTP (Network Time Protocol ))
SincronizaciSincronización de ón de RelojesRelojes
EXCLUSIÓNEXCLUSIÓN MUTUAMUTUA
SincronizaciSincronización de ón de RelojesRelojes
Exclusión Exclusión mutuamutua• Soluciones para el problema de exclusión
mutua en Sistemas Distribuidos:
Enfoque Centralizado
Enfoque Distribuído
SincronizaciSincronización de ón de RelojesRelojes
Exclusión Exclusión mutuamutua• Para que un algoritmo de exclusión mutua
sea correcto debe ser:
Libre de Interbloqueos
Libre de Esperas Infinitas
Justo
Tolerante a Fallas
SincronizaciSincronización de ón de RelojesRelojes
Exclusión Exclusión mutuamutua• Control Centralizado:
• Control Distribuido:
Un maestro manriene la lista de todos los procesosQue solicitan la entrada a una sección crítica
No existe un solo maestro, todos los nodos toman ladecisión con base al estado global del sistema
SincronizaciSincronización de ón de RelojesRelojes
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala•La idea básica del algoritmo es que el procesoque requiere entrar a su Sección Crítica envíaun mensaje a todos los procesos y entra,únicamente, cuando recibe un reconocimientode todos ellos.
44nn
11
22
33xx
. . .. . .
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala• Construye un mensaje con el nombre de la sección crítica, su número de proceso y la hora actual.
• Envía el mensaje a todos los demás procesos, incluyéndose a sí mismo (Se supone un envío confiable).
• Cuando un proceso recibe un mensaje de solicitud de otro proceso:1. Si el receptor no está en la región crítica y no desea entrar a ella -> OK2. Si el receptor ya está en la región crítica no responde sino que incluye la solicitud en una lista.3. Si el receptor desea entrar a la región crítica pero no lo ha logrado compara la marca de tiempo del mensaje recibido con la marca del mensaje que envió a cada uno. Si el suyo es menor encola la petición, si no envía OK.
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala
11
00
22
88
88 88
1212
1212
1212
•Dos procesos quieren hacer uso de la SecciónCrítica al mismo tiempo. En particular,los procesos 0 y 2 son los involucrados.
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala
11
00
22
OKOK
OKOK
OKOK
Entra a laEntra a laSecciónSecciónCríticaCrítica
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala
11
00
22
OKOK
• Problemas:
1. Si cualquier proceso falla no es posibleresponder a las peticiones hechas (se puedeinterpretar incorrectamente). Probabilidad defalla contra un proceso coordinador es n vecesmayor.
2. Primitiva de comunicación de membresía degrupo.
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala
Algoritmos deAlgoritmos deElecciónElección
SincronizaciSincronización de ón de RelojesRelojes
Algoritmo de Anillo (Chang y Algoritmo de Anillo (Chang y Roberts)Roberts)
• No se conoce la identidad de los otros procesos a priori.
• Sólo existe comunicación entre vecinos (en un sentido).
• Se asume la funcionalidad y alcance de los procesos durante la elección.
SincronizaciSincronización de ón de RelojesRelojes
Variante – Tanenbaum [1992]Variante – Tanenbaum [1992]
1.- Inicialmente cada proceso se marca como “no participante”.
2.- Cualquier proceso puede iniciar la elección.
- Se marca como “participante”.
- Envía un mensaje de “elección” con su ID al vecino.
SincronizaciSincronización de ón de RelojesRelojes
Variante – Tanenbaum [1992]Variante – Tanenbaum [1992]
- IDmensaje > IDreceptor, se reenvía.
- IDmensaje < IDreceptor, y el receptor no es “participante”, se sustituye el ID y se reenvía.
- IDmensaje < IDreceptor, y el receptor es
“participante”, no se reenvía.
- IDmensaje = IDreceptor, este proceso pasa a ser el coordinador.
3.- Cuando se recibe un mensaje de “elección” se compara el ID del mensaje con el propio.
SincronizaciSincronización de ón de RelojesRelojes
Variante – Tanenbaum [1992]Variante – Tanenbaum [1992]
4.- El coordinador se marca como “no participante”, y envía un mensaje de “elegido” con su ID.
5.- Cuando se recibe un mensaje de “elegido” por cualquier otro proceso (no coordinador) se marca como “no participante” y reenvía el mensaje.
SincronizaciSincronización de ón de RelojesRelojes
Variante – Tanenbaum [1992]Variante – Tanenbaum [1992]
• Peor Caso:
Cuando sólo un proceso empieza la elección y su vecino “contrario” es el de mayor ID.
Se envían 3n – 1 mensajes en total.
* n – 1 hasta llegar al vecino de mayor ID
* n mensajes de este vecino a través del anillo
* n mensajes de “elegido”
SincronizaciSincronización de ón de RelojesRelojes
GRACIAS