Messages in this thread | | | Date | Fri, 14 Nov 2008 23:37:06 -0500 | From | "Karl Pickett" <> | Subject | tcp_tw_recycle broken? |
| |
Hey. Developing a http proxy on fedora 9 (2.6.25) and running into a strange issue.
Having the proxy set up and tear down 6000 tcp connections a second to the same test server ip and port, it quickly blows up (5 seconds) due to all 30000 ephemeral ports going to TIME_WAIT. setting tw_recycle=1 fixed the problem, and there are never more than a couple hundred ports in TIME_WAIT.
BUT...
Changing the load test to alternate between two test server ips, it blows up. Connect: can't assign requested address. (note I am not binding before hand, I tried and binding first to port 0 made no difference - it just blows up then during the bind).
And there are ~28K ports in TIME_WAIT. For example:
proxy_ip:30000 load_test_1:8080 TIME_WAIT proxy_ip:30000 load_test_2:8080 TIME_WAIT ... but most are not duplicates of the same local port.
What. The. Heck.
So short of rebuilding the kernel with time_wait as 1 second, is there any other way not to brick my proxy?
-- Karl Pickett
-- Karl Pickett
| |