Network Working Group
Request for Comments: 1405
C. Allocchio
I.N.F.N. - Italy
January 1993

Mapping between X.400(1984/1988) and Mail-11 (DECnet mail)

Status of this Memo

This memo defines an Experimental Protocol for the Internet community. Discussion and suggestions for improvement are requested. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Abstract

This document describes a set of mappings which will enable inter working between systems operating the CCITT X.400 ( 1984 / 1988 ) Recommendations on Message Handling Systems, and systems running the Mail-11 (also known as DECnet mail) protocol. The specifications are valid within DECnet Phase IV addressing and routing scheme.

The complete scenario of X.400 / RFC822 / Mail-11 is also considered, in order to cover the possible complex cases arising in multiple gateway translations.

This document covers mainly the O/R address to DECnet from/to address mapping (and vice versa); other mappings are based on RFC 1327 and its eventual future updates.

This is a combined effort of COSINE S2.2, the RARE MSG Working Group, and the IETF X.400 Ops Working Group.

Chapter 1 - Introduction

1.1. X.400

The standard referred shortly into this document as "X.400" relates to the CCITT 1984 and 1988 X.400 Series Recommendations covering the Message Oriented Text Interchange Service (MOTIS). This document covers the Inter Personal Messaging System (IPMS) only.

1.2. Mail-11

Mail-11, also known as DECnet mail and often improperly referred as VMSmail, is the proprietary protocol implemented by Digital Equipment Corporation (DEC) to establish a real-time text messaging system among systems implementing the DECnet Phase IV networking protocols.

1.3. RFC822

RFC822 was defined as a standard for personal messaging systems within the DARPA Internet and is now diffused on top of many different message transfer protocols, like SMTP, UUCP, BITNET, JNT Grey Book, CSnet. Its mapping with X.400 is fully described in RFC1327. In this document we will try to consider its relations with Mail-11, too.

1.4. The user community

The community using X.400 messaging system is currently growing in the whole world, but there is still a number of very large communities using Mail-11 based messaging systems willing to communicate easily with X.400 based Message Handling Systems. Among these large DECnet based networks we can include the High Energy Physics network (HEPnet) and the Space Physics Analysis Network (SPAN).

These DECnet communities will in the future possibly migrate to DECnet Phase V (DECnet-OSI) protocols, converting thus their messaging systems to OSI specifications, i.e., merging into the X.400 MHS; however the transition period could be long, and there could always be some DECnet Phase IV communities around.

For these reasons a set of mapping rules covering conversion between Mail-11 and X.400 is described in this document.

This document also covers the case of Mail-11 systems implementing the "foreign mail protocol" allowing Mail-11 to interface other mail systems, including RFC822 based system.

Chapter 2 - Message Elements

2.1. Service Elements

Mail-11 protocol offers a very restricted set of elements composing a Inter Personal Message (IPM), whereas X.400 specifications support a complex and large amount of service elements. Considering the case where a message is relayed between two X.400 MHS via a DECnet network this could result in a nearly complete loss of information. To minimise this inconvenience most of X.400 service elements will be mapped into Mail-11 text body parts. To consider also the case when a message originates from a network implementing RFC822 protocols and is relayed via Mail-11 to and X.400 MHS, the applied mapping from X.400 service elements into Mail-11 text body part the rules specified in RFC1327 and their updates will be used, producing an RFC822-like header.

2.2. Mail-11 service elements

All envelope (P1) and header (P2) Mail-11 service elements are supported in the conversion to X.400. Note that Mail-11 P1 is solely composed by P1.From and P1.To, and any other Mail-11 element belongs to Mail-11 P2:

- P1.From

                maps to P1.Originator

- P1.To

maps to P1.Primary Recipient

- P2.From

                maps to P2.Originator

- P2.To

maps to P2.Primary Recipient

- Cc

maps to P2.Copy Recipient

- Date

maps to Submission Time Stamp

- Subj

                maps to Subject

Any eventual RFC822-like text header in Mail-11 body part will be interpreted as specified into RFC1327 and its updates.

2.3. X.400 service elements

The following X.400 service elements are supported directly into Mail-11 conversion:

- P1.Originator

                maps to P1.'From'

- P1.Primary Recipients

                maps to P1.'To'

- P2.Originator

                maps to P2.'From'

- P2.Primary Recipients

                maps to P2.'To'

- Copy Recipients

                maps to 'Cc'

- Submission Time Stamp

                maps to 'date'

- Subject

                maps to 'Subj'

The following X.400 service element is partially supported into Mail-11 conversion:

- Blind Copy Recipient

                to ensure the required privacy, when a message contains
                a BCC address, the following actions occurs:
                - a new message is created, containing the body parts;
                - a new envelope is added to the new message, containing
                  the originator and the BCC recipient addresses only;
                - a note is added to the message informing the BCC
                  recipient about the fact that the message was a BCC;
                - the new message is delivered separately;
                - a note is added to the message delivered to TO and CC
                  recipients informing them about the fact that there
                  were some BCC recipients, too.

Any other X.400 service element support is done accordingly to RFC1327 including the mapped element into the RFC822-like header into Mail-11 body part.

Chapter 3 - Basic Mappings

The basic mappings indicated in RFC1327 and its updates should be fully used.

Chapter 4 - Addressing

4.1. Mail-11 addressing

Mail-11 addressing can vary from a very simple case up to complex ones, if there are other Mail-11 to "something-else" gateways involved. In any case a Mail-11 address is an ASCII string composed of different elements.

4.2. X.400 addressing

On the other hand, An X.400 O/R address is a collection of attributes, which can anyway be presented as an IA5 textual representation as defined in chapter 4 of RFC1327.

4.3. Mail-11 address components

Let us start defining the different parts composing a Mail-11 address. We can consider any Mail-11 address as composed by 3 parts:

        [[route]::] [[node]::] local-part

where 'route' and 'node' are optional and only 'local-part' is compulsory.

Here comes a strict definition of these elements

     node = *(ALPHA/DIGIT) / *DIGIT / *DIGIT "." *DIGIT

route = *(node "::")

     local-part = username / nickname / for-protocol
     
     username = *(ALPHA/DIGIT)

nickname = <printablestring - <" " and HTAB>>

     for-protocol = (f-pref f-sep <">f-address<">)
     
     f-pref = *(ALPHA/DIGIT)
     
     f-sep = "%" / "::"
     
     f-address = printablestring / RFC822-address / X400-text-address
     
     X400-text-address = <textual representation of an X.400 O/R addr>

Please note that in x-text-address both the ";" notation and the "/" notation are equivalent and allowed (see examples in different sect.)

Some examples:

      route           node    local-part
      -----------------------------------------------------------
                              USER47
                      MYNODE::BETTY
      BOSTON::CLUS02::GOOFY1::MARY34
                              IN%"M.P.Tracy@Dicdum.cc.edu"
              UCLA13::MVAX93::MRGATE::"MBOX1::MBX34::MYC3::BOB"
                      MIAMI2::George.Rosenthal
              CCUBVX::VS3100::Jnet%"IAB3425@IBAX23L"
                              MRGATE::"C=xx::A=bbb::P=ppp::S=Joe"
                      MAINVX::IN%"path1!path2!user%dom"
                      GWX400::gw%"C=xx;ADMD=aaa;PRMD=ppp;S=Lee;"
                      GX409A::x400%"/C=xx/A=aaa/P=ppp/S=Lee"
                              smtp%"postmast@nodeb.bitnet"
              MICKEY::PRFGAT::profs%"NANCY@IBMB"
                              edu%"HU427BD%CSUNIB@abc.acme.edu"

Chapter 5 - Mapping

5.1. Mapping scheme

DECnet address field is somehow a 'flat land' with some obliged routes to reach some hidden areas. Thus a truly hierarchical mapping scheme using mapping tables as suitable for RFC822 is not the appropriate solution. A fixed set of rules using DDAs support is defined in order to define the mapping.

Another important aspect of the problem is the coexistence of many disjoint DECnet networks, using the same DECnet address space, i.e., common X.400 and/or RFC822 mailing system acting as glue to connect different isolated Mail-11 islands. Thus, to identify uniquely each DECnet network we must also introduce the concept of 'DECnet network name', which we will refer shortly as 'net' from now onwards. We define as 'net' a unique ASCII string identifying the DECnet network we are connected to. To be more specific, the 'net' element will identify the DECnet community being served, i.e., it could also differ from the actual official network name. Aliases are allowed for the

       net = 'HEPnet'       the High Energy Physics DECnet network
       net = 'SPAN'         the Space Physics Analysis Network
       net = 'Enet'         the Digital Equipment Corporate Network

The need of labelling each DECnet network with its name comes also from the requirement to implement the 'intelligent' gateway, i.e., the gateway which is able to understand its ability to connect directly to the specified DECnet network, even if the O/R address specify a path to a different gateway. A more detailed discussion of the problem is in 5.3 and 5.5.

A registry of 'net' attributes and their correspondent gateways must also be implemented to insure uniqueness of names. A simple table coupling 'net' and the gateway address is used, in a syntax similar to the 'gate' table used in RFC1327. An example:

        HEPnet#OU$Cosine-gw.O$@.PRMD$infn.ADMD$garr.C$IT#
        SPAN#OU$Cosine-gw.O$@.PRMD$infn.ADMD$garr.C$IT#
        SPAN#O$ESRIN1.PRMD$esa.ADMD$Master400.C$it#

Ambiguous left entries are allowed. Gateway implementations could simply choose among one of them, or try them all in cyclic order to obtain better performances.

In order to keep the mapping rules very simple, avoiding the need to analyse Mail-11 addresses to distinguish the 'route', 'node' and needed to cover the mapping problem.

5.2. Mail-11 --> X.400

We define the following Domain Defined Attributes to map a Mail-11 address:

DD.Dnet
DD.Mail-11

We thus define the mapping rule

        route::node::localpart
   
   maps into
   
        C=xx; ADMD=yyy; PRMD=zzz; O=ooo; OU=uuu; DD.Dnet=net;
        DD.Mail-11=route::node::localpart;
   
   with
   
        xx  = country code of the gateway performing the conversion
        yyy = Admd of the gateway performing the conversion
        zzz = Prmd of the gateway performing the conversion
        ooo = Organisation of the gateway performing the conversion
        uuu = Org. Unit(s) of the gateway performing the conversion
        net = name of the DECnet network (e.g., HEPnet, SPAN,...)

('zzz','ooo','uuu' being used or dropped appropriately in order to identify uniquely within the X.400 MHS the gateway performing the conversion).

The following defaults also apply:

if 'node' is missing and we are mapping the Mail-11 originator (From) then 'node' defaults to the DECnet node name of the gateway (gwnode);

if 'node' is missing and we are mapping the Mail-11 recipient (To, Cc) then 'node' defaults to the DECnet node name of the 'From' address.

if 'DD.Dnet=net' is missing, then it defaults to a value defined locally by the gateway: if the gateway is connected to one DECnet network only, then 'net' will be the name of this unique network; if the gateway is connected to more than one DECnet network, then the gateway will establish a 'first choice' DECnet network, and 'net' will default to this value.

   In case 'local-part' contains 'x400-text-address' see also section
   6.4.3;

In case 'local-part' contains 'RFC822-address' see also section 6.4.4.

5.2.1. Examples

Let us suppose that:

the DECnet network name (net) is 'HEP';
the DECnet node name of the gateway (gwnode) is 'X4TDEC'; the Country Code of the gateway is 'IT' and its ADMD is 'garr' (and these two fields are enough to identify uniquely the gateway within the X.400 MHS).

USER47

     C=it; ADMD=garr; DD.Dnet=HEP; DD.Mail-11=X4TDEC::USER47;

MYNODE::BETTY

     C=it; ADMD=garr; DD.Dnet=HEP; DD.Mail-11=MYNODE::BETTY;

BOSTON::CLUS02::GOOFY1::MARY34

     C=it; ADMD=garr; DD.Dnet=HEP; DD.Mail-11=BOSTON::GOOFY1::MARY34;

UCLA13::MVAX93::MRGATE::"MBOX1::MBX34:MYC3::BOB"

     C=it; ADMD=garr; DD.Dnet=HEP;
     DD.Mail-11=UCLA13::MVAX93::MRGATE::(q)MBOX1::MBX34::MYC3::BOB(q)

MIAMI2::George.Rosenthal

     C=it; ADMD=garr; DD.Dnet=HEP; DD.Mail-11=MIAMI2::George.Rosenthal;

MRGATE::"C=xx::A=bbb::P=ppp::S=Joe"

     C=it; ADMD=garr; DD.Dnet=HEP;
     DD.Mail-11=X4TDEC::MRGATE::(q)C=xx::A=bbb::P=ppp::S=Joe(q)

MAINVX::In%"path1!path2!user%dom"

     C=it; ADMD=garr; DD.Dnet=HEP;
     DD.Mail-11=MAINVX::In(p)(q)path1(b)path2(b)user(p)dom(q)

5.3. X.400 encoding of Mail-11 --> Mail-11

In order to assure path reversibility in case of multiple Mail- 11/X.400 gateway crossing we must distinguish two cases:

  • DD.Dnet=net is known to the gateway as one of the DECnet networks it is connected to. In this case the mapping is trivial:
        C=xx; ADMD=yyy; PRMD=zzz; O=ooo; OU=uuu; DD.Dnet=net;
        DD.Mail-11=route::node::localpart;
   
   (see sect. 5.2 for explication of 'xx','yyy','zzz','ooo','uuu','net')
   
   maps into
   
        route::node::localpart
  • DD.Dnet=net is NOT known to the gateway as one of the DECnet networks it is connected to. In this case the mapping rule described into section 5.4 apply:
        C=xx; ADMD=yyy; PRMD=www; DD.Dnet=net;
        DD.Mail-11=route::node::localpart;
   
   maps into

gwnode::gw%"C=xx;ADMD=yyy;PRMD=www;DD.Dnet=net; DD.Mail-11=route::node::localpart;"

5.3.1. Examples

Let us suppose that:

the DECnet network name (net) is 'HEP';
the DECnet node name of the gateway (gwnode) is 'X4TDEC'; the Country Code of the gateway is 'IT' and its ADMD is 'garr'; (and these two fields are enough to identify uniquely the gateway within the X.400 MHS).

     C=it; ADMD=garr; DD.Dnet=HEP;
     DD.Mail-11=X4TDEC::MRGATE::(q)C=ab::A=dsa::P=qwty::OU=mie::S=Cly(q)
       MRGATE::"C=ab::A=dsa::P=qwty::OU=mie::S=Cly"
     
     C=it; ADMD=garr; DD.Dnet=EASYNET; DD.Mail-11=ROM01::CARLO;
       X4TDEC::gw%"C=it;ADMD=garr;DD.Dnet=EASYNET;
       DD.Mail-11=ROM01::CARLO;"

(in the above example 'EASYNET' is supposed to be not connected to our gateway located on X4TDEC DECnet node).

5.4. X.400 --> Mail-11

The mapping of an X.400 O/R address into Mail-11 is done encoding the various attributes into the X400-text-address as defined in chapter 4 of RFC1327, and including this as 'f-address'. A 'f-pref' and a the DECnet node name of the gateway.

   Thus
   
      x400-text-address

will be encoded like

      gwnode::gw%"x400-text-address"

having spaces dividing attributes as optional.

5.4.1. Example

Let us suppose that:

the DECnet node name of the gateway (gwnode) is 'X4TDEC';

   Thus
   
      C=gb; ADMD=Gold 400; PRMD=AC.UK; O=ucl; OU=cs; G=Jim; S=Clay;

will be encoded like

    X4TDEC::gw%"/C=gb/A=Gold 400/P=AC.UK/O=ucl/OU=cs/G=Jim/S=Clay"

or its equivalent with the ";" notation

    X4TDEC::gw%"C=gb;ADMD=Gold 400;PRMD=AC.UK;O=ucl;OU=cs;G=Jim;S=Clay;"

5.5. Mail-11 encoding of X.400 --> X.400

It can happened that Mail-11 is used to relay messages between X.400 systems; this will mean multiple X.400/Mail-11 gateway crossing and we will encounter Mail-11 addresses containing embedded X.400 informations. In order to assure path reversibility we must then distinguish two cases:

  • the embedded X.400 address belongs to a domain whose naming and routing rules are known to the global X.400 MHS. In this case the mapping is trivial:
       route::gwnode::gw%"x400-text-address"
   
   maps into
   
       x400-text-address

'route' and 'gwnode' are mapped into X.400 Trace service elements.

  • the encoded X.400 domain does not belong to the global X.400 name space. In this case the mapping rule described into section 5.2 apply:
       route::gwnode::gw%"x400-text-address"
   
   maps into
   
       C=xx; ADMD=yyy; DD.Dnet=net;
       DD.Mail-11=route::gwnode::gw(p)(q)x400-text-address(q);
   
   The latter case  is deprecated and must be regarded as a possible
   temporary solution only, while waiting to include into the global
   X.400 MHS also this domain.

5.5.1. Examples

Let us suppose that:

the DECnet network name (net) is 'HEP';
the DECnet node name of the gateway (gwnode) is 'X4TDEC'; the Country Code of the gateway is 'IT' and its ADMD is 'garr'; (and these two fields are enough to identify uniquely the gateway within the X.400 MHS).

X4TDEC::gw%"C=fr;ADMD=atlas;PRMD=ifip;O=poly;S=Moreau;"

       C=fr; ADMD=atlas; PRMD=ifip; O=poly; S=Moreau;

X4TDEC::gw%"C=zz;ADMD= ;PRMD=Botwa;O=Miner;S=Chiuaw;"

       C=it; ADMD=garr; DD.Dnet=HEP;
       DD.Mail-11=X4TDEC::gw(p)(q)C=zz;ADMD= ;
       PRMD=Botwa;O=Miner;S=Chiuaw;(q)
   
   (in the above example  C=zz is unknown to the global X.400 MHS)

Chapter 6 - Complex mapping

6.1. The protocol triangle

The bilateral mappings described in chapter 5 must be extended in order to cover also the case in which also RFC822 addressing is involved, and the following triangular situation occurs:

                                   x.400
                                   /  \
                                  /    \
                                 /      \
                             Mail-11----RFC822

The X.400 - RFC822 side is fully covered by RFC1327, and the previous chapters in this document cover the Mail-11 - X.400 side.

Currently a number of implementations also perform the mapping along the Mail-11 - RFC822 side. The most important among these de facto standards are discussed in Appendix A, jointly with a Mail-11 - RFC822 mapping scheme which covers this side of the triangle.

6.2. RFC822 mapped in Mail-11

The 'RFC822-address' is usually included in 'local-part' as

        route::gwnode::gw%"rfc822-address"
   
   an example
   
        NVXA23::SMTPGW::in%"M.T.Rose@CS.UCLA.edu"

6.3. Mail-11 mapped in RFC822

There are different styles in mapping a Mail-11 address in RFC822; let's have a short summary.

  • Mail-11 address encoded in "Left Hand Side" (LHS) of RFC822 address, using "%" syntax or "::" syntax;
        route::node::localpart
   
   maps to
   
        localpart%node%route@gw-domains
   
   or
   
        "route::node::localpart"@gw-domains

where 'gw-domains' identify uniquely the Mail-11 / RFC822 gateway.

  • Mail-11 address maps partly to LHS and partly to 'domain' part of RFC822 address:
        node::localpart
   
   maps to
   
        localpart@node.gw-domains
  • Mail-11 address is completely hidden by a mapping table / directory and the resultant RFC822 address contains no trace at all of the original address.

As you could notice, in any of the quoted cases the resultant RFC822 address is not distinguishable from a genuine RFC822 address.

6.4. Multiple conversions

Let us now examine briefly the possible situations which involve multiple conversions, having one protocol as a relay between the other two. This summary suggest some possible enhanced solutions to avoid heavy and unduly mappings, but the 'step by step' approach, considering blindly one conversion as disjointed to the other, as described in the previous sections, can always be used.

6.4.1. X.400 --> RFC822 --> Mail-11

We apply the RFC1327 rules to the first step, obtaining an RFC822 address which can be mapped in Mail-11 using the 'f-address' field, as described in section 6.2.

an example:

      C=gb; ADMD=Gold 400; PRMD=AC.UK; O=UCL; OU=cs; G=Jim; S=Clay;

maps accordingly to RFC1327 to

      Jim.Clay@cs.UCL.AC.UK
   
   and finally becomes
   
      SMTPGW::In%"Jim.Clay@cs.UCL.AC.UK"

where 'SMTPGW' is the DECnet node name of the machine running the RFC822 to Mail-11 gateway.

6.4.2. Mail-11 --> RFC822 --> X.400

Some of the possible mapping described in section 6.3 apply to the Mail-11 address, hiding completely its origin. The RFC1327 apply on the last step.

an example:

      RELAY::MYNODE::BETTY

could map into RFC822 as

      BETTY%MYNODE@RELAY.dnet.gw1.it

and accordingly to RFC1327

      C=it; A=garr; P=dom1; O=gw1; OU=RELAY; S=BETTY(p)MYNODE;

where 'dnet.gw1.it' is the domain of the machine running the Mail-11 to RFC822 gateway.

6.4.3. X.400 --> Mail-11 --> RFC822

The X.400 address is stored into Mail-11 'f-address' element as described in sections 5.3 and 5.4; then if the Mail-11 to RFC822 gateway is able to understand the presence of a 'x400-text-address' into the Mail-11 address, then it applies RFC1327 to it, and encodes header. Otherwise it applies the rules described in 6.3

an example:

     C=gb; ADMD=Gold 400; PRMD=AC.UK; O=UCL; OU=cs; G=Jim; S=Clay;

will be encoded like

     X4TDEC::gw%"/C=gb/A=Gold 400/P=AC.UK/O=UCL/OU=cs/G=Jim/S=Clay"

If the Mail-11 to RFC822 gateway recognise the x400-text-address, then the address becomes, accordingly to RFC1327

     Jim.Clay@cs.UCL.AC.UK

and the following RFC822 header line is added

Received:

from X4TDEC with DECnet (Mail-11) on xx-xxx-xxxx.

Otherwise one of the dumb rules could produce

    gw%"/C=gb/A=Gold 400/P=AC.UK/O=UCL/OU=cs/G=Jim/S=Clay"@X4TDEC.doms

6.4.4. RFC822 --> Mail-11 --> X.400

The RFC822 address is encoded in Mail-11 f-address element as described in sect. 6.2; then if the Mail-11 to X.400 gateway is able to understand the presence of an 'RFC822-address' into the Mail-11 address, then it applies RFC1327 to it, and encodes 'route' and applies the rules described in 5.2 and 5.5.

an example:

      Jim.Clay@cs.UCL.AC.UK

will be encoded like

      SMTPGW::In%"Jim.Clay@cs.UCL.AC.UK"

If the Mail-11 to X.400 gateway recognise the RFC822-address, then the address becomes, accordingly to RFC1327

      C=gb; ADMD=Gold 400; PRMD=AC.UK; O=UCL; OU=cs; G=Jim; S=Clay;

and a 'trace' record is added into the X.400 P1 data, stating that a node named SMTPGW was crossed.

Otherwise dumb rule produces

      C=it; ADMD=garr; DD.Dnet=HEP;
      DD.Mail-11=SMTPGW::In(p)(q)Jim.Clay(a)cs.UCL.AC.UK(q)

6.4.5. RFC822 --> X.400 --> Mail-11

We apply RFC1327 to the first conversion, obtaining an X.400 address. Then the rules described in sections 5.3 and 5.4 are used to store the X.400 address as 'x400-text-address' into the Mail-11

an example:

      Jim.Clay@cs.UCL.AC.UK

maps accordingly to RFC1327 to

      C=gb; ADMD=Gold 400; PRMD=AC.UK; O=UCL; OU=cs; G=Jim; S=Clay;
   
   and finally becomes
   
      SMTPGW::gw%"/C=gb/A=Gold 400/P=AC.UK/O=UCL/OU=cs/G=Jim/S=Clay"

where 'SMTPGW' is the DECnet node name of the machine running the X.400 to Mail-11 gateway.

6.4.6. Mail-11 --> X.400 --> RFC822

The Mail-11 address is encoded as specified in sections 5.2 and 5.5; then RFC1327 is used to convert the address in RFC822.

an example:

      RELAY::MYNODE::BETTY

maps into X.400 as

      C=it; ADMD=garr; DD.Dnet=HEP; DD.Mail-11=RELAY::MYNODE::BETTY;

and accordingly to RFC1327

      "/C=it/A=garr/DD.Dnet=HEP/DD.Mail-11=RELAY::MYNODE::BETTY"@gw2.it

where 'gw2.it' is the domain of the machine running the RFC1327 gateway.

Appendix A Mail-11 - RFC822 mapping

A.1 Introduction

The implementation of a Mail-11 - RFC822 gateway was faced by many software developers independently, and was included in many mail products which were running on both VAX/VMS and UNIX systems. As there was not a unique standard mapping way, the implementations resulted into a number of possible variant methods to map a Mail-11 address into an RFC822 one. Some of these products became then largely widespread, starting to create a number of de facto mapping methods.

In this small appendix some sort of standardisation of the mapping problem is considered, trying to be compatible with the existing installed software. We must also remind that, in some cases, only simple Mail-11 addresses could be mapped into RFC822, having complex ones producing all sort of quite strange results.

On the other hand, the mapping of an RFC822 address in Mail-11 was quite straightforward, resulting in a common definition which uses "Mail-11 foreign mail protocol" to design an RFC822 address:

      [[node::][node::]...]prot%"rfc-822-address"
   
   or
   
      [node::][node::]...]::"rfc-822-address"

A.2 De facto implementations

A considerable number of de-facto implementations of Mail-11/RFC822 gateways is existing. As said in the introduction, the mapping of RFC822 addresses in Mail-11 is accomplished using the foreign mail protocol syntax and is thus unique.

On the other hand, Mail-11 addresses are encoded in RFC822 syntax in various ways. Here are the most common ones:

        a) "node::user"@gateway-address
        b) user%node@gateway-address
        c) user@node.decnet.domains
        d) user%node.dnet@gateway-address

Let's have a quick look to these different choices.

a - This form simply encloses as quoted Left Hand Side string the

original Mail-11 address into the RFC822 address of the Mail-11/RFC822 gateway. This method is fully conformant with RFC822 syntax, and the Mail-11 address is left untouched; thus no encoding rules need to applied to it.

b - As one will immediately notice, this form has nothing in it

indicating the address is a Mail-11 one; this makes the encoding indistinguishable from a similar encoding of RSCS (BITnet) addresses used by some IBM VM Mailer systems. It should thus be deprecated.

c - In this case a sort of 'reserved word' (decnet) embedded into

the address itself identifies the presence of a Mail-11 original address preceding it. The decoding is possible, dropping 'domains' and extracting 'user' and 'node' parts. However complex Mail-11 addresses cannot be mapped properly in this syntax, and there is no specific rule for adding the 'domains' part of the address.

d - In this case again there is a 'reserved word' (dnet) which make

possible the identification of the original Mail-11 address; 'gateway-address' points to the Mail-11/RFC822 gateway and 'node' and 'user' information can be easily drawn from the address. However complex Mail-11 addresses cannot be embedded easily into this syntax.

A.3 Recommended mappings

From the examples seen in the previous paragraphs we can derive a canonical form for representing the mapping between Mail-11 and RFC822.

A3.1 RFC822 mapped in Mail-11

The mapping of an RFC822 address in Mail-11 is straightforward, using the "Mail-11 foreign mail protocol" syntax. The two possible variants are:

      [[node::][node::]...]prot%"rfc-822-address"
   
   or
   
      [node::][node::]...]::"rfc-822-address"

A3.2 Mail-11 mapped in RFC822

RFC822 foresee a canonical form for representing non-RFC822 addresses: put the foreign address in local part (Left Hand Side, LHS) is a form as similar as possible to its original syntax. Thus the suggested mapping is:

      "Mail-11-address"@gateway-address

This format assures also the return path via the appropriate gateway.

A.4 Conclusions

A standard way of mapping Mail-11 addresses into RFC822 and vice versa is feasible. A suggestion is thus made to unify all existing and future implementations. It should be noted, however, that there is no way to specify in these mappings the name of the decnet community owning the encoded address, as it was done for X.400, thus the implementation of the 'intelligent' gateway in this case is impossible.

Acknowledgements

I wish to thank all those people who read the first draft and contributed a lot with their useful suggestions to the revision of this document, in particular RARE WG1 and IETF X.400 ops group members and S. Hardcastle-Kille.

References

   [1]  CCITT, "CCITT Recommendations X.400-X.430", Message Handling
        Systems: Red Book, October 1984.
   
   [2]  CCITT, "CCITT Recommendations X.400-X.420", Message Handling
        Systems: Blue Book, November 1988.
   
   [3]  Crocker, D., "Standard of the Format of ARPA Internet Text
        Messages", STD 11, RFC 822, UDel, August 1982.
   
   [4]  Kille, S., "Mapping Between X.400 and RFC 822", UK Academic
        Community Report (MG.19) / RFC 987, June 1986.
   
   [5]  Kille, S., "Mapping Between X.400(1988) / ISO 10021 and RFC
        822", RFC 1327, March 1992.
   
   [6]  Digital Equipment Corp.;, "VAX/VMS Mail Utility".
   
   [7]  Joiner Associates Inc., "Jnet User's Manual".
   
   [8]  PMDF User's Guide.

Security Considerations

Security issues are not discussed in this memo.

Author's Address

Claudio Allocchio
Cosine S2.2
Sincrotrone Trieste
Area di Ricerca
Padriciano 99
I 34012 Trieste
Italy

   Phone:   +39 40 3758523
   Fax:     +39 40 226338
   EMail:  Claudio.Allocchio@elettra.Trieste.it
           C=it; A=garr; P=Trieste; O=Elettra; S=Allocchio; G=Claudio;