来源:网络技术联盟站 你好,这里是网络技术联盟站。 QUIC是一项由Google设计的协议,致力于将网络通信变得更快、更高效。它代表了对网络性能的追求,旨在提供更好的用户体验,但与此同时,QUIC也带来了一系列网络安全和监控方面的挑战。 在当今数字化世界中,网络速度是一切的关键。谷歌一直在努力提高网络效率和性能,而QUIC协议正是这个使命的一部分。然而,随着QUIC的广泛采用,一些安全问题浮出水面,这引发了对网络安全和监控的重大关切。尤其令人担忧的是,大多数传统防火墙和网络设备难以有效处理QUIC流量,导致了网络安全中的一道薄弱环节。 本文将深入探讨QUIC的工作原理,以及它如何改善网络性能。同时,我们将审视QUIC对网络安全和监控的影响,以及如何解决与QUIC相关的挑战,以确保网络仍然安全可靠。在数字时代,我们必须在速度和安全之间取得平衡,QUIC协议的崛起将迫使我们重新思考这个平衡。 让我们直接开始今天的科普! 目录: 一、背景 二、什么是QUIC? 三、QUIC的发展历程 四、QUIC 协议的基本功能 五、QUIC 协议的核心特性 5.1 0-RTT 连接建立 5.2 无队头阻塞的多路复用 5.3 无歧义重传 六、QUIC数据包 6.1 头部(Header) 6.2 数据(Data) 6.3 一些常见的数据帧类型 七、QUIC 协议优势 7.1 减少连接时间 7.2 处理数据包丢失 7.3 稳定的连接 7.4 灵活性和开发容易 八、QUIC协议的缺点 8.1 增加了遭受攻击的脆弱性 8.2 兼容性问题 8.3 传输速率较低 8.4 故障排除困难 8.5 需要保持最新状态 九、QUIC 协议应用场景 9.1 实时 Web 和移动应用程序 9.2 物联网设备通信 9.3 车联网和联网汽车 9.4 云计算 9.5 支付和电子商务应用程序 十、谁在使用 QUIC? 10.1 QUIC 协议与 Web 浏览 10.2 主要采用者 10.3 当前的生态系统 QUIC 协议的背景可以追溯到 Google 的 gQUIC 实验,这个实验最初旨在进一步改进 HTTP/2 的性能,并将这种性能扩展到网络的安全层和传输层。这一实验代表了一项大胆而值得赞赏的尝试,因为其目标是替换传统的 HTTP 协议。2013 年,gQUIC 的首个部分开始在 Google 的服务器和 Chrome 浏览器之间传输实时数据。Google 通过 gQUIC 协议将各种 Google 服务的实时流量传送到 Chrome 客户端,随着 Google 服务从中受益,gQUIC 的应用逐渐增加。 这一早期实验的数据后来被证明对 QUIC 协议的设计和发展具有重要意义。然而,值得注意的是,早期的 gQUIC 实验中包含了两个关键的技术组件,后来通过迭代被移除: 前向纠错 (FEC): 这个功能最初采用了一种奇偶校验的方案,但它在灵活性和可实施性方面存在问题,因此无法满足不同需求。奇偶校验的方案被认为效果不佳,而且该功能的维护成本远高于其潜在好处。 ACK 熵: 这一功能旨在保护发送方免受 ACK 欺骗攻击的影响。由于所有的流量都已加密,任何 ACK 信息必须由连接的一方发送。然而,后来删除了 ACK 熵功能,因为它所防范的攻击影响相对有限,并且引入了复杂的代码和协议层面的问题。 这两个功能的去除反映出协议设计中过早的优化,随着协议的发展,这些功能变成了维护的负担,当维护成本超过潜在收益时,就被移除了。 QUIC(Quick UDP Internet Connections)是一种由Google开发的协议,旨在改善网络连接的速度和可靠性。它的目标是替代当前互联网基础设施中使用的传输控制协议(TCP),并构建在用户数据报协议(UDP)之上。 QUIC采用了加密和多路复用的技术,以提供更高的安全性和更快的数据传输速度。它允许通过单个连接传输多个数据流,从而减少延迟并提高数据吞吐量。此外,QUIC还包括拥塞控制和流量控制等功能,用于管理网络拥塞情况,确保数据传输的顺畅性。 互联网工程任务组(IETF)目前正在对QUIC进行标准化,主要的Web浏览器和服务器也在逐渐采用这一协议。与传统的TCP协议相比,QUIC已经被证明可以显著减少网页加载时间和连接断开的问题,尤其在高延迟和不稳定的网络环境中表现出色,如移动网络。QUIC的发展旨在进一步提高互联网连接的性能和安全性。 从上图可以看出: 而 QUIC,你就记住两个核心:采用UDP传输层、使用TLS 1.3协议 采用UDP传输层: QUIC 使用UDP(用户数据报协议)作为传输层协议,与传统的TCP相比,UDP减少了连接建立的延迟。TCP需要经历三次握手来建立连接,这会引入1个往返时间(1-RTT)的延迟。相比之下,QUIC的UDP传输层减少了这个握手过程,从而减少了建立连接的时间。这有助于提高网络通信的效率,尤其是对于那些对延迟要求较高的应用程序。 使用TLS 1.3协议: QUIC集成了TLS(传输层安全性)协议的最新版本,即TLS 1.3。TLS 1.3具有改进的安全性和性能特性,其中一个显著的特点是支持1-RTT和0-RTT握手。传统的TLS握手需要多个往返时间(RTT),而QUIC协议通过TLS 1.3允许客户端在TLS握手完成之前发送应用程序数据。这意味着在第一次握手时需要1-RTT,但之后,已建立连接的客户端可以使用缓存的信息来快速恢复TLS连接,只需0-1 RTT。这显著减少了建立连接的时间,使数据能够更快地传输,特别是对于重复连接的情况。 2012年:QUIC的提出 QUIC协议最早由Google公司于2012年提出。它的初衷是改进互联网通信的性能,特别是Web页面加载速度,通过减少传统TCP协议中的握手延迟等问题来实现这一目标。 2016年:IETF开始标准化QUIC 在2016年,互联网工程任务组(IETF)开始正式着手标准化QUIC协议。这标志着QUIC进入了一个更广泛的开放标准化过程,旨在确保该协议能够被广泛采用并具有互操作性。 2017年:gQUIC的部署 在2017年,Google公司开发并部署了QUIC协议的初始设计,称为gQUIC。这是QUIC的一个重要里程碑,标志着其在实际网络环境中的初步应用和测试。 2021年:RFC900发布,QUIC正式标准化 QUIC协议的正式标准化版本,即RFC900,于2021年发布。这一标准化版本的发布证实了QUIC作为一种新的传输层协议的地位,使其能够在更广泛的网络环境中得以应用和推广。 说到底:QUIC 本质上是基于 HTTP/2 构建的,但具有更快的连接建立和多路复用。它旨在减少延迟,提高性能,并更好地适应现代网络。 QUIC协议的基本功能包括: 独立的逻辑流: QUIC允许在单个连接上并行传输多个逻辑数据流。每个数据流都是独立管理的,这意味着一个数据流的延迟或中断不会影响其他数据流的传输。这有助于提高网络效率,特别是在处理多个请求和响应时。 一致的安全性: QUIC提供端到端的安全性,所有数据在传输过程中都经过加密。默认情况下,QUIC使用TLS 1.3来建立安全连接,确保数据的机密性和完整性。这有助于保护通信免受窃听和篡改。 低延迟: QUIC旨在减少网络通信的延迟。它采用快速的连接建立过程,减少了握手时间,并通过多路复用和快速重传等机制降低了数据传输的延迟。这对于实时应用程序和减少页面加载时间非常重要。 可靠性: QUIC提供可靠的数据传输,确保数据的完整性和准确性。它具有丢包恢复和重传机制,以应对网络中可能发生的数据包丢失或损坏情况。这有助于防止数据损坏和丢失。 避免HOL(Head-of-Line)阻塞: QUIC通过允许多个数据流在单个连接上独立传输,解决了HOL阻塞问题。这意味着即使一个数据流遇到问题,其他数据流仍然可以继续传输,而不会受到影响。这有助于提高整体效率和性能。 QUIC 协议大概包含三大特性: QUIC数据包由两个主要部分组成:头部(Header)和数据(Data)。 以下是这两个部分的详细说明: PING帧: 用于测试连接的可用性。PING帧不包含负载,只是用于确认连接是否存活。 ACK帧: 用于确认收到的数据包。它包含有关已收到的数据包的信息,以确保数据的可靠传输。 RESET_STREAM帧: 用于重置特定数据流的状态。当一个数据流需要被中断或重新开始时,可以使用RESET_STREAM帧。 STOP_S 原创文章,作者:网络技术联盟站,如若转载,请注明出处:https://www.sudun.com/ask/35084.html
一、背景
二、什么是QUIC?
QUIC = HTTP/2 + TLS + UDP
UDP + QUIC = 传输层
三、QUIC的发展历程
四、QUIC 协议的基本功能
五、QUIC 协议的核心特性
5.1 0-RTT 连接建立
5.2 无队头阻塞的多路复用
5.3 无歧义重传
六、QUIC数据包
6.1 头部(Header)
6.2 数据(Data)
6.3 一些常见的数据帧类型
赞 (0)
益阳网站制作公司哪家好?
上一篇
2024年4月13日 下午12:48
国外服务器租用到期多久不交费清除数据
下一篇
2024年4月13日 下午12:50