文章目錄
- 前言
- http 1.1與http 1.0
- http 2.0 與http 1.x
- 注意點
前言
僅做個人學習筆記記錄,如有錯誤,請多多包涵。
學習鏈接:
HTTP 1.0與1.1、2.0之間的區別
面試官:說說 HTTP1.0/1.1/2.0 的區別?
http 1.1與http 1.0
http協議1.1相對于http協議1.0
1、增加持久化鏈接(長連接),多個http請求可以共用同一連接。http 1.0 打開一個 tcp/ip 連接后只用來發送一個 http 請求,發完后 tcp/ip 連接關閉。
但在http 1.1中,發完后如果上一個 http 請求報文中有 connection: keep-alive
,服務端在返回應答報文以后保持tcp/ip連接開啟
,如果是 connection: close
,那么 tcp/ip 連接關閉
。
2、虛擬主機,多域名之間可以共享同一ip地址
(虛擬主機和NAT協議建立的IP:端口號之間的關聯,公網和私網)
3、流水線處理,下一請求不必等上一請求的響應到達后發送,可以一次發送多條響應。
4、增加了更多的狀態碼,完善了狀態碼系統。
5、增加了斷點續傳,使用range字段來讓文件下載斷開后,不用重新下載,可以接著上次的下載進度。
http 2.0 與http 1.x
1、相對于1.x新增了多路復用
可以理解為將同時傳輸的文件拆分成多個frame,在可用現成間輪轉請求這些frame,避免一個文件請求阻塞另一個文件的情況,但是這種做法會有frame級別的阻塞,原因和TCP協議有關,也正是因為如此,才有了h3和QUIC協議
2、換成了二進制編碼,相較于之前http 1.x協議的文本形式,明文傳輸,更加安全可靠。
3、壓縮消息頭,節省開銷,降低延遲。
4、服務器推送,服務器可以自己推送資源到瀏覽器處,不用等待瀏覽器發送請求占用資源。
5、增加安全協議TLS
(其和https的s之間的區別)
https中的s代表的是ssl協議
tls協議和ssl協議的差別:
參考鏈接:
SSL與TLS到底有何區別,一見分曉
傳輸層安全協議TLS——密碼學概述
第一篇文章指出,tsl協議基于ssl協議3.0,可以簡單理解為ssl協議的升級版
根據第二篇參考文章說,ssl協議不推薦使用
注意點
http 2.0 完全沒有新增請求狀態碼, http 1.1中狀態碼系統就已經完善了
至此,借宿后