SPRING Working Group Z. Ali
Internet-Draft R. Gandhi
Intended status: Standards Track C. Filsfils
Expires: April 25, 2019 F. Brockners
N. Nainar
C. Pignataro
Cisco Systems, Inc.
C. Li
M. Chen
Huawei
G. Dawra
LinkedIn
October 22, 2018
Segment Routing Header encapsulation for In-situ OAM Data
draft-ali-spring-ioam-srv6-00
Abstract
In-situ Operations, Administration, and Maintenance (IOAM) records
operational and telemetry information in the data packet while the
packet traverses a path between two points in the network. This
document defines how IOAM data fields are transported as part of the
Segment Routing with IPv6 data plane (SRv6) header.
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."
Copyright Notice
Copyright (c) 2018 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
Ali, et al. Expires April 25, 2019 [Page 1]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Requirement Language . . . . . . . . . . . . . . . . . . . 3
2.2. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3
3. IOAM Data Field Encapsulation in SRH . . . . . . . . . . . . . 4
4. Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1. Ingress Node . . . . . . . . . . . . . . . . . . . . . . . 5
4.2. SR Segment Endpoint Node . . . . . . . . . . . . . . . . . 5
4.3. Egress Node . . . . . . . . . . . . . . . . . . . . . . . 6
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
6. Security Considerations . . . . . . . . . . . . . . . . . . . 6
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
In-situ Operations, Administration, and Maintenance (IOAM) records
OAM information within the packet while the packet traverses a
particular network domain. The term "in-situ" refers to the fact
that the IOAM data fields are added to the data packets rather than
being sent within probe packets specifically dedicated to OAM.
This document defines how IOAM data fields are transported as part of
the Segment Routing with IPv6 data plane (SRv6) header
[I-D.6man-segment-routing-header].
The IOAM data fields carried are defined in
[I-D.ietf-ippm-ioam-data], and can be used for various use-cases
including Performance Measurement (PM) and Proof-of-Transit (PoT).
Ali, et al. Expires April 25, 2019 [Page 2]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
2. Conventions
2.1. Requirement Language
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 [RFC2119] [RFC8174]
when, and only when, they appear in all capitals, as shown here.
2.2. Abbreviations
Abbreviations used in this document:
IOAM In-situ Operations, Administration, and Maintenance
OAM Operations, Administration, and Maintenance
PM Performance Measurement
PoT Proof-of-Transit
SR Segment Routing
SRH SRv6 Header
SRv6 Segment Routing with IPv6 Data plane
Ali, et al. Expires April 25, 2019 [Page 3]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
3. IOAM Data Field Encapsulation in SRH
The SRv6 encapsulation header (SRH) is defined in
[I-D.6man-segment-routing-header]. IOAM data fields are carried in
the SRH, using a single SRH TLV. The different IOAM data fields
defined in [I-D.ietf-ippm-ioam-data] are added as sub-TLVs.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRH-TLV-Type | LEN | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+
| IOAM-Type | IOAM HDR LEN | RESERVED | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ I
! | O
! | A
~ IOAM Option and Data Space ~ M
| | |
| | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+
| |
| |
| Payload + Padding (L2/L3/...) |
| |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: IOAM data encapsulation in SRH
SRH-TLV-Type: IOAM TLV Type for SRH is defined as TBA1.
The fields related to the encapsulation of IOAM data fields in the
SRH are defined as follows:
IOAM-Type: 8-bit field defining the IOAM Option type, as defined in
Section 7.2 of [I-D.ietf-ippm-ioam-data].
IOAM HDR LEN: 8-bit unsigned integer. Length of the IOAM HDR in
4-octet units.
RESERVED: 8-bit reserved field MUST be set to zero upon transmission
and ignored upon receipt.
IOAM Option and Data Space: IOAM option header and data is present
as defined by the IOAM-Type field, and is defined in Section 4 of
[I-D.ietf-ippm-ioam-data].
Ali, et al. Expires April 25, 2019 [Page 4]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
The IOAM TLVs MAY change en route [I-D.ietf-ippm-ioam-data]. For the
IOAM TLVs carried in SRH that can change en route, the most
significant bit of the SRH-TLV-Type is set
[I-D.6man-segment-routing-header]. Furthermore, such IOAM TLV in SRH
is considered mutable for ICV computation, the Type Length, and
Variable Length Data is ignored for ICV Computation as defined in
[RFC4302].
4. Procedure
This section summarizes the procedure for IOAM data encapsulation in
SRv6 SRH. The SR nodes implementing the IOAM functionality follows
the MTU and other considerations outlined in
[I-D.6man-extension-header-insertion].
4.1. Ingress Node
The ingress node of an SR domain or an SR Policy
[I-D.spring-segment-routing-policy] may insert the IOAM TLV in the
SRH of the data packet. The ingress node may also insert the IOAM
data about the local information in the IOAM TLV in the SRH. When
IOAM data from the last node in the segment-list (Egress node) is
desired, the ingress uses an Ultimate Segment Pop (USP) SID at the
Egress node.
4.2. SR Segment Endpoint Node
The SR segment endpoint node is any node receiving an IPv6 packet
where the destination address of that packet is a local SID or a
local interface address. As part of the SR Header processing as
described in [I-D.6man-segment-routing-header] and
[I-D.spring-srv6-network-programming], the SR Segment Endpoint node
performs the following IOAM operations. The description borrows the
terminology used in [I-D.6man-segment-routing-header]. Specifically,
n refers to the number of segments encoded in the SRH, "Hdr Ext Len"
refers to the length of the SRH. The "SRH Header Len" is the length
of the SRH header, which is 8 octets
[I-D.6man-segment-routing-header].
The SR Segment Endpoint node compares the "Hdr Ext Len" of the SRH
with the length of the "segment-list" in the SRH. Specifically, if
the SRH.Hdr_Ext_Len > n*16 + 8, the node looks for the presence of
the IOAM TLV in the SRH. If an IOAM TLV is present in the SRH and is
supported by the Segment Endpoint Node, the SR segment endpoint node
MAY modify the IOAM TLV in SRH with local IOAM data as per IOAM draft
[I-D.ietf-ippm-ioam-data].
Ali, et al. Expires April 25, 2019 [Page 5]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
4.3. Egress Node
The Egress node is the last node in the segment-list of the SRH. When
IOAM data from the Egress node is desired, a USP SID advertised by
the Egress node is used.
The processing of IOAM TLV at the Egress node is similar to the
processing of IOAM TLV at the SR Segment Endpoint Node. The only
difference is that the Egress node also performs the functionality
required by the Egress node in an IOAM domain. E.g., the Egress node
may telemeter the IOAM data to a controller.
5. IANA Considerations
IANA is requested to allocate SRH TLV Type for IOAM TLV data fields
under registry name "Segment Routing Header TLVs" requested by %[I-
D.6man-segment-routing-header].
+--------------+--------------------------+---------------+
| SRH TLV Type | Description | Reference |
+--------------+--------------------------+---------------+
| TBA1 | TLV for IOAM Data Fields | This document |
+--------------+--------------------------+---------------+
6. Security Considerations
The security considerations of SRv6 are discussed in
[I-D.spring-srv6-network-programming] and
[I-D.6man-segment-routing-header], and the security considerations of
IOAM in general are discussed in [I-D.ietf-ippm-ioam-data].
IOAM is considered a "per domain" feature, where one or several
operators decide on leveraging and configuring IOAM according to
their needs. Still, operators need to properly secure the IOAM
domain to avoid malicious configuration and use, which could include
injecting malicious IOAM packets into a domain.
7. Acknowledgements
The authors would like to thank Shwetha Bhandari and Vengada Prasad
Govindan for the discussions on IOAM.
Ali, et al. Expires April 25, 2019 [Page 6]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
RFC2119, March 1997.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", RFC 8174, May 2017.
[I-D.spring-srv6-network-programming] Filsfils, C. et al. "SRv6
Network Programming",
draft-filsfils-spring-srv6-network-programming, work in
progress.
[] Previdi, S., Filsfils, C. et al,
"IPv6 Segment Routing Header (SRH)",
draft-ietf-6man-segment-routing-header, work in progress.
[I-D.ietf-ippm-ioam-data] Brockners, F., Bhandari, S., Pignataro,
C., Gredler, H., Leddy, J., Youell, S., Mizrahi, T.,
Mozes, D., Lapukhov, P., Chang, R., and Bernier, D., "Data
Fields for In-situ OAM", draft-ietf-ippm-ioam-data, work
in progress.
[I-D.spring-segment-routing-policy] Filsfils, C., et al., "Segment
Routing Policy Architecture",
draft-ietf-spring-segment-routing-policy, work in
progress.
8.2. Informative References
[] D. Voyer, et al., "Insertion
of IPv6 Segment Routing Headers in a Controlled Domain",
draft-voyer-6man-extension-header-insertion, work in
progress.
Ali, et al. Expires April 25, 2019 [Page 7]
Internet-Draft In-situ OAM SRv6 encapsulation October 22, 2018
Authors' Addresses
Zafar Ali
Cisco Systems, Inc.
Email: zali@cisco.com
Rakesh Gandhi
Cisco Systems, Inc.
Canada
Email: rgandhi@cisco.com
Clarence Filsfils
Cisco Systems, Inc.
Belgium
Email: cf@cisco.com
Frank Brockners
Cisco Systems, Inc.
Germany
Email: fbrockne@cisco.com
Nagendra Kumar Nainar
Cisco Systems, Inc.
Email: naikumar@cisco.com
Carlos Pignataro
Cisco Systems, Inc.
Email: cpignata@cisco.com
Cheng Li
Huawei
Email: chengli13@huawei.com
Mach(Guoyi) Chen
Huawei
Email: mach.chen@huawei.com
Gaurav Dawra
LinkedIn
Email: gdawra.ietf@gmail.com
Ali, et al. Expires April 25, 2019 [Page 8]