Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

32
Sincronizaci Sincronizaci ón de ón de Relojes Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac

Transcript of Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

Page 1: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

SincronizaciSincronización de ón de RelojesRelojes

Gianfranco AzzatoVerónica Cuello

Vanessa QuintasMarcos Retzignac

Page 2: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos 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.

Page 3: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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.

Page 4: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

NTPNTPNetwork Time ProtocolNetwork Time Protocol

SincronizaciSincronización de ón de RelojesRelojes

Page 5: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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.

Page 6: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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 ))

Page 7: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

SincronizaciSincronización de ón de RelojesRelojes

• Encapsulado

NTP (Network Time Protocol NTP (Network Time Protocol ))

Page 8: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

NTP (Network Time Protocol NTP (Network Time Protocol ))

SincronizaciSincronización de ón de RelojesRelojes

Page 9: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• 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

Page 10: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 11: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• 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

Page 12: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• Aproximaciones a la arquitectura NTP

NTP (Network Time Protocol NTP (Network Time Protocol ))

SincronizaciSincronización de ón de RelojesRelojes

Page 13: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• 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

Page 14: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• Proceso de Descomposición

NTP (Network Time Protocol NTP (Network Time Protocol ))

SincronizaciSincronización de ón de RelojesRelojes

Page 15: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• 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

Page 16: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

EXCLUSIÓNEXCLUSIÓN MUTUAMUTUA

SincronizaciSincronización de ón de RelojesRelojes

Page 17: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 18: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 19: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 20: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

. . .. . .

Page 21: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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.

Page 22: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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.

Page 23: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 24: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

SincronizaciSincronización de ón de RelojesRelojes

Algoritmo de Ricart y AgrawalaAlgoritmo de Ricart y Agrawala

11

00

22

OKOK

Page 25: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

• 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

Page 26: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

Algoritmos deAlgoritmos deElecciónElección

SincronizaciSincronización de ón de RelojesRelojes

Page 27: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 28: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 29: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 30: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 31: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

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

Page 32: Sincronización de Relojes Gianfranco Azzato Verónica Cuello Vanessa Quintas Marcos Retzignac.

GRACIAS