Skip to content

Commit 611c015

Browse files
Update other-network-questions.md
修改 http/2.0 与 http/3.0 对比中的 安全性描述
1 parent 7bc7370 commit 611c015

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

docs/cs-basics/network/other-network-questions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ HTTP/2.0 多路复用效果图(图源: [HTTP/2 For Web Developers](https://b
215215
- **队头阻塞**:HTTP/2.0 多请求复用一个 TCP 连接,一旦发生丢包,就会阻塞住所有的 HTTP 请求。由于 QUIC 协议的特性,HTTP/3.0 在一定程度上解决了队头阻塞(Head-of-Line blocking, 简写:HOL blocking)问题,一个连接建立多个不同的数据流,这些数据流之间独立互不影响,某个数据流发生丢包了,其数据流不受影响(本质上是多路复用+轮询)。
216216
- **连接迁移**:HTTP/3.0 支持连接迁移,因为 QUIC 使用 64 位 ID 标识连接,只要 ID 不变就不会中断,网络环境改变时(如从 Wi-Fi 切换到移动数据)也能保持连接。而 TCP 连接是由(源 IP,源端口,目的 IP,目的端口)组成,这个四元组中一旦有一项值发生改变,这个连接也就不能用了。
217217
- **错误恢复**:HTTP/3.0 具有更好的错误恢复机制,当出现丢包、延迟等网络问题时,可以更快地进行恢复和重传。而 HTTP/2.0 则需要依赖于 TCP 的错误恢复机制。
218-
- **安全性**:HTTP/2.0 HTTP/3.0 都支持加密通信,但实现方式不同。HTTP/2.0 依赖 TLS 协议加密,而 HTTP/3.0 基于 QUIC 协议,QUIC 内置了 TLS 1.3,能更快建立连接,并减少网络报头信息暴露,提升了安全性和隐私性
218+
- **安全性**HTTP/2.0 中,TLS 用于加密和认证整个 HTTP 会话,包括所有的 HTTP 头部和数据负载。TLS的工作是在 TCP 层之上,它加密的是在 TCP 连接中传输的应用层的数据,并不会对 TCP 头部以及 TLS 记录层头部进行加密,所以在传输的过程中 TCP 头部可能会被攻击者篡改来干扰通信。而 HTTP/3.0 QUIC 对整个数据包(包括报文头和报文体)进行了加密与认证处理,保障安全性
219219

220220
HTTP/1.0、HTTP/2.0 和 HTTP/3.0 的协议栈比较:
221221

0 commit comments

Comments
 (0)