Ya es hora de dejar el 'segundo intercalar' en el pasado
(engineering.fb.com)- El segundo intercalar (Leap Second) se introdujo para corregir la diferencia entre UT1 (tiempo universal), que surge por la velocidad de rotación de la Tierra, y UTC.
- Esto permite usar UTC para diversos fines, como la observación astronómica, por lo que ha beneficiado sobre todo a científicos y astrónomos.
- Si no se ajusta UTC, hay que corregir equipos y software legacy que están sincronizados con UTC para observaciones astronómicas.
- Desde que se propuso el segundo intercalar hasta hoy, UTC se ha ajustado un total de 27 veces.
- En 1972, el segundo intercalar era una solución aceptable que satisfacía tanto a la comunidad científica como a la industria de las telecomunicaciones, pero hoy UTC ya no resulta conveniente ni para las aplicaciones digitales ni para los científicos.
→ A menudo ellos eligen TAI (International Atomic Time, Tiempo Atómico Internacional) o UT1. - Meta está apoyando los esfuerzos de la industria para dejar de introducir segundos intercalares en el futuro y mantener el nivel actual de 27.
- Consideran que introducir nuevos segundos intercalares es una práctica riesgosa que trae más costos que beneficios, y que ya es momento de adoptar nuevas tecnologías que los reemplacen.
Leap of Faith
- Uno de los muchos factores que contribuyen a la irregularidad de la rotación terrestre es que la nieve y el hielo perpetuos de las montañas más altas del mundo continúan derritiéndose y volviéndose a congelar.
- Esto se puede visualizar fácilmente si pensamos en una patinadora artística girando.
- Hasta ahora solo ha habido segundos intercalares positivos, así que bastaba con insertar un segundo adicional,
23:59:60, entre23:59:59y00:00:00, pero a medida que cambia el patrón de rotación de la Tierra, es muy probable que en algún momento del futuro ocurra un segundo intercalar negativo.
Entonces, después de23:59:58tendría que venir00:00:00. - El impacto de este segundo intercalar negativo nunca se ha probado a gran escala, y podría tener efectos críticos sobre software que depende de temporizadores o planificadores.
Smearing
- Más recientemente, se ha vuelto una práctica común simplemente retrasar o adelantar el reloj para aplicar gradualmente el segundo intercalar mediante "smearing".
- No existe un método universal para hacerlo, pero en Meta aplican el segundo intercalar desde
00:00:00a lo largo de 17 horas. - Como cientos de servidores NTP lo realizan juntos en Stratum 2, si el smearing es demasiado grande, los clientes NTP pueden considerarlo un error y excluirlos del quorum, lo que podría convertirse en una caída del servicio.
- Empezar en
00:00:00tampoco está estandarizado, así que puede haber varias opciones.
→ Por ejemplo, una empresa determinada podría empezar a las12:00:00 UTCy extenderlo durante 24 horas. - Además, dentro del smearing también existen otros algoritmos: ajuste de segundo intercalar en el kernel, Linear Smearing y Quadratic (el que usa Meta).
- Todo esto requiere lógica de conversión importante, incluido el propio Time Appliance de Meta.
- Si un servidor NTP se reinicia durante este período de smearing, los tiempos "Old" y "New" pueden llegar a los clientes y provocar una caída del servicio.
The negative impact of Leap Seconds
- Los segundos intercalares y su offset causan problemas en toda la industria.
- La forma más fácil de provocar una caída es programar asumiendo que el tiempo siempre avanza hacia adelante.
start := time.Now()
// do something
spent := time.Now().Sub(start)
- Dependiendo de cómo se use
spent, durante el período del segundo intercalar podría volverse negativo. - Reddit sufrió una interrupción masiva en 2012 debido al segundo intercalar, y el sitio estuvo inaccesible durante 30 a 40 minutos.
- Cloudflare publicó en 2017 un artículo detallado sobre el impacto en el DNS público de la empresa.
Moving beyond the leap second
- Los eventos de segundo intercalar causan problemas en toda la industria y siguen implicando muchos riesgos.
- En la práctica diaria, nos topamos con problemas cada vez que se introduce un segundo intercalar.
- Y como son eventos muy poco frecuentes, cada vez que ocurren las comunidades quedan descolocadas.
- A medida que aumenta la demanda de precisión de los relojes en todos los sectores industriales, el segundo intercalar ahora trae más desventajas que ventajas y provoca caídas del servicio.
- Como ingenieros de Meta, brindamos un fuerte apoyo para detener la introducción de futuros segundos intercalares y mantener el nivel actual de 27, que consideramos suficiente para el próximo milenio.
5 comentarios
¡Vaya, qué tema tan interesante! Pero mmm… entiendo que agregar un segundo intercalar es algo importante, pero no logré entender qué gran esfuerzo se está haciendo para mantener esos 27 segundos.
Probablemente se refiere a cosas como estas
https://es.news.hada.io/topic?id=1752
El título del artículo suena algo extraño.
El título del mensaje enviado por un bot de Twitter o de Slack está bien, pero lo que se ve en el sitio aparece raro.
Ups, parece que había algo raro. Ya lo corregí.