draft-ietf-nfsv4-nfs-rdma-problem-statement-05.txt   draft-ietf-nfsv4-nfs-rdma-problem-statement-06.txt 
INTERNET-DRAFT Tom Talpey NFSv4 Working Group Tom Talpey
Expires: April 2007 Chet Juszczak Internet-Draft Network Appliance, Inc.
Intended status: Informational Chet Juszczak
October, 2006 Expires: November 8, 2007 May 7, 2007
NFS RDMA Problem Statement NFS RDMA Problem Statement
draft-ietf-nfsv4-nfs-rdma-problem-statement-05 draft-ietf-nfsv4-nfs-rdma-problem-statement-06
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 months and may be updated, replaced, or obsoleted by other
documents at any time. It is inappropriate to use Internet-Drafts documents at any time. It is inappropriate to use Internet-Drafts
as 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 http://www.ietf.org/ietf/1id-abstracts.txt
Internet-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.
This Internet-Draft will expire on November 8, 2007.
Copyright Notice
Copyright (C) The IETF Trust (2007).
Abstract Abstract
This draft addresses applying Remote Direct Memory Access to the This draft addresses applying Remote Direct Memory Access to the
NFS protocols. NFS implementations historically incur significant NFS protocols. NFS implementations historically incur significant
overhead due to data copies on end-host systems, as well as other overhead due to data copies on end-host systems, as well as other
sources. The potential benefits of RDMA to these implementations sources. The potential benefits of RDMA to these implementations
are explored, and the reasons why RDMA is especially well-suited to are explored, and the reasons why RDMA is especially well-suited to
NFS and network file protocols in general are evaluated. NFS and network file protocols in general are evaluated.
Table Of Contents Table Of Contents
skipping to change at page 2, line 15 skipping to change at page 2, line 22
4.2. Savings from RDMA . . . . . . . . . . . . . . . . . . . 9 4.2. Savings from RDMA . . . . . . . . . . . . . . . . . . . 9
5. Application of RDMA to NFS . . . . . . . . . . . . . . . . 10 5. Application of RDMA to NFS . . . . . . . . . . . . . . . . 10
6. Conclusions . . . . . . . . . . . . . . . . . . . . . . . 10 6. Conclusions . . . . . . . . . . . . . . . . . . . . . . . 10
Security Considerations . . . . . . . . . . . . . . . . . 11 Security Considerations . . . . . . . . . . . . . . . . . 11
IANA Considerations . . . . . . . . . . . . . . . . . . . 11 IANA Considerations . . . . . . . . . . . . . . . . . . . 11
Acknowledgements . . . . . . . . . . . . . . . . . . . . . 11 Acknowledgements . . . . . . . . . . . . . . . . . . . . . 11
Normative References . . . . . . . . . . . . . . . . . . . 11 Normative References . . . . . . . . . . . . . . . . . . . 11
Informative References . . . . . . . . . . . . . . . . . . 12 Informative References . . . . . . . . . . . . . . . . . . 12
Authors' Addresses . . . . . . . . . . . . . . . . . . . . 14 Authors' Addresses . . . . . . . . . . . . . . . . . . . . 14
Intellectual Property and Copyright Statements . . . . . . 14 Intellectual Property and Copyright Statements . . . . . . 14
Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . 15
1. Introduction 1. Introduction
The Network File System (NFS) protocol (as described in [RFC1094], The Network File System (NFS) protocol (as described in [RFC1094],
[RFC1813], and [RFC3530]) is one of several remote file access [RFC1813], and [RFC3530]) is one of several remote file access
protocols used in the class of processing architecture sometimes protocols used in the class of processing architecture sometimes
called Network Attached Storage (NAS). called Network Attached Storage (NAS).
Historically, remote file access has proved to be a convenient, Historically, remote file access has proved to be a convenient,
cost-effective way to share information over a network, a concept cost-effective way to share information over a network, a concept
skipping to change at page 3, line 5 skipping to change at page 3, line 12
of strong consistency guarantees being provided by NFS of strong consistency guarantees being provided by NFS
implementations. implementations.
Replication of local file access performance on NAS using Replication of local file access performance on NAS using
traditional network protocol stacks has proven difficult, not traditional network protocol stacks has proven difficult, not
because of protocol processing overheads, but because of data copy because of protocol processing overheads, but because of data copy
costs in the network endpoints. This is especially true since host costs in the network endpoints. This is especially true since host
buses are now often the main bottleneck in NAS architectures buses are now often the main bottleneck in NAS architectures
[MOG03] [CHA+01]. [MOG03] [CHA+01].
The External Data Representation [RFC1832] employed beneath NFS and The External Data Representation [RFC4506] employed beneath NFS and
RPC [RFC1831] can add more data copies, exacerbating the problem. RPC [RFC1831] can add more data copies, exacerbating the problem.
Data copy-avoidance designs have not been widely adopted for a Data copy-avoidance designs have not been widely adopted for a
variety of reasons. [BRU99] points out that "many copy avoidance variety of reasons. [BRU99] points out that "many copy avoidance
techniques for network I/O are not applicable or may even backfire techniques for network I/O are not applicable or may even backfire
if applied to file I/O." Other designs that eliminate unnecessary if applied to file I/O." Other designs that eliminate unnecessary
copies, such as [PAI+00], are incompatible with existing APIs and copies, such as [PAI+00], are incompatible with existing APIs and
therefore force application changes. therefore force application changes.
In recent years, an effort to standardize a set of protocols for In recent years, an effort to standardize a set of protocols for
skipping to change at page 6, line 8 skipping to change at page 6, line 14
In addition to the control information in each NFS call or reply In addition to the control information in each NFS call or reply
message, sometimes there are large "chunks" of application file message, sometimes there are large "chunks" of application file
data, for example read and write requests. With NFS version 4 (due data, for example read and write requests. With NFS version 4 (due
to the existence of the COMPOUND operation) there can be several of to the existence of the COMPOUND operation) there can be several of
these data chunks interspersed with control information. these data chunks interspersed with control information.
ONC RPC is a remote procedure call protocol that has been run over ONC RPC is a remote procedure call protocol that has been run over
a variety of transports. Most implementations today use UDP or a variety of transports. Most implementations today use UDP or
TCP. RPC messages are defined in terms of an eXternal Data TCP. RPC messages are defined in terms of an eXternal Data
Representation (XDR) [RFC1832] which provides a canonical data Representation (XDR) [RFC4506] which provides a canonical data
representation across a variety of host architectures. An XDR data representation across a variety of host architectures. An XDR data
stream is conveyed differently on each type of transport. On UDP, stream is conveyed differently on each type of transport. On UDP,
RPC messages are encapsulated inside datagrams, while on a TCP byte RPC messages are encapsulated inside datagrams, while on a TCP byte
stream, RPC messages are delineated by a record marking protocol. stream, RPC messages are delineated by a record marking protocol.
An RDMA transport also conveys RPC messages in a unique fashion An RDMA transport also conveys RPC messages in a unique fashion
that must be fully described if client and server implementations that must be fully described if client and server implementations
are to interoperate. are to interoperate.
The RPC transport is responsible for conveying an RPC message from The RPC transport is responsible for conveying an RPC message from
a sender to a receiver. An RPC message is either an RPC call from a sender to a receiver. An RPC message is either an RPC call from
skipping to change at page 11, line 45 skipping to change at page 12, line 4
9. Acknowledgements 9. Acknowledgements
The authors wish to thank Jeff Chase who provided many useful The authors wish to thank Jeff Chase who provided many useful
suggestions. suggestions.
10. Normative References 10. Normative References
[RFC3530] [RFC3530]
S. Shepler, et. al., "NFS Version 4 Protocol", Standards Track S. Shepler, et. al., "NFS Version 4 Protocol", Standards Track
RFC RFC
[RFC1831] [RFC1831]
R. Srinivasan, "RPC: Remote Procedure Call Protocol R. Srinivasan, "RPC: Remote Procedure Call Protocol
Specification Version 2", Standards Track RFC Specification Version 2", Standards Track RFC
[RFC1832] [RFC4506]
R. Srinivasan, "XDR: External Data Representation Standard", M. Eisler, Ed. "XDR: External Data Representation Standard",
Standards Track RFC Standards Track RFC
[RFC1813] [RFC1813]
B. Callaghan, B. Pawlowski, P. Staubach, "NFS Version 3 B. Callaghan, B. Pawlowski, P. Staubach, "NFS Version 3
Protocol Specification", Informational RFC Protocol Specification", Informational RFC
11. Informative References 11. Informative References
[BRU99] [BRU99]
J. Brustoloni, "Interoperation of copy avoidance in network J. Brustoloni, "Interoperation of copy avoidance in network
skipping to change at page 15, line 7 skipping to change at page 14, line 46
Chet Juszczak Chet Juszczak
Chet's Boathouse Co. Chet's Boathouse Co.
P.O. Box 1467 P.O. Box 1467
Merrimack, NH 03054 Merrimack, NH 03054
Email: chetnh@earthlink.net Email: chetnh@earthlink.net
Intellectual Property and Copyright Statements Intellectual Property and Copyright Statements
Intellectual Property Statement Full Copyright Statement
Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE
IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY
WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE
ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE.
Intellectual Property
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 Information on the procedures with respect to rights in RFC
documents 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
skipping to change at page 15, line 31 skipping to change at page 15, line 39
of such proprietary rights by implementers or users of this of such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository specification can be obtained from the IETF on-line IPR repository
at 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 Acknowledgment
Funding for the RFC Editor function is provided by the IETF
This document and the information contained herein are provided on Administrative Support Activity (IASA).
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR
ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The Internet Society (2006).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
 End of changes. 12 change blocks. 
13 lines changed or deleted 35 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/