On a related note... I used to run a mail system with 2 million+ deliveries per day. We came across some intresting issues during very high-volume email transmission (and no it wasn't spam). We used Qmail and EzMLM (with a DB backend)
1) Limit the number of delivery threads on a per-domain basis. This is very imporant if you have a lot of users with AOL accounts (or ATT for that matter :-)). 2) Agressively "cull" SMTP sessions that last longer than say 10 minutes. This stops a trivial DOS attack clogging up the mail server 3) Timeout the delivery threads with an exponential back-off (Not sure if this is done already) 4) Up-front spam rejection. Tell blocked senders and spammers to **** off in the SMTP handler, not just within the mail processor itself. This will cut down on server load. 5) Tar-pitting - slowing down connections that do a lot of "RCPT TO:" - again using an exponential back-off These are a few things that James needs to do to make a real-world, volume solution. Qmail is not an elegant solution, but it is fast... -- Jason -----Original Message----- From: Noel J. Bergman [mailto:[EMAIL PROTECTED]] Sent: 20 August 2002 04:48 To: James-Dev Mailing List Subject: Lots of twisty, er, servers all the same ... As you can see from the nslookup of ATT.NET that follows, they have lots of MX records, all the same IP address. On nights like tonight when AT&T is jammed, this can block a delivery thread for over an hour. Is there a reason why getMailServers [actually, DNSServer.findMXRecords()] should not return a collection containing only one entry per IP address? --- Noel > set q=mx > att.net Server: MACU.MA.MT.NP.ELS-GMS.att.net Address: 199.191.145.136 att.net MX preference = 5, mail exchanger = gateway1.att.net att.net MX preference = 5, mail exchanger = gateway2.att.net att.net MX preference = 5, mail exchanger = gateway3.att.net att.net MX preference = 5, mail exchanger = gateway4.att.net att.net MX preference = 5, mail exchanger = gateway5.att.net att.net MX preference = 5, mail exchanger = gateway6.att.net att.net MX preference = 5, mail exchanger = gateway8.att.net att.net nameserver = ohcu.oh.mt.np.els-gms.att.net att.net nameserver = macu.ma.mt.np.els-gms.att.net att.net nameserver = orcu.or.br.np.els-gms.att.net att.net nameserver = wycu.wy.br.np.els-gms.att.net gateway1.att.net internet address = 204.127.134.23 gateway2.att.net internet address = 204.127.134.23 gateway3.att.net internet address = 204.127.134.23 gateway4.att.net internet address = 204.127.134.23 gateway5.att.net internet address = 204.127.134.23 gateway6.att.net internet address = 204.127.134.23 gateway8.att.net internet address = 204.127.134.23 ohcu.oh.mt.np.els-gms.att.net internet address = 199.191.144.75 macu.ma.mt.np.els-gms.att.net internet address = 199.191.145.136 orcu.or.br.np.els-gms.att.net internet address = 199.191.129.139 wycu.wy.br.np.els-gms.att.net internet address = 199.191.128.43 > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
