Hallo, fuer ein Projekt wuerde ich gerne einen eigenstaendigen Webserver bauen, der ueber NTP andere Computer im Netz synchronisieren kann. Die entsprechenden DCF77-Funktionen habe ich, nur fehlt mir noch die NTP-Server-Implementation. Momentan arbeite ich mit dem AVR-NET-Board von Pollin, auf dem U. Radigs Webserver einandfrei laeuft. Kann jemand das abschaetzen, wieviel Aufwand das waere, neben der bereits bestehenden Client-Funktionalitaet noch die fuer den Server zu implementieren? Gruss Kricke
NTP ist serverseitig eigentlich sehr trivial, da muss du nur ein paar Felder ausfüllen.
Was meinst du mit Felder ausfuellen? Ich fange gerade erst an, mich in die Materie einzulesen und den Stack von U. Radig zu verstehen, daher bin ich fuer etwaige Hinweise sehr dankbar.
Sowas habe ich später auch vor für meinen eigenen kleinen Server... Ich würde es so angehen: Erstmal Dokumentationen vom NTP-Protokoll anschauen und etwas studieren(http://www.ntp.org/); Danach die einzelnen Befehle von NTP selbst schreiben. Als Tipp: Würde mir mal den C Sourcecode von OpenSource NTP Servern anschauen. Hatte mal welche gefunden, finde aber jetzt keine mehr. Hoffe ich konnte etwas helfen. mfg Laias P.S.: Werd in zirka einem viertel bis halbem Jahr versuchen selber einen NTP Server zu schreiben. Kann mich ja dann noch mal melden.
openntp.org ist momentan wohl einer der meist genutzten ntpds, der ist vom sourcecode her auch noch verständlich. Die RFC (zu SNTP, was aber auch ok ist) findest du hier: http://tools.ietf.org/html/rfc4330 Zum "Felder ausfüllen": Du kriegst vom Client ein Paket mit definierter Grösse (minimum 48 byte)in dem er selbst ein paar Sachen eingetragen hat und du noch ein paar Sachen vervollständigen musst. Die ersten 16 byte sind dabei effektiv statisch. Aus der RFC kannst du entnehmen was da rein muss/sollte. Die nächsten 8 byte kopierst du aus dem Paket was vom Client kommt. Danach trägst du die zeit beim Empfang des Client Pakets ein und dahinter die Zeit beim senden deiner Antwort. Was mir grad noch einfällt. Ich kenne zwar den Webserver von U.R. nicht wirklich, aber u.U. musst du noch UDP implementieren. Das ist aber für sich gesehen auch kein grosser Aufwand und Teile kann man sich da sicher aus dem TCP-Zeug zusammensuchen.
Hi Kricke, im Anhang findest Du Includes fürs NTP. Code ist von (C) 2006 Ingo Busker http://www.mikrocontroller.com Viel Spass beim anpassen! Grüße OLLI
Wenn es nicht unbedingt der Webserver von Radig sein muss und auch ein Linux zum compieleren, dann könntest Du Ethersex [1] nehmen, da ist der NTP-Server schon dabei. Ich weiß jetzt nicht genau ob da auch nen Modul für DCF77 dabei ist, aber ich meine da mal was gesehen zu haben. [1] http://www.ethersex.de
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.