Network Working Group M. Banan Request for Comments: 2524 Neda Communications, Inc. Category: Informational February 1999 Neda's Efficient Mail Submission and Delivery (EMSD) Protocol Specification Version 1.3 Status of this Memo This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved. IESG Note The protocol specified in this document may be satisfactory for limited use in private wireless IP networks. However, it is unsuitable for general-purpose message transfer or for transfer of messages over the public Internet, because of limitations that include the following: - Lack of congestion control EMSD is layered on ESRO [RFC 2188], which does not provide congestion control. This makes EMSD completely unsuitable for end-to-end use across the public Internet. EMSD should be considered for use in a wireless network only if all EMSD email exchanged between the wireless network and the public Internet will transit an EMSD<->SMTP gateway between the two regions. - Inadequate security The document specifies only clear-text passwords for authentication. EMSD should be used across a wireless network only if sufficiently strong encryption is in use to protect the clear-text password. - Lack of character set internationalization EMSD has no provision for representation of characters outside of the ASCII repertoire or for language tags. Banan Informational [Page 1] RFC 2524 EMSD February 1999 - Poorly defined gatewaying to and from Internet Mail Because Internet Mail and EMSD have somewhat different and conflicting service models and different data models, mapping between them may provide good service only in limited cases, and this may cause operational problems. The IESG therefore recommends that EMSD deployment be limited to narrow circumstances, i.e., only to communicate with devices that have inherent limitations on the length and format of a message (no more than a few hundred bytes of ASCII text), using either: a. wireless links with adequate link-layer encryption and gatewayed to the public Internet, or b. a private IP network that is either very over-provisioned or has some means of congestion control. In the near future, the IESG may charter a working group to define an Internet standards-track protocol for efficient transmission of electronic mail messages, which will be highly compatible with existing Internet mail protocols, and which wil be suitable for operation over the global Internet, including both wireless and wired links. ABSTRACT This document specifies the protocol and format encodings for Efficient Mail Submission and Delivery (EMSD). EMSD is a messaging protocol that is highly optimized for submission and delivery of short Internet mail messages. EMSD is designed to be a companion to existing Internet mail protocols. This specification narrowly focuses on submission and delivery of short mail messages with a clear emphasis on efficiency. EMSD is designed specifically with wireless network (e.g., CDPD, Wireless-IP, Mobile-IP) usage in mind. EMSD is designed to be a natural enhancement to the mainstream of Internet mail protocols when efficiency in mail submission and mail delivery are important. As such, EMSD is anticipated to become an initial basis for convergence of Internet Mail and IP-based Two-Way Paging. The reliability requirement for message submission and message delivery in EMSD are the same as existing email protocols. EMSD protocol accomplishes reliable connectionless mail submission and delivery services on top of Efficient Short Remote Operations (ESRO) protocols as specified in RFC-2188 [1]. Banan Informational [Page 2] RFC 2524 EMSD February 1999 Most existing Internet mail protocols are not efficient. Most existing Internet mail protocols are designed with simplicity and continuity with SMTP traditions as two primary requirements. EMSD is designed with efficiency as a primary requirement. The early use of EMSD in the wireless environment is manifested as IP-based Two-Way Paging services. The efficiency of this protocol also presents significant benefits for large centrally operated Internet mail service providers. Table of Contents 1 PRELIMINARIES 4 1.1 Internet Mail Submission and Delivery . . . . 4 1.2 Relationship Of EMSD To Other Mail Protocols . . . 5 1.3 EMSD Requirements and Goals . . . . . . . 7 1.4 Anticipated Uses Of EMSD . . . . . . . . 8 1.5 Definitions of Terms Used in this Specification . . 9 1.6 Conventions Used In This Specification . . . . 9 1.7 About This Specification . . . . . . . . 10 2 EFFICIENT MAIL SUBMISSION AND DELIVERY OVERVIEW 10 3 EFFICIENT MAIL SUBMISSION AND DELIVERY PROTOCOL 11 3.1 Use Of Lower Layers . . . . . . . . . 13 3.1.1 Use of ESROS . . . . . . . . . 13 3.1.2 Use Of UDP . . . . . . . . . . 13 3.1.3 Encoding Rules . . . . . . . . . 13 3.1.4 Presentation Context . . . . . . . 14 3.2 EMSD-UA Invoked Operations . . . . . . . 14 3.2.1 submit . . . . . . . . . . . 14 3.2.2 deliveryControl . . . . . . . . 17 3.2.3 deliveryVerify . . . . . . . . . 21 3.3 EMSD-SA Invoked Operations . . . . . . . 23 3.3.1 deliver . . . . . . . . . . 23 3.3.2 submissionControl . . . . . . . . 25 3.3.3 submissionVerify . . . . . . . . 28 3.4 EMSD Common Information Objects . . . . . . 30 3.4.1 SecurityElements . . . . . . . . 30 3.4.2 Message Segmentation and Reassembly . . . 30 3.4.3 Common Errors . . . . . . . . . 33 3.4.4 ContentType . . . . . . . . . 35 3.4.5 EMSDMessageId . . . . . . . . . 35 3.4.6 EMSDORAddress . . . . . . . . . 36 3.4.7 EMSDAddress . . . . . . . . . 36 3.4.8 DateTime . . . . . . . . . . 36 3.4.9 AsciiPrintableString . . . . . . . 37 3.4.10 ProtocolVersionNumber . . . . . . . 37 3.5 Submission and Delivery Procedures . . . . . 38 4 DUPLICATE OPERATION DETECTION SUPPORT 40 Banan Informational [Page 3] RFC 2524 EMSD February 1999 4.1 Duplicate Operation Detection Support Overview . . 40 4.1.1 Operation Value . . . . . . . . 40 4.1.2 Operation Instance Identifier . . . . . 41 5 EMSD PROCEDURE FOR OPERATIONS 42 5.1 MTS Behavior . . . . . . . . . . . 43 5.1.1 MTS Performer . . . . . . . . . 43 5.1.2 Message-submission . . . . . . . . 44 5.1.3 Delivery-control . . . . . . . . 46 5.1.4 Delivery-verify . . . . . . . . 46 5.1.5 MTS Invoker . . . . . . . . . 46 5.2 UA Behavior . . . . . . . . . . . 49 5.2.1 UA Performer . . . . . . . . . 49 5.2.2 UA Invoker . . . . . . . . . . 52 6 EMSD FORMAT STANDARDS 54 6.1 Format Standard Overview . . . . . . . . 54 6.2 Interpersonal Messages . . . . . . . . 54 6.2.1 Heading fields . . . . . . . . . 55 6.2.2 Body part types . . . . . . . . 61 7 ACKNOWLEDGMENTS 62 8 SECURITY CONSIDERATIONS 62 9 AUTHOR'S ADDRESS 62 A EMSD-P ASN.1 MODULE 63 B EMSD-IPM ASN.1 MODULE 74 C RATIONALE FOR KEY DESIGN DECISIONS 78 C.1 Deviation From The SMTP Model . . . . . . 78 C.1.1 Comparison of SMTP and EMSD Efficiency . . . 78 C.2 Use of ESRO Instead of TCP . . . . . . . 79 C.3 Use Of Remote Procedure Call (RPC) Model . . . . 79 C.4 Use Of ASN.1 . . . . . . . . . . . 80 D FURTHER DEVELOPMENT 81 E REFERENCES 82 F FULL COPYRIGHT STATEMENT 83 1 PRELIMINARIES Mail in the Internet was not a well-planned enterprise, but instead arose in more of an "organic" way. This introductory section is not intended to be a reference model and concept vocabulary for mail in the Internet. Instead, it only provides the necessary preliminaries for the concepts and terms that are essential to this specification. 1.1 Internet Mail Submission and Delivery For the purposes of this specification, mail submission is the process of putting mail into the mail transfer system (MTS). Banan Informational [Page 4] RFC 2524 EMSD February 1999 For the purposes of this specification, mail delivery is the process of the MTS putting mail into a user's final mail-box. Throughout the Internet, presently most of mail submission and delivery is done through SMTP. SMTP was defined as a message *transfer* protocol, that is, a means to route (if needed) and deliver mail by putting finished (complete) messages in a mail-box. Originally, users connected to servers from terminals, and all processing occurred on the server. Now, a split- MUA (Mail User Agent) model is common, with MUA functionality occurring on both the user's own system and the server. In the split-MUA model, getting the messages to the user is accomplished through access to a mail-box on the server through such protocols as POP and IMAP. In the split-MUA model, user's access to its message is a "Message Pull" paradigm where the user is required to poll his mailbox. Proper message delivery based on a "Message Push" paradigm is presently not supported. The EMSD protocol addresses this shortcoming with an emphasis on efficiency. In the split-MUA model, message submission is often accomplished through SMTP. SMTP is widely used as a message *submission* protocol. Widespread use of SMTP for submission is a reality, regardless of whether this is good or bad. EMSD protocol provides an alternative mechanism for message submission which emphasizes efficiency. 1.2 Relationship Of EMSD To Other Mail Protocols Various Internet mail protocols facilitate accomplishment of various functions in mail processing. Banan Informational [Page 5] RFC 2524 EMSD February 1999 Figure 1, categorizes the capabilities of SMTP, IMAP, POP and EMSD based on the following functions: +------------------+------+-------+-----+------+ | Protocols| SMTP | IMAP | POP | EMSD | |Functions | | | | | |------------------|------|-------|-----|------| |Submission | XX | | | XXX | |------------------|------|-------|-----|------| |Delivery | XXX | | | XXX | |------------------|------|-------|-----|------| |Relay (Routing) | XXX | | | | |------------------|------|-------|-----|------| |Retrieval | | XXX | XXX | XX | |------------------|------|-------|-----|------| |Mailbox Access | | XXX | X | | |------------------|------|-------|-----|------| |Mailbox Synch. | | XXX | | | +------------------+------+-------+-----+------+ Figure 1: Messaging Protocols vs. Supported Functions o Mail Submission o Mail Delivery o Mail Routing (Relay) o Mail Retrieval o Mail-box Access o Mail-box Synchronization In Figure 1, the number of "X"es in each box denotes the extent to which a particular function is supported by a particular protocol. Figure 1 clearly shows that combinations of these protocols can be used to complement each other in providing rich functionality to the user. For example, a user interested in highly mobile messaging functionalities can use EMSD for "submission and delivery of time critical and important messages" and use IMAP for comprehensive access to his/her mail-box. For mail submission and delivery of short messages EMSD is up to 5 times more efficient than SMTP both in terms of the number of packets transmitted and in terms of number of bytes transmitted. Even with Banan Informational [Page 6] RFC 2524 EMSD February 1999 PIPELINING and other possible optimizations of SMTP, EMSD is up to 3 times more efficient than SMTP both in terms of the number of packets transmitted and in terms of number of bytes transmitted. Various efficiency studies comparing EMSD with SMTP, POP and IMAP are available. See Section C.1.1 for more information about comparison of SMTP and EMSD's efficiency. 1.3 EMSD Requirements and Goals The requirements and goals driving design of EMSD protocol are enumerated below. 1. Provide for submission of short mail messages with the same level of functionality (or higher) that the existing Internet mail protocols provide. 2. Provide for delivery of short mail messages with the same level of functionality (or higher) that the existing Internet mail protocols provide. 3. Function as an extension of the existing mainstream Internet mail. 4. Minimize the number of transmissions. 5. Minimize the number of bytes transmitted. 6. Be quick: minimize latency of message submission and delivery. 7. Provide the same level of reliability (or higher) that the existing email protocols provide. 8. Accommodate varying sizes of messages: the size of a message may determine how the system deals with the message, but the system must accommodate it. 9. Be power efficient and respect mobile platform resources: including memory and CPU levels, as well as battery power longevity (i.e. client-light and server-heavy). 10. Highly extendible: different users will demand different options, so the solution cannot require every feature to be a part of every message. Likewise, usage will emerge that is not currently recognized as a requirement. The solution must be extendible enough to handle new, emerging requirements. Banan Informational