Go Back   FlashFXP Forums > > > >

ioFTPD General New releases, comments, questions regarding the latest version of ioFTPD.

Reply
 
Thread Tools Rate Thread Display Modes
Old 01-12-2004, 10:58 PM   #1
darkone
Disabled
FlashFXP Registered User
ioFTPD Administrator
 
darkone's Avatar
 
Join Date: Dec 2001
Posts: 2,230
Default Fastest daemon around? (win32)

Introduction to the madness:

I saw discussion on some other forum (which I'm not allowed to post on) Obiviously IIS, which is working in kernel mode (so it's near impossible to beat.. atleast for an army of one) Io beats IIS in single transfer rates, but is likely to lose the race when it comes up to scalability.

I've pasted single transfer rates here many times before... so I guess it would be pointless, to post them once again. And what does a single transfer tell about daemons performance on real life scenarios? Absolutely nothing. It's much better to exaggerate when setting test parameters.


Parameters:

What would be good test parameters? Let's assume you're running big fileserver on 100mbit connection. And as usual, our fileserver has hardware accelerated SCSI RAID0+1, , and lots of ram to cache files on. So amount of time spent waiting for file io is negligible, and does not affect total transfer time (same as copying from cache). Userbase consists of 10000 users of which, average of 900users are expected to be online and downloading. (Total of 1800active sockets)


Test1:

Now that test parameters are known, and set so that it's possible to run the test on 'normal' computer, we are ready to go.

Set ncftpget as background process to download single file to /dev/null on remote computer. (When all clients are downloading same file, lack of hardware accelerated io or limited amount of memory do not show up in test results) You might consider to wait one or two seconds after every 100requests, so you don't spawn 1000clients that are all trying to connect simultaniously. All clients connected and downloading? Good... you have completed first part of test


Test2:

Now that we know that daemon is able to serve those 900clients, we'd most certainly like to know, wheter output rate is limited by daemon (software/cpu) or by network. This can be done by setting up one local transfer. If output speed for single local transfer is higher than for the average for a single transfer over network, we have proven that transfer speeds are not limited by hardware/software.

100mbit * 1024 / 8 / 900 = ~14kb/s

Each network client has ~14kb/sec of bandwidth available => local transfer should be atleast 15kb/sec.


My results:

Network clients: average 14kb/sec, filesize 435242304bytes (varies between 9 & 16kb/sec) Without local client cpu usage averages at ~22% (jumping between 17 & 26) Server doesn't feel lagged.

Local client: average 26990,55Kbytes/sec, filesize 85964896 bytes (Only transfer, that I had patience to wait until end) Result is 1800times more than required. Cpu usage at ~90%, total bw ~39mb/sec.

Conclusion:

On my hardware (Win2K3, Intel Pentium IV 1.8GHz, 512Mb, ATA-100, Intel eepro-100), throughput on 100mbit network is not limited by amount of connections or by hardware.


Other daemons?

I'm not even going to try to run tests on other daemons. Only very few of them would would be able to handle the required amount of connections, and my prior experience with sofware doesn't hint to that they would be able to outperform io (excluding IIS). If someone wants to prove me otherwise, feel free to do so.

Ps. If you actually read this thread, write some short reply, so I'll know wheter to post this kind of crap in the future... just felt like I had a thing or two to say about performance, and how to measure it
darkone is offline   Reply With Quote
Old 01-12-2004, 11:03 PM   #2
Mouton
Posse Member
Ultimate Scripter
ioFTPD Administrator
 
Join Date: Dec 2002
Posts: 1,956
Default

read. almost all of it
Mouton is offline   Reply With Quote
Old 01-12-2004, 11:26 PM   #3
EwarWoo
Senior Member
FlashFXP Registered User
ioFTPD Registered User
 
Join Date: Oct 2002
Posts: 462
Default

Read it. Interesting reading though chunks of it over my head for now. Will re-read it when more awake
EwarWoo is offline   Reply With Quote
Old 01-13-2004, 12:03 AM   #4
Zer0Racer
Senior Member
ioFTPD Scripter
 
Join Date: Oct 2002
Posts: 703
Default

Yep, read it all. My kind of post.

Now back to sleep.
Zer0Racer is offline   Reply With Quote
Old 01-13-2004, 04:59 AM   #5
Mr_X
Senior Member
FlashFXP Registered User
ioFTPD Foundation User
 
Join Date: Sep 2003
Posts: 142
Post

I thought about this limitation. I remember that a thread or a program can handle a max of 2000 sockets. It's a windows limitation. But I don't know if it is the program which is limited or a limitation per thread
Mr_X is offline   Reply With Quote
Old 01-13-2004, 05:24 AM   #6
ADDiCT
Senior Member
FlashFXP Beta Tester
ioFTPD Scripter
 
Join Date: Aug 2003
Posts: 517
Default

it is either per thread or window handle, i forgot
definately not per process
ADDiCT is offline   Reply With Quote
Old 01-13-2004, 07:02 AM   #7
NorLan
Senior Member
 
Join Date: Sep 2003
Posts: 110
Default

nice to read such stuff...
(as long "the honey moon side" and "the dark site" is shown )

:info:
will test io within next two months for about 200-250 user. on a system with ...

perhaps it is possible to get some advisory how to manage such test with moderate workload on my own.
NorLan is offline   Reply With Quote
Old 01-13-2004, 09:20 AM   #8
MaistroX
Senior Member
FlashFXP Registered User
ioFTPD Registered User
 
Join Date: Jul 2002
Posts: 221
Thumbs up

Love to read stuff like that (thou I only understand ~20% of it).

MaistroX is offline   Reply With Quote
Old 01-14-2004, 02:43 AM   #9
sCry
Member
 
Join Date: Oct 2003
Posts: 79
Default

read it, completely.
sCry is offline   Reply With Quote
Old 01-14-2004, 05:57 AM   #10
karmacoma
Junior Member
 
Join Date: Sep 2002
Posts: 27
Thumbs up

Read it all and i would also like to test my system to see what it's capable of.
karmacoma is offline   Reply With Quote
Old 01-14-2004, 12:00 PM   #11
darkone
Disabled
FlashFXP Registered User
ioFTPD Administrator
 
darkone's Avatar
 
Join Date: Dec 2001
Posts: 2,230
Default

Quote:
Originally posted by Mr_X
I thought about this limitation. I remember that a thread or a program can handle a max of 2000 sockets. It's a windows limitation. But I don't know if it is the program which is limited or a limitation per thread
By default windows has limit of 4000sockets (user ports).

http://support.microsoft.com/default...b;en-us;328476
darkone is offline   Reply With Quote
Old 01-14-2004, 08:57 PM   #12
dRag0nMa
Junior Member
 
Join Date: Dec 2003
Posts: 1
Default

got it
like it
& u
dRag0nMa is offline   Reply With Quote
Old 01-16-2004, 08:54 AM   #13
wooolF[RM]
Senior Member
ioFTPD Foundation User
 
Join Date: Oct 2003
Posts: 411
Default

nice stats, always interesting to read stuff like this
wooolF[RM] is offline   Reply With Quote
Old 01-16-2004, 09:24 PM   #14
DarkWhite
Junior Member
 
Join Date: Sep 2002
Posts: 10
Default

yeah post more crap, common

always nice to read at a boring night waiting for new releases to pop-up
ehe
DarkWhite is offline   Reply With Quote
Reply

Tags
download, local, single, test, transfer

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

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 On
HTML code is Off

Forum Jump


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

Parts of this site powered by vBulletin Mods & Addons from DragonByte Technologies Ltd. (Details)