Система работает под управлением CentOS 7.3, обслуживает файлы как через Ethernet, так и через бесконечную полосу пропускания, но подавляющее большинство трафика проходит через бесконечную полосу.
Я только что установил новый файловый сервер, который теперь генерирует большое количество следующих ошибок:
[2007827.701033] rpc-srv/tcp: nfsd: sent only 618872 when sending 1048708 bytes - shutting down socket
[2007835.313884] rpc-srv/tcp: nfsd: sent only 75908 when sending 1048708 bytes - shutting down socket
Я увеличил tcp_rmem и wmem до 32 МБ, но проблема не устранена
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.tcp_wmem = 4096 65536 33554432
Есть ли другие способы настроить это, чтобы обойти проблему?
Этот сайт сообщает о некоторых других предложениях, в том числе об увеличении NIC txqueuelen. Эти предложения в основном нацелены на сети с высокой задержкой, однако я заметил, что в Fedora24 интерфейсы Infiniband по умолчанию получают более низкое значение txqueuelen (256), чем другие интерфейсы (1000), поэтому предложение txquelen, помимо других, также может иметь смысл в этом кейс.
Современный способ сделать это на самом деле:
ip link set ib0 txqueuelen 10000
После выполнения рекомендаций на указанной странице ошибки nfs-on-Infiniband того типа, о котором вы сообщили, на моем сервере nfs прекратились.