国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

為什么叫 HTTP/2 ,而不是 HTTP/2.0 ?

網絡 通信技術
互聯網時代,足不出戶,點點鼠標就可以輕松了解外面的世界變化,這一切得益于網絡傳輸數據。我們都知道網絡有7層模型,從底層到上層依次是:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

[[432211]]

大家好,我是Tom哥~

今天跟大家聊聊下 HTTP協議,歡迎留言討論

互聯網時代,足不出戶,點點鼠標就可以輕松了解外面的世界變化,這一切得益于網絡傳輸數據。

我們都知道網絡有7層模型,從底層到上層依次是:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

越往上,越接近用戶習慣,更容易被用戶直觀了解。

今天講的 HTTP 協議屬于應用層協議,也是互聯網廣泛使用的基礎協議之一。

一、 HTTP/0.9

0.9 版本是HTTP最早的版本,誕生于 1991 年,比較簡單。

1、只支持 GET 請求,沒有請求頭。每次請求都要單獨創建一個TCP連接,復用性差,性能不高

2、服務端響應的數據只能是 HTML格式,服務器發送完畢,會關閉TCP連接。如果請求的頁面不存在,也不會返回任何錯誤碼。

當時,互聯網剛起步,頁面展現形式更多是文本為主,能滿足基本需求。隨著用戶需求的多樣化,對展示形態和性能也提出了更高要求,HTTP協議也開始了慢慢的升級之路。

二、 HTTP/1.0

1996年,HTTP/1.0 發布,相比之前版本增加了很多特性。

1、請求和響應增加了頭信息(header),用來描述一些元數據,如:

  1. Content-Type 讓響應數據不只限于超文本 
  2. Expires、Last-Modified 緩存 
  3. Authorization 身份認證 
  4. Connection: keep-alive 支持長連接,但非標準 

2、請求方法,除了 GET,還增加了 POST、HEAD命令,豐富了互動方式

3、豐富了傳輸內容的格式,有文本、圖像、視頻、二進制文件

4、請求時增加 HTTP 協議版本,響應端增加狀態碼。

缺點:

主要還是連接復用問題,每個TCP連接只能發送一個請求。當數據發送完畢后,連接就會關閉。由于TCP建立連接,需要三次握手,所以性能會比較差。

為了緩解這個問題,請求頭引入一個非標準的Connection字段:Connection: keep-alive,要求服務器不要關閉TCP連接,從而達到復用效果。

當然,這個不是標準字段,只是一個臨時方案。

三、 HTTP/1.1

1997年,HTTP/1.1 版本發布。進一步完善了HTTP協議,也是目前最流行的版本,一直活躍至今。

1、默認支持長連接(PersistentConnection)和請求的流水線(Pipelining)處理,在一個TCP連接上可以傳送多個HTTP請求和響應,減少了建立和關閉連接的消耗和延遲

2、管線化技術。支持多個 HTTP 請求批量發送,不用排隊,這就解決了 HTTP 隊頭阻塞問題。但批量發送的 HTTP 請求,必須按照發送的順序返回響應

3、流式渲染,響應端可以不用一次返回所有數據,可以將數據拆分成多個模塊,產生一塊數據,就發送一塊數據,這樣客戶端就可以同步對數據進行處理,減少響應延遲,降低白屏時間。

4、請求頭引入了range頭域,它允許只請求資源的某個部分,即返回碼是206(Partial Content),這樣就方便了開發者自由的選擇以便于充分利用帶寬和連接

5、增加 Host 頭,實現了虛擬主機技術,將一臺服務器分成若干個主機,這樣就可以在一臺服務器上部署多個網站了。通過配置 Host 的域名和端口號,即可支持多個 HTTP 服務

6、頭部增加一些緩存字段,如 E-Tag、Cache-Control 等

7、新增了24個錯誤狀態響應碼,如 409(Conflict)表示請求的資源與資源的當前狀態發生沖突;410(Gone)表示服務器上的某個資源被永久性的刪除。

小結:

請求和響應成對出現,順序串行。如果按QPS來理解的話,最大的并發數只能是 1

四、 HTTP/2

HTTP/2 誕生于 2015 年,最大特點是基于二進制的特性,對 HTTP 傳輸效率進行了深度優化。

新增了哪些特性?

1、二進制幀

HTTP/2 將一個 HTTP 請求劃分為 3 個部分:二進制幀、消息、數據流

  • 幀:一段二進制數據,是 HTTP/2 傳輸的最小單位
  • 消息:邏輯上的 HTTP 消息,比如請求、響應等,由一或多個幀組成
  • 數據流:連接中的一個虛擬信道,可以同時承載一條或多條消息,支持雙向承載

一個TCP連接上,承載著雙向消息,一條消息包含多個二進制幀,每個幀都有唯一標識,來自不同數據流的幀可以交錯發送,然后再根據每個幀頭的數據流標識符重新組裝,這樣就實現了數據傳輸。

2、多路復用

HTTP/1.1 中的 KeepAlive 長連接雖然可以傳輸很多請求,但它的吞吐量很低,因為在發出請求等待響應的那段時間里,這個長連接不能做任何事!而 HTTP/2 通過 Stream 這一設計,允許請求并發傳輸。因此,HTTP/1.1 時代 Chrome 通過 6 個連接訪問頁面的速度,遠遠比不上 HTTP/2 單連接的速度。

HTTP/2 的并發性能比 HTTP/1.1 通過 TCP 連接實現并發要高。這是因為,當 HTTP/2 實現 100 個并發 Stream 時,只經歷 1 次 TCP 握手、1 次 TCP 慢啟動以及 1 次 TLS 握手,但 100 個 TCP 連接會把上述 3 個過程都放大 100 倍!

3、頭部壓縮

HTTP/1.1 的頭部字段包含大量信息,而且每次請求都得帶上,占用了大量的帶寬。

HTTP/2 靜態表僅用一個數字來表示,其中,映射數字與字符串對應關系的表格,被寫死在 HTTP/2 實現框架中。這樣的編碼效率非常高,

什么是靜態表呢?HTTP/2 將 61 個高頻出現的頭部,比如描述瀏覽器的 User-Agent、GET 或 POST 方法、返回的 200 SUCCESS 響應等,分別對應 1 個數字再構造出 ”字典“,并寫入 HTTP/2 客戶端與服務端,用索引號表示重復的字符串,可以達到 50%~90% 的高壓縮率。

4、請求優先級

由于采用多路復用,多個請求會同時產生多個數據流,數據流中有一個優先級的標識,服務端根據這個標識決定響應的優先順序。

流 ID 不能重用,只能順序遞增,客戶端發起的 ID 是奇數,服務器端發起的 ID 是偶數;

5、服務器端推送

HTTP/1.1 不支持服務器主動推送消息,因此當客戶端需要獲取通知時,只能通過定時器不斷地輪詢拉取消息。HTTP/2 的消息推送結束了無效率的定時拉取,節約了大量帶寬和服務器資源。

 

例如:HTTP/1.1 中請求一個頁面時,瀏覽器會先發送一個 HTTP 請求,然后得到響應的 HTML 內容并開始解析,如果發現有<script src="xxxx.js">標簽,則會再次發起 HTTP 請求獲取對應的 JS 內容。而 HTTP/2 可以在返回 HTML 的同時,將需要用到的 JS、CSS 等內容一并返回給客戶端,當瀏覽器解析到對應標簽時,也就不需要再次發起請求了。

小結:

通過二進制幀流模式,打破之前的”請求 - 應答“串行模式,單個TCP連接上支持并發請求、響應,多路復用大大提升了網絡吞吐量。

HTTP/2 作為升級版,為了與之前的版本保持兼容,對頭字段、狀態碼、請求方法等信息都保留不變,降低了學習成本,同時上層應用也可以做到無縫兼容。

小提示:

做軟件架構也是一樣,設計接口規范時一定要慎之又慎,盡量預留很長一段時間的擴展,后續更多是對里面的邏輯優化重構,對外黑盒,無需感知。

為什么是 HTTP/2 ,而不是HTTP/2.0 ?

HTTP/2 工作組特別給出了解釋,以前的1.0、1.1 容易讓人誤解,實際使用中難以區分,所以,決定后續的版本不在使用小版本,一律采用大版本。

所以,接下來,你只會看到 HTTP/2 、HTTP/3 ...

關于加密

為了滿足安全性,HTTP/2分別支持”加密“和”明文“,定義兩個字符串標識符:“h2”表示加密的 HTTP/2,“h2c”表示明文的 HTTP/2,多出的那個字母“c”的意思是“clear text”。

五、 HTTP/3

HTTP/2 雖然使用“幀”、“流”“多路復用”,沒有了“隊頭阻塞”,但這些優化技巧都是在應用層里,而在底層,也就是 TCP 協議里,還是會發生“隊頭阻塞”。

HTTP/2 把多個請求 - 響應分解成流,交給 TCP 后,TCP 會再拆成更小的段(segment)依次發送。如果網絡不好時,會發生丟包。

TCP為了保證可靠性傳輸,會有丟包重傳機制。這樣,其他的包即使已經收到了,也只能放在緩沖區里,這樣就又出現了隊頭阻塞,這是TCP協議固有的。

為了解決這個問題,Google推出了QUIC協議,讓 HTTP 跑在 QUIC 上而不是 TCP 上,這個新版本,我們稱之為 HTTP/3

HTTP/3 目前還處于草案階段,離正式發布還有段時間,我們拭目以待...

 

責任編輯:武曉燕 來源: 微觀技術
相關推薦

2022-05-30 10:23:59

HTTPHTTP 1.1TCP

2024-11-05 08:16:04

HTTP/3HTTP 2.0QUIC

2021-09-01 07:59:44

HTTPweb瀏覽器

2022-03-30 08:21:57

合并HTTP

2013-03-25 10:14:18

NginxApache

2019-04-19 11:56:48

框架AI開發

2021-06-02 10:52:01

HTTP3Linux

2019-04-24 08:00:00

HTTPSHTTP前端

2021-05-30 09:25:48

HttpETag 網絡協議

2023-10-20 08:14:21

2022-06-07 08:39:35

RPCHTTP

2023-10-16 08:57:52

2012-10-10 16:52:21

CentOSDebianUbuntu

2021-08-14 09:04:58

TypeScriptJavaScript開發

2020-03-08 21:22:03

HTTP112

2023-11-21 22:23:06

2025-07-01 07:53:47

2022-05-23 10:11:36

HTTP緩存

2020-11-25 09:36:17

HTTPRPC遠程

2024-07-11 10:41:07

HTTPSHTTP文本傳輸協議
點贊
收藏

51CTO技術棧公眾號

精品嫩草影院久久| 中文字幕一区二区三区有限公司| a'aaa级片在线观看| 亚洲精品一卡二卡| 久久精品aaaaaa毛片| 日韩综合精品| 欧美在线一区二区视频| 亚洲影视资源| 尤物yw午夜国产精品视频| 超碰在线最新网址| 欧美一区二区三区啪啪| av在线播放av| 欧洲中文字幕精品| 黄色小视频在线免费观看| 午夜伦理一区二区| 日本桃色视频| 国产精品青草久久| www.69av| 韩国在线视频一区| 蜜桃伊人久久| 富二代精品短视频| 色婷婷久久一区二区| 日韩av免费网站| 国产精品88久久久久久妇女| 国产有码在线| 欧美日韩亚洲精品一区二区三区| 青青青在线观看视频| 国产一区二区三区av电影| 久久久影院一区二区三区| 99精品视频免费| 国产伦精品一区二区三区四区视频 | 日韩欧美一区二区三区| 中文字幕免费在线| 亚洲欧洲一区二区在线播放| 成人在线免费观看网址| 国产成人午夜| 日韩美女视频一区| 亚洲国产精品久久久久| 欧美精品亚洲| 国产福利图片| 欧美日韩va| 久久久久国产免费免费| 国产suv精品一区二区三区88区| 白嫩亚洲一区二区三区| 欧美日韩视频一区二区| 人交獸av完整版在线观看| 亚洲免费中文字幕| 精品亚洲二区| 国产精品亚洲自拍| 国产一区二区三区成人欧美日韩在线观看 | 国产亚洲视频系列| 日本免费专区| 欧美三级韩国三级日本一级| 九色porny视频在线观看| 免费av一区二区| 久久影视一区| 干日本少妇视频| 国产精品国产三级国产| 国产区视频在线| 亚洲精品一二区| 女一区二区三区| 精品日韩欧美| 国产亚洲欧美在线| 日本免费视频在线观看| 日韩有码视频在线| 国产一区二区中文| 欧美视频在线播放一区| 91久久精品一区二区| 欧美a一级片| 国产一区二区三区av在线| 99久精品国产| aaa日本高清在线播放免费观看| 色偷偷av一区二区三区乱| 一区二区三区国产精华| 国产精品12345| 91成人免费在线| 一区二区三区在线免费看 | 日韩a一区二区| 热久久最新网址| 亚洲成av人**亚洲成av**| xxx欧美xxx| 国产精品大全| 成人欧美一区二区三区| 91九色国产在线播放| 日本欧美精品在线| 国产一区999| 搞黄视频在线观看| 欧美精品激情在线| 久久99精品国产麻豆婷婷| 深夜视频在线免费| 欧美激情手机在线视频| 麻豆专区一区二区三区四区五区| 亚洲污视频在线观看| 欧美mv日韩mv| 国产精品99视频| 亚洲77777| 亚洲色图综合久久| 伊人精品视频| 樱花在线免费观看| 久久久伊人欧美| 盗摄精品av一区二区三区| 成人精品福利| 91精品国产综合久久香蕉| 国产欧美日产一区| 成人午夜sm精品久久久久久久| 欧美日韩亚洲免费| 欧美在线观看视频在线| 欧洲毛片在线视频免费观看| 男人舔女人下面高潮视频| 日韩av一卡二卡| 国产精品综合| 每日更新在线观看av| 97精品国产91久久久久久| 成人夜色视频网站在线观看| brazzers在线观看| 欧美精品人人做人人爱视频| 色婷婷精品久久二区二区蜜臂av| 真实原创一区二区影院| 国产野外作爱视频播放| 欧美成人免费全部| 福利一区福利二区| 自拍偷自拍亚洲精品被多人伦好爽| 牛人盗摄一区二区三区视频| 欧美日本乱大交xxxxx| 国产精品mv在线观看| 青青免费在线视频| 92福利视频午夜1000合集在线观看| 一区二区三区色| 怕怕欧美视频免费大全| wwwcom羞羞网站| 97久久精品在线| 亚洲精品视频在线| 欧洲美女日日| 一级毛片在线观| 91在线|亚洲| 欧美日韩不卡一区二区| 一本综合精品| 男男gaygays亚洲| 一区二区三区四区久久| 亚洲社区在线观看| av网站一区二区三区| 欧美久久亚洲| 国产特级毛片| 91免费视频国产| 91黄视频在线| 日韩av午夜在线观看| 最新中文字幕在线播放| 黄色网页免费在线观看| 高清欧美一区二区三区| 亚洲地区一二三色| 99精品国产99久久久久久福利| 18视频在线观看| 日本一道在线观看| 久久香蕉国产线看观看av| 中文无字幕一区二区三区 | 久久久噜噜噜www成人网| 日本老熟妇毛茸茸| 黄页免费在线观看视频| 久久久久免费网| 久久亚洲综合网| 成人午夜小视频| 国产精品99久久久久久久久久久久| 日本道色综合久久| 17c精品麻豆一区二区免费| 精品一区二区三区在线观看国产| 欧美日韩一区二区精品| 欧美日韩一区二区三区 | 在线播放日韩av| 欧美日韩国产精品| 亚洲福利影片在线| 欧美一区三区三区高中清蜜桃| 国产精品国产亚洲精品看不卡15 | 久久免费国产精品| 中文字幕av一区| 亚洲精品一区国产精品| 国精产品一区一区三区视频| 大地资源第二页在线观看高清版| 伊人色综合久久| 亚洲电影小说图| 日本不卡免费高清视频在线| 超碰在线最新| 久久天天久久| 欧美日韩免费| 精品一区二区三区免费观看| www.亚洲人| 亚洲国产精品综合小说图片区| 欧美日韩在线三区| 国产精品99久久99久久久二8| 亚洲一区二区三区香蕉| 亚洲人性生活视频| 欧洲亚洲视频| av中文字幕一区| 日韩三区在线观看| 超碰97国产在线| 成人软件网18免费视频| 国产夫妻在线视频| a视频在线看| 天然素人一区二区视频| 丝袜美腿一区二区三区| 色婷婷久久久综合中文字幕|