【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

Google 期望使用 QUIC 给互联网加速

  • 2014-02-25
  • 本文字数:1018 字

    阅读完需:约 3 分钟

QUIC(Quick UDP Internet Connections,发音’quick’)是一种基于 UDP 的多路传输协议,它的主要目标是实现零往返时间的连接开销。Google 的开发人员 Robbie Shade 在最近的一个视频中对 QUIC 做了介绍,主要有以下特性:

  • 拥有 SPDY 的所有优点(多路传输,支持优先级,等等)
  • 零往返时间连接
  • 数据包同步,有效降低数据丢包率
  • 转发问题连接,有效减少重发延迟
  • 自适应拥塞控制(对 TCP 友好),有效减少移动客户端重新连接的次数
  • 与 TLS 等效的加密措施
  • Chrome 支持与 Google 的 QUIC 通信

QUIC 能够处理传输可靠性、丢包或无序数据包等一系列 UDP 默认未处理的问题。QUIC 的多路传输指协议使用多个通道传输数据,所以当其中一个数据流丢包时,其他的通道并不会因此阻塞等待丢失的数据包,而这会发生在 SPDY 上,因为 SPDY 虽然是多路传输但是只有一个通道。Shade 说,QUIC 的方法解决了 TCP 传输的线端阻塞问题。

使用 QUIC 的一个主要优势是在客户端和服务器首次连接时不需要握手步骤,某种程度上与 TCP 快速开启(TCP Fast Open)类似。TCP 快速开启在 2011 年面世,但是目前尚没有大范围使用。根据 Shade 的说法,采用 TLS 时,在一次跨大西洋的连接中 TCP 握手要耗时 300ms,而 QUIC 可以将延迟降为 100ms。

QUIC 的另一个优势是通信通道的定义基于 ID 而不是 IP+ 端口,这使得切换网络后继续转发连接成为可能,例如从 WiFi 网络进入移动网络。

所有 QUIC 连接都使用特殊的机制进行加密,详见 QUIC 加密文档

当被问到为什么不使用 TCP+TLS,Shade 解释说,虽然 TCP 和 TLS 持续升级,但协议的迭代及部署非常慢,而 QUIC 是部署在客户端级别,而不是在内核级别,这样就能以更快的速度进行迭代,迭代周期由以年计算加速为以周计算。

根据 Shade 的介绍,将来 SPDY 能够运行在 QUIC 之上,使其比现在更好。将来 Google 实际使用 QUIC 的经验和教训可以合并到 TCP 中。

目前用户可以从 Chromium 项目中获取 QUIC 的客户端和服务器,google.com、GMail、YouTube 以及其他 Google 服务都在使用 QUIC。

资源: QUIC 相关视频 QUIC 相关幻灯片 QUIC ——协议的详细文档, QUIC 导线排列标准——线框标准, QUIC 加密 SPDY 指示器扩展

查看英文原文: Google Wants to Speed Up the Internet with QUIC


感谢吴海星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-02-25 02:176605
用户头像

发布了 28 篇内容, 共 95367 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

第十一周 学习总结

简简单单

同时拿到BATJMD的Offer是怎样的一种体验?

冰河

面试 面经 offer 一起进大厂 BATJMD

嘿,同学,你要的Java内存模型(JMM)来了

Simon郎

Java 大数据 JVM

MyChat,一个私有的“微信“

米凤君

Java 微信 Netty IM JavaFx

我用 Python 分析了一波热卖年货,原来大家都在买这些东西?

JackTian

Python 数据分析 数据可视化 2月春节不断更 年货

第6周作业

MR.X

一看就懂的var、let、const三者区别

蛙人

JavaScript

3. 无转折不编程,滚雪球学 Python

梦想橡皮擦

Python python从入门到精通 2月春节不断更 python入门

如何极速极速搭建个人博客?Copy攻城狮用的这一招很优秀!

华为云开发者联盟

JavaScript typescript GitHub React #Serverless

数字化人才有哪些特性?

boshi

数字化转型 七日更

程序员防猝死指南

小白debug

程序员 职业 内存 打工人 Go 语言

编程范式( Programming paradigm )简介

引花眠

编程范式

京东App Swift 混编及组件化落地

京东科技开发者

swift 开发者

Redis Sentinel 源码:Redis的高可用模型分析

华为云开发者联盟

数据库 redis 高可用 框架 redis sentinel

第十一周 安全稳定知识课后作业

简简单单

Python进阶丨如何创建你的第一个Python元类?

华为云开发者联盟

Python 编程 python元类 对象 装饰器

从架构设计理念到集群部署,全面认识KubeEdge

华为云开发者联盟

架构 容器 云原生 集群 kubeedge

笔记本电脑电池显示4%可用(已接通电源),经过清灰又莫名奇妙的可以续航啦,很奇怪!

孙叫兽

电脑故障 电池

即拼商城模式开发

luluhulian

大学寒假这样过,过完惊艳所有人,不只是你的宿友,还有千千万万个程序员同行们!!!

沉默王二

程序员

对接量化钱包区块链开发

v16629866266

华为 Python网络自动化

艺博东

Python 网络

无责任畅想:云原生中间件的下一站

阿里巴巴云原生

容器 微服务 云原生 dubbo 中间件

ARTS打卡 第30周

引花眠

微服务 ARTS 打卡计划

华云大咖说 | 大型分布式监控系统建设经验

华云数据

图文详解:如何给女朋友解释什么是微服务?

浅羽技术

Java zookeeper 分布式 微服务 框架

第4周左右

林亚超

研发效能,productivity 还是 performance

李小腾

ZEGO即构自建MSDN有序网络,为实时音视频传输极致顺畅!

ZEGO即构

使用Travis CI为工程搭建一个持续集成服务。

梁龙先森

大前端 持续集成 2月春节不断更

经典面试题:在浏览器地址栏输入一个 URL 后回车,背后发生了什么

飞天小牛肉

程序员 面试 计算机网络 网络协议 2月春节不断更

Google期望使用QUIC给互联网加速_Google_Abel Avram_InfoQ精选文章