tcp_close during async accept

Jim Morris wolfmanjm@REDACTED
Wed Jul 8 17:19:17 CEST 2009


I am using the same async code in my server, and have tested several
thousand connections with no problem.

Are you testing client and server on same machine? if not are they on
the same network? Is there something in between that is doing TCP SYN
attack mitigation? Maybe OS/X does SYN attack protection builtin?
The trouble with testing so many simultaneous connections in a short
time is it does look like a SYN attack.

One thing I did find is my tester client had to have a very short
delay between the tcp opens, around 10ms was enough to significantly
speed up the test. Hitting my server with a thousand simultaneous
opens did cause the server some issues, however not the same as you
report, pacing the opens slightly had a significant impact on
performance.

On Jul 8, 5:41 am, "Valentin Micic" <v...@REDACTED> wrote:
> In my experience, a backlog value is rarely an issue in practice (although
> testing may be another matter). What's more often a problem when you do
> high-volume testing is number of file descriptors (e.g. maybe you did change
> it in ERTS but not at kernel level, or vice-versa), or even value for
> TIME_WAIT period etc. What makes you believe that the problem is with
> backlog?
>
> V.
>
> -----Original Message-----
> From: erlang-questi...@REDACTED [mailto:erlang-questi...@REDACTED] On
>
> Behalf Of Trevor Woollacott [ MTN - Innovation Centre ]
> Sent: 08 July 2009 12:45 PM
> To: Joel Reymont
> Cc: erlang-questi...@REDACTED
> Subject: RE: [erlang-questions] tcp_close during async accept
>
> I'm not sure for Max OSX, but I think it is 128. Although that wouldn't
> explain why only half of your 700 connections are successful. Maybe there is
> a fudge factor involved in the calculation of the actual backlog value, or
> maybe the listener process isn't accepting connections quickly enough?
> I know for Windows Sockets 1.1 the maximum value is 5, and some versions of
> Windows (such as Windows 2000 Server) allow a backlog value of up to 200.
>
> > -----Original Message-----
> > From: Joel Reymont [mailto:joe...@REDACTED]
> > Sent: Tuesday, 07 July 2009 04:31 PM
> > To: Trevor Woollacott [ MTN - Innovation Centre ]
> > Cc: Erlang Users' List
> > Subject: Re: [erlang-questions] tcp_close during async accept
>
> > On Jul 7, 2009, at 12:10 PM, Trevor Woollacott [ MTN - Innovation
> > Centre ] wrote:
>
> > > What OS are you using? Maybe the maximum backlog on your platform is
> > > less than 1024?
>
> > Mac OSX 10.5.7
>
> > ---
> > Mac hacker with a performance bent
> >http://www.linkedin.com/in/joelreymont
>
> NOTE: This e-mail message is subject to the MTN Group disclaimer seehttp://www.mtn.co.za/SUPPORT/LEGAL/Pages/EmailDisclaimer.aspx
>
> ________________________________________________________________
> erlang-questions mailing list. Seehttp://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
>
> ________________________________________________________________
> erlang-questions mailing list. Seehttp://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
>
>


More information about the erlang-questions mailing list