Re: Internet host SMTP server survey 2003-11

Matthias Andree <[email protected]> Thu, 6 Nov 2003 23:27:28 +0100
Newsgroups gmane.mail.implementation,gmane.mail.qmail.general
Message-ID <[email protected]>
On Thu, 06 Nov 2003, Charles Cazabon wrote:

> Here are the software tallies:
> 
> 342 (37.1%) : sendmail     
> 157 (17.0%) : qmail     
> 142 (15.4%) : microsoft     

Well. You got less than 1,000 connects in a million. With an address
space that is three orders of magnitude larger. You may have queried one
millionth of the servers in use. Not very representative.

The bigger problem is that a host-oriented survey will give software
that scales badly and must run clustered to handle the load, an
advantage in these stats:  Assume for one moment that the qmail on the
same hardware were twice as efficient in handling mail as sendmail is,
and assume all SITES you queried had the same average load. Under these
assumptions, you'll see twice as many sendmail hosts, because it takes
the double amount of sendmail hosts to handle the same load a number of
qmail hosts would handle. The point is, you'll have to count a cluster
of N installations of the same kind running at the same site as one, to
get MEANINGFUL data.

This would lead to the conclusion that although sendmail were running at
37.1% of hosts, it were only at 17.55% sites, and only a tiny bit ahead
of qmail.

In other words, this survey, as Dan's 5th and 6th SMTP surveys, hauls
the badly scalable software to the top ranks.

How about a software that does:

1. generate 10^7 random IP addresses
2. looks up PTR for these addresses
3. for the obtained PTR records, use the last two components of the
   domain returned, count how many duplicates you have, and throw the
   dupes away
4. look up MX records for the results of #3 and pick the first
   lowest-preference MX, look ip up in A RRs. If MX returns no data,
   look up A directly. Wherever an A lookup yields multiple IP
   addresses, pick the first.
5. Connect to the IP address you picked in #4, connect there and
   fingerprint the running MTA.

Repeat this until you have a total count of, say, 10,000 sites you
probed.