Chaque jour, l'horloge d'un PC standard peut gagner ou perdre quelques secondes. Le seul fait d'éteindre et de rallumer un PC peut la modifier de plusieurs secondes. Une poignée d'anomalies du système d'exploitation risquent d'affecter l'heure de l'horloge du PC. Ainsi, si l'on ouvre l'application horloge Windows 95/98 depuis le
Le programme SNTP Client

Panneau de Configuration (Date/Heure) ou sur la barre des tâches et si l’on
modifie le mois ou l’année, l’horloge du PC recule de plusieurs secondes. La plupart
des applications PC tolèrent une différence de quelques secondes, voire de quelques
minutes. Mais s’il faut vraiment préserver l’exactitude de l’horloge, il faut
la synchroniser périodiquement à l’aide d’une source externe plus précise, comme
un serveur NTP sur Internet ou sur l’AS/400.
Il est possible de télécharger l’un des nombreux sharewares peu coûteux et clients
SNTP gratuits à partir d’Internet, pour synchroniser son PC avec un serveur NTP
(l’encadré « Ressources » indique plusieurs sources de sharewares). Mes programmes
serveur et client SNTP peuvent être téléchargés gratuitement (depuis le site de
NEWSMAGAZINE, http://www.newsmag.com).
Mais l’objet du présent article est de montrer comment coder sa propre application
sockets client/serveur. Avec ces mêmes techniques, vous pourrez ensuite coder
d’autres types d’applications de communications TCP/IP.
Comme je l’ai déjà indiqué ci-dessus, le programme client SNTP laisse à l’utilisateur
le soin de sélectionner un serveur NTP dans une liste ou d’entrer le nom ou l’adresse
d’un serveur. La seule autre propriété MSWINSCK cmdSynchronize_Click doit être
définie avant que des communications puissent avoir lieu dans l’adresse IP du
serveur sélectionné.
Une fois l’adresse IP définie, cmdSynchronize_Click appelle la sous-routine ClientFormatSNTPRequest,
implémentée comme une méthode SNTP.CLS, pour formater la demande de message SNTP
du client à envoyer au serveur. Pour compléter la requête du client, on invoque
la méthode SendData de MSWINSCK pour transmettre les données. Une fois la requête
transmise, le client attend une réponse.
Le contrôle MSWINSCK facilite la réception de données provenant d’un autre programme
parce qu’il fournit un événement DataArrival. Dès que les données arrivent sur
le port socket, tout le code placé dans cet événement s’exécute. En outre, l’événement
DataArrival procure un paramètre indiquant le nombre d’octets reçus.
La sous-routine Winsock1_DataArrival (figure 5) reçoit d’abord les données réelles
puis invoque la méthode SNTP.CLS ClientSetTimeFromServerResponse pour régler l’horloge
du PC à partir de la réponse du serveur. Selon la RFC 2030, la méthode vérifie
la validité de plusieurs zones et calcule la différence entre le tampon horodateur
NTP et l’heure locale courante, pour obtenir un décalage d’horloge locale. Décalage
qu’utilise la méthode pour mettre à jour l’horloge du PC. Une fois l’horloge mise
à jour, le client n’a plus rien à faire. Il est libre d’envoyer des requêtes à
d’autres serveurs ou de terminer le programme.
Téléchargez cette ressource

Sécurité et gouvernance des applications d’IA
Les applications d’IA se multipliant dans les entreprises, ces dernières se doivent d’établir un cadre de gouvernance qui tient compte des risques de sécurité et des défis associés. Ce livre blanc vous offre les connaissances et les outils nécessaires à une gouvernance garante de la sécurité de vos applications d’IA.
Les articles les plus consultés
- Afficher les icônes cachées dans la barre de notification
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Une baie de stockage c’est quoi ?
Les plus consultés sur iTPro.fr
- Quel impact d’une cyberguerre sur les organisations ?
- Menaces cyber sur le secteur énergétique européen !
- Les stratégies IA pour la survie de l’entreprise !
- Protégez l’accès non authentifié de vos réunions
- Télécommunications et durabilité : les défis d’une transition verte dans un secteur en mutation
