如何在MAC OS X中获得最大的TCP接收/发送窗口?
Linux中有两个ctl。 / proc / sys / net / core / rmem_max - 最大TCP接收窗口(NET_CORE_RMEM_MAX) / proc / sys / net / core / wmem_max - 最大TCP发送窗口(NET_CORE_WMEM_MAX)
但我找不到如何在mac os中获取这些参数。
有人知道吗?
我在MAC OS X中找到了以下ctl: net.inet.tcp.recvspace,net.inet.tcp.sendspace,kern.ipc.maxsockbuf
似乎recvspace +的发送空间不能大于maxsockbuf。 我在这里读过它: http://www.macgeekery.com/tips/configuration/mac_os_x_network_tuning_guide_revisited
答案 0 :(得分:2)
我不是100%确定这些是否正确,但请尝试sysctl -n net.inet.tcp.recvspace
和sysctl -n net.inet.tcp.sendspace
。您可以使用sysctl -w
设置它们(请参阅man sysctl
)。
答案 1 :(得分:0)
如OP所述:recvspace+sendspace < maxsockbuf
maxsockbuf
受kern.ipc.nmbclusters
,nmbclusters*2KB/16=maxsockbuf
sysctl -a | egrep nmbcl\|maxsockb
kern.ipc.maxsockbuf: 8388608
kern.ipc.nmbclusters: 65536
要增加maxsockbuf
,请告诉系统使用比
通过ncl boot arg默认mbufclusters
:(您需要在编辑boot-arg之前禁用SIP)
nvram boot-args="ncl=131072"
shutdown -r now
引用here