Date: Tue, 16 Apr 1996 12:33:34 -0500 (CDT) From: "Karl Denninger, MCSNet" <karl@mcs.com> To: hackers@freebsd.org Subject: Silly socket question Message-ID: <m0u9EdD-000IDOC@venus.mcs.com>
next in thread | raw e-mail | index | archive | help
I am having a rough time with a funny application here. We have a TCP application (it has to be stream oriented as we need sequencing for encryption reasons) that receives LOTS of short transactions. After a while, we end up with lots of sockets in this state: tcp 0 0 192.160.127.126.50000 192.160.127.85.1946 CLOSE_WAIT tcp 0 0 192.160.127.126.50000 192.160.127.85.1945 CLOSE_WAIT tcp 0 0 192.160.127.126.50000 192.160.127.85.1944 CLOSE_WAIT tcp 0 0 192.160.127.126.50000 192.160.127.85.1940 CLOSE_WAIT In fact, hundreds of them. This eventually overloads the system and it dies for processing transactions on that port. I tried turning off LINGER, but didn't expect that to work (there's no data in the queue). No effect (as expected). Is there some option that can be passed to the stack to tell the system that I don't *care* about any buffered metadata and that it needs to release the socket resources *right now*? The parent process which accepted these connections (but closed them) is still around, but the child (which inherited them) is long gone. Ideas? -- -- Karl Denninger (karl@MCS.Net)| MCSNet - The Finest Internet Connectivity Modem: [+1 312 248-0900] | T1 from $600 monthly; speeds to DS-3 available Voice: [+1 312 803-MCS1] | 21 Chicagoland POPs, ISDN, 28.8, much more Fax: [+1 312 248-9865] | Email to "info@mcs.net" WWW: http://www.mcs.net/ ISDN - Get it here TODAY! | Home of Chicago's only FULL Clarinet feed!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?m0u9EdD-000IDOC>