色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

HTTP 3.0為何要徹底放棄TCP呢?

dyquk4xk2p3d ? 來源:Hollis ? 2023-03-15 09:35 ? 次閱讀

從HTTP/1.0開始,一直到HTTP/2,不管應用層協議如何改進,TCP一直以來都是HTTP協議的基礎,主要是因為他能提供可靠連接。

但是,從HTTP 3.0開始,這個情況就有所變化了。

因為,在最新推出的HTTP 3.0中,已經徹底棄用TCP協議了。

TCP隊頭阻塞

我們知道,TCP傳輸過程中會把數據拆分為一個個按照順序排列的數據包,這些數據包通過網絡傳輸到了接收端,接收端再按照順序將這些數據包組合成原始數據,這樣就完成了數據傳輸。

但是如果其中的某一個數據包沒有按照順序到達,接收端會一直保持連接等待數據包返回,這時候就會阻塞后續請求。這就發生了TCP隊頭阻塞。

HTTP/1.1的管道化持久連接也是使得同一個TCP鏈接可以被多個HTTP使用,但是HTTP/1.1中規定一個域名可以有6個TCP連接。而HTTP/2中,同一個域名只是用一個TCP連接。

所以,在HTTP/2中,TCP隊頭阻塞造成的影響會更大,因為HTTP/2的多路復用技術使得多個請求其實是基于同一個TCP連接的,那如果某一個請求造成了TCP隊頭阻塞,那么多個請求都會受到影響。

TCP握手時長

我們都知道TCP的可靠連接是基于三次握手與四次揮手實現的。但是問題是三次握手是需要消耗時間的。

TCP三次握手的過程客戶端和服務器之間需要交互三次,那么也就是說需要額外消耗1.5 RTT。

> RTT:網絡延遲(Round Trip Time)。他是指一個請求從客戶端瀏覽器發送一個請求數據包到服務器,再從服務器得到響應數據包的這段時間。RTT 是反映網絡性能的一個重要指標。

在客戶端和服務端距離比較遠的情況下,如果一個RTT達到300-400ms,那么我握手過程就會顯得很”慢”了。

升級TCP

基于上面我們提到的兩個問題,有人提出來說:既然TCP存在這些問題,并且我們也知道這些問題的存在,甚至解決方案也不難想到,為什么不能對協議本身做一次升級,解決這些問題呢?

其實,這就涉及到一個”協議僵化“的問題。

這樣講,我們在互聯網上瀏覽數據的時候,數據的傳輸過程其實是極其復雜的。

我們知道的,想要在家里使用網絡有幾個前提,首先我們要通過運行商開通網絡,并且需要使用路由器,而路由器就是網絡傳輸過程中的一個中間設備。

中間設備是指插入在數據終端和信號轉換設備之間,完成調制前或解調后某些附加功能的輔助設備。例如集線器、交換機和無線接入點、路由器、安全解調器、通信服務器等都是中間設備。

在我們看不到的地方,這種中間設備還有很多很多,一個網絡需要經過無數個中間設備的轉發才能到達終端用戶。

如果TCP協議需要升級,那么意味著需要這些中間設備都能支持新的特性,我們知道路由器我們可以重新換一個,但是其他的那些中間設備呢?尤其是那些比較大型的設備呢?更換起來的成本是巨大的。

而且,除了中間設備之外,操作系統也是一個重要的因素,因為TCP協議需要通過操作系統內核來實現,而操作系統的更新也是非常滯后的。

所以,這種問題就被稱之為”中間設備僵化”,也是導致”協議僵化”的重要原因。這也是限制著TCP協議更新的一個重要原因。

所以,近些年來,由IETF標準化的許多TCP新特性都因缺乏廣泛支持而沒有得到廣泛的部署或使用!

QUIC

所以,擺在HTTP/3.0面前的就只有一條路,那就是放棄TCP。

于是,HTTP/3.0在基于UDP+迪菲赫爾曼算法(Diffie–Hellman)之上實現了QUIC協議(Quick UDP Internet Connections)。

QUIC協議有以下特點:

基于UDP的傳輸層協議:它使用UDP端口號來識別指定機器上的特定服務器。

可靠性:雖然UDP是不可靠傳輸協議,但是QUIC在UDP的基礎上做了些改造,使得他提供了和TCP類似的可靠性。它提供了數據包重傳、擁塞控制、調整傳輸節奏以及其他一些TCP中存在的特性。

實現了無序、并發字節流:QUIC的單個數據流可以保證有序交付,但多個數據流之間可能亂序,這意味著單個數據流的傳輸是按序的,但是多個數據流中接收方收到的順序可能與發送方的發送順序不同!

快速握手:QUIC提供0-RTT和1-RTT的連接建立

使用TLS 1.3傳輸層安全協議:與更早的TLS版本相比,TLS 1.3有著很多優點,但使用它的最主要原因是其握手所花費的往返次數更低,從而能降低協議的延遲。

阻礙

以上,我們介紹了很多QUIC的相比較于TCP的優點,可以說這種協議相比較于TCP確實要優秀一些。

因為他是基于UDP的,并沒有改變UDP協議本身,只是做了一些增強,雖然可以避開中間設備僵化的問題,但是,在推廣上面也不是完全沒有問題的。

首先,很多企業、運營商和組織對53端口(DNS)以外的UDP流量會進行攔截或者限流,因為這些流量近來常被濫用于攻擊。

特別是一些現有的UDP協議和實現易受放大攻擊(amplification attack)威脅,攻擊者可以控制無辜的主機向受害者投放發送大量的流量。

所以,基于UDP的QUIC協議的傳輸可能會受到屏蔽。

另外,因為UDP一直以來定位都是不可靠連接,所以有很多中間設備對于他的支持和優化程度并不高,所以,出現丟包的可能性還是有的。。。

但是不管怎么樣,HTTP/3.0的時代一定會到來的,QUIC協議全面代替TCP的時代也會到來的,讓我們拭目以待吧。





審核編輯:劉清

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

    關注

    8

    文章

    1353

    瀏覽量

    79068
  • UDP
    UDP
    +關注

    關注

    0

    文章

    325

    瀏覽量

    33934
  • RTT
    RTT
    +關注

    關注

    0

    文章

    65

    瀏覽量

    17122
  • Quic
    +關注

    關注

    0

    文章

    25

    瀏覽量

    7298
  • HTTP協議
    +關注

    關注

    0

    文章

    61

    瀏覽量

    9721

原文標題:HTTP 3.0徹底放棄TCP,TCP到底做錯了什么?

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    HTTPTCP、QUIC協議詳解

    HTTP 3.0HTTP 協議的第三個主要版本,前兩個分別是 HTTP 1.0 和 HTTP 2.0 ,但其實
    發表于 07-25 11:58 ?1649次閱讀

    使用LabVIEW學習TCPHTTP

    使用LabVIEW學習TCPHTTP
    發表于 07-01 10:55

    TCP/IP、Http、Socket的區別

      網絡由下往上分為  物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層。  通過初步的了解,我知道IP協議對應于網絡層,TCP協議對應于傳輸層,而HTTP協議對應于應用層,  三者從
    發表于 04-06 18:46

    放棄還是堅持

    什么都不知道,連別人給的電子圖是錯的自己都不知道,所以東西算是集齊了,可是我把它呈現的并不是客戶的,可憐我的程序還在死,我恨不得就這樣放棄,可是我不想放棄,腦袋卻沒東西,有人有這樣過么?
    發表于 07-12 17:44

    【學習打卡】OpenHarmony的HTTPTCP介紹

    信息有關。毫無疑問,幾乎每次出現在你的電腦瀏覽器中,你都會在 URL 的前面看到HTTP這個前綴。那么兩種協議是如何交互的,以及它們在整個數據傳輸中所扮演的角色是怎么樣的。接下來讓我們分解一下TCP
    發表于 07-31 22:18

    HTTP服務器使用uIP TCP/ IP堆棧的示例

    應用程序: HTTP 服務器使用 uIP TCP/ IP 堆棧的示例 BSP 版本:M480系列BSP CMSIS V3.03.001 硬件: NuMaker-PFM-M487 VER 3.0
    發表于 08-22 07:07

    TCP-IP詳解_卷3_TCP事務協議,HTTP,NNTP

    TCP-IP詳解_卷3_TCP事務協議,HTTP,NNTP和UNIX域協議》
    發表于 03-24 22:42 ?39次下載

    tcphttp的區別在哪里

    我一直以為HttpTcp是兩種不同的,但是地位對等的協議,雖然知道TCP是傳輸層,而http是應用層今天學習了下,知道了 http
    發表于 12-08 12:32 ?2.6w次閱讀
    <b class='flag-5'>tcp</b>和<b class='flag-5'>http</b>的區別在哪里

    因為這些,微軟徹底放棄Windows Phone了!

    宣布放棄Windows Phone后,微軟也是在加速清退搭載這些系統的設備。
    發表于 04-24 08:38 ?3222次閱讀

    透明手機外殼的注塑為何采用注塑壓縮

    在光學工程應用中,低注射壓力和保壓壓力,能最大限度地減少內部應力,因此,對光學特性具有重大影響。注塑機因此必須具有高度的適應性,還應具有非常精確,重復性運動的功能。那么透明手機外殼的注塑為何采用注塑壓縮?其實不僅僅是因為彩虹
    的頭像 發表于 01-16 17:14 ?9552次閱讀

    為了速度犧牲安全,下一代HTTP底層協議或將放棄TCP協議

    據報道,國際互聯網工程任務組(Internet Engineering Task Force, IETF)將于近日商討下一代HTTP底層協議,可能不再使用已經沿用多年的TCP協議,而有望改用以UDP協議發展出的QUIC技術,同時新一代H
    的頭像 發表于 08-06 15:31 ?7466次閱讀

    httptcp/ip、http https之間的關系和區別

    httptcp/ip、http和https之間的關系和區別
    的頭像 發表于 01-10 14:30 ?7513次閱讀

    字節一面:HTTP長連接和TCP長連接有區別?

    由于 HTTP 是基于 TCP 傳輸協議實現的,客戶端與服務端進行 HTTP 通信前,需要先建立 TCP 連接,然后客戶端發送
    的頭像 發表于 12-02 14:00 ?1041次閱讀

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

    前言通過這篇文章你可以了解到:1.什么是HTTP協議?2.HTTP1.1/2.0/3.0的發展變更3.HTTP1.1/2.0/3.0的主要區
    的頭像 發表于 08-28 15:35 ?1472次閱讀
    <b class='flag-5'>HTTP</b>/3 來了,它比 <b class='flag-5'>HTTP</b>/1 和 <b class='flag-5'>HTTP</b>/2 強在哪兒?

    關于TCPHTTP的知識科普

    要說http就繞不開tcpTCP協議對應于傳輸層,而HTTP協議對應于應用層,從本質上來說,二者沒有可比性。但是,http是基于
    的頭像 發表于 12-21 09:31 ?1055次閱讀
    關于<b class='flag-5'>TCP</b>、<b class='flag-5'>HTTP</b>的知識科普
    主站蜘蛛池模板: av色天堂2018在线观看| 久久re视频这里精品09免费| 亚洲乱码在线卡一卡二卡新区| 美娇妻的性奴史1一4| 国产免费午夜高清| 99久久精品6在线播放| 亚洲精品国产第一区第二区| 欧美人与动牲交A精品| 激情内射亚州一区二区三区爱妻| yy8090韩国理伦片在线| 伊人青青久| 无码AV毛片色欲欧洲美洲| 欧美高清69vivo| 久久免费精品视频| 国精产品一区一区三区有| 岛国大片在线观看免费版| 97午夜精品| 最近的2019中文字幕国语完整版 | 亚洲精品入口一区二区乱麻豆精品| 欧美末成年videos在线| 久久久久九九| 狠狠干.in| 国产精品久久久久久久人人看| av亚洲色天堂2017| 曰本熟妇乱妇色A片在线| 亚洲免费国产在线日韩| 香蕉久久夜色精品国产小优| 色欲无码国产喷水AV精品| 人善交XUANWEN200喷水| 女人吃男人的鸡鸡| 蜜桃久久久亚洲精品成人| 久久精品视频15人人爱在线直播| 国产一级特黄a大片99| 国产乱码一区二区三区| 国产成人综合视频| 岛国大片在线播放高清| 高清欧美videos sexo| 苍老师刺激的120分钟| 超碰在线视频97| 草莓视频免费在线观看| 成人影片下载网站|