[nfsv4] Expert review of NFSv4 RDMA private data draft (draft-ietf-nfsv4-rpcrdma-cm-pvt-data-05)

"Black, David" <David.Black@dell.com> Thu, 12 December 2019 22:06 UTC

Return-Path: <David.Black@dell.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 0D6521200FA for <nfsv4@ietfa.amsl.com>; Thu, 12 Dec 2019 14:06:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.698
X-Spam-Level:
X-Spam-Status: No, score=-2.698 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=dell.com header.b=yc8ixc7I; dkim=pass (1024-bit key) header.d=dell.onmicrosoft.com header.b=CA4LxA7h
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 1GyPC9Qgbwu9 for <nfsv4@ietfa.amsl.com>; Thu, 12 Dec 2019 14:06:25 -0800 (PST)
Received: from mx0a-00154904.pphosted.com (mx0a-00154904.pphosted.com [148.163.133.20]) (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 311CF120024 for <nfsv4@ietf.org>; Thu, 12 Dec 2019 14:06:25 -0800 (PST)
Received: from pps.filterd (m0170391.ppops.net [127.0.0.1]) by mx0a-00154904.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id xBCM6NfF013638; Thu, 12 Dec 2019 17:06:23 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dell.com; h=from : to : cc : subject : date : message-id : content-type : mime-version; s=smtpout1; bh=RewGkwtF3ryzzPznN4uwavwCwKjebPztaoagVAopV0s=; b=yc8ixc7IjIQf/sNvoFqGNurpWm8npP/dlkGb99nD3P+4B0DDftUQpfQm33U+K5wYnUXn jo387tnrp5t99KuM0HEnsrjvZZZi5dEn0lr7MBxTw6BycTHXjioGYW1TWlYN02pJbG/G iQ5l6Fu7nKRs2KUvKGkLIKNx6dd3RoxqZ2UQl3N0mtvdTC1RqTqVsQX+tNk+H2yxxlBW WfNcEn/a4fTS9IMxLZZX6utIJQKf1KNn7IiJWPuOJ+tQaVK8LyJMm3/K8s0PYE9tgUkp nx9Yotd+xE1fb/ZB+8rBZjlzk564jpoHb7ew68dD4u4PU/nom/MKbO3va5WFfj+WbNZI Hw==
Received: from mx0a-00154901.pphosted.com (mx0a-00154901.pphosted.com [67.231.149.39]) by mx0a-00154904.pphosted.com with ESMTP id 2wtq88sbfr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Dec 2019 17:06:23 -0500
Received: from pps.filterd (m0142693.ppops.net [127.0.0.1]) by mx0a-00154901.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id xBCLvVSF150494; Thu, 12 Dec 2019 17:06:22 -0500
Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2045.outbound.protection.outlook.com [104.47.66.45]) by mx0a-00154901.pphosted.com with ESMTP id 2wujfkurru-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 12 Dec 2019 17:06:22 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lIr4Np3KsotJM/ZPJGME4K9JsTqpa/38+w60pHOoPmzB2gOvtlvyTx5HnCwPFJ39/vPAftbSemnNT2wIvKPiFzYJ/NsBK3OP7K+kdUkwwakF9ALSMDTfkpwWmhS8gTvYqKuVBYUKx8/bfzCMmBDS745gSJ1yOgnwBptA0CKuiWA/dBDokn9+oKipOIQxaDs6nhrx84Yt1569Lz4OlI+kXT09JMWBgtJNRSgq6KFtFzCYwOes4l5xzF4x/WXZX9bbYVckhpIv+mBvxq2XAqKtHvf+GaN8DiADFeFCuAsoNAaySR9YA7vXbyxT14tXivVBkjw8CWvL9rIID3oTgpkK9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RewGkwtF3ryzzPznN4uwavwCwKjebPztaoagVAopV0s=; b=cInWmjXeRL12KxPj8Ksi+kebUSQ8dkoCsfUO0D0uRroxErAH61vv7MaGokmTpoaRpoRdVVyOMkZpIbiWT0zH0wWstGwEvezlyEUbFsiJqdou3Wzn+xgjvwV2G8mFOZk6ze0kw/ZgMrGFRtSiiSOryOjFix+rNQ85R7I4jMAZijjN3CWiROl4Fm98UsPCmIy0NKD6k8QsN5kRf7f+20GD7PL59enK08DM8bAsN9WNZb7ZUHC4lrUpkBq9SDVJ6zvZE1Leg6rD6KWLRUHoZKjc9zjql66xmo5s/YfGBwBdwgCYme9pgjgz0rar/feCRlybbMm3yKzS0fEmydn/K4V6IQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=dell.com; dmarc=pass action=none header.from=dell.com; dkim=pass header.d=dell.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Dell.onmicrosoft.com; s=selector1-Dell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RewGkwtF3ryzzPznN4uwavwCwKjebPztaoagVAopV0s=; b=CA4LxA7hUIyatjDkax6IVTjx3eVKRLuEhA2f38mjwL0tI/aEyOQs4xwINTp+1PuuFkFmNw9Wx0gJE33TKI+GBmQFhyN1xmG+MwsnIxayduhyLSS7xg4v9OVYVvXYgc1k7r+eBiNNc9lzeRXhoXYCLF5LEeVDN2WgMUbRaic8iaE=
Received: from MN2PR19MB4045.namprd19.prod.outlook.com (10.186.145.137) by MN2PR19MB2989.namprd19.prod.outlook.com (20.179.80.212) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2538.15; Thu, 12 Dec 2019 22:06:20 +0000
Received: from MN2PR19MB4045.namprd19.prod.outlook.com ([fe80::9ce:496d:8c66:87d4]) by MN2PR19MB4045.namprd19.prod.outlook.com ([fe80::9ce:496d:8c66:87d4%7]) with mapi id 15.20.2538.017; Thu, 12 Dec 2019 22:06:20 +0000
From: "Black, David" <David.Black@dell.com>
To: NFSv4 <nfsv4@ietf.org>
CC: "Minturn, Dave B" <dave.b.minturn@intel.com>, "sean.hefty@intel.com" <sean.hefty@intel.com>, "Black, David" <David.Black@dell.com>
Thread-Topic: Expert review of NFSv4 RDMA private data draft (draft-ietf-nfsv4-rpcrdma-cm-pvt-data-05)
Thread-Index: AdWxOGHUKlOjJitpQCGI67xVIWAFxw==
Date: Thu, 12 Dec 2019 22:06:20 +0000
Message-ID: <MN2PR19MB4045E8323EF839730ED0AEDD83550@MN2PR19MB4045.namprd19.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Enabled=True; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_SiteId=945c199a-83a2-4e80-9f8c-5a91be5752dd; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Owner=david.black@emc.com; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_SetDate=2019-12-12T22:06:11.0162615Z; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Name=External Public; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Application=Microsoft Azure Information Protection; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Extended_MSFT_Method=Manual; aiplabel=External Public
x-originating-ip: [168.159.213.213]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7439334b-13bc-4454-44e4-08d77f4f8511
x-ms-traffictypediagnostic: MN2PR19MB2989:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MN2PR19MB2989E475025AC475438C5FFF83550@MN2PR19MB2989.namprd19.prod.outlook.com>
x-exotenant: 2khUwGVqB6N9v58KS13ncyUmMJd8q4
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 0249EFCB0B
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(346002)(376002)(136003)(366004)(39860400002)(189003)(7502003)(199004)(66946007)(66556008)(64756008)(76116006)(6916009)(26005)(7696005)(71200400001)(66574012)(6506007)(66446008)(66476007)(53546011)(107886003)(33656002)(186003)(478600001)(316002)(52536014)(4326008)(8936002)(81166006)(81156014)(786003)(2906002)(966005)(9686003)(8676002)(5660300002)(55016002)(54906003)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:MN2PR19MB2989; H:MN2PR19MB4045.namprd19.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: dell.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 6WBvHCrX3jHgoh6w0koXn/Md68pdhFF372L6Z6rnAHfNUayGN8fPD/7omx0Q7BqYNGGZRHVe2jjcA28fqbTRVZuKpvke5CNEGeLHyrNwFodWUTaML/fcXWNA/cA2dN9x8a27IxFd19v+CSW+3wKeU/hyQJQXrqQPKAsniwbuKWBvqIIm4koWPsloA9qOjYls8lWB9N7DoN4whOup9deAEMdnRUapE+8LES/8J2pQpNjw05FvhOmHo6+WtN71wPEOL/m6Nx/lXIM8r6Vn4qCkloF+jKjfrPmGvlHDrulycgRuzN2Prbe7aOZbCkX8nZXJjKBXJluNmcz44HustEw4ddetjxYOUsuyiOByCZbIYE9WLHHblUasweSadjK3aqu+i6wBPoNKQxT2iKSALdEH706o7sx+VvVRdefSW2qIX4ou4ok5ne7eQVjL+RAXUf0bkPLnb4PzODmzkxwAqCo/bzO8d5luabMf3x05q3gUqZX2+rKbe9W/iJ9ZxgDVnITb
Content-Type: multipart/alternative; boundary="_000_MN2PR19MB4045E8323EF839730ED0AEDD83550MN2PR19MB4045namp_"
MIME-Version: 1.0
X-OriginatorOrg: Dell.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7439334b-13bc-4454-44e4-08d77f4f8511
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Dec 2019 22:06:20.6695 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 945c199a-83a2-4e80-9f8c-5a91be5752dd
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Rq0rjW3LvQEANA89sjm2/MQNJ/LJAQ4Iy6FIWheX0EmpoqBUMolsQ0x+gnukuR+cebRuBtX84y1WVjaoQj5VZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR19MB2989
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,18.0.572 definitions=2019-12-12_07:2019-12-12,2019-12-12 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 mlxlogscore=999 impostorscore=0 bulkscore=0 suspectscore=0 adultscore=0 phishscore=0 spamscore=0 mlxscore=0 lowpriorityscore=0 clxscore=1011 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1910280000 definitions=main-1912120168
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 phishscore=0 adultscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 lowpriorityscore=0 mlxscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1910280000 definitions=main-1912120170
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/JTK_m0TdDSQTF9PzaqWrPYnnIzw>
Subject: [nfsv4] Expert review of NFSv4 RDMA private data draft (draft-ietf-nfsv4-rpcrdma-cm-pvt-data-05)
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: Thu, 12 Dec 2019 22:06:28 -0000

With credit to Magnus (AD responsible for nfsv4 WG) for pinging me behind the scenes, I was able to obtain an expert review (see below) for the RDMA private data draft.

Please keep Dave Minturn  and Sean Hefty on cc: and take it easy on email volume, as they're doing the WG a favor.

Thanks, --David

From: Hefty, Sean <sean.hefty@intel.com<mailto:sean.hefty@intel.com>>
Sent: Monday, December 9, 2019 6:08 PM
To: Minturn, Dave B <dave.b.minturn@intel.com<mailto:dave.b.minturn@intel.com>>
Subject: RE: Question regarding RDMA CM Private Data

Just reading your comments, CM private data is the correct name.  The amount of data present is defined by the spec, with a portion of the data consumed by the RDMA CM protocol itself.  I *think* there's something like 48 bytes to play with on connection requests.

I agree that the format specifier is useless.  There are many existing users which could be setting the private data to anything.  You really need to rely on the port numbers being correct, with checks on the other fields detecting mismatched protocols.  The private data is and has been exposed directly to user space applications for years, so anything there is fair play.

In order to standardize the private data format, you would need to change the version of the RDMA CM header carried in the private data of the underlying transport.

The field sizes for the send/recv sizes look too small to me, unless those fields are scaled somehow.


From: Minturn, Dave B <dave.b.minturn@intel.com<mailto:dave.b.minturn@intel.com>>
Sent: Monday, December 9, 2019 5:03 PM
To: Hefty, Sean <sean.hefty@intel.com<mailto:sean.hefty@intel.com>>
Subject: Question regarding RDMA CM Private Data

Hi Sean,

David Black contacted me and asked if I could review an IETF RFC for NFS/RDMA's use of RDMA CM's private data.  The RFC reference is:  https://tools.ietf.org/pdf/draft-ietf-nfsv4-rpcrdma-cm-pvt-data-05.pdf
It would be great if you could take a look.  I called out some items I saw but you are the expert in this area.
..Dave

Here are some items that I had questions/concerns with: (Section 4)

When an RPC-over-RDMA version 1 transport connection is
established, the client (which actively establishes connections) and
the server (which passively accepts connections) populate the CM
Private Data field exchanged as part of CM connection establishment.

>>  Is "CM Private Data" the proper name?

For RPC-over-RDMA version 1, the CM Private Data field is formatted
as described in the following subsection. RPC clients and servers
use the same format. If the capacity of the Private Data field is
too small to contain this message format, the underlying RDMA
transport is not managed by a Connection Manager, or the underlying
RDMA transport uses Private Data for its own purposes, the CM Private
Data field cannot be used on behalf of RPC-over-RDMA version 1.

>> This statement seemed unnecessary because it's transparent to the RFC ULP if the RDMA transport
>> is using Private Data.  Seems more appropriate to say something about the <capacity> of the Private Data
>> field length being RDMA transport dependent.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Format Identifier                                                                                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version           | Flags         | Send Size               | Receive Size      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Format Identifier: This field contains a fixed 32-bit value that
identifies the content of the Private Data field as an RPC-over-
RDMA version 1 CM Private Data message. In RPC-over-RDMA version
1 Private Data, the value of this field is always 0xf6ab0e18, in
network byte order. The use of this field is further expanded
upon in Section 4.1.
4.1.2. Amongst Implementations of Other Upper-Layer Protocols
The Format Identifier field in the message format defined in this
document is provided to enable implementations to distinguish RPC-
over-RDMA version 1 Private Data from application-specific private
data inserted by applications other than RPC-over RDMA version 1.
Examples of other applications that make use of CM Private Data
include iWARP, via the MPA enhancement described in [RFC6581], and
iSCSI extensions for RDMA (iSER), as defined in [RFC7145].
During connection establishment, an implementation of the extension
described in this document checks the Format Identifier field before
decoding subsequent fields. If the RPC-over-RDMA version 1 CM
Private Data Format Identifier is not present as the first 4 octets,
an RPC-over-RDMA version 1 receiver MUST ignore the CM Private Data,
behaving as if no RPC-over-RDMA version 1 Private Data has been
provided (see above).
>>  It seems wrong to assume that no other RDMA ULP will put that "magic #" in.   Maybe
>> if combined with a well know port, but even then it's for sure.  Now that I said that,
>> I found the following text proposing using IANA to standardize the RDMA_CM private data
>>
. IANA Considerations
In accordance with [RFC8126], the author requests that IANA create a
new registry in the "Remote Direct Data Placement" Protocol Category
Group. The new registry is to be called the "RDMA-CM Private Data
Lever Expires May 11, 2020 [Page 8]
Internet-Draft RPC-Over-RDMA CM Private Data November 2019
Identifier Registry". This is a registry of 32-bit numbers that
identify the upper-layer protocol associated with data that appears
in the application-specific RDMA-CM Private Data area. The fields in
this registry include: Format Identifier, Description, and Reference.
The initial contents of this registry are a single entry:
+------------------+------------------------------------+-----------+
| Format | Format Description | Reference |
| Identifier | | |
+------------------+------------------------------------+-----------+
| 0xf6ab0e18 | RPC-over-RDMA version 1 CM Private | [RFC-TBD] |
| | Data | |
+------------------+------------------------------------+-----------+
Table 1: RDMA-CM Private Data Identifier Registry
IANA is to assign subsequent new entries in this registry using the
Expert Review policy as defined in Section 4.5 of [RFC8126].