HTTP 3
这是一个尚未出现的协议。但是,我注意到YouTube在Chrome浏览器中已经使用了HTTP 3(不过不确定其他人!)。我怎么知道?因为我使用插件来查看HTTP协议(HTTP / 2和SPDY指示器)。
有什么新东西?
新规范还承诺提供更快、更好、更安全的网络体验。但如何做到呢?
HTTP 3打算简化TCP握手(是3方握手,嗨,再嗨,好吧,你得到了我的嗨,一样)。最重要的是,使用QUIC协议建立连接的速度更快,这也是新的东西。
增强的连接建立保证了WiFi连接与移动网络等之间发生更好的连接迁移。请注意,这不是你在同一网络的路由器之间看到的连接迁移。复杂得多。
最后,这还保证消除TCP慢启动,从而实现即时高速。这将真正让5G变得砰然心动!而不必看到速度从10Mbps开始增加到1.5Gbps。这对于像Stadia这样的情况下的游戏来说是很重要的。
这可能是YouTube速度超快,从启动开始就播放高清,没有缓冲的情况。完美的规范可能会在接近今年年底的时候出来。
什么是HTTP?
HTTP代表超文本传输协议。这是一套用于从服务器向浏览器传送网页的规则。HTTPS简单意味着在加密层上使用相同的协议,以获得更好的隐私。
HTTP及其层(TCP/IP Stack)。资料来源:Mozilla Dev
对于熟悉OSI(Open Systems Interconnections)Internetworking/Communications规范的人来说,HTTP是一种应用层协议。这意味着它与底层硬件结构或媒体无关。这样就可以通过增加带宽等来改进和升级HTTP规范。你将很快看到这种情况!
正在获取网页。资料来源:Mozilla Dev
客户端在这个定义中是用户代理。这可能是一个浏览器、程序或任何使用HTTP协议对服务器进行调用的东西。网络服务器负责发送或提供所请求的内容。代理商协调网络服务器和用户代理之间的通信。
代理的功能如下:
- 缓存
- 过滤(隐藏成人内容或根据地区屏蔽内容)
- 负载平衡(直接请求到空闲服务器)
- 身份验证(允许用户与其他服务器通信)
- 日志记录(HTTP日志记录常用于异常检测等)
在HTTP 1或(1.1)中,仅仅是上述任务和平地进行。然而在2009年,一个更新的协议HTTP 2开始提出。
HTTP 2
HTTP 2的提出是为了解决HTTP 1随着网络技术和带宽的进步而遇到的一些限制。
- 需要进行复用。这样可以通过同一个TCP连接实现并发请求,有助于同时加载资源。
- 允许浏览器优先考虑先取什么内容,以便更快地加载网页,或者提高页面加载的感知速度。
- 减少HTTP标头的权重。
- 服务器推送,使服务器能够在网络浏览器询问之前推送资源。这使得解析HTML和重新获取HTML内容的往返时间大大缩短。
HTTP 2提供了更快、更安全(HTTP加密在HTTP 2中强制执行)的网络体验。