迹忆客 EN >

当前位置:主页 > 学无止境 > 网络 >

HTTP2 教程——HTTP2的前世今生

作者:迹忆客 最近更新:2023/01/08 浏览次数:

HTTP最初是由timberners-Lee提出的,他是万维网的先驱,设计应用程序协议时考虑到了简单性,以便在Web服务器和客户机之间执行高级数据通信功能。

HTTP的第一个有文档记录的版本是于1991年发布的HTTP0.9,后来HTTP1.0在1996年的正式引入。HTTP1.1随后于1997年发布,此后就几乎没有再得到迭代改进。

http-timeline

2015年2月,互联网工程任务组(IETF)HTTP工作组修订了HTTP,并以HTTP/2的形式开发了应用协议的第二个主要版本。2015年5月,HTTP/2实现规范正式标准化,以响应谷歌的HTTP兼容SPDY协议。

什么是协议?

HTTP/2与HTTP1的讨论必须从这篇资源中经常使用的术语Protocol开始。协议是一组规则,用于管理客户端(例如internet用户用于请求信息的web浏览器)和服务器(包含请求信息的机器)之间的数据通信机制。

协议通常由三个主要部分组成:Header、Payload 和 Footer。放在有效负载前面的报头包含诸如源地址和目标地址等信息以及关于有效负载的其他细节(例如大小和类型)。有效载荷是使用协议传输的实际信息。Footer跟在有效负载后面,并作为控制字段将客户端-服务器请求与Header一起路由到预期的收件人,以确保有效负载数据的传输没有错误。

mail-http2

该系统类似于邮政服务。信件(有效载荷)被插入一个写有目的地地址的信封(Header),并在发送前用胶水和邮票(Footer)密封。不过,以0和1的形式传输数字信息并不是那么简单,需要一种新的维度创新,以应对互联网使用爆炸性增长带来的技术进步。

HTTP协议最初由基本命令组成:GET,从服务器检索信息;POST,将请求的信息传递给客户端。这个简单而明显乏味的一组数据获取和发布响应的命令基本上构成了构建其他网络协议的基础。该协议是改善互联网用户体验和有效性的又一举措,需要HTTP/2实现来增强在线状态。 详细了解HTTP协议可以查看我们的 HTTP教程

HTTP2 设计和技术目标

自20世纪90年代初成立以来,HTTP只经历了几次重大的改革。最新版本的HTTP1.1已经在网络世界服务了15年。在当前信息动态更新、资源密集型多媒体内容格式和过度倾向于Web性能的时代,Web页面已将旧的协议技术置于遗留类别中。这些趋势要求对HTTP/2进行重大更改,以改善互联网体验。HTTP1.1 的不足 一文介绍了HTTP1.1的一些缺陷

早期版本的 HTTP 协议的设计初衷主要是实现要简单: HTTP/0.9 只用一行协议就启动了万维网;HTTP/1.0 则是对流行的 HTTP/0.9 扩展的一个正式说明;HTTP 1.1 则是 IETF 的一份官方标准;请参阅 HTTP 简史。 因此,HTTP/0.9-1.x 实现了其目的: HTTP 是应用最广泛、采用最多的一个互联网应用协议。

然而,实现简单是以牺牲应用性能为代价的: HTTP/1.x 客户端需要使用多个连接才能实现并发和缩短延迟;HTTP/1.x 不会压缩请求和响应标头,从而导致不必要的网络流量;HTTP/1.x 不支持有效的资源优先级,致使底层 TCP 连接的利用率低下;等等。

这些限制并不是致命的,但是随着网络应用的范围、复杂性以及在我们日常生活中的重要性不断增大,它们对网络开发者和用户都造成了巨大负担,而这正是 HTTP/2 要致力于解决的:

HTTP/2 通过支持标头字段压缩和在同一连接上 进行多个并发交换,让应用更有效地利用网络资源,减少 感知的延迟时间。具体来说,它可以对同一连接上的请求和响应消息进行交错 发送并为 HTTP 标头字段使用 有效编码。 > HTTP/2 还允许为请求设置优先级,让更重要的请求更快速地完成,从而进一步 提升性能。 出台的协议更有利于网络,因为与 HTTP/1.x 相比,可以使用更少的 TCP 连接。 > 这意味着与其他流的竞争减小,并且连接的持续时间变长,这些特性反过来提高 了可用网络容量的利用率。 最后,HTTP/2 还可以通过使用二进制消息分帧对消息进行更高效 的处理。 (超文本传输协议版本 2,草案 17)

需要注意的是,新的 HTTP 版本是对其前身的扩展,预计不会很快取代 HTTP1.1。HTTP/2 实现不会自动支持 HTTP1.1 可用的所有加密类型,但肯定会在不久的将来为更好的替代方案或其他加密兼容性更新打开大门。然而,HTTP/2 与 HTTP1 和 SPDY 与 HTTP/2 等功能比较仅表明最新的应用程序协议在性能、安全性和可靠性等方面都是赢家。HTTP2 功能升级 中介绍了一些它对HTTP1.1进行的一些升级

HTTP2 安全加密

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

HTTP POST request in Node.js

发布时间:2025/04/17 浏览次数:131 分类:Node.js

In this article, we will learn how to use Node.js to make a post request using a third-party package. HTTP Post Request in Node.js The HTTP POST method creates or adds resources on the server. The key difference between POST and PUT request

Apache2.4 installation and precautions under Windows7

发布时间:2025/04/08 浏览次数:125 分类:OPERATING SYSTEM

To install apache2.4 in Windows 7, we first need to download the apache2.4 installation program. Here we download the software from the apache official website http://httpd.apache.org/download.cgi . First, let's see how to download apache2.

How to redirect a website from HTTP to HTTPS

发布时间:2025/03/16 浏览次数:118 分类:NETWORK

HTTPS is a protocol for secure communication over computer networks and is widely used on the Internet. More and more website owners are migrating from HTTP to HTTPS, mainly due to the following 5 reasons: Google announced that websites usi

How to Fix the “SSL Handshake Failed” Error (5 Methods)

发布时间:2025/03/16 浏览次数:98 分类:NETWORK

Installing a Secure Sockets Layer (SSL) certificate on your WordPress site enables it to use HTTPS for a secure connection. Unfortunately, there are a lot of things that can go wrong in the process of verifying a valid SSL certificate and e

Detailed introduction to Let's Encrypt

发布时间:2025/03/16 浏览次数:131 分类:NETWORK

Let's Encrypt is a free, automated, and open certificate authority that officially launched in April 2016. It was originally founded in 2012 by two Mozilla employees. Their goal for founding Let's Encrypt was really simple; to encrypt the e

HTTP2 Tutorial - The Past and Present of HTTP2

发布时间:2025/03/16 浏览次数:73 分类:NETWORK

HTTP was originally proposed by Timberners-Lee, a pioneer of the World Wide Web, who designed the application protocol with simplicity in mind to perform advanced data communication functions between web servers and clients. The first docum

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便