QUIC协议提供与TLS/SSL相当的安全性,同时具有更低的连接和传输延迟。如果您需要提高资源访问效率,且保证数据传输的安全性,则开启QUIC协议。
HTTP/3和QUIC
什么是HTTP/3
HTTP/3是HTTP协议的第三个版本,其底层传输协议由传统的TCP、TLS改变为QUIC,HTTP/3保留了HTTP/2的许多特性,如头部压缩、多路复用等,同时能更好的处理网络拥塞从而降低访问延迟。
什么是QUIC
QUIC(Quick UDP Internet Connections)是一种实验性传输层网络协议,提供与TLS/SSL相当的安全性,同时具有更低的连接和传输延迟。QUIC基于UDP,因此拥有极佳的弱网性能,在丢包和网络延迟严重的情况下仍可提供可用的服务。QUIC在应用程序层面就能实现不同的拥塞控制算法,不需要操作系统和内核支持,这相比于传统的TCP协议,拥有了更好的改造灵活性,非常适合在TCP协议优化遇到瓶颈的业务。
目前,阿里云CDN开放使用的是七层协议的QUIC。
QUIC的类型
CDN支持IETF QUIC和GOOGLE QUIC。GOOGLE QUIC支持的版本号为Q39、Q43或Q46。
IETF QUIC是互联网标准版本。
IETF QUIC兼容了GOOGLE QUIC的Q39、Q43和Q46版本,强烈建议您使用IETF QUIC。
对客户端的要求
QUIC协议对客户端的要求如下:
如果您使用Chrome浏览器,当前阿里云CDN已经支持HTTP/3的标准协议,Chrome支持直接对阿里云CDN发起QUIC请求。
如果您使用自研App,则App必须集成支持QUIC协议的网络库,例如:lsquic-client、cronet网络库、ngtcp2和quiche等。
工作原理
在阿里云CDN中使用QUIC的工作原理如下图所示。
QUIC计费规则
QUIC协议属于增值服务,会对QUIC请求数进行额外计费。详细信息,请参见CDN定价详情的QUIC部分。
QUIC协议的请求判断标准为是否基于UDP协议。
协议头为HTTPS的QUIC协议请求计费规则为:如果是QUIC协议请求,则匹配QUIC请求数计费;如果不是,则匹配HTTPS请求数计费。
QUIC计费方式
计费项目 | 计费规则 | 付费方式 | 计费周期 |
静态QUIC请求数 | 域名请求次数+域名关联的静态资源加载次数 | 按量后付费。 | 按小时结算,出账会存在3~4个小时的延迟。 |
开启QUIC协议
登录CDN控制台。
在左侧导航栏,单击域名管理。
在域名管理页面,找到目标域名,单击操作列的管理。
在指定域名的左侧导航栏,单击QUIC协议,打开QUIC协议开关。
如何判断客户端发起的是QUIC协议还是HTTP协议
下文以Chrome浏览器验证为例为您介绍查看方法。
操作步骤:网站空白处右键,选择
,Protocol列显示h3-29表示QUIC请求。如果没有Protocol列,可尝试刷新网页后,右键勾选
即可。如下图所示“h3-29”表示是QUIC请求。
视频讲解
本视频主要从以下几个方面为您介绍QUIC功能:
- QUIC功能的诞生与演进历程。
- QUIC在CDN中的应用。
- QUIC在首屏时间、卡顿时间上的优势。
- QUIC的拥塞控制与弱网改进。
- QUIC在阿里的几个落地应用场景与优势总结。
- 如何在CDN上开通和使用QUIC。