(net-fs / nfs-utils-1.2.3-r1, 2.6.38.5-zen + Gentoo)
Погуглив это кажется полным тупиком. man nfsstat ничего не говорит о предмете. Самым близким, что я мог получить, было выяснение того, что, вероятно, ранее было « новыми кредитами ».
newcreds Количество раз, когда аутентификационная информация должна была обновляться.
Моя проблема в том, что я думаю, что я вижу низкую производительность NFS по сравнению с OpenVPN, и единственное, что я сразу вижу, это значительно отличается от всех результатов nfsstat Google, это то, что мое поле "звонки" равно точно "authrefrsh" и, следовательно, очень высоко , Все результаты поиска всегда имели authrefrsh как 0 или очень низкое число. Прежде чем я смогу перейти к отладке некоторых других аспектов, я мог бы выяснить, что это значит.
Наблюдаемая операция представляет собой пакет поверх общего хранилища NFS. emerge просматривает большое дерево во время работы, но предыдущий опыт говорит, что производительность, которую я вижу, ненормальная.
$ watch -n 1 nfsstat -c
Every 1,0s: nfsstat -c Sat May 21 23:04:55 2011
Client rpc stats:
calls retrans authrefrsh
308565 2211 308565
Client nfs v3:
null getattr setattr lookup access readlink
0 0% 172372 55% 17 0% 30485 9% 36057 11% 26831 8%
read write create mkdir symlink mknod
25879 8% 107 0% 21 0% 0 0% 0 0% 0 0%
remove rmdir rename link readdir readdirplus
16 0% 0 0% 11 0% 0 0% 0 0% 16668 5%
fsstat fsinfo pathconf commit
3 0% 50 0% 25 0% 2 0%
Я не могу точно понять, что такое authrefrsh (и это правописание, это преднамеренно, кстати?), И почему оно увеличивается, как это в моем случае?
authrefrsh=0
, в то время как новые ОС показывают тоннуauthrefrsh
. Я думаю, что здесь есть корреляция, но я не совсем уверен, что все это значит.AUTH_SYS
?call_refresh()
которые в основном отправляются на RPC-сервер (portmap, rpcbind и т. Д.) И проверяют его учетные данные на сервере. Нам нужно выяснить, действительно ли это является причиной задержки. Если вы делаете,AUTH_SYS
то накладные расходы низкие и не будут причиной.Ответы:
Из статьи Red Hat в комментариях говорится, что решение
Не очень полезно, но также указывает причину, по которой это происходит.
Он ссылается на коммит a17c2153d2e271b0cbacae9bed83b0eaa41db7e1 в пакете sunrpc, который перемещается туда, где происходит аутентификация nfs. Я не буду копировать / вставлять весь коммит, но он в основном меняет эти строки.
Насколько я понимаю, эта строка перемещается туда, где происходит call_refresh () (скорее раньше, чем позже). Это, в свою очередь, означает, что большинство всех запросов nfs будут вызывать увеличение authrefrsh, поскольку аутентификация всегда используется.
источник
Я вижу то же самое (не используя vpn) - authrefrsh == звонки на стороне клиента. Мне кажется, что количество вызовов увеличивается, затем замедляется, а затем увеличивается число authrefrsh.
Статистика клиента rpc:
Я также вижу очень высокий Iowait:
(из иостата :)
Я не вижу ничего необычного в wireshark - я использую nfs3 и tcp.
источник
Из того, что я понимаю по этой ссылке, authrefresh = Calls не указывает на проблему.
https://bugzilla.redhat.com/show_bug.cgi?id=785931
источник