[Top] [All Lists]

Re: BDAT, RFC 3030 protocol clarification?

2003-06-19 06:24:36

On Wed, Jun 18, 2003 at 09:29:59AM -0500, Vaudreuil, Greg M (Greg) wrote:
I hope the below referenced Internet-draft has captured the discussion
we have been having.  Specific comments would be welcome, preferably in
time to turn a new revision before the IETF meeting.

Greg V.

I have two things:

I would like to see section/subsection numbers inside chapter 2,
separating non-pipeline and pipeline behaviour discussion into
separate sections would be usefull in the long run, IMHO.  (Like
there are separate examples, also the text should have sections.)

Due to network level TCP optimizations, the example in 4.2
could be rewritten slightly:


  4.2 Pipelining BINARYMIME 

     The following dialogue illustrates the use of the large message 
     extension to send a BINARYMIME object to two recipients using the 
     CHUNKING and PIPELINING extensions.  This also shows sender side
     TCP buffering effect where data is accumulated, until MTU size
     chunks can be sent, and thus MAIL, RCPTs and first BDAT verb are
     all in one TCP frame:

     R: <wait for connection on TCP port 25> 
     S: <open connection to server> 
     R: 220 SMTP service ready 
     S: EHLO 
     R: says hello 
     R: 250-PIPELINING 
     R: 250-BINARYMIME 
     R: 250 CHUNKING 
     S: MAIL FROM:<ned(_at_)example2(_dot_)com> BODY=BINARYMIME 
     S: RCPT TO:<gvaudre(_at_)example(_dot_)com> 
     S: RCPT TO:<jstewart(_at_)example(_dot_)com> 
     S: BDAT 100000    
     S: (First 100000 octets of canonical MIME message data) 
     R: <sometime during that BDAT sending, these responses arrive>
     R: 250 <ned(_at_)example2(_dot_)com>... Sender and BINARYMIME ok 
     R: 250 <gvaudre(_at_)example(_dot_)com>... Recipient ok 
     R: 250 <jstewart(_at_)example(_dot_)com>... Recipient ok 
     S: BDAT 324  
     S: (Remaining 324 octets of canonical MIME message data) 
     S: BDAT 0 LAST 
     S: <sender explicitely PUSHes its outgoing TCP stream
     S:  data in order to achieve a synchronisation point>
     R: 250 100000 octets received 
     R: 250 324 octets received 
     R: 250 Message OK, 100324 octets received 
     S: QUIT 
     R: 221 Goodbye 


/Matti Aarnio   <mea(_at_)nic(_dot_)funet(_dot_)fi>