Network Working Group M. Jethanandani Internet-Draft Ciena Corporation Intended status: Standards Track October 27, 2014 Expires: April 30, 2015 NETCONF and persistent responses draft-mahesh-netconf-persistent-00 Abstract This document outlines a solution for NETCONF operations that might be initiated with a single request but require multiple responses to be received, with an ability to terminate the operation at any time. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on April 30, 2015. Copyright Notice Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Jethanandani Expires April 30, 2015 [Page 1] Internet-Draft Persistent NETCONF October 2014 1. Introduction NETCONF [RFC6241] protocol is being positioned as a replacement for Command Line Interface (CLI) and Simple Network Management Protocol (SNMP). It is therefore expected that NETCONF will provide all the capabilities that CLI and SNMP offer today and more. One of the operations that CLI offers today is the ability to issue an operation that might result in multiple responses being returned, till such time that a terminaing condition is encountered or when the operation is cancelled. An example of such an operation is when the ping or a traceroute command is issued. In the former case, the operation can continue sending responses back till it is cancelled, while in the latter case there is usually a terminating condition that stops the responses. NETCONF protocol as defined today sends a single Remote Procedure Call (RPC) request and expects a single reply to that request. The "persistent" operation defined above expects multiple responses for a single request, till such time a terminating condition is encountered. This problem should not be confused with "bulk responses" where one might be dealing with fragments of the same response. It is not enough to have the server collect all the possible responses before responding because in some cases there may not be a response, indicating a failure and it will hold up the NETCONF session till a response is received. Section 2 suggest at least one solution to this problem. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in Key words for use in RFCs to Indicate Requirement Levels [RFC2119]. 1.1. Terminology +---------+------------------------------------+ | Acronym | Meaning | +---------+------------------------------------+ | CLI | Command Line Interface | | | | | RPC | Remote Procedure Call | | | | | SNMP | Simple Network Management Protocol | +---------+------------------------------------+ Jethanandani Expires April 30, 2015 [Page 2] Internet-Draft Persistent NETCONF October 2014 2. Solution The proper solution should address the requirement of multiple responses, fragmented responses and an ability to terminate the request without terminating the NETCONF session. This can be best achieved at the messaging layer in NETCONF, where a single request can result in multiple responses being received and way to associate the multiple responses with the original request. One of the suggested solutions would look like this. A request goes out with the operation to perform. And a reply can come back with either a as it happens today or a series of "linked replies" which would look like this. with the last reply looking like this. When the client wants to terminate the task, it issues an to terminate the condition. Note, NETCONF currently does not support this particular operation. And a reply comes back acknowledging that the task was terminated. Jethanandani Expires April 30, 2015 [Page 3] Internet-Draft Persistent NETCONF October 2014 3. IANA Considerations 4. Security Considerations 5. Acknowledgements 6. References 6.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A. Bierman, "Network Configuration Protocol (NETCONF)", RFC 6241, June 2011. 6.2. Informative References [RFC6243] Bierman, A. and B. Lengyel, "With-defaults Capability for NETCONF", RFC 6243, June 2011. Author's Address Mahesh Jethanandani Ciena Corporation 3939 North 1st Street San Jose, CA 95134 USA Phone: 408.904.2160 Fax: 408.436.5582 Email: mjethanandani@gmail.com Jethanandani Expires April 30, 2015 [Page 4]