メインコンテンツまでスキップ

6. Protocol Operation (プロトコル操作)

6. Protocol Operation (プロトコル操作)

DNS Push Notification プロトコルは、セッション指向のプロトコルであり、DNS Stateful Operations (DSO) [RFC8490] を利用します。

DSO メッセージ形式の詳細については、DNS Stateful Operations 仕様 [RFC8490] を参照してください。これらの詳細はここでは繰り返しません。

DNS Push Notification クライアントとサーバーは DSO をサポートしなければなりません。単一のサーバーは、同じ TCP ポート上で DNS クエリ、DNS Updates、および DNS Push Notifications (DSO を使用) をサポートできます。

DNS Push Notification 交換は、クライアントがセクション 6.1 で説明されている手順を使用して適切なサーバーを発見し、それに対して TLS/TCP 接続を確立することから始まります。

サーバーへの TLS/TCP 接続を確立した後、典型的な DNS Push Notification クライアントは、DSO セッションを確立し、15 秒のデフォルト値よりも長いセッションタイムアウトおよび/または keepalive 間隔を要求するために、すぐに DSO Keepalive 操作を発行しますが、これは必須ではありません。DNS Push Notification クライアントは、最初にセッション上で他のリクエストを発行し、必要と判断した場合にのみ後で DSO Keepalive 操作を発行してもかまいません。TLS/TCP 接続を介してサーバーに DSO Keepalive 操作または Push Notification サブスクリプションリクエストを送信することで、クライアントの DSO サポートを示し、DSO セッションを確立する役割を果たします。

現在のアクティブなサブスクリプションのセットに従って、サーバーはクライアントに関連する非同期 Push Notifications を送信します。クライアントは、以前に削除したサブスクリプションの Push Notifications を受信する (そして静かに無視する) 準備をしておかなければならないことに注意してください。これは、Push Notification がサーバーからクライアントへ送信中に、クライアントのそのサブスクリプションをキャンセルする UNSUBSCRIBE メッセージが同時にクライアントからサーバーへ送信中である状況を防ぐ方法がないためです。