Re: WG chair on buffer exhaustion (again)
Caitlin Bestler <[email protected]>
| Newsgroups | gmane.ietf.rddp |
|---|---|
| Message-ID | <[email protected]> |
On Thursday, July 31, 2003, at 10:37 AM, Kanevsky, Arkady wrote: > > 2. How does ULP knows/control what is the connection behavior: > connection broken(termination DDP stream) if no recv buffer is > available vs. Send message dropped on the floor and not delivered, > but DDP connection stays? The drop, if done, must be done transparently to the ULP. That means it is being "dropped" temporarily, requesting that the LLP do something to delay delivery. Dropping the packet at the LLP layer is one option that the implementation might consider, but it is the *last* one that it should use before simply terminating the connection/stream. The primary difference of opinion is not on whether such efforts are commendable or not, but when they should be applied. I believe that they MUST NOT / SHOULD NOT be applied for invalid untagged messages, i.e. those that would have been dropped by a conventional non-sharing Receive Queue. The contrary opinion seems to favor capturing as many buffers as possible, and leaving enforcement entirely to the ULP. > 3. How is the Stag invalidation effected (if at all) with both > proposals? STag invalidation occurs at the RDMAP layer, *after* delivery from DDP. DDP delivery follows placement. So STag invalidation cannot occur unless there is a buffer available. If the lack of a buffer is not corrected, somehow, then the connection/stream will be terminated.