RE: (no subject)
"Teisberg, Robert" <[email protected]>
| Newsgroups | gmane.ietf.rddp |
|---|---|
| Message-ID | <717252EC3E37AE4392E2614EA24E9F2B080E8F3D@txnexc01.americas.cpqcorp.net> |
> > > How would you expect a MPA receiver to handle an out of order TCP > segment with markers disabled and CRC off? Does it just > buffer it until > the gap is filled? Most likely. It could also discard it. Anything plain TCP can do is allowed. For what it's worth, if markers and CRCs are turned off, the implementation is probably software MPA over MPA-unaware TCP. A survey of existing TCP implementations will give you a good idea what to expect. > > Also, if CRCs are enabled and we are processing an out of order PDU > without markers, what is the behavioral expectation of a failed CRC > check? A matched CRC would be sufficient to determine FPDU alignment, > but a failed CRC appears only to say that you may not have FPDU > alignment. > > That is, if I created a test that produced a gap in the TCP > sequence and > then sent an unaligned FPDU within a TCP segment, followed by the > missing information I would expect the receiver to: (1) Not drop the > connection, (2) Advance the ACK through the unaligned segment when the > missing information was sent. > > Is this the correct understanding? > It's one possibility. Depending on timing and the receiver's TCP implementation, there are some potentially interesting alternatives: (2a) Discard the out-of-order segment, and advance the ACK only through the previously missing information (go-back-n). (2b) and (2c) SACK, and otherwise behave as in either (2) or (2a). I don't know how likely these are, but they're all legitimate.