Citrix ADC

HTTP/3配置和统计汇总

要配置HTTP/3协议,使用QUIC发送多个HTTP/3数据流,必须完成以下步骤:

  1. 启用SSL和负载均衡特性。
  2. 添加HTTP_QUIC类型的负载均衡和内容切换(可选)虚拟服务器。
  3. 将QUIC协议参数与HTTP_QUIC虚拟服务器关联。
  4. 在HTTP_QUIC虚拟服务器上启用HTTP/3。
  5. 与HTTP_QUIC虚拟服务器绑定SSL证书密钥对。
  6. 将SSL/TLS协议参数与HTTP_QUIC虚拟服务器关联。

启用SSL和负载均衡

在开始之前,请确保在设备上启用了SSL和负载平衡特性。在命令提示符中键入:

启用ns特性SSL lb 

为HTTP/3服务添加类型为HTTP_QUIC的负载均衡和内容切换(可选)虚拟服务器

您添加了一个负载均衡虚拟服务器,以通过QUIC接受HTTP/3流量。注意:类型为HTTP_QUIC的负载平衡虚拟服务器具有内置的QUIC、SSL和HTTP3配置文件。如果您喜欢创建用户定义的概要文件,您可以添加新的概要文件并将其绑定到负载平衡虚拟服务器。

add lb vserver  HTTP_QUIC   add cs vserver  HTTP_QUIC   

例子:

add lb vserver lb-http3 HTTP_QUIC 1.1.1.1 443add cs vserver cs-http3 HTTP_QUIC 10.10.10.10

将QUIC协议参数与HTTP_QUIC虚拟服务器关联

您可以创建QUIC配置文件,为QUIC服务指定QUIC参数,并将其关联到负载均衡虚拟服务器。您必须创建用户定义的概要文件,或者使用内置的QUIC概要文件并将该概要文件绑定到负载平衡虚拟服务器。

步骤1:配置自定义QUIC配置文件在命令提示符中输入:

设置quic profile  -transport_param  

例子:

4 .设置quic profile quic_http3 -ackDelayExponent -activeConnectionIDlimit

不同的QUIC传输参数如下:

-ackDelayExponent。由Citrix ADC发布给远程QUIC端点的整数值,指示远程QUIC端点应该使用的指数,用于解码由Citrix ADC发送的QUIC ACK帧中的ACK Delay字段。

-activeConnectionIDlimit。由Citrix ADC发布给远程QUIC端点的整数值。它指定Citrix ADC愿意存储的来自远程QUIC端点的QUIC连接id的最大数量。

-activeConnectionMigration。指定Citrix ADC是否必须允许远程QUIC端点执行活动QUIC连接迁移。

-congestionCtrlAlgorithm。指定用于QUIC连接的拥塞控制算法。

-initialMaxData。由Citrix ADC发布给远程QUIC端点的整数值,以字节为单位指定QUIC连接上可以发送的最大数据量的初始值。

-initialMaxStreamDataBidiLocal。由Citrix ADC向远程QUIC端点发布的整数值,指定由Citrix ADC发起的双向QUIC流的初始流控制限制(以字节为单位)。

-initialMaxStreamDataBidiRemote。由Citrix ADC发布给远程QUIC端点的整数值,指定由远程QUIC端点发起的双向QUIC流的初始流控制限制(以字节为单位)。

-initialMaxStreamDataUni。由Citrix ADC发布给远程QUIC端点的整数值,指定由远程QUIC端点发起的单向流的初始流控制限制(以字节为单位)。

-initialMaxStreamsBidi。由Citrix ADC发布给远程QUIC端点的整数值,指定远程QUIC端点必须初始化的双向流的初始最大数量。

-initialMaxStreamsUni。由Citrix ADC发布给远程QUIC端点的整数值,指定远程QUIC端点必须初始化的单向流的初始最大数量。

-maxAckDelay。Citrix ADC向远程QUIC端点发布的整数值,指定Citrix ADC延迟发送确认的最大时间(以毫秒为单位)。

-maxIdleTimeout。Citrix ADC向远程QUIC端点发布的整数值,指定QUIC连接的最大空闲超时(以秒为单位)。处于空闲状态的QUIC连接,超过Citrix ADC和远程QUIC端点发布的空闲超时值的最小值,并且是当前探测超时(PTO)的三倍,将被Citrix ADC静默丢弃。

-maxUDPPayloadSize。由Citrix ADC向远程QUIC端点发布的整数值,指定Citrix ADC在QUIC连接上愿意接收的最大UDP数据报有效载荷的大小(以字节为单位)。

-newTokenValidityPeriod。一个整数值,指定通过Citrix ADC发送的QUIC NEW_TOKEN帧发出的地址验证令牌的有效期,单位为秒。-retryTokenValidityPeriod。一个整数值,指定通过Citrix ADC发送的QUIC重试数据包发出的地址验证令牌的有效期(以秒为单位)。-statelessAddressValidation。指定Citrix ADC是否必须对QUIC客户端执行无状态地址验证,通过在QUIC连接建立期间在QUIC重试数据包中发送token,以及在QUIC连接建立后在QUIC NEW_TOKEN帧中发送token。

步骤2:将用户定义的QUIC配置文件关联到类型为http_quic的负载均衡虚拟服务器

在命令提示符下,输入:

set lb vserver @ [-IPAddress @] @] [-persistenceType ] [-quicProfileName ] 

例子:

设置lb vserver lb-http3 -quicProfileName quic_http3

在HTTP_QUIC虚拟服务器上启用并绑定HTTP/3

要在HTTP_QUIC虚拟服务器上启用HTTP/3,需要将一组配置参数添加到HTTP概要配置中。为了简化配置,当您添加HTTP_QUIC虚拟服务器时,设备上有一个新的默认/内置HTTP概要文件可用。概要文件将HTTP/3协议支持参数设置为ENABLED,并且还绑定到HTTP_QUIC虚拟服务器(如果您选择不将HTTP_QUIC虚拟服务器与用户添加的HTTP概要文件关联,则适用)。HTTP配置文件中的HTTP/3参数的值决定了在QUIC协议握手时处理TLS ALPN(应用层协议协商)扩展时是否选择HTTP/3协议并发布。

您可以创建HTTP/3配置文件,并为HTTP/3服务和负载均衡虚拟服务器指定HTTP参数。您必须要么创建用户定义的概要文件,要么使用内置的HTTP/3概要文件,并将该概要文件绑定到负载均衡虚拟服务器。

步骤1:配置用户定义的HTTP/3配置文件在命令提示符中输入:

添加ns httpProfile  -http3 ENABLED 

例子:

添加ns httpProfile http3_quic -http3 ENABLED

步骤2:将用户定义的HTTP/3配置文件绑定到类型为http_quic的负载均衡虚拟服务器在命令提示符中输入:

set lb vserver @ [-IPAddress @] @] [-persistenceType ] [-httpProfileName ] 

例子:

设置lb vserver lb-http3 -httpProfileName http3_quic

与HTTP_QUIC虚拟服务器绑定SSL证书密钥对

处理加密流量时,需要添加SSL证书密钥对,并将其绑定到HTTP_QUIC虚拟服务器。

在命令提示符下,输入:

绑定ssl vserver  -certkeyName  

例子:

绑定ssl vserver lb-http3 -certkeyName rsa_certkeypair

有关更多信息,请参见绑定SSL证书的话题。

将SSL/TLS协议参数与HTTP_QUIC虚拟服务器绑定

HTTP_QUIC类型的虚拟服务器具有内置的TLS 1.3服务器功能,因为QUIC协议使用TLS 1.3作为强制安全组件。在添加HTTP_QUIC虚拟服务器时,为了方便配置,将添加一个新的默认或内置的- QUIC-FrontEnd类型的SSL配置文件。SSL配置文件启用TLS 1.3版本,并配置了TLS 1.3密码套件(和椭圆曲线)。然后必须将SSL配置文件绑定到新添加的HTTP_QUIC虚拟服务器。为TLP 1.1服务和负载均衡虚拟服务器创建SSL配置文件,并指定SSL加密参数。您必须创建用户定义的概要文件,或者使用内置的SSL概要文件并将该概要文件绑定到负载平衡虚拟服务器。

步骤1:配置自定义SSL配置文件在命令提示符中输入:

add sslprofile  -sslprofileType QUIC-FrontEnd 

例子:

add sslprofile ssl_profile1 -sslprofileType QUIC-FrontEnd -tls13 ENABLED -tls12 DISABLED -tls11 DISABLED -tls1 DISABLED

步骤2:将用户定义的SSL配置文件绑定到类型为HTTP_QUIC的负载均衡虚拟服务器在命令提示符中输入:

set lb vserver @ [-IPAddress @] @] [-persistenceType ] [-httpProfileName ] 

例子:

设置SSL vserver lb-http3 -sslprofile ssl_profile1

使用GUI启用SSL和负载平衡特性

完成以下步骤以启用SSL和负载均衡功能:

  1. 在导航窗格上展开系统然后点击设置
  2. 配置基本特性页,选择SSL而且负载平衡
  3. 点击好吧,然后按关闭

GUI启用SSL和负载平衡功能

使用GUI添加HTTP_QUIC类型的负载均衡和内容切换(可选)虚拟服务器

  1. 导航到流量管理>负载均衡>虚拟服务器
  2. 点击添加创建类型为HTTP_QUIC的负载平衡虚拟服务器。
  3. 负载均衡虚拟服务器页面,点击配置文件
  4. 配置文件节中,选择QUIC类型。注:QUIC、HTTP/3和SSL配置文件为内置配置文件。
  5. 点击好吧然后完成

添加负载均衡和内容切换(可选)虚拟服务器

通过使用GUI将QUIC协议参数与HTTP_QUIC虚拟服务器关联起来

步骤1:添加QUIC配置文件

  1. 导航到System > Profiles > QUIC Profile
  2. 点击添加
  3. 在“QUIC配置文件”页面中,设置以下参数。有关每个参数的详细描述,请参见关联QUIC协议CLI部分。

    1. Ack延迟指数
    2. 活动连接ID限制
    3. 主动连接迁移
    4. 拥塞控制算法
    5. 初始最大数据
    6. 初始最大流数据Bidi本地
    7. 初始最大流数据Bidi远程
    8. 初始最大流数据单元
    9. 初始最大流bidi
    10. 初始最大流单位
    11. 最大确认延迟
    12. 最大空闲超时时间
    13. 最大UDP数据GramsperBurst
    14. 新的令牌有效期
    15. 重试令牌有效期
    16. 无状态地址验证

将QUIC协议参数与HTTP_QUIC虚拟服务器关联

步骤2:将QUIC配置文件与类型为HTTP_QUIC的负载均衡虚拟服务器关联

  1. 配置文件部分,选择QUIC配置文件。注:QUIC、HTTP/3和SSL配置文件为内置配置文件。
  2. 点击好吧然后完成

QUIC概要

使用GUI将SSL/TLS协议参数与SSL类型的虚拟服务器关联起来

步骤1:添加SSL配置文件

  1. 导航到System > Profiles > SSL配置文件
  2. 点击添加
  3. QUIC概要页面,设置SSL参数。有关详细说明,请参阅SSL概要配置主题。
  4. 点击好吧而且关闭

将SSL/TLS协议参数与SSL类型的虚拟服务器关联

步骤2:将SSL配置文件与SSL类型的负载均衡虚拟服务器关联。

  1. 配置文件部分,选择SSL配置文件。
  2. 点击好吧然后完成

将SSL概要文件与类型为SSL的负载均衡虚拟服务器关联

查看QUIC、HTTP/3统计信息

下面的命令显示QUIC和HTTP3统计信息的详细摘要。在命令提示符下,输入以下命令:

> stat quic > stat quic -detail 

要清除统计数据显示,输入以下命令之一:

> stat quic -clearstats basic > stat quic -clearstats full 

查询HTTP/3的详细统计信息。

> stat http3 > stat http3 -detail 

要清除统计数据显示,输入以下命令之一:

> stat http3 -clearstats basic > stat http3 -clearstats full