On the Internet, weirdness is generally uncommon

June 6, 2014

One of the things that my exposure to SMTP daemons and SMTP's oddities has shown me vividly is that perhaps surprisingly, weirdness is uncommon on the practical Internet. Most clients and servers do the usual, common thing. Perhaps 'almost all'. For example, SMTP may contain very dark corners but these corners are also dank and unused, so dank and unused that your MTA may never encounter them.

(I can't find any trace of route addresses in 90 days of our mail gateway's logs of incoming traffic. Senders present quoted local parts infrequently, but they appear to all be spam; we block them all and have never had any reports of problems.)

This practical conservatism is in my view essential for keeping the Internet humming along. The Internet has a certain amount of carefully written software that was programmed by people who had assiduously read all of the relevant standards, and then it has a lot more software that was slapped together by people with various amounts of ignorance. If people used the obscure corners very much, much of the latter software would explode spectacularly. Worse, the burden of implementing Internet software would go up a lot in practice because you could no longer get away with just handling the easy, common cases.

(I'm a pragmatist. An Internet with less software would almost certainly be a smaller Internet. A non-compliant SMTP sender is annoying, but it usually gets the job done for people who are using it.)

The corollary of this is that a lot of Internet software out there probably doesn't handle corner cases or unusual situations very well, either through conscious choice or just because the authors weren't aware of them. There are consequences here both for security and for pragmatic interoperability.

Of course every so often you will stumble over someone who is sending you something from the dark depths. That the Internet is very big means that very uncommon things do happen every so often just through the law of large numbers. I'm sure that somewhere out on the net there are systems exchanging email with route addresses and maybe someday one of them will email us.

(Another corollary is that sooner or later you will see unusual errors, too. For example, we reject a certain amount of email from senders who have accented characters in unquoted local parts of MAIL FROM addresses. This is very RFC non-compliant but not surprising.)


Comments on this page:

This is sort of related... I like using "+" email addresses (e.g., foo+bar@example.com) but sadly there are way too many web forms that don't believe that + is a valid character in email addresses. Urgh.

By Claire at 2014-06-19 18:22:44:

For added fun, some of those forms don't like short e-mail addresses either; too bad for you if you happen to have a one, two, or three-letter address.

Written on 06 June 2014.
« SMTP's crazy address formats didn't come from nowhere
Some ways to do sleazy duck typing in Go (from a Python perspective) »

Page tools: View Source, View Normal, Add Comment.
Search:
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Fri Jun 6 00:49:31 2014
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.