1

Temat: OpenWRT x86 + RAID (mdadm) - przerywający transfer danych

Witam! Sprzęt którego dotyczy temat to Lenovo ThinkPad X220 z zainstalowanym OpenWRT 19.07-SNAPSHOT od Cezarego. Podłączone do wyżej wymienionego sprzętu są dwa dyski WD 320GB
- pierwszy (sda) do wbudowanego portu SATA
- drugi (sdd) do jednego z portów USB poprzez adapter

root@X220:/etc/config# hdparm -t /dev/sda

/dev/sda:
Timing buffered disk reads: 250 MB in  3.01 seconds =  83.09 MB/sec

root@X220:/etc/config# hdparm -t /dev/sdd

/dev/sdd:
Timing buffered disk reads: 110 MB in  3.02 seconds =  36.38 MB/sec

Na dyskach utworzone są po dwie partycje:
- pierwsze partycje obu dysków tworzą macierz RAID0 (md0)
- drugie partycje obu dysków tworzą macierz RAID1 (md1)

root@X220:/etc/config# hdparm -t /dev/md0

/dev/md0:
HDIO_DRIVE_CMD(identify) failed: Not a tty
Timing buffered disk reads: 222 MB in  3.01 seconds =  73.70 MB/sec

root@X220:/etc/config# hdparm -t /dev/md1

/dev/md1:
HDIO_DRIVE_CMD(identify) failed: Not a tty
Timing buffered disk reads: 242 MB in  3.01 seconds =  80.44 MB/sec



No i tutaj pojawia się kilka pytań:
1. Dlaczego prędkość RAID0 (md0) jest mniejsza niż prędkość pierwszego dysku na SATA (sda)?
2. Dlaczego test hdparm'em wykazuje prędkość RAID1 (md1) większą niż jest w rzeczywistości, oraz dlaczego podczas przesyłania danych transfer tak "faluje", spadając chwilami nawet do 0 kB/s (widoczne na zdjęciach poniżej)



Przesyłanie pliku 3,5GB przez sieć na macierz RAID0 (md0):
zdjęcie_przebiegu_transferu_danych_RAID0


Przesyłanie pliku 3,5GB przez sieć na macierz RAID1 (md1):
zdjęcie_przebiegu_transferu_danych_RAID1

2

Odp: OpenWRT x86 + RAID (mdadm) - przerywający transfer danych

hdparmem nie testujesz faktycznej wydajności. On daje tylko transfer na poziomie interfejsu, a nie masz tam narzutu na system plików, alokację bloków czy ograniczenia transferu pomiędzy pamięcią a dyskiem. Porównywanie odczytu hdparma do rzeczywistego  zapisu na sambę ma się w sumie nijak.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: OpenWRT x86 + RAID (mdadm) - przerywający transfer danych

Rozumiem - czyli wynika z tego że testowanie macierzy RAID z wykorzystaniem hdparm'a mija się z celem.

Ale pomijając już ten fakt, nadal nurtuje mnie pytanie dlaczego transfer danych jednego dużego pliku nie jest płynny na jakimś stałym poziomie, tylko tak faluje - niezależnie czy jest to SMB (samba4) czy FTP (vsftpd)

Transfer spada chwilami zupełnie do zera, widać to nawet na diodach switch'a bo przestają wtedy mrugać - wtedy wykorzystanie procesora przez procesy samby czy vsftpd spada do 0%, gdzie podczas przesyłania danych oscyluje w okolicach 15%

4 (edytowany przez Cezary 2019-10-11 21:34:53)

Odp: OpenWRT x86 + RAID (mdadm) - przerywający transfer danych

Tego już nie wiem. I pewnie bez debugowania programów gdzieś na super niskim poziomie tego się nie dowiesz.

EDIT: w ogóle to wymienił byś sambę3 na sambę4.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: OpenWRT x86 + RAID (mdadm) - przerywający transfer danych

Wspominałem w swoim poprzednim poście że mam właśnie sambę4 - w repo jest rzeczywiście samba3.6 - ale nie testowałem, od razu zainstalowałem sambę4