draft-ietf-netconf-configuration-tracing-05.txt   draft-ietf-netconf-configuration-tracing-06.txt 
OPSAWG J. Quilbeuf OPSAWG J. Quilbeuf
Internet-Draft B. Claise Internet-Draft Huawei
Intended status: Standards Track Huawei Intended status: Standards Track B. Claise
Expires: 19 September 2025 T. Graf Expires: 7 May 2026 Everything OPS
T. Graf
Swisscom Swisscom
D. Lopez D. Lopez
Telefonica I+D Telefonica I+D
Q. Sun Q. Sun
China Telecom China Telecom
18 March 2025 3 November 2025
External Trace ID for Configuration Tracing External Trace ID for Configuration Tracing
draft-ietf-netconf-configuration-tracing-05 draft-ietf-netconf-configuration-tracing-06
Abstract Abstract
Network equipment are often configured by a variety of network Network equipment are often configured by a variety of network
management systems (NMS), protocols, and teams. If a network issue management systems (NMS), protocols, and teams. If a network issue
arises (e.g., because of a wrong configuration change), it is arises (e.g., because of a wrong configuration change), it is
important to quickly identify the root cause and obtain the reason important to quickly identify the root cause and obtain the reason
for pushing that modification. Another potential network issue can for pushing that modification. Another potential network issue can
stem from concurrent NMSes with overlapping intents, each having stem from concurrent NMSes with overlapping intents, each having
their own tasks to perform. In such a case, it is important to map their own tasks to perform. In such a case, it is important to map
skipping to change at page 2, line 15 skipping to change at page 2, line 20
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on 19 September 2025. This Internet-Draft will expire on 7 May 2026.
Copyright Notice Copyright Notice
Copyright (c) 2025 IETF Trust and the persons identified as the Copyright (c) 2025 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 7, line 39 skipping to change at page 7, line 39
Orchestrator. For 'tx-2' and 'tx-3', the client is the id of the Orchestrator. For 'tx-2' and 'tx-3', the client is the id of the
Controller. Controller.
It is technically possible that several clients push configuration to It is technically possible that several clients push configuration to
the candidate configuration datastore and only one of them commits the candidate configuration datastore and only one of them commits
the changes to the running configuration datastore. From the running the changes to the running configuration datastore. From the running
configuration datastore perspective, which is the effective one, configuration datastore perspective, which is the effective one,
there is a single modification, but caused by several clients, which there is a single modification, but caused by several clients, which
means that this modification should have several corresponding means that this modification should have several corresponding
client-ids. Although, this case is technically possible, it is a bad client-ids. Although, this case is technically possible, it is a bad
practice. We wont cover it in this document. In other terms, we practice. We won't cover it in this document. In other terms, we
assume that a given configuration modification on a server is caused assume that a given configuration modification on a server is caused
by a single client, and thus has a single corresponding client-id. by a single client, and thus has a single corresponding client-id.
4.4. Using the YANG module 4.4. Using the YANG module
The YANG module defined below enables tracing a configuration change The YANG module defined below enables tracing a configuration change
in a Network Equipment back to its origin, for instance a service in a Network Equipment back to its origin, for instance a service
request in an orchestrator. To do so, the Anomaly Detection System request in an orchestrator. To do so, the Anomaly Detection System
(ADS) should have, for each client-id, access to some credentials (ADS) should have, for each client-id, access to some credentials
enabling read access to the YANG module for configuration tracing on enabling read access to the YANG module for configuration tracing on
skipping to change at page 10, line 23 skipping to change at page 10, line 23
The presence of a client-id indicates that the trace-parent has been The presence of a client-id indicates that the trace-parent has been
transmitted by that client. If the trace is initiated by the current transmitted by that client. If the trace is initiated by the current
server, there is no associated client-id. server, there is no associated client-id.
Even if this document focuses only on NETCONF or RESTCONF, the use Even if this document focuses only on NETCONF or RESTCONF, the use
cases defined in Section 3 are not specific to NETCONF or RESTCONF cases defined in Section 3 are not specific to NETCONF or RESTCONF
and the mechanism described in this document could be adapted to and the mechanism described in this document could be adapted to
other configuration mechanisms. For instance, a configuration other configuration mechanisms. For instance, a configuration
modification pushed via CLI can be identified via a label, which modification pushed via CLI can be identified via a label, which
could contain the trace-parent. As such cases are difficult to could contain the trace-parent. As such cases are difficult to
standardize, we wont cover them in this document. standardize, we won't cover them in this document.
5.2. YANG module ietf-external-transaction-id 5.2. YANG module ietf-external-transaction-id
<CODE BEGINS> file "ietf-external-transaction-id@2021-11-03.yang" <CODE BEGINS> file "ietf-external-transaction-id@2021-11-03.yang"
module ietf-external-transaction-id { module ietf-external-transaction-id {
yang-version 1.1; yang-version 1.1;
namespace namespace
"urn:ietf:params:xml:ns:yang:ietf-external-transaction-id"; "urn:ietf:params:xml:ns:yang:ietf-external-transaction-id";
prefix ext-txid; prefix ext-txid;
skipping to change at page 15, line 11 skipping to change at page 15, line 11
This section is to be removed before publishing as an RFC. This section is to be removed before publishing as an RFC.
None None
10. Normative References 10. Normative References
[I-D.ietf-netconf-restconf-trace-ctx-headers] [I-D.ietf-netconf-restconf-trace-ctx-headers]
Gagliano, R., Larsson, K., and J. Lindblad, "RESTCONF Gagliano, R., Larsson, K., and J. Lindblad, "RESTCONF
Extension to Support Trace Context Headers", Work in Extension to Support Trace Context Headers", Work in
Progress, Internet-Draft, draft-ietf-netconf-restconf- Progress, Internet-Draft, draft-ietf-netconf-restconf-
trace-ctx-headers-06, 3 March 2025, trace-ctx-headers-07, 19 October 2025,
<https://datatracker.ietf.org/doc/html/draft-ietf-netconf- <https://datatracker.ietf.org/doc/html/draft-ietf-netconf-
restconf-trace-ctx-headers-06>. restconf-trace-ctx-headers-07>.
[I-D.ietf-netconf-trace-ctx-extension] [I-D.ietf-netconf-trace-ctx-extension]
Gagliano, R., Larsson, K., and J. Lindblad, "NETCONF Gagliano, R., Larsson, K., and J. Lindblad, "NETCONF
Extension to support Trace Context propagation", Work in Extension to support Trace Context propagation", Work in
Progress, Internet-Draft, draft-ietf-netconf-trace-ctx- Progress, Internet-Draft, draft-ietf-netconf-trace-ctx-
extension-04, 3 March 2025, extension-05, 19 October 2025,
<https://datatracker.ietf.org/doc/html/draft-ietf-netconf- <https://datatracker.ietf.org/doc/html/draft-ietf-netconf-
trace-ctx-extension-04>. trace-ctx-extension-05>.
[I-D.ietf-netconf-transaction-id] [I-D.ietf-netconf-transaction-id]
Lindblad, J., "Transaction ID Mechanism for NETCONF", Work Lindblad, J., "Transaction ID Mechanism for NETCONF", Work
in Progress, Internet-Draft, draft-ietf-netconf- in Progress, Internet-Draft, draft-ietf-netconf-
transaction-id-07, 19 October 2024, transaction-id-07, 19 October 2024,
<https://datatracker.ietf.org/doc/html/draft-ietf-netconf- <https://datatracker.ietf.org/doc/html/draft-ietf-netconf-
transaction-id-07>. transaction-id-07>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
skipping to change at page 16, line 29 skipping to change at page 16, line 29
"W3C Recommendation on Trace Context", 23 November 2021, "W3C Recommendation on Trace Context", 23 November 2021,
<https://www.w3.org/TR/2021/REC-trace-context- <https://www.w3.org/TR/2021/REC-trace-context-
1-20211123/>. 1-20211123/>.
11. Informative References 11. Informative References
[I-D.ietf-netmod-rfc8407bis] [I-D.ietf-netmod-rfc8407bis]
Bierman, A., Boucadair, M., and Q. Wu, "Guidelines for Bierman, A., Boucadair, M., and Q. Wu, "Guidelines for
Authors and Reviewers of Documents Containing YANG Data Authors and Reviewers of Documents Containing YANG Data
Models", Work in Progress, Internet-Draft, draft-ietf- Models", Work in Progress, Internet-Draft, draft-ietf-
netmod-rfc8407bis-22, 14 January 2025, netmod-rfc8407bis-28, 5 June 2025,
<https://datatracker.ietf.org/doc/html/draft-ietf-netmod- <https://datatracker.ietf.org/doc/html/draft-ietf-netmod-
rfc8407bis-22>. rfc8407bis-28>.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
DOI 10.17487/RFC3688, January 2004, DOI 10.17487/RFC3688, January 2004,
<https://www.rfc-editor.org/info/rfc3688>. <https://www.rfc-editor.org/info/rfc3688>.
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
the Network Configuration Protocol (NETCONF)", RFC 6020, the Network Configuration Protocol (NETCONF)", RFC 6020,
DOI 10.17487/RFC6020, October 2010, DOI 10.17487/RFC6020, October 2010,
<https://www.rfc-editor.org/info/rfc6020>. <https://www.rfc-editor.org/info/rfc6020>.
skipping to change at page 17, line 9 skipping to change at page 17, line 9
[RFC9417] Claise, B., Quilbeuf, J., Lopez, D., Voyer, D., and T. [RFC9417] Claise, B., Quilbeuf, J., Lopez, D., Voyer, D., and T.
Arumugam, "Service Assurance for Intent-Based Networking Arumugam, "Service Assurance for Intent-Based Networking
Architecture", RFC 9417, DOI 10.17487/RFC9417, July 2023, Architecture", RFC 9417, DOI 10.17487/RFC9417, July 2023,
<https://www.rfc-editor.org/info/rfc9417>. <https://www.rfc-editor.org/info/rfc9417>.
Appendix A. Changes between revisions Appendix A. Changes between revisions
This section is to be removed before publishing as an RFC. This section is to be removed before publishing as an RFC.
05 -> 06
* Change Benoit's affiliation
04 -> 05 04 -> 05
* Fix security considerations template * Fix security considerations template
03 -> 04 03 -> 04
* Add security and IANA considerations * Add security and IANA considerations
01 -> 02 01 -> 02
skipping to change at page 17, line 42 skipping to change at page 18, line 4
00 -> 01 00 -> 01
* Define Parent and Child Transaction * Define Parent and Child Transaction
* Context for the "local-commit-id" concept * Context for the "local-commit-id" concept
* Feedback from Med, both in text and YANG module * Feedback from Med, both in text and YANG module
Appendix B. Example of NETCONF message Appendix B. Example of NETCONF message
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1" <rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1"
xmlns:w3ctc="urn:ietf:params:xml:ns:netconf:w3ctc:1.0" xmlns:w3ctc="urn:ietf:params:xml:ns:netconf:w3ctc:1.0"
xmlns:ext-txid= xmlns:ext-txid=
"urn:ietf:params:xml:ns:yang:ietf-external-transaction-id" "urn:ietf:params:xml:ns:yang:ietf-external-transaction-id"
w3ctc:traceparent= w3ctc:traceparent=
"00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01" "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
ext-txid:client-id="controller-01"> ext-txid:client-id="controller-01">
<commit/> <commit/>
</rpc> </rpc>
Figure 4: Example of NETCONF commit RPC with annotations Figure 4: Example of NETCONF commit RPC with annotations
In Figure 4, we present an RPC annotated with the traceparent and the In Figure 4, we present an RPC annotated with the traceparent and the
client-id. The traceparent example is taken from client-id. The traceparent example is taken from
[I-D.ietf-netconf-trace-ctx-extension]. The client-id annotation is [I-D.ietf-netconf-trace-ctx-extension]. The client-id annotation is
defined in our YANG module. Here the client-id passed is defined in our YANG module. Here the client-id passed is
'controller-01'. 'controller-01'.
Acknowledgements Acknowledgements
The authors would like to thank Mohamed Boucadair, Jan Linblad and The authors would like to thank Mohamed Boucadair, Jan Linblad and
Roque Gagliano for their reviews and propositions. Roque Gagliano for their reviews and propositions.
Authors' Addresses Authors' Addresses
Jean Quilbeuf Jean Quilbeuf
Huawei Huawei
Email: jean.quilbeuf@huawei.com Email: jean.quilbeuf@huawei.com
Benoit Claise Benoit Claise
Huawei Everything OPS
Email: benoit.claise@huawei.com Email: benoit@everything-ops.net
Thomas Graf Thomas Graf
Swisscom Swisscom
Binzring 17 Binzring 17
CH-8045 Zurich CH-8045 Zurich
Switzerland Switzerland
Email: thomas.graf@swisscom.com Email: thomas.graf@swisscom.com
Diego R. Lopez Diego R. Lopez
Telefonica I+D Telefonica I+D
Don Ramon de la Cruz, 82 Don Ramon de la Cruz, 82
Madrid 28006 Madrid 28006
Spain Spain
Email: diego.r.lopez@telefonica.com Email: diego.r.lopez@telefonica.com
Qiong Sun Qiong Sun
China Telecom China Telecom
Email: sunqiong@chinatelecom.cn Email: sunqiong@chinatelecom.cn
 End of changes. 17 change blocks. 
18 lines changed or deleted 22 lines changed or added

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