summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc784.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc784.txt')
-rw-r--r--doc/rfc/rfc784.txt174
1 files changed, 174 insertions, 0 deletions
diff --git a/doc/rfc/rfc784.txt b/doc/rfc/rfc784.txt
new file mode 100644
index 0000000..33c34e0
--- /dev/null
+++ b/doc/rfc/rfc784.txt
@@ -0,0 +1,174 @@
+
+
+Network Working Group S. Sluizer
+Request for Comments: 784 J. Postel
+ ISI
+ July 1981
+
+ MAIL TRANSFER PROTOCOL:
+ ISI TOPS20 IMPLEMENTATION
+
+
+We are creating an implementation of MTP for TOPS20. The programs are
+written in BLISS-10. This implementation supports the MTP user and
+server functions using both TCP and NCP transport services, and provides
+interfaces to other mail delivery mechanisms.
+
+The transport services (NCP, TCP, etc.), are used to establish
+communication between MTP sender and MTP receiver programs. These
+communication paths will be called channels in the rest of this memo.
+
+Our model of operation is that mail sources will create mail files in
+user directories. The mail sources are both user mail composition
+programs (like Hermes, MM, SNDMSG), and system network mail receiving
+programs which accept mail from various input channels. The mail files
+are processed by a background program which dispatches mail to various
+output channels. There is also a user version of the dispatcher to send
+mail at once (provided the necessary channel is available).
+
+To take advantage of MTP's multi-recipient feature, the mail consists of
+two files. The first is a control file which contains the delivery
+information and a pointer to the second file. The second file contains
+the mail data (including the RFC 733 header) to be delivered.
+
+The reason for using two files is that the control information must be
+modified as the mail is processed while the mail data only needs to be
+read (although the file is eventually deleted or renamed). For example,
+a message may be sent to different recipients via different channels.
+If one of the channels is not available, the control file must be
+modified to mark or delete the recipients to whom the mail has been sent
+and keep the recipient information available for those recipients not
+yet sent. In a a future implementation of the dispatcher, the control
+information may be moved to a master table in its data area to optimally
+schedule output channel use.
+
+The dispatcher makes its decision about how to send mail to each
+recipient by consulting a table that indicates for each host its ability
+to accept mail via (1) MTP on TCP, (2) MTP on NCP, or (3) FTP on NCP
+(i.e., the old way). There is also a table for other cases (e.g.,
+delivery to hosts in England via another mail transmission system
+created by UCL).
+
+
+
+
+
+
+Sluizer & Postel Page [1]
+
+
+
+July 1981 RFC 784
+ISI TOPS20 Implementation
+
+
+
+The individual pieces of this system are:
+
+ 1. MTP receiver for TCP.
+
+ 2. MTP receiver for NCP.
+
+ 3. Dispatcher.
+
+ 4. MTP sender for TCP.
+
+ 5. MTP sender for NCP.
+
+ 6. Mail composition programs (MM, HERMES, MSG, SNDMSG, ...).
+
+ 7. User mailbox files.
+
+ 8. Pending Mail files.
+
+ 9. Other Mail sources.
+
+ 10. Other Mail sinks.
+
+ 11. Host Mail Capability table.
+
+ 12. Host special processing tables.
+
+We are building 1 through 5, hope that others will adapt 6 to this
+system (a version of MM has been adapted at ISI), using the existing 7,
+defining and using 8, providing interfaces for 9 and 10 as requested,
+and creating and using 11 and 12.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Page [2] Sluizer & Postel
+
+
+
+RFC 784 July 1981
+ Mail Transfer Protocol
+
+
+
+ +-----+ +-----+ +------+ +------+
+ | MTP | | MTP | | USER | |OTHER |
+ | TCP | | NCP | | MAIL | |MAIL |
+ | RCV | | RCV | | PGM | |SOURCE|
+ +-----+ +-----+ +------+ +------+
+ | | | |
+ | | | |
+ | | | |
+ v v v v
+ +----+ +----+ +----+ +----+
+ | | | | | | | |
+Pending +----+ | +----+ | +----+ | +----+ |
+Files | |-+ | |-+ | |-+ | |-+
+ | | | | | | | |
+ +----+ +----+ +----+ +----+
+ \ | | /
+ \ | | /
+ \ | | /
+ v v v v
+
+ +------------------+ TABLES
+ | | +----+
+ | DISPATCHER |<----->| |---+
+ | | | | |
+ +------------------+ +----+ |
+ / / \ \ +----+
+ / / \ \
+ / / \ \
+ v v v v
+ +-----+ +-----+ +-------+ +-----+
+ | MTP | | MTP | | LOCAL | |OTHER|
+ | TCP | | NCP | |MAILBOX| |MAIL |
+ | SND | | SND | | FILES | |SINK |
+ +-----+ +-----+ +-------+ +-----+
+
+Note that current implementation the dispatcher and the senders for
+MTP-on-TCP and MTP-on-TCP are combined in one program.
+
+
+
+
+
+
+
+
+
+
+
+
+Sluizer & Postel Page [3]
+