Sziasztok!
Már vagy 2 hónapja ások egyre mélyebbre egyre tobb dolgot kipróbálva, de továbbra se sikerül 300Mbit fölé menni.
FTP-vel már elértem 60MiB/s tartós sebességet, de a Sambával jóesetben 35MiB/s, tehát fizikailag lehetséges kb megduplázni.
Iperf kb 500Mbit/s-eket méreget, ami nagyjából egyezik az FTP-vel. Közel sem az igazi, de sokkal jobb, mint ami most van.
Otthoni szerverről van szó, amin Ubuntu Server 9.04 x32 fut rajta pedig: Samba, Apache+PHP+MySQL (webfejlesztésre + 1-2 proginak), Torrentflux-b4rt.
A kliensen Windows7 x64 szorgoskodik tele mindenfélével. Kezelhetjük Vistaként is...
Az Ubuntu szerver hardver:
Alaplap: ASROCK ALiveNF6G-GLAN (Giga PHY Realtek RTL8211B, forcedeth modullal megy elvileg)
CPU: AMD Athlon 64 X2 5050e RAM: 1x Kingmax DDR2 1GB (Nem hiszem, hogy ez a kettő akadály lenne)
HDD: 2x Hitachi 500 GB SATA-II 7200 RPM 16 MB (szoftveres RAID1-ben) és WD 1000 GB SATA-II 7200 RPM 16 MB
(Mindőjükön NTFS partíció van NTFS-3g-vel mountolva, mert 1: már megvoltak a Linux előtt, 2: próbálkoztam ext3-mal, de csak póruljártam vele)
- A rendszer HDD: Maxtor 160GB ATA 5400 RPM (torrrent is ide dolgozik, bőven megfelel)
A Win7 kliens hardver:
Alaplap: Gigabyte P35-DS3R (Realtek RTL8168B/8111B NIC (NDIS 6.0))
CPU: Intel Core2 Duo E8400 RAM: 8x Kingston DDR2 2GB (Ez kettő se hiszem, hogy akadály lenne :)
HDD: Az előbbiekhez hasonlóak, de van egy SSD is, úgyhogy a sebesség nem lehet gond.
Switch: D-LINK DGS-1005D Kábelek: Szervertől switchig Cat5, switchtől a kliensig Cat6.
(A net és a többi kliens a routerre (DNS is) megy és a router 100Mbit vonalon jön a switchre.)
Van egy D-Link DGE-528T hálózatikártyám is, amit kipróbáltam mindkét gépben (Linuxon a beépített r8169 modullal megy, Win-re meg van driver).
Szinte semmi változást nem hozott. A forcedeth-re gyanakdotam, ezért vettem. Jelenleg a kliens gépben van. Amikor a Win7 újrakonfigurálja a hálózatot, ha valami nagy változást eszközölök, akkor az első másoláskor néha megy 50-60MiB/s-el, de ha utána elindítok egy újabb fájlt, akkor az már a szokásos 35MiB/s.
Ezek a Win Intéző által kiírt sebességi adatok (Totalcommander méglassabb), de nézegettem a Resoruce Monitort is és az is ennyit ír, csak Mbit/s-ben mér (250-300Mbit/s max).
De lehetséges ez az első másolás gyorsabb dolog csak illúzió ugyanis írt már 97MiB/s-t is egyszer, ami fizikailag lehetetlen, sőt ugyan gépen belül volt, de írt 200-300MiB/s-t is, amit még az SSD se tud, de ez SATA-II volt SATA-II-re...
További furcsaság, hogy a kliens gépen belül is NTFS-ről NTFS-re is kb 35-40MiB/s a másolás. NTFS vagy explorer.exe korlát lenne?
Viszont a VMware villámgyors, pedig próbáltam hálózatról is megnyitni virtuális gépet, de az piszok lassú volt. Tehát, ha direktben is csak ennyi lenne az NTFS határa, akkor itt is lassú lenne. Ráadásul Total commander is tud 80MiB/s-el másolni, ami a fizikai határ kb. Talán az explorer.exe ilyen csacsi?
Hálózatra nem jó a Total commander, csúnya 10MiB/s alatt van.
Leteszteltem Ubuntu Jaunty 9.04 LiveCD-vel is a dolgokat. A hálózat ugyanilyen max 35MiB/s.
Felmountolva két NTFS winyót a másolás 64MiB/s, tehát tudna többet kezdeni az NTFS-sel...
Főleg, hogy mint említettem proFTP-vel megvan ez a 60 mint a szél.
Amíg nem muszály nem szeretnék megvállni az NTFS-től ugyanis ez kaphat hideget, meleget, áramszünetet, ami elő-előfordul és nincs szünetmentesem.
Tudom, hogy az NTFS nem Linux alá való, próbálkoztam is ext3-mal, de elkapott egy áramszünet éjszaka és kifeküdt mindkettő, amit este csináltam, azaz én hoztam létre és nem a telepítő még az elején (folyton busy volt, meg felismerhetetlen filesystem, sőt még a check se futott le rajtuk, mert az se ismerte fel, úgyhogy NTFS vissza került).
Valószínű, hogy én hibáztam el valamit, de amíg ennyi tehetségem van a linux fájlrendszerehez inkább nem kozkáztatok. Pl két winyót linear RAID-be raktam, mert mért ne, és át akartam méretezni a partíciót, mert az nem terjedt át (előtte persze minden gondosan leteszteltem virtuális gépen), hát persze, hogy elszállt a partíciós táblám. Szerencsére csak 1TB sorozat volt, amit úgyse nézek újra csak szokásból tartottam meg. Emlékeimben örökké élnek. :)
Más gurukkal is beszéltem már erről és szerintük az ifconfig és ethtool rendben van.
Az MTU 1500, ami a max érték az ethernetnél, úgyhogy ezen se tudok emelni.
1000 Mbps/s full a kapcsoalt és az autonegotiation aktív. A linux nem tudja kikapcsolni az alaplapin.
A Windowson a DGE-528T-n beálíltottam autoneg helyett 1Ggp/s-t.
Nagy tuning volt még Win részről ez a két registry bejegyzés:
NetworkThrottlingIndex -> 0xffffffff (4294967295)
SystemResponsiveness -> 0x00000064 (100)
Jumbo frame-ről a nevén kívül mást nem tudok, de ha megoldható ezzel a rendszerrel az is jó lenne. :)
IPV6 tiltással is próbálkoztam, nem segített.
A Samba alábbi opcióival is mindenféle kombinációban próbálkoztam, sikertelenül:
socket options = SO_KEEPALIVE TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=65536 SO_RCVBUF=65536
read raw,write raw, oplocks, logolás alacsony értéken
wins szerverként is próbáltam
domainhez rendelve nincs, netbios névről, vagy IP-ről érem el
A samba config fájlom így néz ki:
[global]
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
obey pam restrictions = yes
write list = lightning,@lightning
deny hosts = 0.0.0.0/0
passwd program = /usr/bin/passwd %u
max xmit = 65536
allow hosts = 127.0.0.1 192.168.1.0/24
netbios name = server
oplocks = yes
default = global
local master = yes
workgroup = WORKGROUP
os level = 20
debug level = 1
usershare allow guests = yes
getwd cache = yes
max log size = 1000
log file = /var/log/samba/log.%m
read raw = yes
write raw = yes
read list = home,@home
socket options = SO_KEEPALIVE TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=65536 SO_RCVBUF=65536
map to guest = bad user
encrypt passwords = true
passdb backend = tdbsam
dead time = 15
server string = HomeServer
path = /media
unix password sync = yes
valid users = lightning,home,@lightning,@home
syslog = 0
panic action = /usr/share/samba/panic-action %d
pam password change = no
[sample-share]
valid users = lightning,home,@lightning,@home
read list = home,@home
write list = lightning,@lightning
path = /media/md0p1/
vfs object = recycle
recycle:repository = /media/md0p1/.recycle
recycle:keeptree = Yes
recycle:touch = Yes
recycle:versions = Yes
recycle:maxsize = 0
recycle:exclude = *.tmp *.temp *.o *.obj ~$* *.~?? *.bak *.lck *.vmem
A /etc/network/interfaces fájl:
auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1
broadcast 192.168.1.255
A /etc/resolv.conf fájl:
nameserver 192.168.1.1
Aki megoldja a rejtélyt, annak imába foglalom a nevét! :)