Ködlámpa blog

Világít az éjszakába

Friss topikok

  • Krisz: Kedves KNJ, János! Köszi szépen az ötleteket. Az az igazság, évekkel ezelőtt lepasszoltam ezeket ... (2013.03.30. 17:36) Telex: ketteske (Siemens T1000)
  • kef: Na akkor adok projekt ötleteket, jól figyelj! Sörfőzés a mosógépben. Ehhez ugye nem árt valamilye... (2013.03.02. 16:20) Arduino
  • kef: "Eszter elszámolt 16-ig. Kétszer :)" Na az már majdnem 32. Rendeltem a minap 32GB microSD kártyát,... (2013.02.27. 18:40) Hírek
  • andrea: Sok puszit küldök a kedves ünnepeltnek! (2013.01.30. 08:13) 4
  • Krisz: Köszi szépen, Kata! :) Írok is egy posztot róla :) (2013.01.29. 21:05) Török basa pocakja

Linkblog

Spjáznet reloded -- avagy WiFi router NAS-ként (sebességteszt)

2011.04.26. 01:56 Ködlámpa

Egy kis techno-post ismét. Sokat szívtam az alábbiakkal, és bár a törzsközönségnek asszem nem lesz túl izgi, gondoltam azért leírom, hátha valaki rátalál a neten, és hasznos lesz számára. (Ha tényleg hasznos volt, írj egy sort légyszi kommentbe, ehhez regisztrálni sem kell! Köszi.)

Tervbe vettem az otthoni számítástechnikai infrastruktúra átrendezését. Eddig egyszerű volt: adott egy kábelmodem, ebbe jön a WLAN router, abba pedig a PC (Ethernet kábellel) és a laptop (WiFi-n). Most vettem egy külső USB-s merevlemezt és egy új WLAN routert, amibe a lemez bedugható. A cél, hogy ezek folyamatosan mennek, és bármelyik gépről elérhetőek a lemezen tárolt fájlok (ld. az ábrát), illetve majd egyszer valami médialejátszón át a filmeket is erről lehet nézni a tévén.

A router típusa TP-Link TL-WR1043ND. A kategóriájában olcsó kis eszköz -- 15.000 Ft a sarki boltban --, de a műszaki paraméterei az élvonalba tartoznak: gigabit Ethernet a vezetékes irányba, 300 Mb/s (802.11n) a vezeték nélküli oldalon, 8 MB flash és 32 RAM memória, USB port. A vinyó egy 1,5 terabájtos (wow, tera, ezt is megértük!) Western Digital külső HDD.

Az eszközöket kicsomagolva, összedugdosva hamar működésre is bírtam, azonban elszomorítóan lassú volt a vinyóhoz való hozzáférés sebessége. Konkrétan: letöltés, azaz olvasás a lemezről 7,2 MB/s (megabájt -- azaz nem megabitbit -- per másodperc), feltöltés, azaz írás a lemezre 1,5-2 MB/s. (A vinyó NTFS-re volt formázva, és a rendszer alapból a Windowsos SMB protokollt használja a fájlmegosztásra.) Összehasonlításul: a vinyót közvetlenül a PC-hez kötve kb. 30 MB/s letöltési (olvasási) és 18 MB/s feltöltési (írási) sebességet mértem. Van különbség.

Szerencsére azért volt még mit tenni. A router firmware-ét le lehet cserélni Linuxra, annak is egy speciálisan ilyen eszközökre összeállított verziójára, az OpenWRT-re. Nem mondom, hogy egyszerű játék. Bár maga a firmware letöltése a netről és felrakása a routerre hamar megvan, azóta sok-sok-sok éjszakát töltöttem a konfigurálgatásával, és csak mostanra kezdi elérni a gyári firmware funkcióinak szintjét. Tényleg nem magától értetődő sajnos, de sok ügyes trükköt meg lehet az OpnenWRT-vel tenni, amit a gyári firmware-rel nem.

Mindenestre nem volt hiába a firmware csere: kb. 9 MB/s letöltési és 1,5-3 MB/s feltöltési sebességet értem így el. Ez még mindig nem egy nagy áttörés, de azért jobb már valamivel.

A következő lépés az NTFS lecserélése volt Ext3fs-re, a Linux saját fájlrendszerére. Első körben ez nem hozott javulást, maradt a 9 MB/s le és 3 MB/s fel. Sebaj, nem adjuk fel: játsszunk kicsit a mount-olási opciókkal. Itt a „sync”-et „async”-re átírva megtört a jég, és sikerült az írási sebességet megduplázni! Az így elért sebességek: le: 9-10 MB/s, fel 5-6 MB/s. Ez a csúcs, bár még próbálkoztam más megoldásokkal, e fölé nem sikerült menni.

A teljesség kedvéért leírok még pár „nyomozási eredményt”. Próbálkoztam az SMB/Samba protokollt NFS-re cserélni. Sajna sok köszönet nem volt benne: a Windowsos NFS kliensektől több gép is kék halállal elszállt, ilyet pedig azért a Windows nem nagyon szokott mostanság. Teszteltem Linux klienssel is, bár az „csak” egy virtuális gépben futott egy Windowsos PC-n. Ez működött, de nem volt gyorsabb a Samba-nál. Ráadásul mivel itthon Windowsok vannak, és üzembiztos működés a cél, az NFS-t elvetettem, maradt a Samba.

Van Ext3 driver Windowsra is, játékból kipróbáltam azt is (Ext2fsd), a PC-re direktbe kötve a vinyót. Így bizony némileg kisebb értékeket kaptam: 27 MB/s le, 4 MB/s fel. Ez utóbbi amúgy rosszabb, mint a routeren át!

Keresve a szűk keresztmetszetet leteszteltem a router és a vinyó közötti adatsebességet: a /dev/zero-ból olvastam dd-vel és írtam ki a lemezre (a dd-nél fontos, hogy elég nagy legyen a block size, így gyorsabb), illetve fordítva, a lemezről másoltam a /dev/null-ba. Azért kellett ilyen trükkökkel élni, mert nagy fájlok másolása kellett a teszthez, de a router belső memóriája igencsak limitált. Az eredmények ext3 fájlrendszer esetén: kb. 30 MB/s le, 18 fel, csakúgy mint a PC-nél. (NTFS-sel ezt nem néztem.) Ezek szerint tehát a router képes teljes sebességgel használni a vinyót, nem ez a gond.

Megnéztem a másik oldalt, a router és a PC közötti adatátvitelt is: Samba-val megosztottam az egész fájlrendszerét a routernek, és a PC-n a /dev/null-ba írtam (sime fájl másolás), ill. a /dev/zero-ból olvastam (cygwin dd-jével). Az eredmény: 14 MB/s le, 8,5 MB/s fel. Bár a 14 MB/s az 112 Mb/s (megabit per mp.), szóval ennyi egy sima 100 Mb/s Ethernet kártyán át sem jön elvileg, csak a gigabitesen, de azért mindez nem túl sok. Mindeközben a Samba process (smbd) igen csak ette a router CPU-ját. Tanulság: ennyi fér ki a router csövén, olcsó cucc, hát ennyit tud. Ha közben még az USB-s vinyóval is foglalkoznia kell, akkor kicsit még lassabb, ld. az előző értékek. Ez lehet tehát a viszonylagos lassúság fő oka.

Játszottam még a mount opcióival: egy ext3 fájlrendszer naplózott, azaz az írásokat egy naplófájlba is rögzíti, így ha pl. áramszünet miatt megszakad az írás, akkor is helyre lehet utólag állítani a dolgokat. Egy ilyen fájlrendszert háromféleképp lehet felmountolni: „data=journal”, „data=ordered”, „data=writeback”. Elvben az első a legbiztonságosabb, de leglassúbb, a harmadik a leggyorsabb, de legkevésbé biztonságos. Gyakorlatilag „journal” nekem egyáltalán nem is ment, a másik kettő pedig. kb. ugyanolyan gyors volt. Maradt hát az „ordered”, pedig az OpenWRT alapból a „writeback”-et használta.

Próbáltam a Samba-t is optimalizálni, de túl sok opció volt, és kezdtem már unni a dolgot. A weben talált leírások alapján amúgy sem várható nagy áttörés, bár egy kicsit elvileg lehet nyerni, ha türelmesen próbálgat az ember.

Végül magával a fájlrendszerrel próbáltam játszani egy picit. Létrehozásakor meg lehet adni az mke2fs programnak egy csomó opciót. A doksit elolvasva azonban úgy döntöttem, a többség jó lesz, ahogy alapértelmezés szerint van. Egyedül a „-m”-be piszkáltam bele: ez adja meg, hogy a fájlrendszer hány százalékát tegye félre a root felhasználónak. Ez alapértelmezés szerint 5%, ami a másfél teránál 75 gigabájt, amit kissé sokalltam és levettem 1%-ra. Így lett belőle „mke2fs -j -v -m 1” (-v: több rizsa a formázás során, -j: journaling, ettől lesz ext3).

Végül, ha valakit érdekel, lemértem a router és a vinyó együttes fogyasztását: 7,6 W WiFi nélkül, 9,3 W WiFivel. (Remélem a különbség nagyja a dobozon belül marad...)

Összefoglalásként: ha valaki hasonló cipőben jár és vállalja a konfigurálással kapcsolatos szívásokat, érdemes áttérni az OpenWRT-re, mert jelentősen gyorsul vele a merevlemez elérése. Hálózati protokollnak a Samba jó választás, fájlrendszernek viszont mindenképp az ext3 célszerű, mountoláskor az async opcióval (ami amúgy alapértelmezés, ha az ember nem adja meg a „sync” opciót). Így az eredeti firmwares verziónál lefele kb. 30%-kal több, felfele pedig több mint háromszoros sebességnövekedés érhető el. Ez abszolút számokban lefele 9-10 MB/s-ot, felfele 5-6 MB/s-ot jelent, amik azért már egész tűrhető értékek.

4 komment

Címkék: szívás sebességteszt Linux WiFi NAS OpenWRT szétszedtem és össze is tudtam rakni

A bejegyzés trackback címe:

https://kodlampa.blog.hu/api/trackback/id/tr516889169

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

92166 2011.04.29. 21:47:07

Amikor hasonlót akartam otthonra, elsőre én is naívan megvettem az első cuccot, összedugtam, és konstatáltam, hogy lassú, de nagyon. Aztán vettem n-es routert és jóval gyorsabb vinyót, így egész más lett a leányzó fekvése. A tanulság számomra mindenképpen az, hogy jó alaposan szét kell nézni előtte.

kef 2011.05.06. 18:00:10

miért nem ext4?

netmedve 2012.02.13. 19:54:07

Ha tényleg hasznos volt, írj egy sort légyszi kommentbe, ehhez regisztrálni sem kell! Köszi. Érdemes volt rátalálni! :))

axasanya 2012.02.20. 21:30:27

Hi! Köszi a tartalmas leírást, rengeteget segített :) Első nekifutásból ráment 5-6 órám, mire feladtam a router által bemountolt ntfs-s külső lemezen virtuális EXT3 lemezzel a harcot :) A végén már a "openwrt no space left on device" is befigyelt ... Másodjára úgy estem neki h /sbin/firstboot/ és következhetett a formázás (ntfs->EXT3), kb 2 óra alatt megvolt az egész újrarakás, ekkor már a külső vinyóra telepítettem mindent, azóta is úgy megy, mint a svájci óra. Egy dolog bosszantott még a wifivel kapcsolatosan: folytom megfelezte a sávszélt, amin az uci set wireless.radio0.noscan=1 segített . Üdv, S
süti beállítások módosítása