# 启用HTTP/2协议
#### 背景信息
HTTP/2作为新一代超文本传输协议，具有有效减少TCP握手时延、报文头部传输量、提升传输效率等优点。http://url只能使用HTTP1.x版本协议，https://url支持HTTP/2版本的使用。
#### 适用场景
HTTP/2主要适用于小文件的高并发场景，利用TCP的多路复用，降低每个请求的平均处理时延（第一个请求除外，节省了后续请求的TCP和SSL握手时延）。HTTP/2在弱网环境下引起TCP队头阻塞问题放大，HTTP/2使用单个TCP连接多路复用方式传输所有请求，而单个TCP要求数据包必须按序到达。如果其中一个TCP数据包丢失，将导致整个TCP连接阻塞，所有并发的HTTP/2流都需要等待重传完成。而HTTP/1.1场景下，浏览器可建立多个TCP连接，一个TCP连接的丢包不会阻塞其他连接的请求。
**建议开启HTTP/2的场景**：小文件的高并发场景、API调用等。
**不建议开启HTTP/2的场景**：大小文件混合加载场景，因为一旦大文件传输中丢包，将拖慢小文件加载，影响首屏性能。
#### 前提条件
已成功配置HTTPS证书，详见[配置域名HTTPS证书](https://support.huaweicloud.com/usermanual-cdn/zh-cn_topic_0064907771.html)。
#### 注意事项
- 开启HTTP/2后，如果您关闭了HTTPS证书，HTTP/2功能也会自动关闭。
- 配置HTTPS证书后，需要等证书配置完成（约5分钟）后才能开启HTTP/2功能。

- 如果您配置了双证书，HTTP/2功能仅对国际证书生效。
 
#### 协议优势
目前，互联网使用的HTTP协议版本是HTTP1.1，HTTP/2在HTTP1.1的基础上对性能进行了很大的优化，并且兼容了HTTP1.1的语义。
HTTP/2和HTTP1.1比较主要有如下几大优势：
- 二进制分帧 HTTP/2采用二进制格式传输数据，而HTTP1.1采用文本格式传输数据。二进制格式传输在协议的解析和优化扩展上更具优势，提升了数据传输效率。
  

- 头部压缩 HTTP/2对消息头采用HPACK格式进行压缩传输，并在客户端和服务端通过"头部表"来跟踪和存储消息头，相同的消息头只需通过索引从"头部表"中获取并使用之前已经请求发送过的消息头。
  HTTP/2通过头部压缩， 解决了HTTP1.1每次请求都会携带大量的头部冗余信息而浪费带宽资源的问题，节省了消息头占用的网络和流量。
  
- 多路复用 在HTTP/2中，多个请求或者响应可以通过一个TCP连接并发完成，而HTTP1.1中每个请求或者响应都需要按照先后顺序建立一个TCP链接。HTTP/2通过有效地并发请求，减少了服务器链接压力，缓解了网络阻塞状况。
  
 
#### 配置步骤
1. 登录[CDN控制台](https://console.huaweicloud.com/cdn/?locale=zh-cn#/cdn/overview)。
2. 在左侧菜单栏中，选择"域名管理"。
3. 在域名列表中，单击需要修改的域名，进入"概览"页面。
4. 选择"HTTPS配置"页签。
5. 在HTTP/2模块，开启状态开关，完成配置。 ![](https://support.huaweicloud.com/usermanual-cdn/zh-cn_image_0000002772797605.png "点击放大")
   
 
#### 相关文档
调用接口修改HTTP/2请参考：[修改域名全量配置接口 - UpdateDomainFullConfig](https://support.huaweicloud.com/api-cdn/UpdateDomainFullConfig.html)。
