【Web微知識系列】HTTP的演進帶來了什麼改變? 未來的起手式HTTP/3的QUIC又是什麼?

閱讀時間約 3 分鐘
超文本傳輸協定(HyperText Transfer Protocol,縮寫: HTTP),主要做為數據通訊的基礎協定,舉凡我們上網的網頁、圖片…,都是由HTTP協定為基底標準,讓服務端與用戶端可以相互通訊,達到互動、傳遞資訊的作用,而從最初版的單向傳輸也隨著時代的演進,應用漸趨複雜的趨勢下慢慢優化到雙向互動,而大數據的時代下,龐大的數據量也凸顯了傳輸效率的問題,因而也對這部分進行改善,讓傳輸更加順暢,就讓我們一起來看看HTTP的演進史吧!

HTTP 1.0的遠古時代

每一次都需要建立連線,並且只能有一次的請求。

HTTP 1.1 做了些改進

HTTP1.1版本之下,在一個請求中可以夾帶多個請求,並回傳,以此來減少多次連線的開銷,以此來改善HTTP1.0多次連線的問題。

到了HTTP/2的現代又有什麼大躍進?

在HTTP1的時代雖然做了很多連線上的改進,但是隨著用來越多應用都搬移到網路上,雙向溝通的需求也越趨明顯,而1.x版的架構下並沒有支援Server端主動通知Client端的機制,在HTTP 2也都加入了這些特性。
在傳輸上也將原本整包資料的傳送方式切碎成小包小包, 並給予每一包一個編號, 送到目的地之後再重組, 如此一來就可以傳送多批資料也不會有等待一批資料過於久的現象。
幾個優點如下:

● Header壓縮,減少傳輸成本。
● 支援Server Push,由伺服器推送資料到瀏覽器。
● 連線重複使用,減少開銷。

下一個未來發展的重點「HTTP/3」

我們在簡介說明的部分有稍微提到,未來隨著數據量以及更多的需求轉移到互聯網時,為了避免堵塞造成使用體驗不佳,因而在傳書上持續的演化,而HTTP/2之前仍然是追求可靠性傳輸的TCP協定,在HTTP/3大膽的引進了UDP不可靠傳輸的概念,但也並非完全不可靠,而是基於UDP做了一些改良,這個協定稱為QUIC:
由上圖,很明顯的看到我們原本三次的傳輸來確認雙方可以進行通訊的過程,改良到只要一次就完成,更何況TCP + TLS更多次確認的過程,這邊其實QUIC的過程已經包含TLS了,只是未將詳細過程羅列,有興趣者請參考Wiki。
但我們的心中一定充滿著幾個疑問:

● 為什麼QUIC能保證可靠性呢? ⇒ 因為加入了RAID5的演算機制,一次的傳送多個封包中,會加入一包檢驗的加總,並且可以反推哪一包失敗,進行某包重傳即可。
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —



資料包: A+B+C
檢驗包: N
關係為: A+B+C=N
當第「A」包丟失時, A = Z — B — C
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

● QUIC後續不用重新連接嗎? ⇒ 不用,因為連接可以重複使用,其中加入了Connection ID做為識別。
================================================
喜歡撰寫文章的你,不妨來了解一下:
Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 — 為什麼要加入?



歡迎加入一起練習寫作,賺取知識,累積財富!
為什麼會看到廣告
avatar-img
118會員
264內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
進入本篇章前建議您可以先了解以下兩個篇章,主要是介紹單向過程中的訂閱概念: 【Web微知識系列】訂閱技術的基石,RSS Feed是什麼? 【Web微知識系列】系統之間的訂閱機制,Webhook是什麼? 簡介 Websocket與TCP、HTTP的關係 為什麼要使用Websocket? 建立連接
我們前一篇介紹了「【Web系列】訂閱技術的基石,RSS Feed是什麼?」,相信也對於訂閱的機制具備一定的認識了,雖然RSS已經能夠滿足我們訂閱的一些基本需求,但由於主要的訂閱端還是定期去檢查更新資訊,因此假設我們想要在最短時間內掌握最新資訊時,仍會有一些延遲,再者也非常浪費頻寬。 結語
什麼是RSS Feed? 我們常常在聽的Podcast、看的Youtube都有提供訂閱的機制,那這個訂閱的背後到底是怎麼做的呢? 讓我們一起來了解看看吧! RSS的運作機制 為什麼Podcast需要RSS Feed? ⭐ 透過以上的機制,讓更新的部分自動化同步,將寶貴的時間花費在創作上。
進入本篇章前建議您可以先了解以下兩個篇章,主要是介紹單向過程中的訂閱概念: 【Web微知識系列】訂閱技術的基石,RSS Feed是什麼? 【Web微知識系列】系統之間的訂閱機制,Webhook是什麼? 簡介 Websocket與TCP、HTTP的關係 為什麼要使用Websocket? 建立連接
我們前一篇介紹了「【Web系列】訂閱技術的基石,RSS Feed是什麼?」,相信也對於訂閱的機制具備一定的認識了,雖然RSS已經能夠滿足我們訂閱的一些基本需求,但由於主要的訂閱端還是定期去檢查更新資訊,因此假設我們想要在最短時間內掌握最新資訊時,仍會有一些延遲,再者也非常浪費頻寬。 結語
什麼是RSS Feed? 我們常常在聽的Podcast、看的Youtube都有提供訂閱的機制,那這個訂閱的背後到底是怎麼做的呢? 讓我們一起來了解看看吧! RSS的運作機制 為什麼Podcast需要RSS Feed? ⭐ 透過以上的機制,讓更新的部分自動化同步,將寶貴的時間花費在創作上。
你可能也想看
Google News 追蹤
Thumbnail
網頁回應碼是指當網頁伺服器處理完一個請求後所回傳的狀態碼。這篇文章介紹了網頁回應碼的分類,包括1XX、2XX、3XX、4XX和5XX狀態碼,並解釋了各種狀態碼的意義和常見原因。
5G,即第五代移動通訊技術,是繼4G之後的最新一代無線網路技術。自2019年開始商用以來,5G正在迅速改變我們的生活方式和工作模式。 更快的速度,更低的延遲 5G最顯著的特點是其驚人的速度和低延遲。理論上,5G的下載速度可達到20Gbps,比4G快出100倍。這意味著您可以在幾秒鐘內下載
Thumbnail
※ 什麼是路由? 當我們說「路由」時,可能是在談論路由器(實體設備),也可能是在談論路由(選擇路徑的過程),或者是在談論路徑(資料封包的傳輸路徑)。 路由器 (Router):這是一種實體設備,負責將資料封包 (Packet) 從一個網路傳送到另一個網路。它的工作方式類似於交通指揮,確保資料封包
Thumbnail
內容交付網路(CDN)是一種網路架構,旨在提高用戶訪問網站內容的速度和效能。其基本原則是將網站內容分佈在全球的伺服器節點上。當使用者訪問網站時,CDN會根據使用者的地理位置和網路狀況,自動從最近的節點傳送內容,降低數據傳輸。
Thumbnail
一、什麼是Web Service?   簡單說就是「服務」的概念,人與人間、電腦與電腦間都是一樣的,一個是人與人的一來一回交流,媒介是語言中文,另一個則是個人電腦與伺服器的交流,媒介是HTTP/Internet,那麼有了媒介,就會有共同格式才能做
HTTP(Hyper Text Transfer Protocol,超文字傳輸協定) 通常執行在TCP協定上。請求和回傳訊息的頭是ASCII,而內容是MIME。 HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer) 以HT
Webの進化は止まることを知りません。Web1.0からWeb2.0へと移行した後、現在注目を集めているのがWeb3.0です。この記事では、Web3.0の時代について詳しく探求してみましょう。 Web3.0の定義 Web3.0は、インターネットの分散型化を推進する新しい時代を指します。中央集権的な
インターネットの進化は止まることを知らず、Web1.0からWeb2.0へと移行することで、インタラクティブなウェブ体験が一般的となりました。この記事では、Web2.0の時代について詳しく探求してみましょう。 Web2.0の定義 Web2.0は、2000年代初頭から中頃にかけてのインターネットの進
Thumbnail
インターネットの歴史は、その進化と共に私たちの生活を大きく変えてきました。最初の段階として、Web1.0はインターネットの黎明期を象徴するものであり、静的なウェブサイトの時代を築きました。この記事では、Web1.0の時代について詳しく探求してみましょう。 Web1.0の定義 Web1.0は、
Thumbnail
在開發前後端分離架構時,使用兩個不同網域所遇到跨域請求問題。特別是在POST請求時行為差異大,揭示了「簡單請求」與「預檢請求」的關鍵差異。簡單請求不需預檢,但application/json會觸發預檢請求,需透過特定設定解決。分享這篇文章希望幫助開發者有效處理跨域問題。
Thumbnail
網頁回應碼是指當網頁伺服器處理完一個請求後所回傳的狀態碼。這篇文章介紹了網頁回應碼的分類,包括1XX、2XX、3XX、4XX和5XX狀態碼,並解釋了各種狀態碼的意義和常見原因。
5G,即第五代移動通訊技術,是繼4G之後的最新一代無線網路技術。自2019年開始商用以來,5G正在迅速改變我們的生活方式和工作模式。 更快的速度,更低的延遲 5G最顯著的特點是其驚人的速度和低延遲。理論上,5G的下載速度可達到20Gbps,比4G快出100倍。這意味著您可以在幾秒鐘內下載
Thumbnail
※ 什麼是路由? 當我們說「路由」時,可能是在談論路由器(實體設備),也可能是在談論路由(選擇路徑的過程),或者是在談論路徑(資料封包的傳輸路徑)。 路由器 (Router):這是一種實體設備,負責將資料封包 (Packet) 從一個網路傳送到另一個網路。它的工作方式類似於交通指揮,確保資料封包
Thumbnail
內容交付網路(CDN)是一種網路架構,旨在提高用戶訪問網站內容的速度和效能。其基本原則是將網站內容分佈在全球的伺服器節點上。當使用者訪問網站時,CDN會根據使用者的地理位置和網路狀況,自動從最近的節點傳送內容,降低數據傳輸。
Thumbnail
一、什麼是Web Service?   簡單說就是「服務」的概念,人與人間、電腦與電腦間都是一樣的,一個是人與人的一來一回交流,媒介是語言中文,另一個則是個人電腦與伺服器的交流,媒介是HTTP/Internet,那麼有了媒介,就會有共同格式才能做
HTTP(Hyper Text Transfer Protocol,超文字傳輸協定) 通常執行在TCP協定上。請求和回傳訊息的頭是ASCII,而內容是MIME。 HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer) 以HT
Webの進化は止まることを知りません。Web1.0からWeb2.0へと移行した後、現在注目を集めているのがWeb3.0です。この記事では、Web3.0の時代について詳しく探求してみましょう。 Web3.0の定義 Web3.0は、インターネットの分散型化を推進する新しい時代を指します。中央集権的な
インターネットの進化は止まることを知らず、Web1.0からWeb2.0へと移行することで、インタラクティブなウェブ体験が一般的となりました。この記事では、Web2.0の時代について詳しく探求してみましょう。 Web2.0の定義 Web2.0は、2000年代初頭から中頃にかけてのインターネットの進
Thumbnail
インターネットの歴史は、その進化と共に私たちの生活を大きく変えてきました。最初の段階として、Web1.0はインターネットの黎明期を象徴するものであり、静的なウェブサイトの時代を築きました。この記事では、Web1.0の時代について詳しく探求してみましょう。 Web1.0の定義 Web1.0は、
Thumbnail
在開發前後端分離架構時,使用兩個不同網域所遇到跨域請求問題。特別是在POST請求時行為差異大,揭示了「簡單請求」與「預檢請求」的關鍵差異。簡單請求不需預檢,但application/json會觸發預檢請求,需透過特定設定解決。分享這篇文章希望幫助開發者有效處理跨域問題。