LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking
User Name
Password
Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.

Notices


Reply
  Search this Thread
Old 01-22-2004, 03:34 AM   #1
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Rep: Reputation: 15
I NEED SPEED (on my fileserver)


Hello all,


A little while ago i got excellent help from this forum when i was attempting to build a fast file server.
This is the thread for those who are interested in building one :

http://www.linuxquestions.org/questi...hlight=grafbak

However, the server has been build, it is dancing the Samba, and i get a speed up to max 5,6 MB/sec.

The file server exists of a 533 MHz Celeron (Coppermine) computer with 192 MB SDRAM inside. The OS is Knoppix 3.3 + Samba 3.0.
The harddrives i use are two seagate barracuda's, 120 GB each, with 8 MB cache. The file i used for testing the speed was a 600 MB iso. (NO RAID)
Right now everything is funtioning, but i am not satisfied with the speed.
I use a SafeWay 100 mBit switch and 10/100 NIC's on every machine.

I performed some tests on the server and these are the results :

I got a 4,5 MB/sec write speed to the server, with KDE enabled on the server.
I got a 4,6 MB/sec with KDE disabled on the server
I got a 5,6 MB/sec over a cross-cable to the server and KDE disabled (so i removed the switch)

The very small difference in speed when i disabled KDE tells me that memory is not yet the bottleneck (i like to think). I killed all the KDE processes, starting with kdm.

The switch seems to make some difference , but i know i have seen a faster 100mbit network.
I have already changed both send- and recvbuffer in samba to 8192.

Here are also my my ifconfigs of the two pc's used for testing :

This is the ifconfig of the client-PC, that i use to work with (read: to play movies and to play games)

Graveyard@Graveyard:~$ ifconfig

eth0 Link encap:Ethernet HWaddr 00:50:FC:47:66:85
inet addr:192.168.0.30 Bcast:192.168.0.255 Mask:255.255.255.0
IPX/Ethernet 802.2 addr:0050FC476685
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1276 errors:0 dropped:0 overruns:0 frame:0
TX packets:1341 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:133748 (130.6 KiB) TX bytes:126967 (123.9 KiB)
Interrupt:11 Base address:0xf000


This is the ifconfig of my fileserver :


root@bigmofo:~# ifconfig
eth0 Link encap:Ethernet HWaddr 000:B7:60:9E:2C
inet addr:192.168.0.10 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:50597514 errors:0 dropped:0 overruns:0 frame:0
TX packets:91390367 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:127722033 (121.8 MiB) TX bytes:1660856322 (1.5 GiB)
Interrupt:10 Base address:0xa000


Right now i do not have a single clue what i should do to increase performance so i can get at least an 7-8 MB/sec.

Could somebody please give me tips/hints for finetuning my fileserver ?

If you need additional info , please tell me, i ill post it.



(This was actually a hobby project that got a little out of hand, as i bought a second 500 MHz PC yesterday and equipped it with two seagates of 160 GB each. Eventually, one day, i want to let them melt together with OpenMosix. And this is what people call a hobby pffff. However i can not stop playing with linux, it is more addictive than smoking.)
 
Old 01-22-2004, 08:40 AM   #2
fragglehorn
Member
 
Registered: Oct 2002
Location: I-Town, NY
Distribution: Debian, Slackware
Posts: 130

Rep: Reputation: 15
I would recommend a hardware upgrade and a diferent OS. Knoppix was designed for the desktop and rather bloated; K isn't the only resource hog residing there. A bare, GUI-less system with only what you need will help.

And a Celeron 533 w/ 192 megs is by no means a smokin' system. I know this started as a hobby, but if you want more performance, you might have to invest a little more into your hardware.
 
Old 01-22-2004, 09:00 AM   #3
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Original Poster
Rep: Reputation: 15
Thank you for your reply, (and for reading a huge amount of text)

I chose Knoppix becaue i am already familiair with most commands. If i try a new OS, i would probably have to learn everything all over again.

The 2nd reason I chose Knoppix is that i can relatively simple build a cluster with the second 500 MHz machine using ClusterKnoppix.

I realize it is not the perfect OS for my goal, and i am open to suggestions.
However, i tested the speeds with KDE enabled and with KDE disabled and this made hardly any difference in speed (+0.1 MB/sec). As I understand from your reply, a 533 MHz machine with 192 MB SDRAM is not capable of reaching speeds around 7-9 MB/sec on a network. Is this really so ?
However, when i copy a large file (local) it gives a speed of 22.5 MB/sec.

This is exactly the confusing part for me. The drive does not seem to be the problem. Disabling KDE shows that the memory is also not the problem.
And even with the KDE enabled Knoppix runs FAST on this machine.
On another PC, which is a P4@1.5 GHz with 640 MB PC800, Knoppix does not run really much faster.

But again, if you have any suggestions how i can get better performance, please tell me. I am currently working on the installation of Clusterknoppix but i can easily pick another distribution if this promises to be faster. I have everything backed up so i can do whatever i want with the machine.

I was actually thinking about protocols, frametetypes etc for finetuning this old junk.
Please give me more tips or tell me if my expectations are too high from this machine.
I would have no problems with a text based, minimalist Linux, but i do not know which one i should try.
 
Old 01-22-2004, 10:04 AM   #4
fragglehorn
Member
 
Registered: Oct 2002
Location: I-Town, NY
Distribution: Debian, Slackware
Posts: 130

Rep: Reputation: 15
You will never be able to reach local speeds from another machine. Think about it: Copying a file involves reading information from your hard disk and then writing it to that same disk. Passing a file over a network requires reading from one disk, passing that information through a pci bus exiting via your network card, and traveling the length of cable into the second machine where another drive writes it. There's nothing wrong with your drive -- in fact it's the nicest piece of hardware in your system.

Further, disabling KDE will free up some resources, but it doesn't add a stick of ram to your motherboard. The more, the better -- period.

As for your choice of distro, there's really nothing to fear. Basic Linux commands are universal, so if you're comfortable with a command line, you're good to go. Knoppix is Debian based, so if you want a familiar environment, you might consider going that route. Install and config is a real pain, however. In my experience, slackware is the way to go if you just want to get the thing up and running with the fewest hassles. It's also extremely lean.
 
Old 01-22-2004, 10:25 AM   #5
stickman
Senior Member
 
Registered: Sep 2002
Location: Nashville, TN
Posts: 1,552

Rep: Reputation: 53
Have you tried doing any TCP tuning?
 
Old 01-22-2004, 11:20 AM   #6
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Original Poster
Rep: Reputation: 15
Oke i understand that network speed will always be slower dan drive speed, i mentioned it so that you could see that the drive is up to speed :-).

Maybe a slackware text install will perform better than a Debian-text install. I have decided to give it a go when tcp-tuning fails.

Stickman, could you please tell me a little more about TCP tuning ?
Before i decide to change distro, i want to see how much speed i can gain with your method.

If the speed still stays below 7 MB/sec, i will try Slackware-text install.

Until now i do not get more than 5,6 MB/sec
 
Old 01-22-2004, 11:53 AM   #7
stickman
Senior Member
 
Registered: Sep 2002
Location: Nashville, TN
Posts: 1,552

Rep: Reputation: 53
Quote:
Originally posted by Grafbak
Stickman, could you please tell me a little more about TCP tuning ?
Before i decide to change distro, i want to see how much speed i can gain with your method.
Do a google search for "linux tcp tuning". A lot of the stuff that you find is directed at webservers; however, it should give you a good idea where to start.
 
Old 01-23-2004, 04:05 AM   #8
mafiltenborg
Member
 
Registered: Jan 2004
Location: Denmark
Distribution: Debian, Debian, Debian
Posts: 81
Blog Entries: 3

Rep: Reputation: 19
Max attainable transfer rate

Before you started out on your quest for "Sh*tloads o' speed", did you remember to determine the theoretical upper limit on a 100 mbit cable?

To me, 7 Mbyte/sec actually sounds quite good, because:

If 1 byte = 8 bit, 100 mbit/sec = 12.5 Mbyte/sec.

This is the absolute upper limit, requiring bytes sent over the cable to flow back-to-back (no pauses), no control information (not even start/stopbits, CRC or anything at all - nothing!) present and in general no network-handling information present.
Transferring eg. 600 Mbyte of data in one go - as a bitstream without synchronization or error detection or anything - as a string of bits 600*8=4800 mbit long just cannot be done!

Getting back to the real world, one sees that such "network-handling information" is unavoidable.

One byte turns out to be 10 bit or more: startbit, 8 databit and stopbit plus whatever you choose to add in order to catch errors during transfer.
So, this reduces bandwidth by at least 20%.

On top of this, several layers of handling are added to form a reliable data channel. Names like TCP, IP, UDP and such refer to stuff within this layering approach. Of course the operation of such networking components can be tuned, but don't expect them to just disappear from the equation. My wild guess would be to expect a minimum 20% overhead on TCP and its friends, reducing bandwidth to 8 Mbyte/sec:
(12.5*0.8)*0.8 = 8 Mbyte/sec

Wanna push your drive to the limit (22+ MByte/sec)?
Get hold of a 1000mbit/sec NIC or bundle some 100 mbit/sec NICs to form a parallel connection... Dunno, never tried to do NIC bundling, just heard about it.

Wanna go further?
Seagate Barracuda delivers 22 MByte/sec sustained? How did you measure? Physical disk A to physical disk B transfer of 600 MByte file and a stopwatch?

Wondered why you only got 22 MB/s? I mean - ATA1xx promises much more...
Look for the magic words "Media Transfer Rate". MTR = 400 mbit/sec means you can expect 400mbit/(10bit/byte)=40 MByte/sec sustained MAX.
In practice less, maybe 30 MByte/sec.

The disk simply cannot deliver data any faster than it can scoop 'em off of the disk platters. So, more platters in parallel means more power.
Since platters in parallel == disks in parallel, RAID is the way to go here. The word "striping" is key. And remember to use disks with some serious MTR specs. Forget about the interface for a moment and accept that MTR is king when it comes to big files, as on-disk-cacke is king when it comes to small files

Just my two cents...
 
Old 01-23-2004, 08:56 AM   #9
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Original Poster
Rep: Reputation: 15
Thank you for the clear explanation.

I think you have a point with the overhead in a protocol, it does cost bandwidth. Your calculation makes sense. I will see if i can remove my ipx (inhereted when it was still a novell server).
Does the frametype actually matter when you only use TCP/IP or is that a typical IPX parameter ?

According to your calculation 7 mb/s would be pretty ok for my machines. However, has nobody seen faster speeds than 9 MB on a 100 mbit network ? I always thought that 10 mb/s would be possible, so i figured 7 MB/s would be satisfying for now because the PC's are a little older. I just want to get max performance out of those boxes.

For the rest i am studying on the hint stickman gave me. I am still a bit of a newbie when it gets real technical. I now found a tutorial for optimal network performance and i will have to learn it. (this can take some time)

The drives are fast enough for this network, they will get attention when i decide to switch to Gigabit.
Before i buy that expensive stuff, i need to know how to handle my equipment properly.

I will do a text install of Slackware 8.1, and some tests with small and big files. (When i test, i usually take a file of 700 MB and look at the speed when it is on 50%)

I have also two NIC's in the machine, but i have already been told this will not boost performance when they are on the same network.

I will edit my last post to show some some results of my test when i am finished with installing Slackware. (Which is a bit nasty for a Knoppix user).

Thank you for the tips !
 
Old 01-23-2004, 09:56 AM   #10
palmercabel
Member
 
Registered: Oct 2003
Posts: 64

Rep: Reputation: 15
Oh, you have ipx also on the wire ?? You should see if removing that may reduce some contention. Do you also have a lot of windows machines (particularly pre-Win/2k) clogging the wire with contnuous netbios traffic ?

Sounds like a traffic analysis might be a good idea.

You can also just throw money at the problem by creating multiple network segments.

I'd also recommend a more discrete target than "go faster". Pick something that will be worthwhile to improve (file copying from a particular machine, delivery of web pages, you get the idea).

OOPS (*BLUSH*) I just now remembered there was a prior post where you may have dealt with some of the things I mentioned. Please accept My appologies if that's the case.

HTH
 
Old 01-23-2004, 01:34 PM   #11
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Original Poster
Rep: Reputation: 15
Well no need to blush on your side lol. I tried to remove ipx, however i do do not know how to remove things from linux. (Installing is no problem).

My network consists of the following :

P4@1.5GHz, 640 MB RIMM, 120 GB (Knoppix3.3 + WintendoXP)
533 Celeron (Coppermine), 192 MB SDRAM, 2*120 GB (Knoppix3.3)
500 Celeron (Mendocino), 312 MB SDRAM, 2*160 GB (Knoppix3.3)
133 MHz win98SE, 32 MB memory, 5 GB drive, is just an irc bot
133 MHz Firewall/Router, Smoothwall
120 MHz Freesco as webserver. is off most of the time.

This is all connected to a SafeWay 10/100 mbit switch and all lights are green, which i believe stands for 100 mbit.

I checked on linux all the interfaces with mii-tool, and everything is in full duplex. The only difference i found was that the fileserver, 533 Celeron, has someting enabled called flowcontrol. I do not know what it is or how to disable it. (or should i enable this on the other pc's as well ?)

My goal with my fileserver is that i can put all my stuff in there, so i can reach all my files over the internet, or every pc at home. Basically to save space.
The content is mostly mp3,images (to mount for playing games with Windows), programs, and movies. The usual home-user-stuff.
The computer that plays the movies and is connected to my tv and stereo, is the 1.5 GHz PC. so basically, most traffic goes here, and comes from this one.


Regarding installing Slackware :
I plan to do a text install of slackware, but almost every force in the universe is trying to prevent me from doing so :
The Celeron 533 doesn't boot from CD, when i make bootfloppies i get an "oops, kernel panic". It turns out that my ide controller for the cdrom is not recognized correctly. I went to #debian, to #knoppix, was advised to use SmartBootManager, which didn't recognize my CDROM also at booting time, but gave me the opportunity to put in the hex adress of my cdrom player, which i didn't know. Someone at work told me to boot from a dos flop because then it would show. It didn't show. And i am still not tired of penguins.
However, these minor problems made me do a Knoppix install until i know the hex-adress of my cdrom player.

Again, thank you for the tip and bearing with me :-)
I hope that it might give you a better idea of what kind of little network we are dealing with. If you can give me a hint on how to get rid of ipx under knoppix, please tell me.
 
Old 01-26-2004, 02:08 AM   #12
mafiltenborg
Member
 
Registered: Jan 2004
Location: Denmark
Distribution: Debian, Debian, Debian
Posts: 81
Blog Entries: 3

Rep: Reputation: 19
Scream if you want to go faster :)

Hehe...

Actually i'd already written an answer - thanking you for the tip about mii-tools 'n all - but then i accidentally threw it away in the process of pursuing an idea that popped into my head almost out of nowhere:

You want a fileserver? Faaaaast, lean and mean?

Try taking a look at http://www.e-smith.org/

As far as i can remember, it's a one-CD-thing like Knoppix, but aimed at fileserving and gateway/firewalling primarily. Not even X, just a console-text-interface and a remoter web-interface like eg. webmin.

This might just knock your socks off

BTW: Y'all know there's a new Knoppix-STD in town? v0.1 is out!

Based on Knoppix, and laden with all the tools you'll ever need to get started securing your servers. A must-see!

Check out http://www.knoppix-std.org

But before doing anything else, you need to get your floppy and CDROM going. Without those, you're dead in the water. Or have i got it all wrong - because you're running Knoppix off of a CD all right, eh?

//mA
 
Old 01-26-2004, 02:40 AM   #13
Grafbak
Member
 
Registered: Jun 2003
Location: /dev/null
Distribution: Knoppix 3.3
Posts: 61

Original Poster
Rep: Reputation: 15
Thanx, i will give e-smith a try.

The problem with the cdrom_booting is a bit strange, i'll try to describe it :

When i boot from a dos floppy,made with win98, i can start the computer with cdrom support. After doing so i type e:/setup and the setup of win98 begins. When Win98 has been installed, i copy the entire Knoppix cd to c:\Knoppix, and then make a Knoppix bootfloppy with the mkfloppy utility, which i could find on the knoppix cd. When i boot from this floppy, i can start the cdrom-contents and do a hdd-install when i like to.
I believe this is called a poor mans install. It sucks, but i have little choice.

When i put a cdrom in it, it will not boot. whatever i try. (and yes, i selected a first boot device in my bios :-) ).

As told, i tried SmartBootManager,which looked pretty promising. However i am not able to find the hex-adress of my cdrom player which is needed by SBM. Until i solved this problem i am stuck. Back to the topic.

However, i plan to test just Slackware and e-smith now.
At a given point i get tired of testing and i just want something that works fast enough. (actually it can never be fast enough)
At the moment it is still knoppix, but tonight i will try to put e-smith on the machine and give it a go. I will let you know what speeds i have measured, so you can see the difference. However it is a pretty timeconsuming hobby so give me a few days to come back with results. I will let you know !
 
Old 01-26-2004, 04:24 AM   #14
mafiltenborg
Member
 
Registered: Jan 2004
Location: Denmark
Distribution: Debian, Debian, Debian
Posts: 81
Blog Entries: 3

Rep: Reputation: 19
Booting off of a CDROM

Weird!

If the BIOS in your C533 won't allow you to boot from CD - that's a problem.

A motherboard capable of holding a Celeron 533 is - *must* - be able to boot from CDROM.

I wonder why booting off of a floppy gets the CD going, while BIOS-CDROM-access is broken. What does the boot-floppy do to get access to the CD. (CDROM-support - how?)
A shot in the dark would be to suspect the BIOS settings. You say CDROM is bootmedia #1, so that's OK.
Right after POST, does the CDROM-drive-light blink and do you see messages like "Trying to boot from CDR" or the like. Or does the BIOS just not *find* any CDR? Does it try at all?
How's the CDR installed? I assume it's a standard ATAPI-drive...
Master? Slave? Which channel - primary or secondary?
Or did you do the obvious mistake and make the CDR a "CS" unit (Cable Select) with the small jumper near the connector on the drive's back. If so, try setting it as master (again - jumper on CDR!!) on secondary channel and update BIOS settings to match that. Most BIOSes can detect CDR manufacturer name etc. when you have the CDR installed OK.

To me, it wouldn't even be worth bothering if CDROM-boot was broken. Floppy-boot is a drag - installing W98 is a pain in the *ss, knowing that all you need it for is to circumvent that silly CDROM drive. If it's there, it has to work!

And yes, i know the poor mans install: Got a few laptops here, all of them with no CDROMs. Try installing W98 on one of those... Requires MSDOS-bootdisks with network support, an old version of NC and some copying.
Doable, but silly.
You might want to try this one on for size though:
Get hold of a Symantec Ghost. That's software for managing disks and partitions. Put the target machine's harddisk in your own machine (just temporarily, of course). Fdisk, format /s and W98-install-CD-data-transfer-to-target-harddisk.
Now you've got the most generic bootable harddisk on earth.
Use Ghost to take a snapshot of the disk.
Put the snapshot image on a CDR.
Make a Ghost-boot-floppy with CDR-support.

Now move the harddisk to your target machine and do a complete W98-install. Easy...

So you f*cked up the install somewhere? Wanna start all over? New target machine? Do like this:

Insert your previously made bootfloppy and Ghost-image-CDR into target machine drives. Boot. Use Ghost to transfer image data onto target HD.
Remove media. Reboot.
This procedure takes 3 minutes max! And it's usable on ANY machine with a CDROM-drive.
No CDROM on target machine? Modify the bootfloppy to provide network access, start a Ghost-server on your own PC, then connect and "download" HD-image to target machine.
5 minutes flat, assuming bootfloppy gets the NIC going allright.

Once rebooted, you're ready to do a full W98 install.
But who wants to do that more than once in a lifetime?
So here's a trick for you:
Install W98 onto a HD while thinking of this as a "base package"-thing. Don't install useless junk - instead make sure the W98-installfiles reside on harddisk. That is - don't install from CD.
Once satisfied with your "base-package", do this:
Open the device manager.
Remove ALL entries - anything!
Shutdown.

Now Ghost the disk!

Installing this Ghost-image on a new machine will cause the machine to boot into W98, realize the hardware-database is all empty and do exactly what we want: detect hardware, reboot a million times and finally be all done and ready to go. Takes on average one third of the time needed to do a CD-based from-the-ground-up install - and you get all the tools you've installed too. No need to install OpenOffice. It was on the Ghost-image, right? So it's on your newly created machine now!
Enough about that...

Oh yes, i almost forgot. E-smith can be gotten-hold-of here:
ftp://ftp.fsn.hu/pub/linux/distributions/e-smith/

And yes, i'll wait for your reply. Take your time. I'm in no hurry. I'll be busy trying to make this bl**dy soundcard work on my debian-laptop (No cd ).
Some sort of kernel version symbol mismatch thing happens when i try to compile ALSA-drivers for a cs4236 card, and i'm apparently too stupid to figure it out in one go...
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
PCI bus speed and video card speed juanbobo General 0 08-01-2005 01:13 PM
fileserver ultramagneus Linux - Newbie 1 03-09-2005 07:54 AM
Gnome Update, Mouse Speed, Overall System Speed funaroma Linux - Newbie 2 08-04-2004 10:13 PM
cdrecord - trying to use high speed medium on low speed writer captain-cat Linux - Hardware 2 07-12-2004 06:27 PM
Is there a tool to monitor Internet connection speed and also network speed? xleft4dexy Linux - Networking 4 10-14-2003 10:29 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Networking

All times are GMT -5. The time now is 10:01 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration