Kolloquiumsvortrag: 28. Juli 2015, Frank Hiesinger


Optimierung eines Netzwerkzeitservers auf dem Raspberry Pi

NTP-Server können mit Hilfe von Sekundensignalen (PPS) präzisiert werden. Die Verarbeitung dieser Signale erfolgt in Interruptroutinen, deren Latenz von Faktoren wie CPU- und IO-Aktivität stark beeinflusst wird. Trotz NTP-eigener Filteralgorithmen wirken sich diese Schwankungen negativ auf die Zeithaltung aus, sodass Verzögerungen im zweistelligen Mikrosekundenbereich auftreten.
Im Rahmen der Arbeit wurde ein NTP-Server auf einem Raspberry Pi eingesetzt. Dazu stellte ein u-Blox GPS-Empfänger ein hochpräzises PPS-Signal bereit. In einem ersten Schritt wurde die Latenz des zeitverarbeitenden Interrupts mit einer externen Uhr bestimmt. Daraufhin wurde die gemessene Verzögerung verwendet, um die verfälschten Zeitstempel dynamisch zu korrigieren. Schließlich wurde untersucht, auf welche Art die neuen Zeitstempel eingespeist werden müssen, um eine möglichst genaue Zeithaltung zu erreichen. Durch die getroffenen Maßnahmen kann die Abweichung der lokalen Uhr auf unter eine Mikrosekunde minimiert werden.

Ort: Raum 04.137, Martensstr. 3, 91058 Erlangen