SMC Sysctl¶
/proc/sys/net/smc/* 变量¶
- autocorking_size - 整数
设置 SMC 自动软木大小:SMC 自动软木就像从应用程序的角度来看的 TCP 自动软木。当应用程序进行连续的小 write()/sendmsg() 系统调用时,我们尽量将这些小写入合并,以减少发送的 CDC 和 RDMA 写入的总量。 autocorking_size 限制了在 1 次发送中可以发送到底层设备的最大软木字节数。如果设置为 0,则禁用 SMC 自动软木。当应用程序知道如何/何时拔出其套接字时,它们仍然可以使用 TCP_CORK 来获得最佳行为。
默认值:64K
- smcr_buf_type - 整数
控制在以后新创建的 SMC-R 链接组中使用哪种类型的 sndbufs 和 RMB。仅适用于 SMC-R。
默认值:0(物理连续的 sndbufs 和 RMB)
可能的值
0 - 使用物理连续的缓冲区
1 - 使用虚拟连续的缓冲区
2 - 混合使用两种类型。首先尝试物理连续的缓冲区。如果不可用,则使用虚拟连续的缓冲区。
- smcr_testlink_time - 整数
在 SMC-R 链路上的连接的最后一次活动之后,SMC-R 链路多久发送一次 TEST_LINK LLC 消息来确认其可行性。值 0 表示禁用 TEST_LINK。
默认值:30 秒。
- wmem - 整数
SMC 套接字使用的发送缓冲区的初始大小。
最小值为 16KiB,最大值没有硬性限制,但 SMC-R 仅允许 512KiB,SMC-D 允许 1MiB。
默认值:64KiB
- rmem - 整数
SMC 套接字使用的接收缓冲区 (RMB) 的初始大小。
最小值为 16KiB,最大值没有硬性限制,但 SMC-R 仅允许 512KiB,SMC-D 允许 1MiB。
默认值:64KiB
- smcr_max_links_per_lgr - 整数
控制可以添加到 SMC-R 链接组的最大链路数。请注意,添加到 SMC-R 链接组的实际链路数取决于系统中存在的 RDMA 设备的数量。可接受的值范围为 1 到 2。仅适用于 SMC-R v2.1 及更高版本。
默认值:2
- smcr_max_conns_per_lgr - 整数
控制可以添加到 SMC-R 链接组的最大连接数。可接受的值范围为 16 到 255。仅适用于 SMC-R v2.1 及更高版本。
默认值:255