HTTP 2 0 協議詳解

2021-08-21 03:51:30 字數 1399 閱讀 3994

無需**作者修改任何內容;

把部署複雜性降至最低,無需變更網路基礎設施;

與開源社群合作開發這個新協議;

收集真實性能資料,驗證這個實驗性協議是否有效。

解決 http 中的「隊首阻塞」問題;

並行操作無需與伺服器建立多個連線,從而改進 tcp 的利用率,特別是擁塞控制方面;

保持 http 1.1 的語義,利用現有文件,包括(但不限於)http 方法、狀態碼、uri,以及首部字段;

明確規定 http 2.0 如何與 http 1.x 互操作,特別是在中間介質上;

明確指出所有新的可擴充套件機制以及適當的擴充套件策略。

流、訊息和幀

多向請求與響應

* 可以並行交錯地傳送請求,請求之間互不影響;

* 可以並行交錯地傳送響應,響應之間互不干擾;

* 只使用乙個連線即可並行傳送多個請求和響應;

* 消除不必要的延遲,從而減少頁面載入的時間;

* 不必再為繞過 http 1.x 限制而多做很多任務作;

請求優先順序

每個**乙個連線

流量控制

伺服器推送

有效的http2.0公升級與發現

https 協商過程中有乙個環節會使用alpn(應用層協議協商)。減少網路延遲是http 2.0 的關鍵條件,因此在建立https 連線時一定會用到alpn協商。

通過常規非加密通道建立http2.0連線需要多做一點工作。因為http1.0和http2.0都使用同乙個埠(80),有沒有伺服器是否支援http2.0的其他任何資訊,此時客戶端只能使用http upgrade機制通過協調確定適當的協議:

...

➊ 發起帶有http 2.0 upgrade 首部的http 1.1 請求

➋ http/2.0 settings 淨荷的base64 url 編碼

➌ 伺服器拒絕公升級,通過http 1.1 返回響應

➍ 伺服器接受http 2.0 公升級,切換到新分幀

傳送應用資料

http2.0幀資料流分析

雙協議應用策略

1.x與2.0的相互轉換

評估伺服器質量與效能

2.0與tls

第一種情況要求http 2.0 伺服器能夠處理tls;

第二種情況建立一條加密通道,直接將非加密的http 2.0 流傳送到伺服器

負載均衡器、**及應用伺服器

快速入門http2 0

自 想要了解乙個事物,首先就要知道它是什麼。簡單來說,http 2 超文字傳輸協議第2版,最初命名為http2.0 是http協議的第二個主要版本。http 2是http協議自1999年http1.1發布後的首個更新,主要基於spdy協議。http2.0的特點是 在不改動http語義 方法 狀態碼 ...

HTTP 2 0 的那些事

spdy協議是google提出的基於傳輸控制協議 tcp 的應用層協議,通過壓縮 多路復用和優先順序來縮短載入時間。該協議是一種更加快速的內容傳輸協議,於2009 年年中發布。也可以把spdy看作是http 2的前身。spdy並不是首字母縮略字,而僅僅是 speedy 的縮寫。spdy現為googl...

你了解HTTP2 0嗎?

作為乙隻前端開發?http是我們知識地圖裡面必不可少的一部分,也是面試必問知識點。http2號稱可以讓我們的應用更快 更簡單 更穩定,它完美解決了1.1版本的諸多問題,本文和大家一起聊聊http2的改進點。正式講http2之前我們先講一下http的發展史。現在我們先不聊http2,看一下http發展...