[Standards] s2s and gracelessly broken streams

Chris Mullins chris.mullins at coversant.net
Mon Apr 2 17:29:47 CDT 2007


If your email relay connects to 5000 IP Addresses per day, you're going
to hit 65000 IP Addresses in 13 days. If each of these connections
remained open, you would run out of ports in your SMTP server and
promptly crash. 

To get around this, you would be stuck configuring multiple IP Addresses
for your SMTP server to use. For a 3 month uptime you would need 7 IP
addresses, which isn't exactly ideal. 

Obviously these numbers aren't accurate, as you're sure to get a lot of
duplicate IP traffic from day to day, but the problem is certainly
there. Severing idle connections makes sense. 

In addition to running out of ports per IP address, there's another
problem: Memory. A 32 bit machine these days can handle about 30k open,
active, tcp connections before falling over. A 64-bit machine can handle
many more, but typically the practical limit is going to max in the 100k
range. 

This means that if you're adding 5k new open connections per day, an x86
machine will fall over after 6 days, and a x64 or IA64 box will fall
over after 20 or so days. Bigger x64 or IA64 boxes will last longer, but
the problem remains. 

Clearly, closing idle connections offers a big win in terms of uptime.

--
Chris Mullins


-----Original Message-----
From: standards-bounces at xmpp.org [mailto:standards-bounces at xmpp.org] On
Behalf Of Tony Finch
Sent: Monday, April 02, 2007 3:16 PM
To: XMPP Extension Discussion List
Subject: RE: [Standards] s2s and gracelessly broken streams

On Mon, 2 Apr 2007, JD Conley wrote:
>
> I think this is best answered in the form of a question: How well do
you
> think SMTP would scale if it held open connections for every domain
that
> is in your address book?

At my site our central email relays (used by about 30,000 people)
connected to 5,500 different IP addresses in the last day, so it's
less of a problem than you might expect.

Tony.


More information about the Standards mailing list