Weird "ignoring syn" problem

Bill Moran wmoran at collaborativefusion.com
Tue Jun 12 17:13:22 UTC 2007


In response to Andre Oppermann <andre at freebsd.org>:
> 
> Before we go into more detail:
> 
>   a) the em(4) driver is most likely totally unrelated to this

Are you saying it's more likely to be a tcp stack problem?  As an experiment,
I tried to reproduce it over the loopback and was unable to, which points
back toward the em driver ...

>   b) you may run out of socket on the client side and reuse them
>      too fast.  Try to lower net.inet.ip.portrange.first to 30,000
>      or so.

I find that unlikely.  The problem usually occurs reliably after less
than 200 connections, and frequently after less than 50.

>   c) related to (b) you may have a lot of connections in TIME_WAIT
>      on the server catching not really stray packets.  Try it with
>      net.inet.tcp.nolocaltimewait=1

That's the default.  Also, I see no change in the behaviour of TIME_WAIT
states (based on the output of netstat -f inet) no matter what I change
that value to.  And, just to finish out the debugging steps, the problem
occurs with nolocaltimewait set to both 0 and 1.

>   d) if the above didn't help then it'd be very helpful to test
>      against a server with FreeBSD-current (the future 7.0) on
>      it.  In -current we've got detailed logging of LISTEN socket
>      failures that allow rapid analysis of the problem.

This will take some time.

Also, I'm not seeing the problem on other, similar hardware.  I'm considering
swapping out that NIC to see if it might be buggy HW.

-- 
Bill Moran
Collaborative Fusion Inc.
http://people.collaborativefusion.com/~wmoran/

wmoran at collaborativefusion.com
Phone: 412-422-3463x4023


More information about the freebsd-net mailing list