Back: RFC 821 : E | Up: RFC 821 : SIMPLE MAIL TRANSFER PROTOCOL | Next: RFC 821 : GLOSSARY



APPENDIX F

   Scenarios

      This section presents complete scenarios of several types of SMTP
      sessions.

   A Typical SMTP Transaction Scenario

      This SMTP example shows mail sent by Smith at host USC-ISIF, to
      Jones, Green, and Brown at host BBN-UNIX.  Here we assume that
      host USC-ISIF contacts host BBN-UNIX directly.  The mail is
      accepted for Jones and Brown.  Green does not have a mailbox at
      host BBN-UNIX.

      -------------------------------------------------------------

         R: 220 BBN-UNIX.ARPA Simple Mail Transfer Service Ready
         S: HELO USC-ISIF.ARPA
         R: 250 BBN-UNIX.ARPA

         S: MAIL FROM:<Smith@USC-ISIF.ARPA>
         R: 250 OK

         S: RCPT TO:<Jones@BBN-UNIX.ARPA>
         R: 250 OK

         S: RCPT TO:<Green@BBN-UNIX.ARPA>
         R: 550 No such user here

         S: RCPT TO:<Brown@BBN-UNIX.ARPA>
         R: 250 OK

         S: DATA
         R: 354 Start mail input; end with <CRLF>.<CRLF>
         S: Blah blah blah...
         S: ...etc. etc. etc.
         S: .
         R: 250 OK

         S: QUIT
         R: 221 BBN-UNIX.ARPA Service closing transmission channel

                               Scenario 1

      -------------------------------------------------------------


Aborted SMTP Transaction Scenario ------------------------------------------------------------- R: 220 MIT-Multics.ARPA Simple Mail Transfer Service Ready S: HELO ISI-VAXA.ARPA R: 250 MIT-Multics.ARPA S: MAIL FROM:<Smith@ISI-VAXA.ARPA> R: 250 OK S: RCPT TO:<Jones@MIT-Multics.ARPA> R: 250 OK S: RCPT TO:<Green@MIT-Multics.ARPA> R: 550 No such user here S: RSET R: 250 OK S: QUIT R: 221 MIT-Multics.ARPA Service closing transmission channel Scenario 2 -------------------------------------------------------------
Relayed Mail Scenario ------------------------------------------------------------- Step 1 -- Source Host to Relay Host R: 220 USC-ISIE.ARPA Simple Mail Transfer Service Ready S: HELO MIT-AI.ARPA R: 250 USC-ISIE.ARPA S: MAIL FROM:<JQP@MIT-AI.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:Jones@BBN-VAX.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Date: 2 Nov 81 22:33:44 S: From: John Q. Public <JQP@MIT-AI.ARPA> S: Subject: The Next Meeting of the Board S: To: Jones@BBN-Vax.ARPA S: S: Bill: S: The next meeting of the board of directors will be S: on Tuesday. S: John. S: . R: 250 OK S: QUIT R: 221 USC-ISIE.ARPA Service closing transmission channel
Step 2 -- Relay Host to Destination Host R: 220 BBN-VAX.ARPA Simple Mail Transfer Service Ready S: HELO USC-ISIE.ARPA R: 250 BBN-VAX.ARPA S: MAIL FROM:<@USC-ISIE.ARPA:JQP@MIT-AI.ARPA> R: 250 OK S: RCPT TO:<Jones@BBN-VAX.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Received: from MIT-AI.ARPA by USC-ISIE.ARPA ; 2 Nov 81 22:40:10 UT S: Date: 2 Nov 81 22:33:44 S: From: John Q. Public <JQP@MIT-AI.ARPA> S: Subject: The Next Meeting of the Board S: To: Jones@BBN-Vax.ARPA S: S: Bill: S: The next meeting of the board of directors will be S: on Tuesday. S: John. S: . R: 250 OK S: QUIT R: 221 USC-ISIE.ARPA Service closing transmission channel Scenario 3 -------------------------------------------------------------
Verifying and Sending Scenario ------------------------------------------------------------- R: 220 SU-SCORE.ARPA Simple Mail Transfer Service Ready S: HELO MIT-MC.ARPA R: 250 SU-SCORE.ARPA S: VRFY Crispin R: 250 Mark Crispin <Admin.MRC@SU-SCORE.ARPA> S: SEND FROM:<EAK@MIT-MC.ARPA> R: 250 OK S: RCPT TO:<Admin.MRC@SU-SCORE.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 SU-SCORE.ARPA Service closing transmission channel Scenario 4 -------------------------------------------------------------
Sending and Mailing Scenarios First the user's name is verified, then an attempt is made to send to the user's terminal. When that fails, the messages is mailed to the user's mailbox. ------------------------------------------------------------- R: 220 SU-SCORE.ARPA Simple Mail Transfer Service Ready S: HELO MIT-MC.ARPA R: 250 SU-SCORE.ARPA S: VRFY Crispin R: 250 Mark Crispin <Admin.MRC@SU-SCORE.ARPA> S: SEND FROM:<EAK@MIT-MC.ARPA> R: 250 OK S: RCPT TO:<Admin.MRC@SU-SCORE.ARPA> R: 450 User not active now S: RSET R: 250 OK S: MAIL FROM:<EAK@MIT-MC.ARPA> R: 250 OK S: RCPT TO:<Admin.MRC@SU-SCORE.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 SU-SCORE.ARPA Service closing transmission channel Scenario 5 -------------------------------------------------------------
Doing the preceding scenario more efficiently. ------------------------------------------------------------- R: 220 SU-SCORE.ARPA Simple Mail Transfer Service Ready S: HELO MIT-MC.ARPA R: 250 SU-SCORE.ARPA S: VRFY Crispin R: 250 Mark Crispin <Admin.MRC@SU-SCORE.ARPA> S: SOML FROM:<EAK@MIT-MC.ARPA> R: 250 OK S: RCPT TO:<Admin.MRC@SU-SCORE.ARPA> R: 250 User not active now, so will do mail. S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 SU-SCORE.ARPA Service closing transmission channel Scenario 6 -------------------------------------------------------------
Mailing List Scenario First each of two mailing lists are expanded in separate sessions with different hosts. Then the message is sent to everyone that appeared on either list (but no duplicates) via a relay host. ------------------------------------------------------------- Step 1 -- Expanding the First List R: 220 MIT-AI.ARPA Simple Mail Transfer Service Ready S: HELO SU-SCORE.ARPA R: 250 MIT-AI.ARPA S: EXPN Example-People R: 250-<ABC@MIT-MC.ARPA> R: 250-Fred Fonebone <Fonebone@USC-ISIQ.ARPA> R: 250-Xenon Y. Zither <XYZ@MIT-AI.ARPA> R: 250-Quincy Smith <@USC-ISIF.ARPA:Q-Smith@ISI-VAXA.ARPA> R: 250-<joe@foo-unix.ARPA> R: 250 <xyz@bar-unix.ARPA> S: QUIT R: 221 MIT-AI.ARPA Service closing transmission channel
Step 2 -- Expanding the Second List R: 220 MIT-MC.ARPA Simple Mail Transfer Service Ready S: HELO SU-SCORE.ARPA R: 250 MIT-MC.ARPA S: EXPN Interested-Parties R: 250-Al Calico <ABC@MIT-MC.ARPA> R: 250-<XYZ@MIT-AI.ARPA> R: 250-Quincy Smith <@USC-ISIF.ARPA:Q-Smith@ISI-VAXA.ARPA> R: 250-<fred@BBN-UNIX.ARPA> R: 250 <xyz@bar-unix.ARPA> S: QUIT R: 221 MIT-MC.ARPA Service closing transmission channel
Step 3 -- Mailing to All via a Relay Host R: 220 USC-ISIE.ARPA Simple Mail Transfer Service Ready S: HELO SU-SCORE.ARPA R: 250 USC-ISIE.ARPA S: MAIL FROM:<Account.Person@SU-SCORE.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:ABC@MIT-MC.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:Fonebone@USC-ISIQA.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:XYZ@MIT-AI.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA,@USC-ISIF.ARPA:Q-Smith@ISI-VAXA.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:joe@FOO-UNIX.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:xyz@BAR-UNIX.ARPA> R: 250 OK S: RCPT TO:<@USC-ISIE.ARPA:fred@BBN-UNIX.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 USC-ISIE.ARPA Service closing transmission channel Scenario 7 -------------------------------------------------------------
Forwarding Scenarios ------------------------------------------------------------- R: 220 USC-ISIF.ARPA Simple Mail Transfer Service Ready S: HELO LBL-UNIX.ARPA R: 250 USC-ISIF.ARPA S: MAIL FROM:<mo@LBL-UNIX.ARPA> R: 250 OK S: RCPT TO:<fred@USC-ISIF.ARPA> R: 251 User not local; will forward to <Jones@USC-ISI.ARPA> S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 USC-ISIF.ARPA Service closing transmission channel Scenario 8 -------------------------------------------------------------
------------------------------------------------------------- Step 1 -- Trying the Mailbox at the First Host R: 220 USC-ISIF.ARPA Simple Mail Transfer Service Ready S: HELO LBL-UNIX.ARPA R: 250 USC-ISIF.ARPA S: MAIL FROM:<mo@LBL-UNIX.ARPA> R: 250 OK S: RCPT TO:<fred@USC-ISIF.ARPA> R: 251 User not local; will forward to <Jones@USC-ISI.ARPA> S: RSET R: 250 OK S: QUIT R: 221 USC-ISIF.ARPA Service closing transmission channel Step 2 -- Delivering the Mail at the Second Host R: 220 USC-ISI.ARPA Simple Mail Transfer Service Ready S: HELO LBL-UNIX.ARPA R: 250 USC-ISI.ARPA S: MAIL FROM:<mo@LBL-UNIX.ARPA> R: 250 OK S: RCPT TO:<Jones@USC-ISI.ARPA> R: OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 USC-ISI.ARPA Service closing transmission channel Scenario 9 -------------------------------------------------------------
Too Many Recipients Scenario ------------------------------------------------------------- R: 220 BERKELEY.ARPA Simple Mail Transfer Service Ready S: HELO USC-ISIF.ARPA R: 250 BERKELEY.ARPA S: MAIL FROM:<Postel@USC-ISIF.ARPA> R: 250 OK S: RCPT TO:<fabry@BERKELEY.ARPA> R: 250 OK S: RCPT TO:<eric@BERKELEY.ARPA> R: 552 Recipient storage full, try again in another transaction S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: MAIL FROM:<Postel@USC-ISIF.ARPA> R: 250 OK S: RCPT TO:<eric@BERKELEY.ARPA> R: 250 OK S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 BERKELEY.ARPA Service closing transmission channel Scenario 10 ------------------------------------------------------------- Note that a real implementation must handle many recipients as specified in Section 4.5.3.

Log in or register to write something here or to contact authors.