Re: Meaning of preceding

"Michael C. Cambria" <[email protected]>
Newsgroups gmane.ietf.rddp
Message-ID <[email protected]>

Barry Reinhold wrote:
> Questions on DDP receiver
> 
> Assume a DDP receiver has a set of buffers "associated with" MSN
> 0,1,2,3,4 and 5. (unexpected association for MSN 0) for a given constant
> QN.
> 
> Question 1:
> 
> If the first DDP segment that arrives has MSN = 0 (no TCP sequence gap,
> violation of initial MSN rule) does the receiver: (1) Place and deliver,
> (2) place and hold, (3) signal error to ULP.

Assuming you are referring to the start of a connection (e.g. not 
wrapping from MSN 0xffffffff to 0), wouldn't this be covered by:

    5.  The Message Sequence Number falls in the range of legal Message
        Sequence Numbers, for the queue defined by the QN. The legal
        range is defined as being between the MSN value assigned to the
        first available buffer for a specific QN and the MSN value
        assigned to the last available buffer for a specific QN.

A compliant receiver starts their range at MSN=1 for the first buffer, 
MSN=2 for the next etc., so MSN=0 is out of range.  An error should be 
signaled to ULP since (top of 9.1) "...the DDP Segment MUST be validated 
before Placement"

> Question 2:
> 
> If MSN 1 has been received, and the next MSN is 3 (with no TCP sequence
> gap, sender protocol error) what is the receiver's expected behavior?

In this case, your questions re placement & delivery make a good point. 
  When looking for text in section 9 regarding what to do, I found 
nothing re MSN ordering other than that quote above regarding range.  I 
also found no error code for something like "unexpected MSN".

Section 7.3 only says:

    At the Data Source, DDP:

      * MUST transmit DDP Messages in the order they were submitted to
         the DDP layer,
The MSN definition in section 4.3 does state that the MSN increases with 
each DDP message.

Other than intuition, nothing is explicitly said about the "next" MSN 
must/should be used by the sender.  The receiver will find MSN 3 in your 
example to be "in range" with available buffers and as I read things, 
place it, unless there is text I'm (hopefully) missing.  If this isn't 
meant to be allowed, perhaps another test in sec 9 could be added to 
make this explicit.

MikeC
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.