Назад | Перейти на главную страницу

Сервер nfs получает много rpc-srv / tcp: nfsd: отправлено только 700260 при отправке 1048708 байт - закрытие сокета

Система работает под управлением 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 прекратились.