On Mon, 26 Mar 2012 11:49:33 +0400 Владимир Друзенко wrote:

 ВД> 25.03.2012 15:56, Mikolaj Golub пишет:
 >> On Sun, 25 Mar 2012 07:11:50 +0400 Владимир Друзенко wrote:
 >>
 >>   ВД>  Тред нашёл:
 >>   ВД>  
 >> http://lists.freebsd.org/pipermail/freebsd-stable/2011-November/064611.html
 >>   ВД>  Но в нём обсуждается другой вопрос - просто о низкой пропускной
 >>   ВД>  способности NFS.
 >>
 >>   ВД>  Указанные там тюнинги увеличили скорость в 1.1-1.4 раза, но скачок 
 >> при
 >>   ВД>  размере буфера 800-900Kb так и остался:
 >>   ВД>  # dd if=/dev/zero of=/mnt/documents/test.zero bs=*884983* count=256
 >>   ВД>  226555648 bytes transferred in 55.568878 secs (*4077024* bytes/sec)
 >>
 >>   ВД>  # dd if=/dev/zero of=/mnt/documents/test.zero bs=*884982* count=256
 >>   ВД>  226555392 bytes transferred in 2.931009 secs (*77296040* bytes/sec)
 >>
 >>   ВД>  Тюнинги на клиенте: nfs опции mount -
 >>   ВД>  rw,intr,soft,bg,nfsv3,readahead=4,wsize=65536,rsize=65536,tcp,async.
 >>   ВД>  Тюнинги на сервере: zfs set sync=disabled datastorage/documents/
 >>   ВД>  vfs.nfsrv.async/ в 9.0 нет.
 >>   ВД>  Патч из треда и для /vfs.nfsrv.async /так же НЕ накладывал.
 >>
 >>
 >>   ВД>  Может ещё какие мысли?
 >>
 >> Задампить трафик tcpdump-ом для двух случаев и посмотреть в wireshark в чем
 >> отличие.
 >>

 ВД> Спасибо за наводку.

 ВД> Отфильтровал оба случая по наличию nfs.write.committed: в случае
 ВД> нормальной скорости "Committed: UNSTABLE (0)", а в случае плохой
 ВД> "Committed: FILE_SYNC (2)".
 ВД> При копировании 8 блоков вышеуказанных размеров получается чуть более
 ВД> 100 таких строк в каждом случае:
 ВД> V3 WRITE Replay (Call xxx) Len:65536 UNSTABLE и V3 WRITE Replay (Call
 ВД> xxx) Len:65536 FILE_SYNC соответственно.
 ВД> Также в случае медленной скорости было 6 пакетов вида: [RPC duplicate
 ВД> of #4302][TCP Retransmission] V3 WRITE Reply (Call In 4274) Len:65536
 ВД> FILE_SYNC.

 ВД> Теперь хотя бы понятно кто виноват. Остался вопрос "что делать?".

 ВД> Дампы могу выслать, если нужно - оба в архиве 130Kb.

Советую в freebsd-fs@ написать. Есть вероятность что там смогут помочь.

По поводу FILESYNC, jhb@ описывал как он наблюдал, но в другой ситуации, при
сборке:

http://lists.freebsd.org/pipermail/freebsd-fs/2011-August/012265.html

Не вчитывался чем закончилось обсуждение, патч есть, но похоже он так и не был
закомичен.

-- 
Mikolaj Golub

Ответить