This is the first post to the new mailing list, welcome aboard. I notice a subscriber or two whose email address I don't recognize- should we do introductions?...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 11, 1999 9:31 pm
2
robouser no longer breaks when you fetch small local files; I cleaned up the GETTING state machine so it makes sense. Also added an option to specify which...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 12, 1999 2:21 am
3
I've added a page, http://www.kegel.com/ftpbench/theory.html on the theory of operation of the code, including a little tutorial on how to get your head around...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 12, 1999 9:14 pm
4
Working on throttling. The callback now returns how many bytes were fetched. Added new module Sked.h. Because ftp_client_pipe will soon have to schedule...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 16, 1999 6:41 am
5
Throttling thousands of client connections requires the ability to schedule future operations efficiently. We can't use the operating system's scheduler (since...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 18, 1999 10:48 pm
6
Hi Dan. I have been studying this. I have a couple of questions. If the functions are written to return immediately, why do you need a function like...
bb
thaloblu@xxxxxxxxx.xxxx
Dec 19, 1999 3:37 am
7
... Good question. You need setNonblocking() because unless you call it, the functions won't return immediately, because they call read(). read()'s behavior...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 19, 1999 4:15 am
8
... I still don't get this. The code looks like it is forcing only one buf_len to be read, sent, and then the function returns. How can read not return...
bb
thaloblu@xxxxxxxxx.xxxx
Dec 19, 1999 5:47 am
9
... read() does indeed block if it's reading from a socket or a pipe and it's trying to read more bytes than are there at the moment. Similarly, write() will...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 19, 1999 6:22 am
10
... Cool... I get it now. :-)...
bb
thaloblu@xxxxxxxxx.xxxx
Dec 19, 1999 7:06 am
11
Today I spent some time on making the ftpbench code compile on Solaris and FreeBSD (we already had one fellow send in a patch for FreeBSD last month). Cleaned...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 20, 1999 6:42 am
12
When robousers are deleted, it's important to delete their outstanding events from the scheduler's priority queue, so today I added a delClient() method to...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 21, 1999 1:30 am
13
I've switched over to using autoconf to handle system dependencies instead of trying to write manual checks. README explains how to build; it's now ./configure...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 21, 1999 5:09 am
14
'make all' works and passes self-tests on Solaris now, even gunky old solaris 2.6 :-) Turned out I was writing to the socket before the connect had finished....
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 21, 1999 6:39 am
15
... OK, I've switched to follow the package-major.minor naming convention for both the tarball itself and the directory it contains. ... OK, removed. ... ...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Dec 21, 1999 5:16 pm
16
Implemented throttling over the holidays (mostly while on airplanes...) and cleaned up the code a bit. It's at http://www.kegel.com/dkftpbench/ and works...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Jan 3, 2000 5:15 am
17
This fixes a couple bugs without introducing any, I hope. It now kills simulated users as soon as their average bandwidth drops below 80% of the target, rather...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Jan 4, 2000 2:32 pm
18
Rick Jones warned me that the traffic generated by dkftpbench may trigger problems in some tcp stacks. See http://www.deja.com/getdoc.xp?AN=568757304 I have...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Jan 6, 2000 7:14 pm
19
As a load generator, it's getting pretty good; you can now tell whether connection problems are the client's fault (it aborts if it notices any client-side...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Jan 13, 2000 9:23 am
20
I've posted a comparison of wu-ftpd and betaftpd at http://www.kegel.com/dkftpbench/results.html on a very simple benchmark (fetching the same 100kilobyte file...
Dan Kegel
dank@xxxxxx.xxxxxxx.x...
Jan 14, 2000 6:59 am
21
0.6 ramps up more gently, which gets rid of a lot of problems I'd been having with betaftpd. It's also less verbose by default; to get the old output, you have...
Dan Kegel
dank@...
Jan 18, 2000 7:31 am
22
Hi, ... Yep, In my own testing, the new version of muddleftpd I am working on (should be ready for release soon) ramps up to about 260 users indefinitely on a...
Beau Kuiper
ekuiperba@...
Jan 20, 2000 1:45 pm
23
... Thanks for the feedback. Nice to have more numbers to compare with! ... Yep. Feel free to report results on fetching 100 megabyte files, though :-) ... ...
Dan Kegel
dank@...
Jan 20, 2000 6:29 pm
24
... Cool ;-) ... I feel what is really needed is lots of files that the server chooses (at random, or in a sequence), so that disk accesses occurs. ... Ah cool...
Beau Kuiper
ekuiperba@...
Jan 20, 2000 4:30 pm
25
Switched to 100baseT (Netgear FA310x, $25, uses Tulip driver). Ran this script on both client and server (using '. tune.sh'): ulimit -n 4096 echo 1024 32767 >...
Dan Kegel
dank@...
Jan 20, 2000 8:47 pm
26
... fwiw, this is fixed in 2.3. you can fill pid_t space with running jobs, from what I recall. -- - zach...
Zach Brown
zab@...
Jan 20, 2000 9:35 pm
27
... Hi again, I just want to confirm the results you got for betaftpd, I played with betaftpd on that 486-133Mhz (36meg ram) machine of mine. It yeilded about...
Beau Kuiper
ekuiperba@...
Jan 21, 2000 5:04 pm
28
After a discussion with Rick Jones (author of netbench), we both agreed to use "each session must achieve at least 75% of specified bandwidth" as the criterion...
Dan Kegel
dank@...
Jan 24, 2000 8:27 am
29
# of simultaneous users as measured by dkftpbench 0.7: wuftpd ncftpd betaftpd 10kB file 49 194 751 1MB file 120 134 258 See...
Dan Kegel
dank@...
Jan 25, 2000 9:11 am
30
I've been playing with ftpbench and betaftpd on and off, and sent betaftpd's author a few bugfixes for his daemon. Haven't had much time to enhance ftpbench...