> Tech > Le programme SNTP serveur

Le programme SNTP serveur

Tech - Par iTPro - Publié le 24 juin 2010
email

Bien que les PC ne soient pas d'une extrême précision en matière d'heure, on peut parfois être amené à  adresser des requêtes d'heure à  un PC. Un programme SNTP serveur PC est plus simple à  coder qu'un client parce que le rôle du serveur se borne à  se lier au

port 123, à  recevoir des requêtes et à  renvoyer des réponses
donnant l’heure courante. Comme le programme client, mon programme serveur utilise
le contrôle MSWINSCK pour communiquer avec l’interface sockets et SNTP.CLS pour
fournir des méthodes permettant de travailler avec les données de message NTP.

La sous-routine Form_Load du programme serveur règle d’abord le protocole pour
les communications sur UDP, règle la propriété LocalPort de MSWINSCK sur SNTPProtocolPort
(port 123 sur le système serveur local), puis tente de se lier au port serveur
:
Winsock1.Protocol = sckUDPProtocol

Winsock1.LocalPort = SNTPProtocolPort

Winsock1.Bind

Quand les données arrivent d’un client, le code dans l’événement MSWINSCK DataArrival
du programme serveur s’exécute. La sous-routine Winsock1_DataArrival reçoit les
données avec l’instruction suivante :

Winsock1.GetData ReceiveData

Pour formuler une réponse appropriée au client, Winsock1_DataArrival doit initialiser
les zones de contrôle dans le message NTP, copier dans la zone d’horodatage Originate
le tampon horodateur Receive provenant du client, et placer l’heure courante dans
la zone d’horodatage Transmit. Winsock1_DataArrival appelle la méthode ServerFormatNTPResponse
de SNTP.CLS pour exécuter ces étapes. Ensuite, la sous-routine renvoie au client
le tampon horodateur NTP formaté, avec la ligne

Winsock1.SendData ServerResponse()

Le contrôle MSWINSCK garde la trace des clients ayant envoyé une requête donnée
via leurs propriétés RemoteHostIP et RemotePort. Quand le programme serveur reçoit
une requête d’un programme client, l’adresse IP et le port client sont placés
automatiquement dans ces propriétés. Ensuite, quand la méthode SendData de MSWINSCK
est invoquée, les propriétés servent à  déterminer la destination de la réponse.

Téléchargez gratuitement cette ressource

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

Téléchargez cette étude Forrester et découvrez comment booster la collaboration tout en dégageant un excellent R.O.I grâce au système de vidéoconférence HP Elite Slice G2 avec Microsoft Teams !

Tech - Par iTPro - Publié le 24 juin 2010