x'0E' (14). MTS E-mail and the MAILNET project

posted Nov 3, 2012, 6:54 AM by Jeff Ogden
Here are two e-mail messages that give a feel for the state of remote E-mail under MTS and in the larger world in the fall of 1983.

These messages are part of a much longer collection of messages from header-people@MIT-MC.ARPA during this time period that are available at: 

Date: Wed, 28 Sep 83 11:11:46 EDT
From: "Gavin Eadie"@UMich-MTS.Mailnet
To: Mishkin@MIT-Multics.ARPA,
Message-ID: <239238@UMich-MTS.Mailnet>
Subject: A Random Gripe

For what it's worth, I'll add to Nat's plea for quoting names
containing period characters. Our mail system allows names of the
form he described which contain all sorts of strange things:

                     Dr. Ding D'Ong Sr.

We occasionally get incoming mail with names un-delimited and
my RFC822 parser would have to be a lot smarter to deal with all
the illegal possibilities!

Date: Sat, 15 Oct 83 00:02:16 EDT
From: "Gavin Eadie"@UMich-MTS.Mailnet
To: Header-People@MIT-MC.ARPA
Message-ID: <249874@UMich-MTS.Mailnet>
Subject: Puzzled thoughts from a non-Internetter

This is a message displayed in the MTS (Michigan Terminal System)
conference system FORUM for comment from the various people who are
interested in such things. It follows on from (not coincidentally)
recent discussions in this group.

I implemented an RFC821/822 system recently and, though I would
call myself a skilled and experienced programmer, I feel it is a
small miracle that it works. I based my entire implementation on
the RFCs, my header parser *IS* the grammar taken from 822, the
MTS implementation of SMTP follows 821 slavishly ... The results
of this are two:

  1. The only SMTP code that I communicate with (other than copies
     of my own at other MTS sites) is that at MIT-Multics - which,
     sad to relate, doesn't quite manage to accept:

          RCPT TO:<@MIT-MULTICS:"John Doe"@RPI-MTS>

     and generates many wonderful variations on the headers in 822!
     Assuming that people in this business longer than me had got
     it right wasted lots of my time!

  2. I never heard of the use of "%" till after my implementation
     was complete. Now (as you will read below) I have to decide
     to retrofit it - ugh.

But wait, all this sounds like a complaint -- it is not, I've had
lots of fun sorting this stuff out and appreciate all the help I
had from the MIT folk and people in this group. All I'm trying to
illustrate is how a newcomer sees some of this.


U-M is a member of two mail networks (MAILNET and the 'MTSnet') and
some other MTS sites are contemplating doing the same. This raises
a few technical problems which I'd like to raise for discussion
here between the mail-wizards. We could have this discussion via
$MESSAGE but that means everyone keeps a wasteful archive. FORUM
also helps to organise a single thread discussion.

The mail protocols we use in Mailnet and MTSnet were developed and
are used within the ARPA community. They are called RFC821 and
RFC822 and, unlike most 'standards', were written as attempts to
make a good summary of what everyone was already doing - rather
than as a rulebook.

The MTSnet (composed now of seven MTS installations) could happily
use these protocols within a closed community with no problems. So
could a closed Mailnet community and so, obviously, does the closed
ARPA community. Severe problems arise as soon as mail has to move
between any of these communities.

The protocols include mechanisms for operating across 'community'
borders, but (i) the 'powers that be' within ARPA do not recognise
non-ARPA communities and (ii) few mailers have implemented the new

The result is ad hoc mechanisms. There are no formal descriptions
of these - they are strictly folk-lore. As one who is speaking from
experience, implementing an ARPA mailer from only the protocol
descriptions is impossible.

We (the MTS folks) need to resolve this for ourselves. We cannot be
too inventive, since several ad hoc schemes already exist, but we
have to do something because we are moving rapidly towards needing
some solution. The problem arises both as MTSnet communicates with
Mailnet and as Mailnet communicates with ARPA. (It is compounded by
needs for MTSnet to talk with CSnet, BITNET, UUCP, the UK mail net
and (undoubtedly) others.

The most popular ad hoc scheme involves the use of the percent (%)
symbol to indicate explicit routing of mail - this kluge is used
so widely that (i) some people think it is official and (ii) the UK
mail net had adopted it in their standard.

Let me draw one of my famous pictures:

              |community 'A'     |
              |                  |
              |   +----+         |
              |   |X   |  +------|-----------+
              |   |fred|  |+----+|           |
              |   +----+  ||Y   ||           |
              |           ||joan||  +----+   |
              |           |+----+|  |Z   |   |
              +------------------+  |rich|   |
                          |         +----+   |
                          |                  |
                          |     community 'B'|

(((NB: In everything that follows my use of the prime (') is as
   a delimiter in my writing - it is never part of an address.)))

We have three sites in two communities (the site 'Y' is a gateway).
Within the 'A' community 'X' and 'Y' can exchange mail using the
ARPA protocols. They refer to each other as 'X.A' and 'Y.A' (using
their complete formal names) or just as 'X' and 'Y' (since all the
host names in a community are known to the other hosts).

A user at 'X' would send mail to 'joan@Y' or 'joan@Y.A' and when it
arrived it would be from 'fred@X' or 'fred@X.A'. We would see an
analogous process in the 'B' community.

Now consider a message which must travel from 'X' to 'Z'. We assume
that 'Z' is not known to the 'X' mail software (otherwise this is a
silly example) and that the user must explicity tell the 'X' mailer
to get the mail to 'Z' via 'Y'.

One option is to change that assumption by extending the knowledge
of site names so EVERY site in the universe knows the name of EVERY
other one. We reject this as impractical!

The next option is to use the protocol. This may seem obvious, but
remember that virtually nobody does - if they did, a user at 'X'
would send to '@Y.A:rich@Z.B' and it would turn up at 'Z' marked as
being from '@Y.B:fred@Z.A'.

In fact, what we often see is the use of the percent kluge, so the
mail is sent to 'rich%Z.B@Y'. This is the popular solution - it is
actually the formal solution in the UK - so we ought to adopt it.

This need is most urgent for the RPI people - they are members of
Mailnet but not MTSnet so they can get mail to UM (also in Mailnet)
but no further becuase the NETMAIL program doesn't process the '%'

As I've written this, I've become more convinced that my only 'out'
is to implement the percent-kluge. I'm posting this here so that
anyone has an change to comment. I'm posting it on the ARPAnet too
so they can see the pickle I'm in.


Due to the fact that my mailer isn't generating names with "%" in
them, I've no idea what the 'From:' field on this will look like
when you read this. I know at least one person who I upset when
every message I send him has to be manually edited before he can
reply ...

I am:                          Gavin_Eadie%UMICH-MTS@MIT-MULTICS