1.2. Overview of the SVCB RR (SVCB RR の概要)
このサブセクションでは, 各コンポーネントの完全な説明への前方参照を含めて SVCB RR を簡単に説明します。(セクション 6 で説明したように, これはすべて HTTPS RR にも同様に適用されます。HTTPS RR は同じエンコーディング, フォーマット, および高レベルのセマンティクスを共有します。)
SVCB RR には 2 つのモードがあります: 1) AliasMode (エイリアスモード, セクション 2.4.2), 名前を別の名前にエイリアスするモード; 2) ServiceMode (サービスモード, セクション 2.4.3), サービスエンドポイントドメインにバインドされた接続情報を提供するモード。両方の形式を単一の RR タイプに配置することで, クライアントは単一のクエリで関連情報を取得できます (セクション 2.3)。
SVCB RR には 2 つの必須フィールドと 1 つのオプションフィールドがあります。フィールドは次のとおりです:
SvcPriority (セクション 2.4.1): このレコードの優先度 (他のレコードと比較して, 低い値が優先される)。値 0 は AliasMode を示します。
TargetName: エイリアスターゲット (AliasMode の場合) または代替エンドポイント (ServiceMode の場合) のドメイン名。
SvcParams (オプション): TargetName にある代替エンドポイントを記述する key=value ペアのリスト (ServiceMode でのみ使用され, それ以外は無視されます)。SvcParams はセクション 2.1 で説明されています。
協力する DNS 再帰リゾルバは, 後続のレコード解決 (SVCB, A, および AAAA レコード用) を実行し, 応答の Additional セクションでそれらを返します (セクション 4.2)。クライアントは, 再帰リゾルバによって返された Additional セクションに含まれる応答を使用するか, 必要な SVCB, A, および AAAA レコード解決を実行します (セクション 3)。DNS 権威サーバーは, SVCB クエリへの応答の Additional セクションに, 管轄内 (in-bailiwick) の SVCB, A, AAAA, および CNAME レコードを添付できます (セクション 4.1)。
ServiceMode では, SVCB RR の SvcParams は, サービスに対して権威的な代替エンドポイントを記述するための拡張可能なデータモデルと, これらの代替エンドポイントのそれぞれに関連付けられたパラメータを提供します (セクション 7)。
HTTP ユースケースの場合, HTTPS RR (セクション 9) は, 優先される代替を知る前に完全な HTTP 接続の開始 (複数のラウンドトリップ) を待つことなく, また必ずしもユーザーの意図する宛先をネットワークパス上のすべてのエンティティに明らかにすることなく, Alt-Svc [AltSvc] の多くの利点を実現します。