PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Samba lahmt (RAM als Flaschenhals?)



Marz
06.12.05, 19:12
ICh betreibe einen kleinen Home-PDC.
Läuft soweit gut ... nur die Datenrate bereitet mir Kopfschmerzen.
Ich schaffe bei einem 700 mb image eine maximale durchnitts Downloadrate von 2,5MB/s :eek: (mit mc geschaut). Diverse Tools sagen mir, dass es aber nicht an der Leitung liegen kann.
Ich habe mal mit top geschaut was so sache ist.



top - 20:03:36 up 4 days, 13:46, 2 users, load average: 0.01, 0.03, 0.00
Tasks: 48 total, 2 running, 46 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3% user, 4.0% system, 0.0% nice, 95.7% idle
Mem: 126556k total, 123104k used, 3452k free, 1828k buffers
Swap: 250448k total, 66724k used, 183724k free, 105336k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8921 marz 16 0 3304 3300 3008 S 1.3 2.6 0:15.50 smbd

an der CPU Auslasstung liegt es nicht(Celeron 700mhz). An Arbeitsspeicher steckt aber nur 128mb drinne. Wie man sieht is beim Download nur 3452k an Arbeitsspeicher frei. Liegt es daran?
Was meint ihr lohnt sich eine Aufrüstung (in hinsicht auf die Durchsatzrate).

mamue
06.12.05, 21:22
Es wundert mich, dass solche Themen dermaßen oft aufkommen. Also nochmal: Linux verbraucht _immer_ allen Speicher, siehe "cached". Gerne wüsste ich, was denn die "diversen tools" seien, mit denen Du getestet hast. Ohne diese Angaben und die smb.conf ist alles weitere herumgestochere im Nebel.

mamue

Ach ja: Such mal im Forum nach diesem Problem, Du wirst einige tausend Threads dazu finden.

Marz
07.12.05, 14:45
meine smb.conf


[global]
workgroup = PERSEUS
server string = %h Samba Server(%v)
passdb backend = smbpasswd:/etc/samba/smbpasswd
passwd program = /usr/bin/smbpasswd %u
passwd chat = *changing* %n\n *new* %n\n *changed*
username map = /etc/samba/smbusers
log file = /var/log/samba.%m
max log size = 50
name resolve order = wins bcast hosts
load printers = No
add user script = /usr/sbin/useradd -m '%u'
delete user script = /usr/sbin/userdel -r '%u'
add group script = /usr/sbin/groupadd '%g'
delete group script = /usr/sbin/groupdel '%g'
add user to group script = /usr/sbin/usermod -G '%g' '%u'
add machine script = /usr/sbin/useradd -s /bin/false -d /var/lib/nobody
'%u'
logon script = logon.bat
logon path = \\algol\profiles\%U
logon drive = H:
domain logons = Yes
os level = 254
preferred master = Yes
domain master = Yes
wins support = Yes
hosts allow = 127., 192.168.0.
[homes]
comment = Daheim
valid users = %U
read only = No
browseable = No

[netlogon]
comment = Netzwerkanmeldung
path = /home/export/netlogon
valid users = %U
read only = No

[profiles]
comment = Benutzerprofile
path = /home/export/profiles
valid users = %U
read only = No
create mask = 0600
directory mask = 0700
browseable = No

[gemeinsam]
comment = Gemeinsame Datein
path = /home/export/shared
read only = No



das tool mit dem ich das netzwerk getestet habe nennt sich netio und da bekomme ich mindestens 11mb/s

Danke marz

snoopie
07.12.05, 16:42
netio misst den durchsatz, der mit einem anderen rechner maximal möglich ist. netio schickt einfach beliebige pakete an die andere seite, um die geschwindigkeit zu testen. es lässt dabei aber die festplatten außer acht. beim testen wird auf keine festplatte zugegriffen.

bei meinem gbit lan daheim hab ich mit netio nen durchsatz von bis zu 90mb/s, was schon recht ordentlich ist für gbit. wenn ich dann allerdings daten per ftp übertrage komme ich "nur" auf 40mb/s, weil die festplatten an der leitungsgrenze sind (habe kein raid, nur normale p-ata platten mit 8mb cache)

netio gibt dir also nur ein halbwahren wert zurück, den du nur erreichen kannst, wenn die festplatten und die chipsätze es hergeben.

Marz
07.12.05, 21:32
Das ist mir schon klar! Hdparm sagt folgendes:


root@algol:/home/marz# hdparm -tT /dev/hda

/dev/hda:
Timing cached reads: 524 MB in 2.00 seconds = 262.00 MB/sec
Timing buffered disk reads: 82 MB in 3.00 seconds = 27.33 MB/sec

Da muessten doch mehr als 2mb/s drinne sein???


Es liegt auf jeden fall an Samba! Ich habe es mal mit proftp versuch ... und da schaffe ich wesentlich mehr speed!

BedriddenTech
07.12.05, 23:13
Ich würd's mal mit der Option "socket options" ausprobieren. In der smb.conf(5)-manpage stehen sogar einige sehr nützliche Beispiele.

mamue
08.12.05, 09:46
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192

Das wäre eine Möglichkeit. Ich bezweifle aber, dass das die Datenrate um Größenordnungen hoch setzt. Wie gesagt, das Thema war schon sehr oft hier und solange ich mich entsinnen kann, lag es nie an Samba, sonder an defekten Karten, Kabeln, Switches, falsch Konfigurierten Festplatten (DMA), Firewalls.
Bei X-tausend Installationen funktioniert samba, wenn es dann einmal nicht geht, liegt es sehr wahrscheinlich nicht an dieser Software, meine ich.

mamue

Sonny
08.12.05, 11:20
für eine 200 MB Datei brauche ich ca. 26 Sekunden. (NFS)

Marz
08.12.05, 15:48
Warscheinlich muss es wohl doch an samba liegen!
Wenn ich ueber samba ein file ueber wlan ziehe mit 800 kb/s und mit proftp mit 3mb/s da muss doch irgendwas faul sein!:mad:

PS: Ich habe schon alle moeglichen einstellungen in Samba versucht aber es wird nicht schneller.

Sonny
09.12.05, 07:29
mit samba habe ich eine rate von 7.0 MB/s in Meiner config steht nicht viel besonderes drinne

# Global parameters
[global]
workgroup = net
server string = tux
map to guest = Bad User
username map = /etc/samba/smbusers
logon path = \\%L\profiles\.msprofile
logon drive = P:
logon home = \\%L\%U\.9xprofile
printer admin = @ntadmin, root, administrator

und die shares

Marz
09.12.05, 16:30
Ich habe jetzt Samba selbst compiliert da läuft es noch langsamer :confused:

bla!zilla
09.12.05, 19:07
Also FTP gegen SMB antreten zu lassen ist schwachsinn. SMB / CIFS als Übertragungsprotokoll ist einfach Müll. FTP ist da deutlich schneller. Geschwindigkeitsunterschiede sind also normal.

Marz
09.12.05, 20:00
Ich würde ja auch ohne weiteres auf NFS umsteigen ... gibt es den da auch einen Client und oder Server für Windows?

mamue
10.12.05, 09:12
Also FTP gegen SMB antreten zu lassen ist schwachsinn. SMB / CIFS als Übertragungsprotokoll ist einfach Müll. FTP ist da deutlich schneller. Geschwindigkeitsunterschiede sind also normal.
Ja, aber normalerweise nicht Faktor drei. (800KByte smb gegen 3MByte ftp). Es wird etwas langsamer sein, aber nebenbei bemerkt nicht unbedingt langsamer als NFS.
Ach ja, es gab zumindest einmal einen NFS client für Windows, aber ehrlich gesagt, ich würde das lassen. Das ist IMHO der falsche Weg. Samba ist schnell, das Problem liegt bei Dir bzw. Deinem Setup.

mamue

Marz
10.12.05, 09:57
Mein Setup?
Du meinst meine Config?
Du meinst ich soll es mal mit einer einfachen share Config versuchen?

PS: Mit ethernet schaffe ich mit samba 1,5 bis 2 mb/s mit ftp habe ich 10,5mb/s geschaft :D (Das hat meine künsten Träume übertroffen).

mamue
10.12.05, 21:55
Mit setup meine ich nicht nur die config, sondern die Zusammensetzung aus Hardware- und Softwarekonfiguration. Aus irgendeinem Grunde ist bei Dir Samba langsamer als beim Rest der Welt. Es ist natürlich auch denkbar, dass es am Rest der Welt liegt, dass es bei denen schneller ist, aber da glaube ich nicht so recht dran. Der Grund für solche Performanceprobleme kann schwer zu erkennen sein, vor allem aus der Ferne.

mamue

kruessi80
11.12.05, 19:48
Mein Setup?
Du meinst meine Config?
Du meinst ich soll es mal mit einer einfachen share Config versuchen?

PS: Mit ethernet schaffe ich mit samba 1,5 bis 2 mb/s mit ftp habe ich 10,5mb/s geschaft :D (Das hat meine künsten Träume übertroffen).


Hi, ich hatte mit einer Gigabitkarte ähnliche Probleme. Das tauschen der Karte war die einzige Lösung des Problems. Schuld war die Übertragung in eine Richtung. Ich vermute, dass beim Samba-Protokoll ständig in beide Richtungen kommuniziert wird, hingegen beim FTP Protkoll nicht.
Dass damals tatsächlich ein Hardwareschaden da sein sollte, dafür habe ich viel Zeit verbraten um das herauszubekommen und zu akzeptieren fiel mir echt schwer...

Am besten du testest dies mal mit anderen Netzwerkkarten!

Gruß
Matthias

Marz
11.12.05, 20:14
... das hätte ich ja schon längst gemacht ... es handelt sich aber um ein embedded System. Das ist ein kompletter PC auf einer ISA-Karte mit Netzwerk onboard. Da lässt es sich eher schlecht austauschen :o .

kruessi80
11.12.05, 20:53
Ja und was ist mit der Karte gegenüber?

vielleicht liegt ja da das Problem...

gruß
Matthias