15 Punkte von xguru 2022-07-26 | 5 Kommentare | Auf WhatsApp teilen
  • Die Schaltsekunde (Leap Second) wurde eingeführt, um die Differenz zwischen UT1 (Weltzeit) und UTC zu korrigieren, die durch die Rotationsgeschwindigkeit der Erde entsteht
  • Dadurch kann UTC für verschiedene Zwecke wie astronomische Beobachtungen verwendet werden, was vor allem Wissenschaftlern und Astronomen zugutekommt
  • Ohne Anpassung von UTC müssten Legacy-Geräte und -Software, die für astronomische Beobachtungen mit UTC synchronisiert sind, korrigiert werden
  • Seit dem Vorschlag der Schaltsekunde wurde UTC bis heute insgesamt 27-mal angepasst
  • 1972 war die Schaltsekunde eine akzeptable Lösung, die sowohl die Wissenschaft als auch die Telekommunikationsbranche zufriedenstellte, heute ist UTC in dieser Form jedoch weder für digitale Anwendungen noch für Wissenschaftler gut geeignet
    → Sie wählen häufig TAI (International Atomic Time, Internationale Atomzeit) oder UT1
  • Meta unterstützt die Bemühungen der Branche, die Einführung weiterer Schaltsekunden künftig zu stoppen und den aktuellen Stand von 27 beizubehalten
  • Die Einführung neuer Schaltsekunden ist eine riskante Praxis, deren Nachteile die Vorteile überwiegen, und es ist an der Zeit, neue Technologien als Ersatz einzuführen

Leap of Faith

  • Einer der vielen Faktoren, die zur Unregelmäßigkeit der Erdrotation beitragen, ist das fortwährende Schmelzen und Wiedergefrieren des ewigen Schnees auf den höchsten Bergen der Welt
  • Das lässt sich leicht veranschaulichen, wenn man an eine sich drehende Eiskunstläuferin denkt
  • Bisher gab es nur positive Schaltsekunden, daher musste man lediglich eine zusätzliche Sekunde 23:59:60 zwischen 23:59:59 und 00:00:00 einfügen,
    mit der Veränderung des Rotationsmusters der Erde ist es jedoch wahrscheinlich, dass es irgendwann in der Zukunft zu einer negativen Schaltsekunde kommt
    Dann müsste auf 23:59:58 direkt 00:00:00 folgen.
  • Die Auswirkungen dieser negativen Schaltsekunde wurden nie in großem Maßstab getestet und könnten für Software, die auf Timer oder Scheduler angewiesen ist, verheerend sein

Smearing

  • In jüngerer Zeit ist es gängige Praxis geworden, die Schaltsekunde schrittweise per „Smearing“ einzubringen, indem Uhren einfach verlangsamt oder beschleunigt werden
  • Es gibt keine universelle Methode dafür, aber Meta smeart die Schaltsekunde ab 00:00:00 über einen Zeitraum von 17 Stunden
  • Da Hunderte von NTP-Servern gemeinsam auf Stratum 2 arbeiten, können NTP-Clients bei zu starkem Smearing annehmen, dass ein Fehler vorliegt, und den Server aus dem Quorum ausschließen, was zu einem Outage führen kann
  • Auch der Beginn um 00:00:00 ist nicht standardisiert, daher sind verschiedene Optionen möglich
    → Beispielsweise könnte ein bestimmtes Unternehmen bei 12:00:00 UTC beginnen und den Vorgang über 24 Stunden durchführen
  • Auch für das Smearing selbst gibt es verschiedene Algorithmen: Kernel-Schaltsekundenkorrektur, Linear Smearing, Quadratic (von Meta verwendet)
  • All dies erfordert wichtige Transformationslogik, einschließlich Metas eigener Time Appliance
  • Wenn ein NTP-Server während dieses Smearing-Zeitraums neu startet, können „alte“ und „neue“ Zeiten an Clients ausgeliefert werden, was zu einem Outage führen kann

The negative impact of Leap Seconds

  • Schaltsekunden und ihre Offsets verursachen branchenweit Probleme
  • Der einfachste Weg zu einem Outage besteht darin, Code unter der Annahme zu schreiben, dass Zeit immer nur vorwärts läuft

start := time.Now()
// do something
spent := time.Now().Sub(start)

  • Je nachdem, wie spent verwendet wird, kann dieser Wert während einer Schaltsekundenperiode negativ werden
  • Reddit erlitt 2012 wegen einer Schaltsekunde einen großflächigen Ausfall, und die Website war 30 bis 40 Minuten lang nicht erreichbar
  • Cloudflare veröffentlichte 2017 einen detaillierten Beitrag über die Auswirkungen auf das öffentliche DNS des Unternehmens

Moving beyond the leap second

  • Schaltsekundenereignisse verursachen branchenweit Probleme und bergen weiterhin erhebliche Risiken
  • Im operativen Alltag stoßen wir jedes Mal auf Probleme, wenn eine Schaltsekunde eingeführt wird
  • Und weil es sich um ein sehr seltenes Ereignis handelt, werden Communities bei jedem Auftreten erneut stark belastet
  • Da in allen Industriebereichen der Bedarf an Uhrengenauigkeit steigt, bringen Schaltsekunden inzwischen mehr Schaden als Nutzen und verursachen Outages
  • Als Ingenieure bei Meta unterstützen wir nachdrücklich das Ziel, die Einführung weiterer Schaltsekunden künftig zu beenden und den aktuellen Stand von 27 beizubehalten, was unserer Ansicht nach für das nächste Jahrtausend ausreichen wird

5 Kommentare

 
galadbran 2022-07-26

Wow, ein unglaublich spannendes Thema! Aber hm … ich verstehe zwar, dass das Einfügen einer Schaltsekunde eine große Sache ist, aber ich habe nicht verstanden, welche großen Anstrengungen unternommen werden, um diese 27 Sekunden beizubehalten.

 
budlebee 2022-07-26

Ich denke, das ist wahrscheinlich gemeint.

https://de.news.hada.io/topic?id=1752

 
dodok8 2022-07-26

Der Titel des Artikels wirkt etwas merkwürdig.

 
dodok8 2022-07-26

Der Titel der Nachricht, die von einem Twitter-Bot oder Slack-Bot gesendet wurde, ist in Ordnung, aber auf der Website sieht er merkwürdig aus.

 
xguru 2022-07-26

Ups, da scheint etwas nicht gestimmt zu haben. Ich habe es korrigiert.