Re: DDP draft specification
Caitlin Bestler <[email protected]> Sun, 21 Aug 2005 19:15:15 -0700
| Newsgroups | gmane.ietf.rddp |
|---|---|
| Message-ID | <[email protected]> |
On Aug 19, 2005, at 10:28 AM, Sanjay Goyal wrote:
> Hi,
>
> The below 2 sentences are from draft-ietf-rddp-ddp-05.txt
>
> 1. DDP provides enough information in each DDP Segment to allow the
> ULP Payload in each inbound
> DDP Segment payloads to be directly Placed into the correct ULP
> Buffer, even when the DDP Segments
> arrive out-of-order.
> 2. This specification requires reliable, in order Delivery LLPs.
>
> First sentence says that DDP segments which are MPA FPDUs in TCP
> case can arrive out-of-order and
> second sentence says that LLP (MPA layer) needs to provide ordered
> delivery. Isn't it contradictory?
>
The same distinction between placement and delivery that applies for
RDMAP and DDP
MAY apply to the DDP/LLP interface.
The DDP/LLP interface is not standardized, but the essence is that:
1) the LLP MAY supply DDP Segments in the order received (some might
even say SHOULD).
The adaptation layers for TCP and SCTP are specifically designed
to enable this by providing
sufficient data to enable placement even when LLP re-ordering
has occurred.
2) The LLP MUST still indicate in-order delivery to DDP. DDP needs
this because it MUST NOT
deliver anything to RDMAP that was not fully delivered by the LLP.
One of the review criteria that the IETF RDDP work group insisted on
was that DDP must
be implementable over a standards socket interface. DDP in fact
allows this, but that interface
does not provide optimization for out-of-order placement.
An implementation can define its own DDP/LLP interface that
distinguishes between
placement and delivery. Such an interface can even be described as
"cleanly layered",
it just isn't using the classic sockets interface to define the clean
layering.
Caitlin Bestler
Principal Software Scientist
Broadcom
[email protected]