Citrix ADC

HTTP/3 服务发现

HTTP 协议依赖于对源服务器使用 HTTP 替代服务来宣传等效服务的可用性。HTTP/3 服务发现也使用同样的原则。可以使用以下任何一种方法通告替代 HTTP/3 终端节点:

  • HTTP Alt-SVC 响应标头
  • HTTP/2 响应中的 Alt-SVC 帧
  • 应用层协议协商 (ALPN)

替代服务宣传 HTTP Alt-SVC 响应标头和 HTTP/2 Alt-SVC 帧作为 HTTP/3 终端节点的使用。服务器可以在任何 UDP 端口上提供 HTTP/3 服务。替代服务广告包括显式端口,URL 包含与该方案关联的显式端口或默认端口。

接收备用服务标头或帧的客户端不一定要使用它们。如果客户知道替代服务并且是否支持备用服务机制,则应使用宣传的适当替代服务。换句话说,HTTP/1.1 服务或 HTTP/2 服务可能会通告支持 HTTP/3 协议的等效终端节点。在收到此备用服务信息时,客户可以选择与指定的备用服务建立 QUIC 连接,一旦可用,此连接可用于任何后续请求。如果与所选备用服务建立连接失败,客户端可以回退到原始终端节点。当客户开始使用宣传的替代服务时,将通过添加 Alt-Ut 标题来表示这一点。

Citrix ADC 支持在 HTTP 和 SSL 类型虚拟服务器上广告等效的 HTTP/3 端点。

配置HTTP/3服务发现

完成以下步骤以配置 HTTP/3 服务发现:

  1. 使用 HTTP Alt-SVC 标头配置 HTTP/3 替代服务终端节点
  2. 使用 HTTP/2 Alt-SVC 帧配置 HTTP/3 替代服务终端节点使用 HTTP Alt-SVC 标头 配置 HTTP/3 替代服务终端节点 要使用 HTTP Alt-SVC 标头来通告 HTTP/3 端点,请键入以下命令:

注意:广告替代服务的主要目的是让用户知道也可以在 a.b.c.d:443 上的 HTTP/1.1 或 HTTP/2 服务上访问 HTTP/3 功能。

add ns httpProfile <name> -custom -altsvc [ ENABLED | DISABLED ]
<!--NeedCopy-->

示例:

add ns httpProfile http-profile -altsvc ENABLED -altSvcValue  "h3-29=":443"; ma=3600; persist=1"
<!--NeedCopy-->

set ns httpProfile http-custom -altsvc ENABLED -altSvcValue  "h3-29=":443"; ma=3600; persist=1"
<!--NeedCopy-->

使用 HTTP/2 Alt-SVC 帧配置 HTTP/3 替代服务终端节点

要使用 HTTP/2 Alt-svc 帧通告 HTTP/3 终端节点,请键入以下命令:

add ns httpProfile <name> -custom -altsvc [ ENABLED | DISABLED ] -http2AltSvcFrame [ ENABLED | DISABLED ]
<!--NeedCopy-->

示例:

add ns httpProfile http-custom -http2 ENABLED -http2Direct ENABLED -http2AltSvcFrame ENABLED -altsvc ENABLED -altSvcValue "h3-29=\":443\"; ma=3600; persist=1"

set ns httpProfile http-custom -http2 ENABLED -http2Direct ENABLED -http2AltSvcFrame ENABLED -altsvc ENABLED -altSvcValue "h3-29=\":443\"; ma=3600; persist=1"

使用 GUI 使用 HTTP Alt-SVC 标头值配置 HTTP/3 替代服务

  1. 导航到 系统 > 配置文件 > HTTP 配置文件
  2. 单击添加
  3. 创建 HTTP 配置文件 页面中,转到 HTTP/3 部分,然后选中 替代服务 复选框。
  4. 系统会在 http2 部分中显示 替代服务价值 文本框。
  5. 输入替代服务值为 “h3-29=” :443”;ma=3600;持续 =1”
  6. 单击确定关闭

使用 HTTP Alt-SVC 标头配置 HTTP/3 替代服务

HTTP/3 服务发现