DDP 7.3 - Data Source MUST transmit DDP Messages in order
Caitlin Bestler <[email protected]>
| Newsgroups | gmane.ietf.rddp |
|---|---|
| Message-ID | <[email protected]> |
Section 7.3 of the DDP spec states that:
At the Data Source, DDP:
* MUST transmit DDP Messages in the order they were submitted to
the DDP layer,
There are two possible interpretations of that requirement, depending
on what the meaning of "transmitting" a DDP Message is.
The liberal interpretation is that the DDP Layer "transmits" a DDP
Message when it presents the last segment in the message to the LLP.
A more complete requirement is that ALL DDP Segments must be presented
for transmission to the LLP *before* the first segment of the next
DDP Message may be submitted.
For most DDP receivers there is no difference between those two
requirements. However, there can be a significant difference for
a DDP receiver that accepts DDP Segments in order from the LLP
and is using a buffer sharing technique such as a Shared Receive
Queue where receive buffers are allocated "on demand".
The latter more restrictive interpretation (which matches what
virtually all implementations would do anyway) would allow a
receiver working with in-order deliveries from the LLP to know
that it would never need to have more than one pending receive
buffer. By the time it needed to allocate the next buffer, the
prior one would be eligible for delivery.
Receivers which process out-of-order would never detect the
difference between the interpretations. Receivers working with
connection specific receive resources (such as a classic
receive queue) would also be indifferent.
However, I believe there is real value in being allowed to
bound the number of pending allocations from a shared receive
queue when DDP Segments are delivered in order by the LLP.
Value that exceeds any imposition the tighter restriction
would place on the Data Source.
I would request the following:
- Does the WG agree that the current wording is compatible
with both interpretations? Or is the latter interpretation
locked in by some other language the at I overlooked?
- If there is agreement that the current language is at
least potentially ambiguous, is there any objection to
adding the clarification that all DDP Segments for a
DDP Message must be submitted for transmission to the
LLP before any Segment for a following DDP Message.
--
Caitlin Bestler - [email protected] - http://asomi.com/
http://asomi.com/CaitlinBestlerPublicPgpKey.html