6. Protocol Operation
6. Protocol Operation
Le protocole DNS Push Notification est un protocole orienté session qui utilise DNS Stateful Operations (DSO) [RFC8490].
Pour plus de détails sur le format des messages DSO, consultez la spécification DNS Stateful Operations [RFC8490]. Ces détails ne sont pas répétés ici.
Les clients et serveurs DNS Push Notification doivent prendre en charge DSO. Un seul serveur peut prendre en charge les requêtes DNS, les DNS Updates et les DNS Push Notifications (utilisant DSO) sur le même port TCP.
Un échange DNS Push Notification commence par la découverte du serveur approprié par le client, en utilisant la procédure décrite dans la section 6.1, puis en établissant une connexion TLS/TCP avec celui-ci.
Après avoir établi la connexion TLS/TCP avec le serveur, un client DNS Push Notification typique émettra immédiatement une opération DSO Keepalive pour établir la session DSO et demander un délai d'expiration de session et/ou un intervalle keepalive plus long que les valeurs par défaut de 15 secondes, mais cela n'est pas obligatoire. Un client DNS Push Notification peut émettre d'autres requêtes sur la session en premier, et n'émettre une opération DSO Keepalive que plus tard s'il détermine que cela est nécessaire. L'envoi d'une opération DSO Keepalive ou d'une requête d'abonnement Push Notification via la connexion TLS/TCP au serveur signale la prise en charge de DSO par le client et sert à établir une session DSO.
Conformément à l'ensemble actuel d'abonnements actifs, le serveur envoie les Push Notifications asynchrones pertinentes au client. Notez qu'un client doit être préparé à recevoir (et ignorer silencieusement) les Push Notifications pour les abonnements qu'il a précédemment supprimés, car il n'y a aucun moyen d'empêcher la situation où une Push Notification est en transit du serveur vers le client tandis que le message UNSUBSCRIBE du client annulant cet abonnement est simultanément en transit du client vers le serveur.