socket緩衝區大小 .

來源:互聯網
上載者:User

http://blog.csdn.net/jfkidear/article/details/7826789

 

socket緩衝區大小預設為64 k

理論上最優大小為 頻寬乘以往返時間(RTT通過ping ip地址的最後一行得到,如所示)



一般把緩衝區大小的最佳化設定需要參照頻寬與往返時間RTT得到的頻寬延遲BDP。

假設應用程式是通過一個 100Mbps 的區域網路進行通訊,其 RTT 為 10 ms,那麼 BDP 就是:

100MBps * 0.010 sec / 8 = 3.125MB = 3125KB

如要設定socket緩衝區大小為1M(具體根據你的BDP值),有最大接受/發送與預設接收/發送4個設定:

但是預設為64KB,要設定超過64KB的緩衝區大小必須啟用 RFC 1323 定義的 window scaling:

/proc/sys/net/ipv4/tcp_window_scaling "1"


因為頻寬是固定的,但RTT受實際影響比較大,如果要精細定義,則必須啟用RFC 1323的如下方法

/proc/sys/net/ipv4/tcp_timestamps "1"


然後是主要的四個參數設定:

//最大接收

sysctl -w net.core.rmem_max=1048576

//最大發送

sysctl -w net.core.rmem_max=1048576


//預設的話把上面的max改為default即可


查看緩衝區設定參數,進proc/sys目錄運行:

sysctl -p | grep mem

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.