周一,IETF透露它将HTTP-over-QUIC实验协议重命名为HTTP / 3。HTTP-over-QUIC是一种HTTP重写,用TCP替换TCP。

如果这看起来有点为时过早,那么它与IETF的历史运作方式并不完全不符。就像TLS 1.3在每个网站甚至已经切换到TLS 1.2之前推出的那样(尽管到8月份绝大多数都有)并且SHA-3已经建立,尽管几年前SHA-2开始使用。因此,尽管事实上只有31.2%的前1000万网站甚至使用HTTP / 2,但HTTP / 3已经出现。

已经有1000万支持QUIC的1.2%。那是大约120,000个网站。

那么,什么是HTTP-over-QUIC - 或者我想现在它是HTTP / 3 - 这个新协议对于 SSL / TLS  行业意味着什么?

什么是HTTP / 3(又名HTTP-over-QUIC)

HTTP-over-QUIC是一种实验性的Google协议,它是一种HTTP重写,它在QUIC中交换传统上位于互联网核心的标准TCP。

TCP是传输控制协议,与IP(互联网协议)一起,它已成为定义互联网多年的基本规则之一。它足够老,它有一个三位数的RFC编号。这是一个IETF的笑话,TCP是在1981年定义的.TCP是一种面向连接的协议,它旨在提供无差错的数据传输,它控制数据如何分解成数据包并传播到连接的另一端。

不幸的是,无差错传输功能是一把双刃剑,因为它可以增加连接的延迟。它必须确保它接收每个数据包,并运行校验和哈希来验证这一点。简而言之,散列是一种单向函数,有助于验证真实性。如果数据全部按预期到达,则校验和产生的哈希值将与已知的哈希值匹配。如果没有,TCP将使连接另一端的一方再次发送它。

QUIC是Quick UDP Internet Connections的首字母缩写。这引出了一个问题,什么是UDP?UDP是用户数据协议。解释这个问题的最好方法是回到我们刚刚与TCP讨论过的无差错传输。UDP是另一种连接协议,但它不提供无差错传输。相反,它促进了一种低延迟的连接(由于它容忍一些数据丢失的事实)。

将它应用于现实生活可能会很有启发性。TCP无处不在,互联网上的绝大多数流量都是TCP。这非常适合数据保真度很重要的情况。当您在YouTube上看到视频缓冲,或者在节目加载时您在Netflix上获得风车 - 这是一个TCP连接。您的设备基本上是在说“我需要在继续之前了解这些数据。”

在UDP优先的情况下,当您需要发送恒定的实时数据流时,延迟是不可接受的。一些明显的背景是IP语音(VoIP),Skype和视频游戏网络等视频消息应用。在这种情况下,UDP只会在连接另一端的聚会上抛出一个恒定的数据流,如果有些数据丢失,数据最终会赶上来。这称为尽力而为。

QUIC是由Google设计的实验性协议。这可能看起来很奇怪,但谷歌的SPDY最终变成了HTTP / 2,所以这也不是前所未有的。QUIC本质上是谷歌重写TCP的尝试,它结合了HTTP / 2,TCP,UDP和传输层安全性(TLS)等。目标是让QUIC替换TCP和UDP。它默认是加密的,这意味着它比它的前辈更快,更安全。这主要是因为它使用TLS 1.3(RFC 8446)并利用其改进的单次往返握手和零往返恢复功能。

 
QUIC的另一个重要收益是改善拥塞控制和丢失恢复。重传数据包时,不会重复使用数据包序列号。这避免了关于已经接收到哪些分组的模糊性并且避免了可怕的重传超时。因此,在网络状况不佳的情况下,QUIC比TCP更胜一筹,为最慢1%的连接缩短了Google搜索页面加载时间。对于像YouTube这样的视频服务,这些好处更加明显。用户在使用QUIC观看视频时报告的重建次数减少了30%。这意味着花在盯着微调器上的时间更少,观看视频的时间也更多。
      

虽然最初只有Google的服务器支持HTTP-over-QUIC,但今年早些时候Facebook也增加了支持。

这对SSL / TLS行业意味着什么?

就如何与当前的SSL / TLS生态系统一起使用而言,它不会对数字证书的使用产生太大的直接影响,因为TLS在协议中被烘焙,并且身份验证仍然需要由可信证书处理当局和PKI。

可能来自HTTP / 3的最大好处是,它将迫使网站更快地支持TLS 1.3。

但是,由于不到三分之一的互联网甚至使用HTTP / 2而且我们仍然有一小部分乱七八糟的人依赖于HTTP(以及一些愿意死在那座山上的人),但这仍然可能暂时不会有一段时间。)。

来源:沃通ssl证书

IETF透露HTTP over QUIC 将重命名为HTTP/3 协议的更多相关文章

  1. [工具类]文件或文件夹xx已存在,则重命名为xx(n)(2)

    写在前面 最近一直在弄文件传输组件,其中一个功能就是,在接收端接收文件时,如果文件已经存在了,则对其进行文件名+索引的方式进行自动重命名,之前也写个类似的工具类,总感觉代码太冗余,每回头想想,总觉得心 ...

  2. [工具类]文件或文件夹xx已存在,则重命名为xx(n)

    写在前面 最近在弄一个文件传输的一个东东,在接收文件的时候,如果文件已经存在,该如何处理?提示?删除?感觉直接删除实在不太合适,万一这个文件对用户来说很重要,你给他删除了肯定不行.然后就想到了,win ...

  3. ecshop 优化_将商品详情页goods.php重命名为shangpin.php

    有人说,将商品详情页的文件名 goods.php 改一个名字,对百度收录会有帮助,也许吧,这里不讨论是否有帮助,这里只讲解如何重命名. 例如:我们将 goods.php 改为 shangpin.php ...

  4. STVD中将现有工程重命名为另一个工程

    http://blog.csdn.net/sy_lixiang/article/details/47273649 例子:把工程名为Template的工程改为color,把左边红圈部分重命名为右面的名字 ...

  5. {ubuntu}乱七八糟重命名为1 2 3.....png

    i=; for f in *.png; do mv "$f" ${i}.png; ((i++)); done 网上找了个测试的数据集,发现读取时候,要重命名一下 一片帖子问了类似的 ...

  6. 安装完C++builder6.0启动的时候总是出现无法将'C:\Program Files\Borland\CBuilder6\Bin\bcb.$$$'重命名为bcb.dro

    :兼容性问题  运行前右键属性“兼容性”-尝试不同的兼容性.比如“windows 8”

  7. CentOS7 网卡名称重命名为eth*

    CentOS7 禁用网卡名称命名规则,启动时传递"net.ifnames=0 biosdevname=0"/etc/default/grupgrup2-mkconfig -o /b ...

  8. centos7网卡重命名为ethx格式

    参考:https://www.cnblogs.com/zyd112/p/8143464.html CentOS 7 使用 eth0 这样的传统名称,那么在安装启动(pxe)时,按Tab键在下方输入以下 ...

  9. 重识TCP/IP协议族与HTTP基础

    不忘初心 砥砺前行, Tomorrow Is Another Day ! 本文概要: TCP/IP协议族的网络分层 TCP三次握手四次挥手 Http简介 报文结构 Http的请求方法及状态码 常用的H ...

随机推荐

  1. C语言基础 (9) 数组指针

    复习 只要把地址拿到就能这么操作.. (这里是合法的地址,不是野指针) 只有定义变量后,此变量的地址才是合法的地址 野指针就是保存没有意义地址的指针变量 操作野指针变量本身不会有任何问题 操作野指针所 ...

  2. gradle springboot打包时忽略某个配置文件

    jar { exclude "**/bootstrap.properties" }

  3. [网络流24题] 太空飞行计划问题 (最大流->最大权闭合图)

    洛谷传送门 LOJ传送门 做这道题之前建议先看这篇论文,虽然论文里很多地方用了很多术语,但hbt神犇讲得很明白 这篇题解更加偏向于感性理解 把问题放到二分图上,左侧一列点是实验,权值为$p[i]$,右 ...

  4. VS2015使用C++编写DLL,并在C#环境中调用【转】

    说明:本文是本人在学习封装DLL时看到的,觉得说得很清楚,为了防止忘记,特意复制下来学习用,原文链接:https://blog.csdn.net/songyi160/article/details/5 ...

  5. spring md5 加密

    一.spring 自带的 DigestUtils 工具类可以进行 md5 加密 //导入包 import org.springframework.util.DigestUtils; //对密码进行 m ...

  6. CF899A Splitting in Teams

    CF899A Splitting in Teams 题意翻译 n个数,只有1,2,把它们任意分组,和为3的组最多多少 题目描述 There were nn groups of students whi ...

  7. tableView计算动态行高的总结

    研究tableView怎么计算动态行高研究了两天一直还不太会,今天最终做出来了想要的效果. 首先.我在网上搜集了非常多资料,各种大神的总结,然后開始看.研究.试验,基本思路都是一样的. 1.一定要将l ...

  8. [Angular] Component's dependency injection

    An Angular service registered on the NgModule is globally visible on the entire application. Moreove ...

  9. Linux3.5内核以后的路由下一跳缓存

    在Linux3.5版本号(包括)之前.存在一个路由cache.这个路由cache的初衷是美好的,可是现实往往是令人遗憾的.下面是陈列得出的两个问题:1.面临针对hash算法的ddos问题(描写叙述该问 ...

  10. android TextView加边框

    为TextView加边框.须要在drawable建xml文件,里面设置shape来设置文本框的特殊效果. <?xml version="1.0" encoding=" ...