net.core.wmem_max
是 Linux 内核中控制 套接字发送缓冲区(Send Buffer)最大允许值 的参数,与 net.core.wmem_default
(默认发送缓冲区大小)共同决定了网络数据发送的性能上限和内存分配策略。以下是详细解析:
参数作用与原理
-
核心功能:
限制单个套接字发送缓冲区的最大字节数。应用程序可通过setsockopt()
系统调用设置比wmem_default
更大的缓冲区,但不能超过wmem_max
。 -
工作机制:
- 应用程序发送数据时,数据先存入发送缓冲区,再由内核逐步发送到网络。
- 增大
wmem_max
可在高带宽或高延迟网络中提升发送效率,但会增加内存占用。
默认值与查看方法
-
默认值:
通常为 212992 字节(约 208KB),不同