draft-ietf-nfsv4-nfsdirect-02.txt   draft-ietf-nfsv4-nfsdirect-03.txt 
Internet-Draft Brent Callaghan Internet-Draft Tom Talpey
Expires: April 2006 Tom Talpey Expires: December 2006 Brent Callaghan
Document: draft-ietf-nfsv4-nfsdirect-02 October, 2005 Document: draft-ietf-nfsv4-nfsdirect-03 June, 2006
NFS Direct Data Placement NFS Direct Data Placement
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
Internet-Drafts are draft documents valid for a maximum of six Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other docu- months and may be updated, replaced, or obsoleted by other
ments at any time. It is inappropriate to use Internet-Drafts as documents at any time. It is inappropriate to use Internet-Drafts
reference material or to cite them other than as "work in as reference material or to cite them other than as "work in
progress." progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt The list of Inter- http://www.ietf.org/ietf/1id-abstracts.txt
net-Draft Shadow Directories can be accessed at
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Abstract
The RDMA transport for ONC RPC provides direct data placement for NFS The RDMA transport for ONC RPC provides direct data placement for NFS
data. Direct data placement not only reduces the amount of data that data. Direct data placement not only reduces the amount of data that
needs to be copied in an NFS call, but allows much of the data needs to be copied in an NFS call, but allows much of the data
movement over the network to be implemented in RDMA hardware. This movement over the network to be implemented in RDMA hardware. This
draft describes the use of direct data placement by means of server- draft describes the use of direct data placement by means of server-
initiated RDMA operations into client-supplied buffers in a Chunk initiated RDMA operations into client-supplied buffers in a Chunk
skipping to change at page 2, line 14 skipping to change at page 2, line 14
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Transfers from NFS Client to NFS Server . . . . . . . . . . 2 2. Transfers from NFS Client to NFS Server . . . . . . . . . . 2
3. Transfers from NFS Server to NFS Client . . . . . . . . . . 2 3. Transfers from NFS Server to NFS Client . . . . . . . . . . 2
4. NFS Versions 2 and 3 Mapping . . . . . . . . . . . . . . . . 4 4. NFS Versions 2 and 3 Mapping . . . . . . . . . . . . . . . . 4
5. NFS Version 4 Mapping . . . . . . . . . . . . . . . . . . . 5 5. NFS Version 4 Mapping . . . . . . . . . . . . . . . . . . . 5
6. Security . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6. Security . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . 7 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . 7
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8
9. Normative References . . . . . . . . . . . . . . . . . . . . 7 9. Normative References . . . . . . . . . . . . . . . . . . . . 8
10. Informative References . . . . . . . . . . . . . . . . . . 8 10. Informative References . . . . . . . . . . . . . . . . . . 8
11. Authors' Addresses . . . . . . . . . . . . . . . . . . . . 8 11. Authors' Addresses . . . . . . . . . . . . . . . . . . . . 9
12. Intellectual Property and Copyright Statements . . . . . . 8 12. Intellectual Property and Copyright Statements . . . . . . 9
Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . 9 Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction 1. Introduction
The RDMA Transport for ONC RPC [RPCRDMA] allows an RPC client The RDMA Transport for ONC RPC [RPCRDMA] allows an RPC client
application to post buffers in a Chunk list for specific arguments application to post buffers in a Chunk list for specific arguments
and results from an RPC call. The RDMA transport header conveys this and results from an RPC call. The RDMA transport header conveys this
list of client buffer addresses to the server where the application list of client buffer addresses to the server where the application
can associate them with client data and use RDMA operations to can associate them with client data and use RDMA operations to
transfer the results directly to and from the posted buffers on the transfer the results directly to and from the posted buffers on the
client. The client and server must agree on a consistent mapping of client. The client and server must agree on a consistent mapping of
posted buffers to RPC. This document details the mapping for each posted buffers to RPC. This document details the mapping for each
version of the NFS protocol. version of the NFS protocol [RFC1831] [RFC1832] [RFC1094] [RFC1813]
[RFC3530] [NFSv4.1].
2. Transfers from NFS Client to NFS Server 2. Transfers from NFS Client to NFS Server
The RDMA Read list, in the RDMA transport header, allows an RPC The RDMA Read list, in the RDMA transport header, allows an RPC
client to marshal RPC call data selectively. Large chunks of data, client to marshal RPC call data selectively. Large chunks of data,
such as the file data of an NFS WRITE request, may be referenced by such as the file data of an NFS WRITE request, may be referenced by
an RDMA Read list and be moved efficiently and directly-placed by an an RDMA Read list and be moved efficiently and directly-placed by an
RDMA READ operation initiated by the server. RDMA READ operation initiated by the server.
The process of identifying these chunks for the RDMA Read list can be The process of identifying these chunks for the RDMA Read list can be
skipping to change at page 7, line 14 skipping to change at page 7, line 14
restrict its use of optional padding to COMPOUND requests containing restrict its use of optional padding to COMPOUND requests containing
only a single WRITE operation. only a single WRITE operation.
Unlike NFS versions 2 and 3, the maximum size of an NFS version 4 Unlike NFS versions 2 and 3, the maximum size of an NFS version 4
COMPOUND is unbounded, even when RDMA chunks are in use. While it COMPOUND is unbounded, even when RDMA chunks are in use. While it
might appear that a configuration protocol exchange (such as the one might appear that a configuration protocol exchange (such as the one
described in [RPCRDMA]) would help, in fact the layering issues described in [RPCRDMA]) would help, in fact the layering issues
involved in building COMPOUNDs by NFS make such a mechanism involved in building COMPOUNDs by NFS make such a mechanism
unworkable. Instead, an extension to NFS version 4 supporting a more unworkable. Instead, an extension to NFS version 4 supporting a more
comprehensive exchange of upper layer (NFSv4) parameters is proposed comprehensive exchange of upper layer (NFSv4) parameters is proposed
in [NFSSESS]. This proposal also addresses other use of the sizes, in [NFSv4.1]. This proposal also addresses other use of the sizes,
such as in the server's response cache. such as in the server's response cache.
6. Security 6. Security
The RDMA transport for ONC RPC supports RPCSEC_GSS security as well The RDMA transport for ONC RPC supports RPCSEC_GSS security as well
as link-level security. The use of RDMA Write to return RPC results as link-level security. The use of RDMA Write to return RPC results
does not affect ONC RPC security. does not affect ONC RPC security.
7. IANA Considerations 7. IANA Considerations
NFS use of direct data placement introduces no new IANA NFS use of direct data placement may introduce a need for an
considerations. additional NFS port number assignment for networks which share
traditional UDP and TCP port spaces with RDMA services. The iWARP
[DDP] [RDMAP] protocol is such an example (Infiniband is not).
NFS servers for versions 2 and 3 [RFC1094] [RFC1813] traditionally
listen for clients on UDP and TCP port 2049, and additionally, they
register these with the portmapper. NFS servers for version 4
[RFC3050] are required to listen on TCP port 2049, and are not
required to register.
An NFS version 2 or version 3 server supporting RPC/RDMA on such a
network and registering itself with the RPC portmapper may choose an
arbitrary port, or may be assigned an alternative well-known port
number for its RPC/RDMA service by IANA. The chosen port must be
registered with the RPC portmapper under the netid assigned by the
requirement in [RPCRDMA].
An NFS version 4 server supporting RPC/RDMA on such a network must be
assigned an alternative well-known port number for its RPC/RDMA
service by IANA. Clients will connect to this well-known port
without consulting the RPC portmapper (as for NFSv4/TCP).
Any subsequent NFS version 4 minor version's [NFSv4.1] server may
reuse port 2049, by requiring the client to perform the RDMA session
negotiation supported by this protocol. If it does not require the
client to negotiate an RDMA-enabled session, it must use the
alternative port for RPC/RDMA, as for version 4.
This is not an issue on non-IP transports such as native Infiniband,
where a non-colliding port translation scheme is used [IBPORT]. On
such interfaces, the server can simply listen on the port mapped from
the IANA-assigned NFS 2049, or any other port as assigned by the
native transport. Such assignments are out of the scope of IANA, and
of this document.
8. Acknowledgements 8. Acknowledgements
The authors would like to thank Dave Noveck and Chet Juszczak for The authors would like to thank Dave Noveck and Chet Juszczak for
their contributions to this document. their contributions to this document.
9. Normative References 9. Normative References
[RFC1831] [RFC1831]
R. Srinivasan, "RPC: Remote Procedure Call Protocol Specification R. Srinivasan, "RPC: Remote Procedure Call Protocol Specification
skipping to change at page 8, line 18 skipping to change at page 8, line 51
[RFC3530] [RFC3530]
S. Shepler, B. Callaghan, D. Robinson, R. Thurlow, C. Beame, M. S. Shepler, B. Callaghan, D. Robinson, R. Thurlow, C. Beame, M.
Eisler, D. Noveck, "NFS version 4 Protocol", Eisler, D. Noveck, "NFS version 4 Protocol",
Standards Track RFC, Standards Track RFC,
http://www.ietf.org/rfc/rfc3530.txt http://www.ietf.org/rfc/rfc3530.txt
10. Informative References 10. Informative References
[RPCRDMA] [RPCRDMA]
B. Callaghan, T. Talpey, "RDMA Transport for ONC RPC" T. Talpey, B. Callaghan, "RDMA Transport for ONC RPC"
Internet Draft Work in Progress, Internet Draft Work in Progress,
draft-ietf-nfsv4-rpcrdma draft-ietf-nfsv4-rpcrdma
[NFSSESS] [NFSv4.1]
T. Talpey, S. Shepler, J. Bauman, "NFSv4 Session Extensions" S. Shepler, ed., "NFSv4 Minor Version 1"
Internet Draft Work in Progress, Internet Draft Work in Progress,
draft-ietf-nfsv4-sess draft-ietf-nfsv4-minorversion1
11. Authors' Addresses [DDP]
H. Shah et al, "Direct Data Placement over Reliable Transports",
Internet Draft Work in Progress,
draft-ietf-rddp-ddp
Brent Callaghan [RDMAP]
1614 Montalto Dr. R. Recio et al, "An RDMA Protocol Specification",
Mountain View, California 94040 USA Internet Draft Work in Progress,
draft-ietf-rddp-rdmap
Phone: +1 650 968 2333 [IBPORT]
EMail: brent.callaghan@gmail.com Infiniband Trade Association, "IP Addressing Annex",
available from www.infinibandta.org
11. Authors' Addresses
Tom Talpey Tom Talpey
Network Appliance, Inc. Network Appliance, Inc.
375 Totten Pond Road 375 Totten Pond Road
Waltham, MA 02451 USA Waltham, MA 02451 USA
Phone: +1 781 768 5329 Phone: +1 781 768 5329
EMail: thomas.talpey@netapp.com EMail: thomas.talpey@netapp.com
Brent Callaghan
Apple Computer, Inc.
MS: 302-4K
2 Infinite Loop
Cupertino, CA 95014 USA
EMail: brentc@apple.com
12. Intellectual Property and Copyright Statements 12. Intellectual Property and Copyright Statements
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed Intellectual Property Rights or other rights that might be claimed
to pertain to the implementation or use of the technology described to pertain to the implementation or use of the technology described
in this document or the extent to which any license under such in this document or the extent to which any license under such
rights might or might not be available; nor does it represent that rights might or might not be available; nor does it represent that
it has made any independent effort to identify any such rights. it has made any independent effort to identify any such rights.
Information on the procedures with respect to rights in RFC docu- Information on the procedures with respect to rights in RFC
ments can be found in BCP 78 and BCP 79. documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use attempt made to obtain a general license or permission for the use
of such proprietary rights by implementers or users of this speci- of such proprietary rights by implementers or users of this
fication can be obtained from the IETF on-line IPR repository at specification can be obtained from the IETF on-line IPR repository
http://www.ietf.org/ipr. at http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf- this standard. Please address the information to the IETF at ietf-
ipr@ietf.org. ipr@ietf.org.
Disclaimer of Validity Disclaimer of Validity
This document and the information contained herein are provided on This document and the information contained herein are provided on
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REP- an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
RESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND
INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
PARTICULAR PURPOSE.
Copyright Statement Copyright Statement
Copyright (C) The Internet Society (2005). This document is sub- Copyright (C) The Internet Society (2006).
ject to the rights, licenses and restrictions contained in BCP 78,
and except as set forth therein, the authors retain all their This document is subject to the rights, licenses and restrictions
rights. contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
Acknowledgement Acknowledgement
Funding for the RFC Editor function is currently provided by the Funding for the RFC Editor function is currently provided by the
Internet Society. Internet Society.
 End of changes. 21 change blocks. 
42 lines changed or deleted 95 lines changed or added

This html diff was produced by rfcdiff 1.32. The latest version is available from http://www.levkowetz.com/ietf/tools/rfcdiff/