draft-ietf-6man-spring-srv6-oam-07.txt   draft-ietf-6man-spring-srv6-oam-08.txt 
6man Z. Ali 6man Z. Ali
Internet-Draft C. Filsfils Internet-Draft C. Filsfils
Intended status: Standards Track Cisco Systems Intended status: Standards Track Cisco Systems
Expires: January 27, 2021 S. Matsushima Expires: May 3, 2021 S. Matsushima
Softbank Softbank
D. Voyer D. Voyer
Bell Canada Bell Canada
M. Chen M. Chen
Huawei Huawei
July 26, 2020 October 30, 2020
Operations, Administration, and Maintenance (OAM) in Segment Routing Operations, Administration, and Maintenance (OAM) in Segment Routing
Networks with IPv6 Data plane (SRv6) Networks with IPv6 Data plane (SRv6)
draft-ietf-6man-spring-srv6-oam-07 draft-ietf-6man-spring-srv6-oam-08
Abstract Abstract
This document describes how the existing IPv6 OAM mechanisms can be This document describes how the existing IPv6 mechanisms for ping and
used in an SRv6 network. The document also introduces enhancements traceroute can be used in an SRv6 network. The document also
for OAM mechanisms for SRv6 networks. specifies the OAM flag in the Segment Routing Header (SRH) for
performing controllable and predictable flow sampling from segment
endpoints. In addition, the document describes how a centralized
monitoring system performs a path continuity check between any nodes
within an SRv6 domain.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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 January 27, 2021. This Internet-Draft will expire on May 3, 2021.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 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 Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 18 skipping to change at page 2, line 23
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
1.2. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Terminology and Reference Topology . . . . . . . . . . . 3 1.3. Terminology and Reference Topology . . . . . . . . . . . 3
2. OAM Mechanisms . . . . . . . . . . . . . . . . . . . . . . . 5 2. OAM Mechanisms . . . . . . . . . . . . . . . . . . . . . . . 5
2.1. O-flag in Segment Routing Header . . . . . . . . . . . . 5 2.1. O-flag in Segment Routing Header . . . . . . . . . . . . 5
2.1.1. O-flag Processing . . . . . . . . . . . . . . . . . . 5 2.1.1. O-flag Processing . . . . . . . . . . . . . . . . . . 6
2.2. OAM Operations . . . . . . . . . . . . . . . . . . . . . 7 2.2. OAM Operations . . . . . . . . . . . . . . . . . . . . . 7
3. Illustrations . . . . . . . . . . . . . . . . . . . . . . . . 7 3. Illustrations . . . . . . . . . . . . . . . . . . . . . . . . 8
3.1. Ping in SRv6 Networks . . . . . . . . . . . . . . . . . . 8 3.1. Ping in SRv6 Networks . . . . . . . . . . . . . . . . . . 8
3.1.1. Classic Ping . . . . . . . . . . . . . . . . . . . . 8 3.1.1. Classic Ping . . . . . . . . . . . . . . . . . . . . 8
3.1.2. Pinging a SID . . . . . . . . . . . . . . . . . . . . 9 3.1.2. Pinging a SID . . . . . . . . . . . . . . . . . . . . 10
3.2. Traceroute . . . . . . . . . . . . . . . . . . . . . . . 10 3.2. Traceroute . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.1. Classic Traceroute . . . . . . . . . . . . . . . . . 10 3.2.1. Classic Traceroute . . . . . . . . . . . . . . . . . 11
3.2.2. Traceroute to a SID . . . . . . . . . . . . . . . . . 12 3.2.2. Traceroute to a SID . . . . . . . . . . . . . . . . . 12
3.3. A Hybrid OAM Using O-flag . . . . . . . . . . . . . . . . 13 3.3. A Hybrid OAM Using O-flag . . . . . . . . . . . . . . . . 14
3.4. Monitoring of SRv6 Paths . . . . . . . . . . . . . . . . 16 3.4. Monitoring of SRv6 Paths . . . . . . . . . . . . . . . . 16
4. Implementation Status . . . . . . . . . . . . . . . . . . . . 17 4. Implementation Status . . . . . . . . . . . . . . . . . . . . 18
5. Security Considerations . . . . . . . . . . . . . . . . . . . 17 5. Security Considerations . . . . . . . . . . . . . . . . . . . 18
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
6.1. Segment Routing Header Flags . . . . . . . . . . . . . . 17
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18
8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 18 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 18
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 20
9.1. Normative References . . . . . . . . . . . . . . . . . . 19 9.1. Normative References . . . . . . . . . . . . . . . . . . 20
9.2. Informative References . . . . . . . . . . . . . . . . . 19 9.2. Informative References . . . . . . . . . . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22
1. Introduction 1. Introduction
As Segment Routing with IPv6 data plane (SRv6) [RFC8402] simply adds As Segment Routing with IPv6 data plane (SRv6) [RFC8402] simply adds
a new type of Routing Extension Header, existing IPv6 OAM mechanisms a new type of Routing Extension Header, existing IPv6 OAM mechanisms
can be used in an SRv6 network. This document describes how the can be used in an SRv6 network. This document describes how the
existing IPv6 mechanisms for ping and trace route can be used in an existing IPv6 mechanisms for ping and trace route can be used in an
SRv6 network. SRv6 network. This includes illustrations to pinging an SRv6 SID for
the SID connectivity checks and to validate the availability of a
SID. This also includes illustrations for tracerouting to an SRv6
SID for hop-by-hop fault localization as well as path tracing to a
SID.
The document also introduces enhancements for OAM mechanism for SRv6 The document also introduces enhancements for OAM mechanism for SRv6
networks. Specifically, the document describes an OAM mechanism for networks for performing controllable and predictable flow sampling
performing controllable and predictable flow sampling from segment from segment endpoints using, e.g., IP Flow Information Export
endpoints using, e.g., IP Flow Information Export (IPFIX) protocol (IPFIX) protocol [RFC7011]. Specifically, the document specifies
O-flag in SRH as a marking-bit in the user packets to trigger the
telemetry data collection and export at the segment endpoints.
[RFC7011]. The document also outlines how centralized OAM technique The document also outlines how centralized OAM technique in [RFC8403]
in [RFC8403] can be extended for SRv6 to perform a path continuity can be extended for SRv6 to perform a path continuity check between
check between any nodes within an SRv6 domain from a centralized any nodes within an SRv6 domain. Specifically, the document
monitoring system. illustrates how a centralized monitoring system can monitor arbitrary
SRv6 paths by creating the loopback probes that originates and
terminates at the centralized monitoring system.
1.1. Requirements Language 1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119], [RFC8174]. document are to be interpreted as described in [RFC2119], [RFC8174].
1.2. Abbreviations 1.2. Abbreviations
The following abbreviations are used in this document: The following abbreviations are used in this document:
skipping to change at page 5, line 10 skipping to change at page 5, line 25
SID list but encoded in the SRH format where the rightmost SID SID list but encoded in the SRH format where the rightmost SID
in the SRH is the first SID and the leftmost SID in the SRH is in the SRH is the first SID and the leftmost SID in the SRH is
the last SID. When referring to an SR policy in a high-level the last SID. When referring to an SR policy in a high-level
use-case, it is simpler to use the <S1, S2, S3> notation. When use-case, it is simpler to use the <S1, S2, S3> notation. When
referring to an illustration of the detailed packet behavior, referring to an illustration of the detailed packet behavior,
the (S3, S2, S1; SL) notation is more convenient. the (S3, S2, S1; SL) notation is more convenient.
* (payload) represents the the payload of the packet. * (payload) represents the the payload of the packet.
SRH[SL] represents the SID pointed by the SL field in the first SRH[SL] represents the SID pointed by the SL field in the first
SRH. In our example SID list (S3, S2, S1; SL), SRH[2] represents SRH. In our example SID list (S3, S2, S1; SL), SRH(2) represents
S1, SRH[1] represents S2 and SRH[0] represents S3. S1, SRH(1) represents S2 and SRH(0) represents S3.
2. OAM Mechanisms 2. OAM Mechanisms
This section defines OAM enhancement for the SRv6 networks. This section defines OAM enhancement for the SRv6 networks.
2.1. O-flag in Segment Routing Header 2.1. O-flag in Segment Routing Header
[RFC8754] describes the Segment Routing Header (SRH) and how SR [RFC8754] describes the Segment Routing Header (SRH) and how SR
capable nodes use it. The SRH contains an 8-bit "Flags" field. This capable nodes use it. The SRH contains an 8-bit "Flags" field. This
document defines the following bit in the SRH.Flags to carry the document defines the following bit in the SRH.Flags to carry the
skipping to change at page 7, line 27 skipping to change at page 7, line 40
Ping to a SID is used for SID connectivity checks and to validate the Ping to a SID is used for SID connectivity checks and to validate the
availability of a SID. Traceroute to a SID is used for hop-by-hop availability of a SID. Traceroute to a SID is used for hop-by-hop
fault localization as well as path tracing to a SID. Section 3 fault localization as well as path tracing to a SID. Section 3
illustrates the ICMPv6 based ping and the UDP based traceroute illustrates the ICMPv6 based ping and the UDP based traceroute
mechanisms for ping and traceroute to an SRv6 SID. Although this mechanisms for ping and traceroute to an SRv6 SID. Although this
document only illustrates ICMP ping and UDP-based traceroute to an document only illustrates ICMP ping and UDP-based traceroute to an
SRv6 SID, the procedures are equally applicable to other IPv6 OAM SRv6 SID, the procedures are equally applicable to other IPv6 OAM
probing to an SRv6 SID (e.g., Bidirectional Forwarding Detection probing to an SRv6 SID (e.g., Bidirectional Forwarding Detection
(BFD) [RFC5880], Seamless BFD (SBFD) [RFC7880], TWAMP Light and STAMP (BFD) [RFC5880], Seamless BFD (SBFD) [RFC7880], TWAMP Light and STAMP
probe message processing as described in probe message processing as described in [I-D.gandhi-spring-twamp-
[I-D.gandhi-spring-twamp-srpm] and [I-D.gandhi-spring-stamp-srpm], srpm] and [I-D.gandhi-spring-stamp-srpm], respectively, etc.).
respectively, etc.). Specifically, as long as local configuration Specifically, as long as local configuration allows the Upper-layer
allows the Upper-layer Header processing of the applicable OAM payload Header processing of the applicable OAM payload for SRv6 SIDs, the
for SRv6 SIDs, the existing IPv6 OAM techniques can be used to target existing IPv6 OAM techniques can be used to target a probe to a
a probe to a (remote) SID. (remote) SID.
IPv6 OAM operations can be performed with the target SID in the IPv6 IPv6 OAM operations can be performed with the target SID in the IPv6
destination address without SRH or with SRH where the target SID is destination address without SRH or with SRH where the target SID is
the last segment. In general, OAM operations to a target SID may not the last segment. In general, OAM operations to a target SID may not
exercise all of its processing depending on its behavior definition. exercise all of its processing depending on its behavior definition.
For example, ping to an END.X SID (refer [I-D.ietf-spring-srv6- For example, ping to an END.X SID (refer [I-D.ietf-spring-srv6-
network-programming]) at the target node only validates availability network-programming]) at the target node only validates availability
of the SID and does not validate switching to the correct outgoing of the SID and does not validate switching to the correct outgoing
interface. To exercise the behavior of a target SID, the OAM interface. To exercise the behavior of a target SID, the OAM
operation SHOULD construct the probe in a manner similar to a data operation SHOULD construct the probe in a manner similar to a data
skipping to change at page 17, line 44 skipping to change at page 18, line 22
5. Security Considerations 5. Security Considerations
This document does not define any new protocol extensions and relies This document does not define any new protocol extensions and relies
on existing procedures defined for ICMP. This document does not on existing procedures defined for ICMP. This document does not
impose any additional security challenges to be considered beyond impose any additional security challenges to be considered beyond
security considerations described in [RFC4884], [RFC4443], [RFC0792], security considerations described in [RFC4884], [RFC4443], [RFC0792],
and [RFC8754]. and [RFC8754].
6. IANA Considerations 6. IANA Considerations
6.1. Segment Routing Header Flags This document requests that IANA allocate the following registrations
in the "Segment Routing Header Flags" sub-registry for the "Internet
Protocol Version 6 (IPv6) Parameters" registry maintained by IANA:
This I-D requests to IANA to allocate bit position 2, within the +-------+------------------------------+---------------+
"Segment Routing Header Flags" registry defined in [RFC8754]. | Bit | Description | Reference |
+=======+==============================+===============+
| 2 | O-flag | This document |
+-------+------------------------------+---------------+
7. Acknowledgements 7. Acknowledgements
The authors would like to thank Joel M. Halpern, Greg Mirsky, Bob The authors would like to thank Joel M. Halpern, Greg Mirsky, Bob
Hinden, Loa Andersson, Gaurav Naik, Ketan Talaulikar and Haoyu Song Hinden, Loa Andersson, Gaurav Naik, Ketan Talaulikar and Haoyu Song
for their review comments. for their review comments.
8. Contributors 8. Contributors
The following people have contributed to this document: The following people have contributed to this document:
skipping to change at page 19, line 39 skipping to change at page 20, line 26
[RFC8754] Filsfils, C., Ed., Dukes, D., Ed., Previdi, S., Leddy, J., [RFC8754] Filsfils, C., Ed., Dukes, D., Ed., Previdi, S., Leddy, J.,
Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header
(SRH)", RFC 8754, DOI 10.17487/RFC8754, March 2020, (SRH)", RFC 8754, DOI 10.17487/RFC8754, March 2020,
<https://www.rfc-editor.org/info/rfc8754>. <https://www.rfc-editor.org/info/rfc8754>.
9.2. Informative References 9.2. Informative References
[I-D.gandhi-spring-stamp-srpm] [I-D.gandhi-spring-stamp-srpm]
Gandhi, R., Filsfils, C., Voyer, D., Chen, M., and B. Gandhi, R., Filsfils, C., Voyer, D., Chen, M., and B.
Janssens, "Performance Measurement Using STAMP for Segment Janssens, "Performance Measurement Using Simple TWAMP
Routing Networks", draft-gandhi-spring-stamp-srpm-01 (work (STAMP) for Segment Routing Networks", draft-gandhi-
in progress), June 2020. spring-stamp-srpm-03 (work in progress), October 2020.
[I-D.gandhi-spring-twamp-srpm] [I-D.gandhi-spring-twamp-srpm]
Gandhi, R., Filsfils, C., Voyer, D., Chen, M., and B. Gandhi, R., Filsfils, C., Voyer, D., Chen, M., and B.
Janssens, "Performance Measurement Using TWAMP Light for Janssens, "Performance Measurement Using TWAMP Light for
Segment Routing Networks", draft-gandhi-spring-twamp- Segment Routing Networks", draft-gandhi-spring-twamp-
srpm-09 (work in progress), June 2020. srpm-11 (work in progress), October 2020.
[I-D.ietf-spring-srv6-network-programming] [I-D.ietf-spring-srv6-network-programming]
Filsfils, C., Camarillo, P., Leddy, J., Voyer, D., Filsfils, C., Camarillo, P., Leddy, J., Voyer, D.,
Matsushima, S., and Z. Li, "SRv6 Network Programming", Matsushima, S., and Z. Li, "SRv6 Network Programming",
draft-ietf-spring-srv6-network-programming-16 (work in draft-ietf-spring-srv6-network-programming-24 (work in
progress), June 2020. progress), October 2020.
[I-D.matsushima-spring-srv6-deployment-status] [I-D.matsushima-spring-srv6-deployment-status]
Matsushima, S., Filsfils, C., Ali, Z., Li, Z., and K. Matsushima, S., Filsfils, C., Ali, Z., Li, Z., and K.
Rajaraman, "SRv6 Implementation and Deployment Status", Rajaraman, "SRv6 Implementation and Deployment Status",
draft-matsushima-spring-srv6-deployment-status-07 (work in draft-matsushima-spring-srv6-deployment-status-08 (work in
progress), April 2020. progress), October 2020.
[RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, [RFC0792] Postel, J., "Internet Control Message Protocol", STD 5,
RFC 792, DOI 10.17487/RFC0792, September 1981, RFC 792, DOI 10.17487/RFC0792, September 1981,
<https://www.rfc-editor.org/info/rfc792>. <https://www.rfc-editor.org/info/rfc792>.
[RFC4443] Conta, A., Deering, S., and M. Gupta, Ed., "Internet [RFC4443] Conta, A., Deering, S., and M. Gupta, Ed., "Internet
Control Message Protocol (ICMPv6) for the Internet Control Message Protocol (ICMPv6) for the Internet
Protocol Version 6 (IPv6) Specification", STD 89, Protocol Version 6 (IPv6) Specification", STD 89,
RFC 4443, DOI 10.17487/RFC4443, March 2006, RFC 4443, DOI 10.17487/RFC4443, March 2006,
<https://www.rfc-editor.org/info/rfc4443>. <https://www.rfc-editor.org/info/rfc4443>.
 End of changes. 24 change blocks. 
48 lines changed or deleted 63 lines changed or added

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