介紹什麼是 HTTP/3,它爲什麼重要?

在研究互聯網及其背後的技術時,您可能會遇到這個術語:HTTP。HTTP,或超文本傳輸協議,是網絡的支柱,是傳輸文本數據的通用協議。毫無疑問,您使用過它,因爲您瞭解 HTTP 的網站使用的是 HTTP。

介紹什麼是 HTTP/3,它爲什麼重要?介紹什麼是 HTTP/3,它爲什麼重要?

HTTP 簡史

發佈的第一個 HTTP 版本是 HTTP/0.9。Tim Berners-Lee 於 1989 年創建了它,並於 1991 年將其命名爲 HTTP/0.9。HTTP/0.9 功能是有限的,只能做基本的事情。除了網頁之外,它無法返回任何內容,並且不支持 cookie 和其他現代功能。1996 年,HTTP/1.0 發佈,帶來了新功能,如 POST 請求和發送網頁以外的內容的能力。但是,與今天相比,還有很長的路要走。HTTP / 1.1在1997年發佈,並進行了兩次修訂,一次是在1999年,一次是在2007年。它帶來了許多主要的新功能,例如cookie和連接仍然存在。最後,在 2015 年,HTTP/2 發佈並允許提高性能,使諸如服務器發送事件和一次發送多個請求的能力成爲可能。HTTP/2 仍然是新的,只有不到一半的網站使用。

HTTP/3:最新版本的 HTTP

HTTP/3或HTTP over QUIC,改變了HTTP很多。HTTP 傳統上是通過 TCP(傳輸控制協議)完成的。但是,TCP於1974年互聯網開始發展。當 TCP 最初創建時,它的作者無法預測網絡的增長。由於 TCP 已過時,因此 TCP 在一段時間內限制了 HTTP 的速度和安全性。現在,由於 HTTP/3,HTTP 不再受限制。HTTP/3 沒有使用 TCP,而是使用了一種由 Google 於 2012 年開發的新協議,稱爲 QUIC(發音爲“quick”)。這爲 HTTP 引入了許多新功能。

鏈接:https://www.linuxmi.com/http-3-http-over-quic.html

更快的請求多路複用

照片來自Unsplash的PAUL SMITH

在 HTTP/2 之前,瀏覽器一次只能向服務器發送一個請求。這使得網站加載速度明顯變慢,因爲瀏覽器一次只加載一項資源,如 CSS 或 JavaScript。HTTP/2 引入了一次加載多個資源的能力,但 TCP 並非爲此而生。如果請求之一失敗,TCP將使瀏覽器重做所有請求。由於TCP在HTTP/3中已被刪除並由QUIC代替,因此HTTP/3解決了此問題。使用 HTTP/3,瀏覽器只需要重做失敗的請求。因此,HTTP/3 更快、更可靠。

更快的加密

HTTP/3 優化了允許瀏覽器 HTTP 請求被加密的“握手”。QUIC 將初始連接與 TLS 握手相結合,使其默認安全且速度更快。

鏈接:https://www.linuxmi.com/http-3-http-over-quic.html

標準化

在撰寫本文時,HTTP/3 和 QUIC 尚未標準化。有一個 IETF工作組目前正在制定標準化 QUIC 的草案。HTTP/3 的 QUIC 版本略有修改,使用 TLS 代替 Google 的加密,但具有相同的優點。

瀏覽器支持

目前,由於谷歌創建了 QUIC 協議和 HTTP over QUIC 的提議,Chrome 默認支持 HTTP/3。Firefox 也支持 88+ 版本中沒有標誌的協議。Safari 14支持HTTP/3,但前提是啓用了實驗性功能標誌。

瀏覽器支持 HTTP/3(來源:Can I Use)

Serverless/CDN 支持

到目前爲止,只有部分服務器支持 HTTP/3,但它們的份額正在增長。Cloudflare 是除 Google 之外最早支持 HTTP/3 的公司之一,因此它們的無服務器功能和 CDN 符合 HTTP/3 標準。此外,Google Cloud 和 Fastly 符合 HTTP/3 標準。不幸的是,Microsoft Azure CDN 和 AWS CloudFront 目前似乎不支持 HTTP/3。如果您想嘗試 HTTP/3,QUIC.Cloud是一種在您的服務器前設置緩存 HTTP/3 CDN 的有趣(雖然是實驗性的)方法。Cloudflare、Fastly 和 Google Cloud 也有良好的 HTTP/3 支持,並且更適合生產。

總結

HTTP/3 仍然是對 HTTP 的一個非常實驗性的更新,它很可能會改變。但是,超過一半的用戶支持當前形式的 HTTP/3。如果您準備更新您的實現,那麼它可以是一個受歡迎的性能提升。我希望你喜歡閱讀並從這篇文章中學到一些東西。

本文地址:https://www.linuxprobe.com/http-3-import.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章