Que peut-on faire pour améliorer la synchronisation de l'heure sur les réseaux avec un accès Internet sporadique?

14

Je suis à la recherche de conseils pour configurer des serveurs horaires pour un réseau très inhabituel. Je soutiens de nombreux réseaux fermés qui ont un accès occasionnel à Internet. Un réseau aurait accès la plupart des jours pendant quelques heures, mais allait souvent disparaître de 1 à 3 semaines. Les ordinateurs / serveurs de ce réseau sont principalement basés sur * nix, mais pas tous de la même saveur. L'ensemble du réseau est mobile, donc lorsqu'il se connecte, il aura des sauts / latences très différents des serveurs de temps Internet. Les serveurs du réseau fermé sont fréquemment mis hors tension (au moins quotidiennement). En ce moment, mon instinct me dit d'utiliser NTP (parce que je déteste réapprendre tout ce que quelqu'un d'autre a déjà assez bien travaillé). Mais j'ai plusieurs problèmes et je cherche quelqu'un avec de l'expérience dans ce type de situation étrange. Je n'ai actuellement aucune solution en place, je ' m laisser simplement dériver les horloges internes. Il en résulte des erreurs de ~ 600s dans la majorité des réseaux. J'ai vu un décalage pire que 10 000.

  1. Y a-t-il quelque chose de "meilleur" que NTP dans cette situation? Je sais que NTP aime avoir un accès très fréquent et cohérent à des serveurs qui donnent des réponses presque identiques. Je n'aurai pas ça.
  2. Combien de serveurs NTP internes dois-je configurer, de sorte que pendant les périodes de coupure Internet, je dispose d'un temps interne cohérent au sein du réseau fermé?
  3. Il n'y a pas d'accès humain. Quelle que soit l'ampleur de la non-concordance, le ou les serveurs doivent tenter de se corriger.
  4. Les étapes discrètes sont très mauvaises. Quelle que soit l'ampleur de la non-concordance, la correction doit être "orientée" et non "échelonnée". Je comprends que cela pourrait prendre plusieurs heures à corriger.
anregen
la source
7
On dirait que vous devez retirer le temps du GPS.
Michael Hampton
Je pense que les tours cellulaires pourraient avoir une sorte de système de timecode, que vous pourriez peut-être utiliser. Ou tout simplement un point d'accès mobile.
Sobrique
@Sobrique D'après mon expérience, le temps que vous obtenez des tours de téléphonie cellulaire est généralement de plusieurs secondes par rapport au temps que vous obtenez du NTP. Parfois, il peut même être éteint de quelques minutes. J'ai tendance à penser que lorsqu'ils sont en désaccord, c'est le NTP, qui a raison. Je ferais confiance au GPS pour garder l'heure exacte parce que je sais que l'heure exacte est une condition préalable pour que le GPS fonctionne en premier lieu.
kasperd

Réponses:

23

Autrefois, la mise en place d'un serveur NTP stratum-1 était très difficile, car les sources stratum-0 étaient très chères, extrêmement délicates et généralement radioactives.

De nos jours, nous avons le GPS, qui fonctionne d'ailleurs comme une horloge radio extrêmement précise. Vous pouvez acheter un serveur dédié stratum-1 contenant un récepteur GPS comme source de temps stratum-0 pour des prix tout à fait raisonnables, ou avec un peu d'ingéniosité, vous pouvez attacher une unité GPS décente de qualité grand public à un serveur aléatoire, et configurer NTP en conséquence pour vous donner votre propre serveur stratum-1. Le premier est meilleur pour une meilleure disponibilité.

Faites l'une de ces choses et vous aurez un seul serveur stratum-1 sur votre réseau auquel tout le monde pourra se synchroniser. Un seul suffit; tout le monde y sera synchronisé pendant qu'il est en hausse, et s'il baisse, tous les clients auront probablement une bonne idée de leurs taux de dérive, donc ils ne devraient pas dériver trop loin avant qu'il ne revienne, moment auquel ils vais y resynchroniser doucement.

Je ne vois aucune raison de ne pas passer du bon temps, même avec un accès Internet intermittent.

Chapelier Fou
la source
J'aime beaucoup ce plan et je vais lui faire un tourbillon. Nous avons même des récepteurs GPS déjà sur place, il nous suffit donc de faire fonctionner NTP et de connecter la sortie GPS au serveur.
anregen
Anregen, pardonnez-moi de le mentionner si vous le savez déjà: l'étiquette locale est que lorsque vous êtes satisfait d'une réponse à votre question, vous l'acceptez en cliquant sur le contour "coche" à côté. Cela stimule à la fois le système de réputation SF pour vous et l'auteur de la réponse, et cela empêche la question de flotter pour toujours comme un albatros querelleux.
MadHatter
1
La seule raison pour laquelle je m'arrête, c'est que je veux m'assurer de pouvoir contourner l'heure de démarrage sur le GPS. Il y aura un moment pendant le démarrage du système, pendant lequel le gps acquiert des satellites et ne rapporte pas d'informations précises sur l'heure. Si je peux contourner cela efficacement, je choisirai certainement cette réponse. Merci encore!
anregen
1
L'horodatage de pré-acquisition signalé est 0/0/0 0: 0: 0, il est donc extrêmement facile à identifier. Je dois juste finir d'écrire le code pour filtrer cela, alors j'aurai un excellent système. Merci encore!
anregen
0

Semblable à l'autre réponse déjà acceptée, je doute que vous puissiez le faire sans avoir une source de temps externe disponible car votre connexion réseau n'est tout simplement pas assez bonne.

En tant que solution alternative à un GPS, je veux suggérer un récepteur de signal d'horloge atomique externe ou une horloge radio . L'idée de base est que vous recevez des signaux radio de l'une des rares stations de radiodiffusion d'horloge atomique dans le monde.

Ceux-ci peuvent être achetés en kits ou fabriqués à très bon marché vous-même en fonction de votre budget. Ceux-ci devraient être plus précis qu'un GPS, car un GPS peut s'éteindre jusqu'à 12 secondes: http://www.gpsinformation.net/main/gpstime.htm .

Voici un guide pour créer un récepteur d'horloge radio atomique avec un Raspberry Pi: http://www.rs-online.com/designspark/electronics/blog/atomic-time-for-the-raspberry-pi

Et un autre fil de bricolage pour créer une horloge radio très bon marché: http://www.micro-examples.com/public/microex-navig/doc/100-p16f84-led-dcf-clock.html

Juste une idée ;)

JensB
la source
1
Vous voyez, j'étais nerveux quand vous avez dit "horloge atomique bon marché" parce que ... eh bien, fondamentalement, vous mesurez les vibrations atomiques, ce qui n'est pas anodin. Cependant, celui qui a reçu le signal d'horloge atomique est une autre marmite de poisson, et c'est une très bonne idée. Le seul inconvénient est que la réception a tendance à être mauvaise pendant la journée.
Sobrique
Apporté quelques modifications pour clarifier ce que je voulais dire :)
JensB