2 HTTP協(xié)議的發(fā)展歷史

1、弄清楚一個概念,HTTP請求與TCP請求不是一個概念,在同一個TCP請求可以發(fā)送多個HTTP請求,以前的協(xié)議版本不能這么做,但是現(xiàn)在HTTP1.1.1里面可以這么做,而且在HTTP2里面是會更大的去優(yōu)化相關(guān)的一些東西,來提高HTTP傳輸效率以及服務器的性能。

2、TCP連接對應多個HTTP請求,而一個HTTP請求肯定在某一個TCP連接里面去定義發(fā)送的。

5b0e4e340001703f19201080.jpg

第一個版本 HTTP / 0.9

只有一個命令 GET
沒有HEADER 等描述數(shù)據(jù)的信息
服務器發(fā)送完畢就關(guān)閉

第二個版本 HTTP / 1.0

增加了很多命令
增加了status code 和 header
多字符集支持、多部分發(fā)送、權(quán)限、緩存 等等

第三個版本 HTTP / 1.1

持久鏈接
pipleine
增加了 host 和其他一些命令 (在同一個物理服務器可以同時跑很多服務)
第四個版本 HTTP / 2.0

所以數(shù)據(jù)都是以二進制傳輸
同一個鏈接里面發(fā)送多個請求不在需要按照順序來
頭信息壓縮以及推送等提高效率的功能

HTTP2

1、所有數(shù)據(jù)以二進制傳輸
同一個連接里面發(fā)送多個請求不再需要按照順序來(可以同時返回數(shù)據(jù))
頭信息壓縮以及推送等提高效率的功能:
頭信息壓縮:在HTTP1發(fā)送和返回請求,http頭都是必須完整發(fā)送并返回,帶寬量大。
2、推送:http請求只能是發(fā)送然后響應返回內(nèi)容,客戶端永遠是主動方,服務端是被動方。http2有了推送,服務端可以主動發(fā)起數(shù)據(jù)傳輸。
如:web頁面里面有css,img,js等文件,它們都是連接的形式,這里就有順序的問題,解析文本之后才能發(fā)送對應的鏈接請求,http2有了推送功能,在請求的同時,可以主動把這個頁面的css,img,js等文件推送到客戶端,這樣發(fā)送順序是并行的,不是串行的,性能高出許多。

HTTPS

安全版本的HTTP。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容