NFS nagy fájlok esetén akadozik

Üdv mindenkinek

Segítséget szeretnék kérni, egy egyszerű, Linuxok-közötti NFS beállításához. Illetve, a beállítás megtörtént, csak nem olyan a teljesítmény, mint vártam.Tehát, adott egy "kis" számítógép (egy raspberryPi), és egy "nagy", (a desktopom). A kicsin lóg egy 2TB-os HDD, dokkolóban, ezt próbálom megosztani routeren keresztül a desktop géppel.

Mindkét gépen Arch linux van.

A kicsin az /etc/exports:

/home/raspi/bighdd 192.168.1.0/24(rw,fsid=0,no_subtree_check)

A kliensen ez a beállítás: (/etc/fstab):
192.168.1.111:/ /home/data/ nfs4 noauto,x-systemd.automount,x-systemd.device-timeout=14,_netdev,proto=tcp 0 0

Minden szépen működik, csatlakozik, lehet másolgatni oda-vissza. De ez sajnos csak kis fájlokra igaz. Nagy méretű, ~ 2GB fölötti fájlok esetén először felugrik az átvitel 200-300 MByte/s-re, aztán leesik pár másodpercen belül 0-ra, kicsi lock, aztán vissza 3-10-16 Kbyte/s, és itt szoktam lelőni... A router 100Mbit-es, tehát egy permanens 10MB/s-et várnék.

Fel is telepítettem egy vsftpd-t a málnára, ha azon keresztül másolom ugyanazt a fájlt ugyanoda, akkor 10-11 MB/s a sebesség, vagyis a két gép és a hálózat (talán) rendben van.

A neten található nem kevés mennyiségű NFS-troubleshootot bogarászva számtalan beállítással vacakoltam, de csak rosszabb lett, jobb sosem. Pl.: az Arch wikijében ez van:

https://wiki.archlinux.org/index.php/NFS/Troubleshooting#Intermittent_c…

"If you copy large files from your client machine to the NFS server, the transfer speed is very fast, but after some seconds the speed drops and your client machine intermittently locks up completely for some time until the transfer is finished. Try adding sync as a mount option on the client (e.g. in /etc/fstab) to fix this problem."

Ó yes, gondoltam, ez a megoldás. De a sync csak az ingadozást oldotta meg, a sebesség nem merészkedik 3MB/s fölé...

Itt most nem tudok továbblépni, ezért teszem fel itt is a kérdést, hátha valaki tapasztalt már ilyet.

Hozzászólások

Az írás, az olvasás vagy mindkettő akadozik?

Amúgy:
b = bit
B = byte

Az rpi nem fogy el véletlenül CPU-ban/memóriában?

- az NFS alapvetően cachel, tehát amikor felugrik a sebesség, akkor valamelyik oldalon cache-be ír (valószínű kliens oldalon, lévén 100mbites hálón nem tudsz másképp elérni 2-300mbitet)
- szerver oldalon is cachel, amíg van ram, nem írja diszkre a fájlt, aztán időnként flush-ol, akkor "megáll", mert a pi-n az ethernet is az usb buszon van, ráadásul kötve hiszem hogy annak a cpu-nak van kapacitása 100mbit átmenő forgalom feldolgozására.
- nfs paraméterekkel tudod a cachet, buffer méreret, és ezzel a másolás sebességét és tempóját befolyásolni, de én inkább azt javaslom, hogy smb-t konfigurálj.
--
The Community ENTerprise Operating System

[subs] - engem is érdekel a megoldás.

Én Banana Pi-t (2mag, 1GB ram, sata-port) használok NFS-szervernek, annak a sata-portjára van kötve a diszk, eddig ilyen "elfogyásos" problémát nem tapasztaltam (se kis, se nagy fájlok esetén).

Ez érdekes. Ide tudnád másolni a szerver és a kliens releváns sorait, hogy van-e valami különbség?

[Közben próbálgattam újfent a wsize/rsize értékek sysnc/async állítgatásával, de semmi. nfs3-at akartam még kipróbálni, de elsőre nem ment (permission denied), több időm meg nem volt rá.]

Este megnézem, milyen extrák lehetnek beállítva egyik-másik oldalon...

Amiket biztosan tudok:
a) BPi-on az OS OpenMediaVault, Bananian alapú; a benne lévő NFS-szervert használom, a saját konfig-jaival,
b) kétmagos noti-n az OS Ubuntu 14.04.4 (cli-only -> openbox), itt autofs biztosítja, hogy boot után a mappák elérhetőek legyenek.

Arra nem emlékszem, hogy nfsv3 vagy nfsv4, amit használ a kliens, de látszanak szépen a fájlok, mappák, a max. 720p-s filmeket tökéletesen tudom "stream"-elni (lévén a noti monitora 1280x800-at tud), de a 1080p sem okoz a gigás ethernet-hálózatnak problémát...
(Persze, a BPi "csak" kb. 400MBps-et tud, nem tud full gigát, ahogy olvastam...)

Nem kezd el az egyik gép swap-olni a másolás közben.
Én már jártam így.