衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HTTP/3 來了,它比 HTTP/1 和 HTTP/2 強在哪兒?

億佰特物聯網應用專家 ? 2022-08-28 15:35 ? 次閱讀

前言通過這篇文章你可以了解到:1. 什么是HTTP協議?2.HTTP 1.1 / 2.0 / 3.0 的發展變更3.HTTP 1.1 / 2.0 / 3.0 的主要區別4.HTTP 3.0 進化發展的意義

什么是HTTP協議?

HTTP

HTTP(Hyper Text Transfer Protocol 超文本傳輸協議),是一個用于傳輸超文本文檔的應用層協議,基于TCP協議,它是為Web瀏覽器與Web服務器之間的通信而設計的。a6f8c604-24af-11ed-9ade-dac502259ad0.png基本特點:1.基于TCP協議,應用層協議2.傳輸一些HTML、CSS、JavaScript內容3.請求及響應4. 簡單可擴展:語義簡單且可在請求頭自定義內容5. 無狀態:請求之間是相互孤立的a71a3154-24af-11ed-9ade-dac502259ad0.pngHTTP協議到目前為止所有的版本可以分為HTTP 0.9、HTTP 1.0、HTTP 1.1、HTTP 2.0、HTTP 3.0,其中普遍應用的是HTTP 1.1版本,正在推進HTTP 2.0版本,以及未來的HTTP 3.0版本,今天主要介紹這三個版本。

HTTP 1.1 / 2.0 / 3.0 之間的發展變更

HTTP

「HTTP 1.1 」HTTP代表超文本傳輸協議,這是一種自1989年推出以來用于通過萬維網進行通信的應用程序協議。HTTP是互聯網上的計算機和服務器用來請求和發送信息的一種方法。
HTTP 1.1是標準化的協議,HTTP 1.1消除了大量歧義內容并引入了多項改進。「工作方式」HTTP利用一些簡單的方法在計算機之間發送和接收信息。兩種最常見的方法是:(1)獲取;(2)發布。當客戶端計算機與服務器通信時,它會發送這些命令之一來指示服務器下一步該做什么。作為響應,服務器通常會將資源(如 HTML 網頁)返回給客戶端計算機。「獲取示例」讓我們把它放到一個可能發生的示例HTTP事務中。a7429338-24af-11ed-9ade-dac502259ad0.png

在此示例中,客戶端計算機使用 GET 方法從地址為“www.example.co.uk”的主機服務器請求名為“index.html”的 HTML 文檔,該文檔采用 HTTP/1.1 協議。作為響應,Web 服務器將“index.html”文檔連同任何相關的樣式表、圖像或其他資源一起返回到客戶端計算機。但是,這些資源不會在一個事務中全部返回 - 請求和響應將來回傳遞,直到所有相關數據都已傳輸并且客戶端可以在其瀏覽器上顯示網頁。「開機自檢示例」下面的另一個示例是如何執行具有 POST 命令的典型 HTTP 事務:a767a920-24af-11ed-9ade-dac502259ad0.png在此示例中,客戶端計算機使用 POST 方法將數據發送到指定的服務器。這里發送的數據是“field1=value1&field2=value2”。第一行定義正在使用的方法、要將數據發送到的文件以及 HTTP 版本。“host”行定義了在發送指定數據之前,客戶端計算機應連接到的位置。

「HTTP 2.0 」
HTTP / 2是HTTP協議的第一個主要修訂版,旨在通過實施各種優化技術來減少網頁加載延遲。HTTP/2 由 IETF(互聯網工程任務組)于 2015 年 5 月發布,旨在成為與所有可用 Web 瀏覽器兼容的標準通信方法。「特點」1. HTTP/2 連接都是永久的,而且僅需要每個來源一個連接。2. 流控制:阻止發送方向接收方(服務器)發送大量數據的機制。3. 服務器可主動推送信息。a78a478c-24af-11ed-9ade-dac502259ad0.png「工作方式」雖然HTTP / 1.1和HTTP / 2共享語義以促進兩個協議之間的通信,但它們用于傳遞數據的方法可能會有很大差異。HTTP/2 和 HTTP/1.x 之間的主要區別如下:(1)HTTP/2 將請求和響應消息編碼為二進制,而不是傳輸使用 HTTP/1.1 看到的普通純文本消息。(2)HTTP/2是完全多路復用和并發的,這意味著與HTTP/1.x中的有限請求相比,它可以向網站發出更多的請求。(3)利用網站資產的流優先級。(4)標頭壓縮用于減少開銷處理。

「HTTP 3.0 」
HTTP/3是2020年8月發布的基于QUIC網絡協議的新版本HTTP。HTTP 3.0作為超文本傳輸協議(HTTP)的第三個版本,以前稱為HTTP-over-QUIC。QUIC(Quick UDP Internet Connections)最初由Google開發,是HTTP 2.0的繼任者。谷歌和Facebook等公司已經在使用QUIC來加速網絡。「工作方式」作為一個非常新的協議,HTTP / 3可能會在未來幾年內發生一些變化,但它的基礎仍將牢牢地基于QUIC協議。QUIC(快速UDP互聯網連接)是一種新的網絡傳輸層協議,與TCP相比,旨在顯著減少延遲并提高效率。從本質上講,連接建立得更快 - 特別是當網絡條件不是最佳時。由于QUIC減少了TCP慢啟動問題,視頻流的速度可能會顯著提高,尤其是在UHD及以上版本中。此外,在移動網絡和Wi-Fi網絡之間移動時,出于同樣的原因,HTTP / 3也可以提供速度改進。

HTTP/3 與 HTTP /1 / 2 有何不同?

HTTP

HTTP/ 3與HTTP / 1和2中使用的傳統方法有幾個顯著差異。讓我們來看看其中的一些關鍵區別。①網絡協議 – UDP 與 TCP:HTTP / 3和舊版本(僅使用TCP)之間最明顯的區別是HTTP / 3完全基于QUIC,它利用UDP。UDP是一種用于快速通信的傳輸協議,通過該協議可以錯誤地傳輸數據。這主要用于視頻傳輸,其中接收實時圖像至關重要,并且視頻幀損壞不是主要問題。使用新的QUIC協議,Web服務器現在能夠發送并行請求/響應。這意味著,如果一個請求或響應遇到數據包丟失,則其他請求或響應不會因此而停止。a843d486-24af-11ed-9ade-dac502259ad0.png②標頭壓縮 – QPACK 與 HPACK:
HTTP/3 使用 QPACK,這是一種壓縮格式,用于表示 HTTP 通過 QUIC 在 HTTP 中使用的 HTTP 標頭。a86c3e08-24af-11ed-9ade-dac502259ad0.png

HTTP 3.0 進化發展的意義

HTTP

就像HTTP 2.0一樣,這是由Google的帶頭推動的進步。斷續器或者很快,HTTP 3.0將再次建立在這些成就之上。雖然HTTP 2.0確實為我們提供了多路復用,并減輕了行頭阻塞,但它受到TCP的約束。a89a83c6-24af-11ed-9ade-dac502259ad0.png您可以將單個TCP連接用于多路復用在一起的多個流來傳輸數據,但是當其中一個流遭受數據包丟失時,整個連接(及其所有流)都會受到約束,也就是說,直到TCP完成其任務(重新傳輸丟失的數據包)。
這意味著,在目標節點的緩沖區中,所有數據包(即使它們已經傳輸并正在等待)都會被阻止,直到重新傳輸丟失的數據包。QUIC不受此限制。通過基于無連接 UDP 協議的 QUIC 構建,連接的概念不具有 TCP 的限制,并且一個流的故障不必影響其余流。QUIC(Quick UDP Internet Connections)于2012年由Google首次部署。它重新定義了網絡層的邊界,依賴于較低級別的UDP協議,重新定義了“用戶空間”中的握手,可靠性功能和安全功能,避免了升級互聯網系統內核的需要。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • HTTP
    +關注

    關注

    0

    文章

    511

    瀏覽量

    31518
收藏 人收藏

    評論

    相關推薦

    HTTP網絡通訊過程

    過程 客戶端(發送方組包) 1HTTP 瀏覽器 解析 URL (協議、域名、資源路徑) 生成? HTTP 請求報文 2)DNS(真實地址查
    的頭像 發表于 01-20 09:07 ?88次閱讀
    <b class='flag-5'>HTTP</b>網絡通訊過程

    如何使用 cURL 測試 HTTP 協議

    。以下是如何使用cURL測試HTTP協議的詳細步驟和示例。 1. 安裝cURL 在大多數Linux發行版和MacOS中,cURL已經預裝。如果你使用的是Windows,可以從cURL的官方網站下載并
    的頭像 發表于 12-30 09:26 ?249次閱讀

    HTTP 1.1 和 HTTP 2.0 的區別

    2015年正式成為互聯網標準。以下是HTTP/1.1和HTTP/2之間的一些主要區別: 1. 多路復用(Multiplexing) HTTP
    的頭像 發表于 12-30 09:25 ?304次閱讀

    如何實現 HTTP 協議的安全性

    協議的安全性,可以采取以下幾種方法: 1. 使用HTTPS HTTPS(安全超文本傳輸協議)是HTTP的安全版本,它在HTTP的基礎上通過SSL/TLS協議提供了數據加密、數據完整性驗證和身份驗證。使用HTTPS可以確保數據在傳
    的頭像 發表于 12-30 09:22 ?314次閱讀

    HTTP 協議的工作原理

    HTTP協議的工作原理 1. HTTP協議概述 HTTP是一個應用層協議,它定義了客戶端與服務器之間請求和響應的格式。HTTP協議基于TCP
    的頭像 發表于 12-30 09:21 ?332次閱讀

    HTTP 協議的基本概念

    瀏覽器)和服務器之間請求和響應的格式。 1. HTTP協議概述 HTTP協議基于TCP/IP協議之上,主要規定了客戶端與服務器之間的通信規則。它允許客戶端通過發送請求來獲取服務器上的資源,服務器則根據請求返回相應的響應。
    的頭像 發表于 12-29 15:12 ?502次閱讀

    合宙Air780EP模塊AT開發-HTTP應用指南

    /article/937)2、初始化HTTP服務3、設置HTTP會話參數4、如果要支持SSL,配置SSL參數5、如果使用POST命令,輸入POST數據6、發起
    的頭像 發表于 08-01 17:15 ?855次閱讀
    合宙Air780EP模塊AT開發-<b class='flag-5'>HTTP</b>應用指南

    講解HTTP代理類別,使用設置,測試HTTP代理方法

    HTTP
    jf_62215197
    發布于 :2024年07月19日 07:03:46

    幫助讀者更深入地了解IP代理領域,并掌握與HTTP相關的知識

    HTTP
    jf_62215197
    發布于 :2024年07月12日 07:06:12

    為什么使用MQTT而不是HTTP

    為什么使用MQTT而不是HTTP? 在探討為何在某些場景下選擇MQTT(Message Queuing Telemetry Transport)而非HTTP(Hypertext Transfer
    的頭像 發表于 06-19 14:26 ?529次閱讀
    為什么使用MQTT而不是<b class='flag-5'>HTTP</b>?

    使用http代理究竟什么原因?

    HTTP
    jf_62215197
    發布于 :2024年05月13日 07:42:55

    鴻蒙網絡開發學習:【ylong_http

    ylong_http 構建了完整的 HTTP 能力,支持用戶使用 HTTP 能力完成通信場景的需求。 ylong_http 使用 Rust 編寫,為 OpenHarmony 的
    的頭像 發表于 03-25 16:36 ?770次閱讀
    鴻蒙網絡開發學習:【ylong_<b class='flag-5'>http</b>】

    鴻蒙開發實戰:【ylong_http】解析

    ylong_http 構建了完整的 HTTP 能力,支持用戶使用 HTTP 能力完成通信場景的需求。
    的頭像 發表于 03-12 16:57 ?663次閱讀
    鴻蒙開發實戰:【ylong_<b class='flag-5'>http</b>】解析
    姚记娱乐城网站| 百家乐导航| 会理县| 百家乐官网免费赌博软件| 涂山百家乐官网的玩法技巧和规则| 百家乐娱乐用品| 老虎机上分器| 兴和县| 金榜百家乐官网的玩法技巧和规则| 百家乐怎样玩的| 速博娱乐| 百家乐官网网投打法| 永康百家乐赌博| 大发888送58| 网站百家乐官网博彩| 挖掘百家乐赢钱秘籍| 大发888棋牌游戏官网| 川宜百家乐官网分析软件| 做生意带什么招财| 大发888娱乐场下载 17| 百家乐官网投注玩多少钱| 澳门百家乐怎样下注| bet365代理| 马德里百家乐官网的玩法技巧和规则 | 网上老虎机游戏| 百家乐官网德州扑克轮盘| 百家乐平台哪个有在线支付呢| 大发888官方6222.co| 尊龙百家乐官网娱乐网| 火箭百家乐的玩法技巧和规则 | 棋牌类玩具| 缅甸百家乐官网的玩法技巧和规则| 大连百家乐商场| 百家乐官网玩法的技巧| 百家乐自动下注| 吐鲁番市| 澳门百家乐免费开户| 明升体育| 百家乐棋牌公式| 南部县| 百家乐21点桌|