1.2. Overview of the SVCB RR (SVCB RR 概述)
本小节简要描述 SVCB RR, 并前向引用每个组件的完整说明。(如第 6 节所述, 这同样适用于 HTTPS RR, 它共享相同的编码、格式和高层语义。)
SVCB RR 有两种模式: 1) AliasMode (别名模式, 第 2.4.2 节), 将一个名称别名到另一个名称; 2) ServiceMode (服务模式, 第 2.4.3 节), 提供绑定到服务端点域的连接信息。将这两种形式放在单个 RR 类型中, 允许客户端通过单个查询获取相关信息 (第 2.3 节)。
SVCB RR 有两个必需字段和一个可选字段。这些字段是:
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 节) 能够实现 Alt-Svc [AltSvc] 的许多好处, 而无需在了解首选备选方案之前等待完整的 HTTP 连接启动 (多次往返), 并且不一定向网络路径上的所有实体揭示用户的预期目的地。