HTTP2.0協議
阿新 • • 發佈:2017-09-05
阻塞 高效 初始 部分 客戶端 使用 服務端 合成 ade
鏈接:http://caibaojian.com/http2.html
來源:http://caibaojian.com
http1.0和http1.1的缺點:
1.http1.0只允許在一個連接上建立當前未完成的請求
2.http1.1管道只部分處理了請求並發和包頭堵塞問題,客戶端多建立TCP連接,減少延遲
3.報頭字段經常重復和冗長,數據包變大,容易造成初始TCP端口的堵塞,多建立幾個TCP連接
http2x協議解決之道:
1.優化基礎連接的語義映射,例如同一個連接上建立交錯的請求和響應,使用高效率編碼的報頭字段
2.允許請求的優先級,讓更多重要的請求先完成
http2協議的特點:
1.http2中最基本的協議單位是幀。每個幀都有不同的類型和用途。例如,報頭(HEADERS)和數據(DATA)幀組成了基本的http請求和響應。幀包含的HTTP報頭字段是壓縮的。HTTP請求有可能是高度冗余的,因此壓縮能顯著減少請求和響應的大小。
2.請求多路復用:一個流上分配多個HTTP請求響應交換,流在很大程度上是相互獨立的,因為一個請求上
的阻塞和終止不會影響其他請求的處理。
3.流量控制和優先級確保正確使用復用流,流量控制有助於確保只傳播接受需要的數據,優先級確保有限的資源能被重要的請求使用
4.添加了一種新的交互模式,即服務器能推送消息給客戶端。服務器推送允許服務端預測客戶端需要來發送
數據給客戶端,交換網絡使用以阻塞潛在的延遲增長。服務器通過復用一個以PUSH_PROMISE幀發送的請求來實現推送,然後服務端可以在一個單獨的流裏面發送響應給這個合成的請求。
HTTP2.0協議