什么是HTTP2

简介: 【4月更文挑战第12天】HTTP/2是1999年后HTTP协议的首次重大更新,由IETF的httpbis小组开发。关键特性包括头部压缩(使用HPACK算法)、多路复用(提高效率,减少延迟)、二进制传输(更灵活高效)和支持服务器推送(优化用户体验)。虽然语义不变,但HTTP/2已广泛应用于gRPC等服务,并强制要求使用HTTPS。这一更新显著提升了Web性能和用户体验。

HTTP/2是HTTP协议自1999年发布HTTP/1.1之后的首个更新,也被称为超文本传输协议2.0。它是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis(httpbis)工作小组进行开发的。HTTP/2在多个方面进行了显著的改进,这些改进使应用能够获得更快、更简单、更稳定的效果。

HTTP/2的主要特性包括:

  1. 头部压缩:HTTP/2使用了专门为头部压缩而设计的HPACK算法。这个算法需要客户端和服务器各自维护一份索引表,压缩和解压缩就是查表和更新表的操作。这种压缩方式有效地减少了传输的数据量,提高了传输效率。
  2. 多路复用:HTTP/2支持在同一个连接中并行处理多个请求和响应,这是通过流和流ID实现的。这使得网络资源的利用更加高效,减少了延迟。
  3. 二进制传输:HTTP/2将HTTP/1.x中使用文本方式传递的请求与响应消息分解成为了二进制编码的帧的传递。这种传输方式使得协议更加灵活和高效。
  4. 支持服务器推送:HTTP/2允许服务器未经客户端许可的情况下,主动向客户端推送内容。这有助于提升用户体验,减少客户端的请求次数。

需要注意的是,尽管HTTP/2在多个方面进行了改进,但它并没有改动HTTP原来的应用层语义。之前熟悉的请求方法、状态码、URI、HTTP headers等概念在HTTP/2中仍然适用。只要服务端和客户端(如浏览器)支持,应用不需要经过任何修改就可以切换到新协议下运行。

目前,许多流行的应用和服务已经开始采用HTTP/2,例如RPC框架gRPC就采用了HTTP/2作为传输方式。同时,为了增加使用加密技术并提供强有力的保护以遏制主动攻击,HTTP/2.0在开放互联网上将只用于“https://”网址,而“http://”网址将继续使用HTTP/1.1。

总的来说,HTTP/2是HTTP协议的一个重要更新,它通过引入新的特性和优化,显著提升了Web应用的性能和用户体验。

目录
相关文章
|
2月前
|
网络协议
浅谈HTTP的理解
浅谈HTTP的理解
174 65
|
6月前
|
Web App开发 缓存 网络协议
1.HTTP 前世今生
1.HTTP 前世今生
46 0
|
缓存 网络协议 C++
HTTP1.0 vs HTTP1.1 vs HTTP2.0
HTTP1.0 vs HTTP1.1 vs HTTP2.0
105 0
|
Web App开发 存储 网络协议
Http中你必须知道那点事
HyperText Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。 数据传输的规则指的是请求数据和响应数据需要按照指定的格式进行传输。 如果想知道具体的格式,可以打开浏览器,点击F12打开开发者工具,点击Network来查看某一次请求的请求数据和响应数据具体的格式内容,如下图所示:
96 0
Http中你必须知道那点事
|
Web App开发 缓存 算法
初识HTTP
初识HTTP
173 1
|
Web App开发 网络协议 安全
HTTP/3 来了,你了解它么?
作为我们网上冲浪最为常见,也经常被人忽视的 HTTP 已经更新换代到了 HTTP/3,是时候去学习下 HTTP/3 相关知识了。要深入了解 HTTP/3,那首先要知道什么是 HTTP/3。
253 0
HTTP/3 来了,你了解它么?
介绍 HTTP
本篇文章主要介绍了HTTP报文、HTTP请求方法、HTTP响应的状态码、Cookie技术
122 0
介绍 HTTP
|
域名解析 缓存 网络协议
聊聊HTTP,越详细越好
http这道八股文在面试中屡见不鲜,也是屡战屡败,今天卷http也是让自己重新回顾http,虽然在实际项目中,你不需要像面试一样被刨根问底,来自灵魂的拷问,但是,高端岗位,高端面试总会让你欲罢不能,说下http的理解,这道看似简单的菜,但是当你吃的时候,总会耐人寻味。
185 0
聊聊HTTP,越详细越好
|
缓存 网络协议 算法
二、HTTP篇
二、HTTP篇
161 0
二、HTTP篇
|
存储 缓存 网络协议
HTTP几个简单问题哈
《基础》系列
150 0
HTTP几个简单问题哈