0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TCP的這些內(nèi)存開(kāi)銷(xiāo)原來(lái)是這樣

Linux愛(ài)好者 ? 來(lái)源:Linux愛(ài)好者 ? 作者:Linux愛(ài)好者 ? 2021-02-09 18:08 ? 次閱讀

實(shí)際中 TCP 連接上肯定是要進(jìn)行數(shù)據(jù)的收發(fā)的,而且還會(huì)有 TIME_WAIT 等其它狀態(tài)。在這些復(fù)雜情況下,一條連接占用多大內(nèi)存呢?飛哥用做了七天的實(shí)驗(yàn)結(jié)果告訴你!

實(shí)驗(yàn)1:ESTABLISH空連接

實(shí)驗(yàn)2:客戶(hù)端 => 服務(wù)器發(fā)送數(shù)據(jù)測(cè)試

4ee33f2c-61ff-11eb-8b86-12bb97331649.png

實(shí)驗(yàn)3: 服務(wù)器 => 客戶(hù)端發(fā)送數(shù)據(jù)測(cè)試

5221db58-61ff-11eb-8b86-12bb97331649.png

實(shí)驗(yàn)4:非 ESTABLISH 狀態(tài)

54c32614-61ff-11eb-8b86-12bb97331649.png

55ae012a-61ff-11eb-8b86-12bb97331649.png

總結(jié)

我們把實(shí)驗(yàn)中的數(shù)據(jù)來(lái)總結(jié)一下

567e20c6-61ff-11eb-8b86-12bb97331649.png

可見(jiàn),內(nèi)核在 socket 內(nèi)存開(kāi)銷(xiāo)優(yōu)化上采取了不少方法:

1. 內(nèi)核會(huì)盡量及時(shí)回收發(fā)送緩存區(qū)、接收緩存區(qū),但高版本做的更好

2. 發(fā)送接收緩存區(qū)最小并一定不是 rmem 內(nèi)核參數(shù)里的最小值,實(shí)際可能會(huì)更小

3. 其它狀態(tài)下,例如對(duì)于TIME_WAIT還會(huì)回收非必要的 socket_alloc 等對(duì)象

責(zé)任編輯:xj

原文標(biāo)題:漫畫(huà):花了 7 天時(shí)間測(cè)試,我徹底搞明白了 TCP 的這些內(nèi)存開(kāi)銷(xiāo)!

文章出處:【微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    602

    瀏覽量

    39262
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    3037

    瀏覽量

    74144
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1372

    瀏覽量

    79142

原文標(biāo)題:漫畫(huà):花了 7 天時(shí)間測(cè)試,我徹底搞明白了 TCP 的這些內(nèi)存開(kāi)銷(xiāo)!

文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    阻旋料位開(kāi)關(guān)原來(lái)是這些組成!

    料位計(jì)
    華泰天科
    發(fā)布于 :2025年01月08日 11:49:32

    磁敏光電液位計(jì)正確接線(xiàn)方法原來(lái)是這樣

    液位計(jì)
    jzyb
    發(fā)布于 :2024年11月04日 11:23:18

    TCP協(xié)議是什么

    在網(wǎng)絡(luò)通信的廣闊領(lǐng)域中,TCP(Transmission Control Protocol,傳輸控制協(xié)議)扮演著舉足輕重的角色。作為TCP/IP協(xié)議族中的核心協(xié)議之一,TCP位于網(wǎng)絡(luò)層(IP層)之上
    的頭像 發(fā)表于 10-09 13:54 ?731次閱讀

    邏輯內(nèi)存和物理內(nèi)存的區(qū)別

    Access Memory),是計(jì)算機(jī)硬件的一部分,用于存儲(chǔ)計(jì)算機(jī)當(dāng)前正在使用的數(shù)據(jù)和程序。物理內(nèi)存是計(jì)算機(jī)中的一種易失性存儲(chǔ)器,這意味著一旦斷電,存儲(chǔ)在物理內(nèi)存中的數(shù)據(jù)就會(huì)丟失。 1.1 物理內(nèi)存的組成 物理
    的頭像 發(fā)表于 09-27 15:38 ?775次閱讀

    MODBUS TCP 轉(zhuǎn) CANOpen

    產(chǎn)品概述 SG-TCP-COE-210 網(wǎng)關(guān)可以實(shí)現(xiàn)將 CANOpen 接口設(shè)備連接到 MODBUS TCP 網(wǎng)絡(luò)中。用戶(hù)不需要了解具體的 CANOpen 和 Modbus TCP 協(xié)議即可實(shí)現(xiàn)
    的頭像 發(fā)表于 09-24 13:59 ?288次閱讀
    MODBUS <b class='flag-5'>TCP</b> 轉(zhuǎn) CANOpen

    簡(jiǎn)述內(nèi)存的接口類(lèi)型

    內(nèi)存的接口類(lèi)型多種多樣,這些接口不僅決定了內(nèi)存與主板之間的連接方式,還影響了內(nèi)存的傳輸速度和穩(wěn)定性。
    的頭像 發(fā)表于 09-10 14:24 ?2406次閱讀

    EtherCAT轉(zhuǎn)Modbus TCP協(xié)議網(wǎng)關(guān)(JM-ECT-TCP

    JM-ECT-TCP網(wǎng)關(guān)實(shí)現(xiàn)EtherCAT網(wǎng)絡(luò)與Modbus TCP網(wǎng)絡(luò)之間的數(shù)據(jù)通訊,即將Modbus TCP設(shè)備轉(zhuǎn)換為EtherCAT設(shè)備。
    的頭像 發(fā)表于 09-07 17:05 ?356次閱讀
    EtherCAT轉(zhuǎn)Modbus <b class='flag-5'>TCP</b>協(xié)議網(wǎng)關(guān)(JM-ECT-<b class='flag-5'>TCP</b>)

    解決磁致伸縮液位計(jì)故障的秘訣原來(lái)是這樣

    液位計(jì)
    華泰天科
    發(fā)布于 :2024年09月07日 09:22:34

    EtherNet/IP轉(zhuǎn)Modbus-TCP協(xié)議網(wǎng)關(guān)(EtherNet/IP轉(zhuǎn)Modbus-TCP

    /IP轉(zhuǎn)Modbus TCP從站協(xié)議網(wǎng)關(guān),可以實(shí)現(xiàn)對(duì)這些設(shè)備的集中管理和控制。 二,典型應(yīng)用拓?fù)鋱D 三,設(shè)備技術(shù)參數(shù) 捷米特JM-EIP-TCP設(shè)備在Et
    的頭像 發(fā)表于 09-04 11:09 ?437次閱讀
    EtherNet/IP轉(zhuǎn)Modbus-<b class='flag-5'>TCP</b>協(xié)議網(wǎng)關(guān)(EtherNet/IP轉(zhuǎn)Modbus-<b class='flag-5'>TCP</b>)

    EtherNet/IP轉(zhuǎn)Modbus-TCP協(xié)議網(wǎng)關(guān)(JM-EIP-TCP

    轉(zhuǎn)Modbus TCP從站協(xié)議網(wǎng)關(guān),可以實(shí)現(xiàn)對(duì)這些設(shè)備的集中管理和控制。 二,典型應(yīng)用拓?fù)鋱D 三,設(shè)備技術(shù)參數(shù) 捷米特JM-EIP-TCP設(shè)備在Eth
    的頭像 發(fā)表于 08-26 14:39 ?313次閱讀
    EtherNet/IP轉(zhuǎn)Modbus-<b class='flag-5'>TCP</b>協(xié)議網(wǎng)關(guān)(JM-EIP-<b class='flag-5'>TCP</b>)

    一文了解TCP/IP協(xié)議

    TCP/IP協(xié)議是現(xiàn)代計(jì)算機(jī)網(wǎng)絡(luò)通信的基礎(chǔ),是互聯(lián)網(wǎng)及局域網(wǎng)廣泛使用的一套協(xié)議。TCP/IP協(xié)議集包括許多協(xié)議,其中最重要的是傳輸控制協(xié)議(TCP)和因特網(wǎng)協(xié)議(IP)。這些協(xié)議定義了
    的頭像 發(fā)表于 08-07 15:38 ?2165次閱讀
    一文了解<b class='flag-5'>TCP</b>/IP協(xié)議

    使用espconn_set_opt設(shè)置了TCP斷開(kāi)連接后立刻釋放內(nèi)存,好像不生效,怎么解決?

    在使用espconn_set_opt設(shè)置了TCP斷開(kāi)連接后立刻釋放內(nèi)存,好像不生效。我用的是以下的設(shè)置方法: err=espconn_set_opt(conn,ESPCONN_REUSEADDR
    發(fā)表于 07-10 07:21

    關(guān)于LabVIEW中TCP通訊中的TCP讀取問(wèn)題

    在讀取數(shù)據(jù)之前加一個(gè)字節(jié)數(shù)的查詢(xún),就像串口通訊時(shí)的“緩沖區(qū)字節(jié)數(shù)”,這樣就可以加一個(gè)選擇,只有在TCP字節(jié)數(shù)大于0時(shí),才進(jìn)行TCP讀取。這樣就可以規(guī)避上述問(wèn)題。 希望有好心人能解解惑,
    發(fā)表于 05-20 10:04

    精密空調(diào)—機(jī)房空調(diào)“鬧情緒”?原來(lái)是這些故障在作怪!

    故障現(xiàn)象:精密空調(diào)不制冷或制冷效果不佳 原因分析:制冷系統(tǒng)故障、制冷劑泄漏、過(guò)濾網(wǎng)堵塞等。 解決方法:檢查制冷系統(tǒng)是否正常,補(bǔ)充制冷劑,清洗或更換過(guò)濾網(wǎng)。
    的頭像 發(fā)表于 02-24 18:21 ?464次閱讀
    精密空調(diào)—機(jī)房空調(diào)“鬧情緒”?<b class='flag-5'>原來(lái)是</b><b class='flag-5'>這些</b>故障在作怪!

    UDP與TCP的主要區(qū)別 UDP能否像TCP一樣實(shí)現(xiàn)可靠傳輸?

    據(jù)包的傳輸不進(jìn)行確認(rèn)和重傳,而TCP是一種面向連接的協(xié)議,通過(guò)確認(rèn)和重傳來(lái)實(shí)現(xiàn)可靠的數(shù)據(jù)傳輸。 首先,UDP無(wú)連接的特點(diǎn)使得它在傳輸時(shí)的開(kāi)銷(xiāo)較小。UDP的數(shù)據(jù)包不需要建立和維護(hù)連接,僅包括源端口、目的端口、長(zhǎng)度和校驗(yàn)和等基本信息,因此UDP的頭部比
    的頭像 發(fā)表于 01-22 16:10 ?837次閱讀