Hi all, I have a software that simulates web clients and servers to create network congestion (for the purpose of doing research in network congestion). In our experiment, a client opens an HTTP connection to a server, fetches a number of objects, and then closes the connection. A problem I seem to have right now is that a client machine cannot simulate more than 3000 connections. When my client machine simulates more than 3000 connections, it's able to open a socket but then connect(2) fails with errno 35 (Resource temporarily unavailable). Another interesting notice is that the connect(2) system call blocks for a few miliseconds before it fails although fcntl(2) was used to make the socket non-blocking. The OS version I am using is FreeBSD 4.3-release.
I used sysctl to bump up kern.maxfiles and kern.maxfilesperproc to 16384. I also bumped up kern.ipc.somaxconn to 8192 on the server side. I recompiled the kernel with option NMBCLUSTERS=65536 to increase the number of mbufs. I guess that CPU is not the bottleneck since I have the same problem regardless whether I use a 300 MHz or a 1 GHz machine. Does anyone have any suggestion what kind of resources my client machine runs out and how I can fix it? Thanks, Long P.S. Please kindly email your reply to me since I am not on the list. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-net" in the body of the message