Codierung der Zeit im NTP-Datenpaket

OP #5658612
Lesenswert?

Hallo liebe Community,

ich beschäftige mich zur Zeit ein wenig mit NTP, Zeitservern und der 
Unix-Zeit.

So wie ich das nach dem studieren diverser Webseiten verstehe, gibt eine 
NTP-Abfrage die Zeit in Sekunden seit dem 01.01.1990 00:00 Uhr zurück. 
Ist das soweit korrekt?

Und die Unix-Zeit läuft seit dem 01.01.1970 00:00, wenn ich das korrekt 
verstanden habe.

Nun habe ich unter
https://circuits4you.com/2018/01/02/esp8266-nodemcu-ntp-time-clock/
einen Code gefunden, der aus der NTP-Zeit die Unix-Zeit berechnet, in 
dem er von der NTP-Zeit 2.208.988.800 Sekunden abzieht.

Wenn ich das nachrechne, so komme ich zu folgendem Ergebnis:
Zwischen 01.01.1900 und 01.01.1970 liegen exakt 18 Schalt- und 52 
Normaljahre
1 Schaltjahr hat 3600*24*366 = 31.622.400 Sekunden
18 Schaltjahre haben demnach 18*31.622.400 Sekunden = 569.203.200 
Sekunden
1 Normaljahr hat 3600*24*365 = 31.536.000 Sekunden
52 Normaljahre haben demnach 52*31.536.000 Sekunden = 1.639.872.000 
Sekunden
Zusammen macht das: 2.209.075.200 Sekunden
Das macht zu 2.208.988.800 Sekunden eine Differenz von 86400 Sekunden 
(entspricht exakt 1 Tag).

Kann mir einer von euch vielleicht erklären, wo da der Fehler liegt?
Ist zwischen 1900 und 1970 irgendwo ein Tag verloren gegangen, oder habe 
ich irgendwas falsch verstanden?

Vielen Dank für eure Hilfe im Vorraus.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren