過去,公眾主要使用網絡瀏覽器進入聊天室和訪問博客網站。 如今,網絡瀏覽已成為觀看 4K 視頻、編輯照片、玩遊戲、購物、銀行、工作等等的地方。
隨著新的網絡應用變得越來越複雜,對安全和更高效的互聯網協議的需求推動了 HTTP/3 的發展。
那麼什麼是 HTTP/3? 它比以前的版本更好,它如何影響您的瀏覽體驗?
目錄
什麼是 HTTP/3?
HTTP/3 是第三代(也是最新的)HTTP(超文本傳輸協議)。 該互聯網協議用於應用層,用戶可以與網絡及其資源進行交互。HTTP/3 旨在在不影響安全性的情況下提供更快、更高效的互聯網體驗。
在以前的 HTTP/2 中,用戶和開發人員只有 TCP/IP 來可靠地傳輸數據。TCP 的問題在於客戶端和服務器需要執行一系列 SYN-ACK 連接才能正確初始化。 只有在握手和 TLS 連接之後,客戶端和服務器才能相互發送數據。
從客戶端到服務器的過程大約需要四次“往返”,因此用戶在訪問互聯網時會遇到較慢的加載時間。HTTP/3 將通過其新功能解決這個問題。
一些關鍵的 HTTP/3 功能包括:
- HTTP/3 內置 TLS 1.3 安全加密
- QPACK 壓縮請求和標頭而不是 HPACK
- 通過 QUIC 提供快速可靠的單次握手連接
- 所有幀頭和有效載荷(數據)都在流量控制下,以實現更流暢的數據傳輸
HTTP/3 如何提供快速、可靠和安全的連接
HTTP/3 的優勢之一是它支持旨在取代 TCP 連接的新互聯網協議,即 QUIC 協議。 使用 QUIC,客戶端和服務器在一次握手後發送和接收數據。 這種單次握手提供了來自雙方的可靠連接,並自動加密數據,因為 HTTP/3 內置了 TLS 1.3 加密。
一項請求指標研究表明,依賴 QUIC 而不是 TCP 提供了一種更快、更有效的方式來初始化連接和加密數據。 該測試顯示了 QUIC 的單次握手與 TCP 的三次握手加加密相比有多高效。
那麼,如何僅通過一次握手就實現快速、可靠和安全的連接呢?
我們先比較一下 HTTP/2 和 HTTP/3 如何中繼數據來回答這個問題。
如上圖所示,HTTP/3 使用快速但不可靠的 UDP 連接。 對於那些不知道的人,UDP犧牲了可靠性,通過單次握手或一次往返建立快速連接。
為了解決 UDP 的問題,QUIC 提供了本地多路復用並實現了數據包檢查和恢復協議以實現可靠連接。 同時,HTTP/3 的自動 TLS 協議提供了無縫加密,無需在客戶端和服務器之間添加另一個來回。
借助 UDP 的單握手連接、QUIC 的原生多路復用和 HTTP/3 的自動 TLS 連接,我們獲得了快速、可靠和安全的連接,最終提供了更好的用戶體驗。
HTTP/3 的影響有多大?
我們已經確定 HTTP/3 將通過提供更快、更高效的互聯網連接來改善您的體驗。 問題是,多少?
同一個 Request Metrics 研究還顯示了使用 HTTP/2 和 HTTP/3 時網頁加載的效率如何查看數據在三個不同大小的網站(包括小型網站、內容網站和 單頁網站。
結果如下:
小型站點內容站點單頁站點
HTTP/2 | 500ms | 1000ms | 600ms |
HTTP/3 | 100ms | 675ms | 300ms |
結果表明,在所有測試站點中,HTTP/3 都比 HTTP/2 快得多。 例如,在小型網站上,HTTP/3 比 HTTP/2 快 200 毫秒,在內容網站上快 325 毫秒,在單頁網站上快 300 毫秒。
通過使用 HTTP/3,用戶可以預期總體延遲會顯著減少,從而在不影響安全性的情況下讓您的瀏覽體驗更快、更可靠。
HTTP/3 已準備好取代 HTTP/2
總的來說,HTTP/3 是目前正在實施的標準。 因此,最終用戶不必做任何事情來享受它的好處,因為您可能已經在使用它了。 事實上,您可能還使用了 QUIC 協議,因為 Google 已經在其大部分(如果不是全部)網絡應用程序和服務上實現了它。