Re: [nfsv4] questions about flow control

Tom Talpey <tom@talpey.com> Fri, 30 April 2021 18:48 UTC

Return-Path: <tom@talpey.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 D895B3A22B7 for <nfsv4@ietfa.amsl.com>; Fri, 30 Apr 2021 11:48:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 tF-JjhkGLJDL for <nfsv4@ietfa.amsl.com>; Fri, 30 Apr 2021 11:47:58 -0700 (PDT)
Received: from p3plsmtpa06-03.prod.phx3.secureserver.net (p3plsmtpa06-03.prod.phx3.secureserver.net [173.201.192.104]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 940413A22B5 for <nfsv4@ietf.org>; Fri, 30 Apr 2021 11:47:58 -0700 (PDT)
Received: from [192.168.0.100] ([71.184.94.153]) by :SMTPAUTH: with ESMTPSA id cYBBl06NulaXacYBBlmDyE; Fri, 30 Apr 2021 11:47:57 -0700
X-CMAE-Analysis: v=2.4 cv=eKjWMFl1 c=1 sm=1 tr=0 ts=608c50dd a=vbvdVb1zh1xTTaY8rfQfKQ==:117 a=vbvdVb1zh1xTTaY8rfQfKQ==:17 a=IkcTkHD0fZMA:10 a=hNOTfydlAAAA:8 a=N54-gffFAAAA:8 a=48vgC7mUAAAA:8 a=CjOtA4vgPKe4AuRLyv4A:9 a=oABMmfqhvvAvyOfd:21 a=ki5xiksWWP9pmg8S:21 a=QEXdDO2ut3YA:10 a=fZunMKNLB757I4m4HZ3M:22 a=6l0D2HzqY3Epnrm8mE3f:22 a=w1C3t2QeGrPiZgrLijVG:22
X-SECURESERVER-ACCT: tom@talpey.com
To: nfsv4@ietf.org
References: <EAF8A6D7-5E55-4078-945A-8DA8CF28496D@oracle.com>
From: Tom Talpey <tom@talpey.com>
Message-ID: <ca0c12b1-f43d-5205-0b3d-26b3179a865a@talpey.com>
Date: Fri, 30 Apr 2021 14:47:57 -0400
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.12.1
MIME-Version: 1.0
In-Reply-To: <EAF8A6D7-5E55-4078-945A-8DA8CF28496D@oracle.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-CMAE-Envelope: MS4xfLorRMGPVDoaTYH+pbrasVD5Fw0mQeqaN86zmhgvggzJwrf8Ox/kyc764wBFR8LKGaV0Q0wWoE39g25sM6H4dDhm0uOiyd5jVL77dqFmZbacVGuPsvJT DGbnjWQWO6Qd0utZlThr9CV026MEgUv9OgVU5l7Qj9/TwwIm0nWqjl+olDmkD/SYSA91umx9AhmayQ==
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/6UPWVAMJEnvwMYeXd-mfIH1W8og>
Subject: Re: [nfsv4] questions about flow control
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.29
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, 30 Apr 2021 18:48:03 -0000

I'd be happy to discuss it with you, and you and I may have
done so in the past, regarding the approach made by SMB Direct.
This 2012 presentation* discusses some of that design, and
it's perhaps my suggestion to separate the credit protocol
from the credit policy. The protocol is the easy part, honestly.

I'd advise against using the methods in the ATM paper you
cite, at least on their face. These crediting approaches are
largely attempting to meter available bandwidth. They also
are for protocols which are tolerant of loss. This is a very
different goal from the RDMA crediting required to provide a
reliable stream of requests and responses.

Tom.

* 
https://www.snia.org/sites/default/orig/SDC2012/presentations/Revisions/TomTalpeyKramer-High_Performance__File.pdf

On 4/29/2021 2:16 PM, Chuck Lever III wrote:
> Howdy-
> 
> We're working on prototyping RPC/RDMA version two. As many of
> you know, RPC/RDMA uses credit-based flow control.
> 
> I've presented to the WG before on the kinds of improvements
> to credit accounting we need to make over version one of
> RPC/RDMA in order to support control plane operations and
> message continuation -- cases where we no longer have
> perfectly symmetrical Call/Reply pairing.
> 
> I'm looking at Section 4.2.1.1 of draft-ietf-nfsv4-rpcrdma-version-two
> as it is currently constructed and I'm finding it ...
> underwhelming.
> 
> I'm thinking of replacing it with something more akin to the
> original forms of credit-based flow control, as described in
> Chapter 4 of:
> 
> https://dl.acm.org/doi/pdf/10.1145/190314.190324
> 
> and implemented in the form of Chapter 5 of that paper. The
> rdma_credits field would be filled in with the sender's Vr,
> in both directions, and N2 + N3 would be the credit limit. We
> would need to add some kind of "reset credit accounting"
> message as well.
> 
> I'm not feeling confident about this choice, however. Does
> anyone know a person or people who could answer some questions
> about flow control design? Or is there a good reference I could
> read to help me understand fundamentals and common pitfalls?
> 
> Many thanks in advance!
> 
> 
> --
> Chuck Lever
> 
> 
> 
> _______________________________________________
> nfsv4 mailing list
> nfsv4@ietf.org
> https://www.ietf.org/mailman/listinfo/nfsv4
>