Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bidirection-03
David Noveck <davenoveck@gmail.com> Fri, 20 May 2016 16:51 UTC
Return-Path: <davenoveck@gmail.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 45E6912DE18 for <nfsv4@ietfa.amsl.com>; Fri, 20 May 2016 09:51:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dLb5-iAm5Yzf for <nfsv4@ietfa.amsl.com>; Fri, 20 May 2016 09:51:48 -0700 (PDT)
Received: from mail-oi0-x233.google.com (mail-oi0-x233.google.com [IPv6:2607:f8b0:4003:c06::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 49A9E12DA9B for <nfsv4@ietf.org>; Fri, 20 May 2016 09:51:48 -0700 (PDT)
Received: by mail-oi0-x233.google.com with SMTP id v145so187862278oie.0 for <nfsv4@ietf.org>; Fri, 20 May 2016 09:51:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=ATduGoPpxx1QZ4SHkm4rmBHfOkmfOh7Yit15zRxyDUE=; b=rvYCgPsBRA1mrsO5/e/O1fs1zUdHtRxbqa1qxCx7K+8cWxd7/8s5nUH10AnTTBNkRp M1hKrmR0jSV2VZEhitb9o0wva2flQrjCMsgj8A48SOUUmrrykbN2wqw6XV/HNmdzG7wr 5zhElZ6ADX6pAeZuhonghokmizcNiNoSiCE96cgUpnMNw5tmXZVLg2JUaaxnW5PrqWat +izgY9C03ZR1if52XBrhQA79xtIuaxppfhwwt0Am7QGN1iesW9Hdjfou29/jPeL42jsH n7ftSPvYKOKVUrH0JmnhJakW5wkRK57lvOj1UNGwGIm8SCiGN1ClaAkLYtd8hOzbr4Qp CCMg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=ATduGoPpxx1QZ4SHkm4rmBHfOkmfOh7Yit15zRxyDUE=; b=dd5YkhYpG4bX+i9rzEbITBAjjXDAR9YCcH0nPyIscJuhmmkP/eYBQvKrrWVxwgUBFY teHCytjt4BCiXum+OH1eFfUfudh6BDBdDqWOZLOsSvG/Zc103Qj+118Gfg3mJoKoP89T m+irBUsKsRkVfO4pekViSKnnHMDcvqEUJ+sFWhYmg8bKzYC0riv5IqtJqg8J/GCxvzhB r0/0OqIlZfuz5CYSar9xko5u+o7bB8yh+wKMjDBLKZjBldBFf0GHb/Uz981GbhSdrTP0 FGo0qPtDf6FZV6wyRj7xE9tiCCSghxOjGOyurewj0YfCFU5YvfFI7glWgxOAZEJmKi6J co8g==
X-Gm-Message-State: AOPr4FXavvY8wD2ND5egVUZBM2g40MZOw00aJAPO+pE5s5zL3UqeFrJRAbnvE6xUizA2XIpZmjElQo5d4kMZeQ==
MIME-Version: 1.0
X-Received: by 10.157.20.101 with SMTP id h92mr2727446oth.114.1463763107301; Fri, 20 May 2016 09:51:47 -0700 (PDT)
Received: by 10.182.29.166 with HTTP; Fri, 20 May 2016 09:51:47 -0700 (PDT)
In-Reply-To: <9545B635-3BF3-4AE4-9735-11F035E8B35F@oracle.com>
References: <CADaq8je6a-BQsRm9L4YuxXwaO=0qYJTcwN+HZHccuA6ASqd05w@mail.gmail.com> <21FD6EF7-0FC1-471E-91FA-11097F34F420@oracle.com> <60022BA0-08C0-4285-895C-289A03ACF570@oracle.com> <CADaq8jfyTAS67p7MvBw8kvmgTsOxpNkUZPrEmJhK2UkAX-hSYg@mail.gmail.com> <04C758B8-9EC2-4454-AB48-7E40625FF5C0@oracle.com> <CADaq8jfhjX3vgTGEvV5wo-Q0HnGEuKw_r8RG--kN3=iKpks6Ww@mail.gmail.com> <0F7724E9-3E4F-4651-8505-91B3DCA1D7A2@oracle.com> <CADaq8jeGtjpvWRwrc9csCrYSseJtCkr8QJd4SjU0E0r6TmTniw@mail.gmail.com> <9545B635-3BF3-4AE4-9735-11F035E8B35F@oracle.com>
Date: Fri, 20 May 2016 12:51:47 -0400
Message-ID: <CADaq8jdEA0xc9YQgfqHMB7m6chgj-XYA6YB+ByMunrQarfN1ZQ@mail.gmail.com>
From: David Noveck <davenoveck@gmail.com>
To: Chuck Lever <chuck.lever@oracle.com>
Content-Type: multipart/alternative; boundary="001a1149e4520bd599053348e8aa"
Archived-At: <http://mailarchive.ietf.org/arch/msg/nfsv4/TkWJHGD2HvWtzA5L7WgBNEZSXyw>
Cc: "nfsv4@ietf.org" <nfsv4@ietf.org>
Subject: Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bidirection-03
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 20 May 2016 16:51:54 -0000
Works for me. I think we can now (or at midnight) proceed to move these documents into WG Consensus state. On Fri, May 20, 2016 at 11:34 AM, Chuck Lever <chuck.lever@oracle.com> wrote: > > > On May 19, 2016, at 11:52 AM, David Noveck <davenoveck@gmail.com> wrote: > > > > > It seems natural to me because, logically, you > > > can't have bi-directional operation without > > > backward direction operation. > > > > That's likely to be the case, but note that, you can't have > bi-directional operation > > without forward direction operation either, and it somehow doesn't seem > natural > > to identify forward and bi-directional operation. I think logic does > not have as > > much to do with this as you assume. > > > > > > If this is the case, then bidirectional protocols do not currently > exist but might be defined in the future. > > > > > I agree with that. > > > > Yes, but it seems we disagree about whether they currently exist because > we use the word "protocol" in > > different ways. This is not a big problem right now but I'm worried > about a situation in which two of the > > documents that NFSv4 implementers refer to use such a basic term in such > different ways. > > > The language in Section 7 of -03 was indeed problematic. > It contradicted, for example, our long-standing claim > that RFC 5667 is missing DDP-eligibility statements for > callback operations. (I think part of the reason for > the problematic language was the desire to grandfather > NFSv4 callback operations into existing RFC 5667 language, > and perhaps that is not consistent with what has been > written and discussed so far). > > I've rewritten Section 7: > > > 7. Considerations For Upper Layer Bindings > > An Upper Layer Protocol that operates on RPC-over-RDMA transports may > have procedures that include DDP-eligible data items. DDP- > eligibility is specified in an Upper Layer Binding. Direction of > operation does not obviate the need for DDP-eligibility statements. > > Backward-only operation requires the client endpoint to establish a > fresh connection. The Upper Layer Binding can specify appropriate > RPC binding parameters for such connections. > > Bi-directional operation occurs on an already-established connection. > Specification of RPC binding parameters is usually not necessary in > this case. > > For bi-directional operation, other considerations about sharing an > RPC-over-RDMA transport with another ULP may apply. Consult > Section 7 of [I-D.ietf-nfsv4-rfc5666bis] for details about what else > may be contained in an Upper Layer Binding. > > > Hopefully that addresses your concerns about conflating > backward direction and bidirection, and issues with the > use of the term 'Upper Layer Protocol.' > > > > On Thu, May 19, 2016 at 10:13 AM, Chuck Lever <chuck.lever@oracle.com> > wrote: > > Hi Dave- > > > > > > > On May 18, 2016, at 10:21 PM, David Noveck <davenoveck@gmail.com> > wrote: > > > > > > > How do we define Upper Layer Protocol? An Upper Layer > > > > Binding applies to an Upper Layer Protocol, which is > > > > defined as a distinct RPC Program and Version. See > > > > Section 7 rfc5666bis: > > > > > > I think it would be helpful if the defnition of "Upper Layer Protocol" > > > matched the way the word "protocol" is normally used. And NFSv4.1 > > > is, quite reasonably, described as a protocol, and not as a set of > > > two protocols described alongside one another. > > > > But we do make a distinction between NLM, NFSACL, > > MOUNT, NSM, and NFS protocols, referring to NFS > > as the "main protocol" and the others as "side-band > > protocols." > > > > In NFSv4.0, forward operation and callback are > > always used on distinct connections, and they have > > distinct RPC Program numbers and separate XDR > > definitions. Forward operation can occur without > > a callback channel. Are those considered one > > protocol, or two? > > > > Is NFSv3 the same ULP as NFSv4.0 or NFSv4.1? If so, > > why are there separate discussions in RFC 5667 for > > v3 and v4.0, and why are we not attempting to claim > > that RFC 5667 or rfc5667bis are normative for all > > future versions of NFS? > > > > Thus I don't consider the colloquial usage of the > > term 'protocol' to be adequate in this context. > > > > > > > > RFC 5661/2 define two separate RPC Programs, thus > > > > separate ULBs are needed, according to rfc5666bis. > > > > > > > This is the way the I-Ds are written now. I am > > > > willing to entertain alternatives. > > > > > > OK. First of all it might be stated that when two separate RPC > > > programs are defined together and used together as a single protocol > capable of bidirectional operation, they can be > > > considered as a single protocol with a ULB,covering both > > > directions of operation. > > > > Except that last time I included a mention of call > > direction in rfc5666bis, you objected to that. :-) > > > > I still prefer the way rfc5666bis is written now. > > It is unambiguous about what needs to have a > > Binding. The boundaries defined by Program and > > Version number are historical, simple to > > understand, and well-defined. > > > > (And, this is a valuable conversation, since we > > as a WG should be striving to get this right). > > > > > > > > I don't see how backward-only and bidirectional operation > > > > are addressed separately, except for the separate definitions > > > > in Section 2. > > > > > > The introduction to the subject defines forward operation, > > > backward operation, and bi-directional operation, all on the > > > same level, as the three classes of RPC directionality. > > > > > > > Can you give other examples of where they are > > > > separately treated? > > > > > > No I can't and part of the reason is that, in most contexts, you are > talking about a request or response that part of a forward or backward > RPC. there are no bidirectional RPC's even though there are (or may be) > bidirectional protocols. > > > > > > It is quite natural in the context to treat backward an bidirectional > > > together. The issue is that if you introduce these three classes and > then choose to treat two of them together, you need to tell the reader > > > that you are gong to do so. You may think it is natural and obvious > to treat these together but you can't assume the reader will > > > naturally share that view, given he has been told that these are > separate things. > > > > It seems natural to me because, logically, you > > can't have bi-directional operation without > > backward direction operation. I can review the > > text with your comment in mind, however. > > > > Besides the sentence you proposed in Section 7, > > are there other places in the document where I > > should add "and bi-directional" or its equivalent? > > I'm open to suggestion. > > > > > > > Of course,, we now have to deal with the irony that arises from the > fact that you originally began this work to enable the NFSv4.1 protocol to > operate bidirectionally, and having done that, you have (magically :-) made > the NFSv4.1 protocol disappear and with it bidirectional operation. If I > understand your position correctly, we now no longer have a single protocol > operating bidirectionally. > > > > When it is broken down, the RPC transport, not the > > protocol, operates bi-directionally. For example: > > > > A "uni-directional" protocol such as NFSv3 or NLM > > can be used bi-directionally, if two connection > > endpoints act as both clients and servers. > > > > NFSv4.1 implementations can set up distinct and > > separate connections for forward and backward > > operation. In that case, no bi-directional > > operation is occurring on either connection (after > > the BC2S operation on the callback connection). > > > > > > > Instead, we have one ULP operating in the forward direction and > another ULP, defined alongside it, operating in the backward direction. > > > > In addition, the set of procedures that may be used > > in the forward direction and the set of procedures > > that may be used in the backward direction are > > disjoint. > > > > > > > If this is the case, then bidirectional protocols do not currently > exist but might be defined in the future. > > > > I agree with that. > > > > What the I-D creates is the ability to send RPC > > requests in both directions on a transport. How > > ULPs use this capability is rather up to them. > > > > > > > > > > How about: Before any operation can flow in either > > > > > > direction, it MUST be covered by a DDP-eligibility > > > > > > statement. > > > > > > > > OK, except for the "MUST". > > > > > > > It's the same MUST that applies to other ULPs, stated > > > > in rfc5666bis Section 7. > > > > > > It is the same word but it is not used in the same way: > > > > > > There are the only three uses of "MUST" in section 7: > > > > > > Senders MUST NOT reduce data items that are not DDP-eligible. > > > In the first case, a responder MUST NOT process the Call message. > > > Both types of violations MUST be reported as described in Section > 5.5.2. > > > These are all straightforward directions to implementers. > > > > > > I know there is uncertainty/dispute about whether RFC2119 terms are > appropriately directed to spec authors. > > > > > > I found your statement above troubling in that it tied an > implementation-level event together with a specification level event. > > > > Oh, I see. "MUST be covered by a DDP-eligibility > > statement" is directed to spec authors, not to > > implementers, thus an RFC 2119 term is not > > appropriate. Got it. > > > > > > > On Wed, May 18, 2016 at 5:25 PM, Chuck Lever <chuck.lever@oracle.com> > wrote: > > > > > > > On May 18, 2016, at 5:13 PM, David Noveck <davenoveck@gmail.com> > wrote: > > > > > > > > > Where is "bi-directional operation declared out of scope?" > > > > > > > > I agree that it doesn't say that. > > > > > > > > > Section 1 appropriately says that an NFSv4.x Upper Layer > > > > > Binding is out of scope. It says nothing about > > > > > bi-directional operation of RPC-over-RDMA > > > > > > > > Note that this comment was made in the context of section 7 which > concerns itself with ULBs and section one does say that the ULB for the > only protocol that supports bidirectional operation is out of the scope of > this document. I agree that that is a valid statement, BTW. > > > > > > > > > If needed I > > > > > can clarify Section 1. > > > > > > > > I think the clarification I am looking for is one that says where > the ULB will be provided, rather than where it is not provided. > > > > This could be an informative reference to rfc5667bis or a simple > statement that the issue is addressed in section 7. > > > > > > > > > >> I'm going to propose changes assuming that the necessary > material will be added to this section, although a separate section is > possible. > > > > > > > > > A separate section for what? > > > > > > > > A separate section for ULBs for bidirectional operation, as opposed > to the existing section for backlward operation. > > > > > > > > We both agree that this is undesirable, but I need to answer your > question. > > > > > > > > > I guess I don't understand why backward operation by > > > > > itself is any different than backward operation on > > > > > the same transport as forward operation. > > > > > > > > The question is whether backward operation of a single protocol is > different from bidirectional operation of a single protocol. I don't think > it is any different but given that this distinction is made, it needs to be > made clear that the same ULB rules apply to both. > > > > > > > > >> Suggest changing the section title to "Upper Layer Binding for > Backward Direction and Bi-directional Operation" > > > > >> Suggest adding the following new sentence to the end of the first > paragraph: > > > > >> This applies to both backward direction and bi-directional > operation. > > > > > > > > > I don't understand why you believe this is necessary to > > > > > state here. > > > > > > > > I don't know that it is necessary but I do think it would helpful. > > > > > > > > In many places you make the distinction between backward and > bi-directional operation, so it would helpful, if this section is to cover > both, to state that it does cover both. > > > > > > > > > OK but: don't NFSv4.1 callback operations also use a > > > > > different RPC program than NFSv4.1 forward channel > > > > > operations? > > > > > > > > Yes they do. > > > > > > > > > Since there is a separate XDR definition, > > > > > and a unique RPC Program number, that makes these two > > > > > separate and distinct RPC Programs > > > > > > > > They are distinct but they are not separate. They function as a > > > > single protocol. > > > > > > > > RFC5661 does not say it describes two protocols. It says it > describes a single protocol, NFSv4.1, which operates in both directions. > > > > > > > > > (and thus are > > > > > different ULPs), IMO. > > > > > > > > I don't think it is actually your opinion that forward and backward > direction NFSv4 operations are part of two separate protocols. If it is, > this is a very new opinion. > > > > > > How do we define Upper Layer Protocol? An Upper Layer > > > Binding applies to an Upper Layer Protocol, which is > > > defined as a distinct RPC Program and Version. See > > > Section 7 rfc5666bis: > > > > > > > Each RPC Program and Version tuple that utilizes RPC-over-RDMA > > > > Version One needs to have an Upper Layer Binding specification. > > > > > > > > > RFC 5661/2 define two separate RPC Programs, thus > > > separate ULBs are needed, according to rfc5666bis. > > > > > > This is the way the I-Ds are written now. I am > > > willing to entertain alternatives. > > > > > > > > > > > So what is the essential difference we want to call out > > > > > here? Thinking aloud: > > > > > > > > > If a backward-only ULP is defined by itself, it has to > > > > > have a statement, even a simple one, about DDP-eligible > > > > > data items. > > > > > > > > Right, but my concern about section 7 was that it seemed that was > the only case that was addressed there and, as I read it, bidirectional > operation was not addressed. > > > > > > I don't see how backward-only and bidirectional operation > > > are addressed separately, except for the separate definitions > > > in Section 2. Can you give other examples of where they are > > > separately treated? > > > > > > > > > > > If a backward-only ULP is defined along side a forward > > > > > only ULP, it can fall back on the default DDP-eligibility > > > > > stated in rfc5666bis (or the equivalent normative > > > > > standard that specifies the RPC-over-RDMA version that > > > > > is being used). > > > > > > > > Yes, but as the bidirection docment is now, you also have to make > provision for the non-default case, in which there might be backward > DDP-eligible items. > > > > > > > > So I guess you are saying, and it might even be your opinion that > forward and backward direction are two protocols, described "alongside" one > another. If that's your opinion and you want to say it that way OK, but it > might be confusing to people. If you are going to adopt that usage, you > should make it clear by citing the case of NFSv4.1, that that is what you > mean. > > > > > > > > > If a ULP defines operations that can flow in either > > > > > direction, then what? Note: we don't have one of these > > > > > yet, AFAIK. > > > > > > > > In that case, the ULB is responsible for defining DDP-eligibility > for transmission in both directions. > > > > > > > > there isn't a case yet, but neither is there a case of backward > direction chunks. This sort of spec needs to address these kinds of > future possibilities the best that it can. > > > > > > > > Fortunately, in this case, that isn't all that hard. > > > > > > > > > I don't see why these distinctions are necessary. > > > > > > > > They aren't necessary, but they have been made and given that they > have been made, you have to deal with the consequences of having made them. > > > > > > > > In this case, if you want to treat bidirectional and backward > direction operation the same, from the ULB viewpoint, you have to state > that that is what you are doing. > > > > > > > > > How about: Before any operation can flow in either > > > > > direction, it MUST be covered by a DDP-eligibility > > > > > statement. > > > > > > > > OK, except for the "MUST". > > > > > > It's the same MUST that applies to other ULPs, stated > > > in rfc5666bis Section 7. > > > > > > > > > > > If there is an associated forward-only ULP that already > > > > > has a binding, the backward operations are covered by > > > > > that binding (meaning: if the backward operations are > > > > > not mentioned, they have the default DDP eligibility). > > > > > > > > I guess that works but I think that you are adding confusion > > > > by trying to treat NFSv4.1 as two protocols. If you want to do > > > > that, you need to make clear, in the introduction if necessary, > > > > that that is what you are doing > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Wed, May 18, 2016 at 3:44 PM, Chuck Lever <chuck.lever@oracle.com> > wrote: > > > > Hi Dave- > > > > > > > > > > > > > On May 5, 2016, at 10:07 AM, Chuck Lever <chuck.lever@oracle.com> > wrote: > > > > > > > > > > > > > > >> On May 4, 2016, at 1:10 PM, David Noveck <davenoveck@gmail.com> > wrote: > > > > >> > > > > >> 7. Backward Direction Upper Layer Binding > > > > >> The basic problem in this section is that it concerns itself with > ULBs for the backward direction case while the more important case of > bidirectional operation is not explicitly addressed (except in 1. > Introduction) where it is declared out-of-scope). > > > > > > > > Maybe mark it up to my progressing years, but as I'm > > > > looking back at these comments, I find that I don't > > > > understand them at all. > > > > > > > > Where is "bi-directional operation declared out of scope?" > > > > Section 1 appropriately says that an NFSv4.x Upper Layer > > > > Binding is out of scope. It says nothing about > > > > bi-directional operation of RPC-over-RDMA. If needed I > > > > can clarify Section 1. > > > > > > > > > > > > >> I'm going to propose changes assuming that the necessary material > will be added to this section, although a separate section is possible. > > > > > > > > A separate section for what? > > > > > > > > I guess I don't understand why backward operation by > > > > itself is any different than backward operation on > > > > the same transport as forward operation. > > > > > > > > > > > > >> Suggest changing the section title to "Upper Layer Binding for > Backward Direction and Bi-directional Operation" > > > > >> Suggest adding the following new sentence to the end of the first > paragraph: > > > > >> This applies to both backward direction and bi-directional > operation. > > > > > > > > I don't understand why you believe this is necessary to > > > > state here. > > > > > > > > > > > > >> Given Chuck's choice regarding how to deal with this issue, I > suggest rewriting the third paragraph as follows: > > > > >> By default, no data items in a ULP are DDP-eligible. If there > are no DDP-eligible data items to document, the specification of > DDP-eligible items need not be part of the Upper Layer Binding for an Upper > Layer Protocol that operates only in the backward direction. > > > > > > > > That's my recollection as well. > > > > > > > > > > > > >> I suggest adding a new paragraph after the existing third > paragraph, reading as follows: > > > > >> An Upper Layer Protocol that operates on RPC-over-RDMA transports > and incorporates operation in both directions may have DDP-eligible data > items for transfers in either or both directions. All of these are > specified in an Upper Layer Binding document, as they would be for a > protocol which only operates in a single direction. This applies even when, > as in the case of NFSv4. the XDR is constructed so that each direction of > operation is defined as part of a separate XDR program. > > > > > > > > OK, but: don't NFSv4.1 callback operations also use a > > > > different RPC program than NFSv4.1 forward channel > > > > operations? Since there is a separate XDR definition, > > > > and a unique RPC Program number, that makes these two > > > > separate and distinct RPC Programs (and thus are > > > > different ULPs), IMO. > > > > > > > > So what is the essential difference we want to call out > > > > here? Thinking aloud: > > > > > > > > If a backward-only ULP is defined by itself, it has to > > > > have a statement, even a simple one, about DDP-eligible > > > > data items. > > > > > > > > If a backward-only ULP is defined along side a forward > > > > only ULP, it can fall back on the default DDP-eligibility > > > > stated in rfc5666bis (or the equivalent normative > > > > standard that specifies the RPC-over-RDMA version that > > > > is being used). > > > > > > > > If a ULP defines operations that can flow in either > > > > direction, then what? Note: we don't have one of these > > > > yet, AFAIK. > > > > > > > > I don't see why these distinctions are necessary. > > > > > > > > How about: Before any operation can flow in either > > > > direction, it MUST be covered by a DDP-eligibility > > > > statement. > > > > > > > > If there is an associated forward-only ULP that already > > > > has a binding, the backward operations are covered by > > > > that binding (meaning: if the backward operations are > > > > not mentioned, they have the default DDP eligibility). > > > > > > > > > > > > -- > > > > Chuck Lever > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > nfsv4 mailing list > > > > nfsv4@ietf.org > > > > https://www.ietf.org/mailman/listinfo/nfsv4 > > > > > > -- > > > Chuck Lever > > > > > > > > > > > > > > > > -- > > Chuck Lever > > > > > > > > > > -- > Chuck Lever > > > >
- [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bidire… David Noveck
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… David Noveck
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… David Noveck
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… David Noveck
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… David Noveck
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Spencer Shepler
- Re: [nfsv4] review of draft-ietf-nfsv4-rpcrdma-bi… Chuck Lever