RFC 9160

Export of MPLS Segment Routing Label Type Information in IP Flow Information Export (IPFIX)

๐Ÿ“… published December 2021, from ietf

Title Block ๐ŸŽ€

okay bestie, let's start at the top ๐Ÿ’… This one is RFC 9160, called Export of MPLS Segment Routing Label Type Information in IP Flow Information Export (IPFIX) โœจ Thomas Graf from Swisscom wrote it. It's Informational, which means it's published for info and is not a Standards Track spec ๐ŸŒธ It came out in December 2021 and the ISSN is 2070-1721. The header has no "Obsoletes" or "Updates" lines, so this doc isn't marked as replacing or updating any other RFC ๐Ÿฆ‹

Abstract โœจ

okay so this doc brings in new IP Flow Information Export (IPFIX) code points ๐Ÿ”ฅ They tell you which traffic is getting forwarded based on which MPLS control plane protocol is running inside a Segment Routing domain. Specifically, it defines five code points for the IPFIX mplsTopLabelType Information Element for Path Computation Element (PCE), IS-IS, OSPFv2, OSPFv3, and BGP MPLS Segment Routing extensions ๐Ÿ’–

Status of This Memo ๐Ÿ“œ

ngl this part is the official stuff, but here it is ๐Ÿซถ This document is not an Internet Standards Track specification. It's published for informational purposes ๐ŸŒˆ

It is a product of the Internet Engineering Task Force (IETF) and represents the consensus of the IETF community. It went through public review and got approved for publication by the Internet Engineering Steering Group (IESG). Not every document the IESG approves is a candidate for any level of Internet Standard, so check Section 2 of RFC 7841 if you're curious ๐Ÿงš

Info about the current status of this doc, any errata, and how to send feedback lives at https://www.rfc-editor.org/info/rfc9160 ๐Ÿ’œ

Copyright (c) 2021 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 (https://trustee.ietf.org/license-info) as in effect on the date of publication. Please read these carefully, because they describe your rights and restrictions for this document ๐Ÿ™ˆ Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions, and they are provided without warranty as described in the Revised BSD License โญ

Table of Contents ๐Ÿ“š

1.  Introduction
2.  MPLS Segment Routing Top Label Type
3.  IANA Considerations
4.  Operational Considerations
5.  Security Considerations
6.  References
  6.1.  Normative References
  6.2.  Informative References
Acknowledgements
Author's Address

1. Introduction ๐Ÿฆ‹

okay so four routing protocol extensions, plus one Path Computation Element Communication Protocol (PCEP) extension, have been defined to carry Segment Routing (SR) labels for the MPLS data plane ๐Ÿ”ฅ Those are OSPFv2 Extensions [RFC8665], OSPFv3 Extensions [RFC8666], IS-IS Extensions [RFC8667], BGP Prefix Segment Identifiers (Prefix-SIDs) [RFC8669], and the PCEP Extension [RFC8664]. The base spec for that is [RFC8660] ๐ŸŒธ

Also, [SR-Traffic-Accounting] explains how IP Flow Information Export (IPFIX) [RFC7012] can be used in dimensional data modeling to count traffic against MPLS SR label dimensions inside a Segment Routing domain ๐Ÿ“Š

In [RFC7012], the Information Element (IE) mplsTopLabelType(46) tells you which MPLS control plane protocol allocated the top-of-stack label in the MPLS label stack ๐ŸŽ€ Per Section 7.2 of [RFC7012], the "IPFIX MPLS label type (Value 46)" subregistry [IANA-IPFIX] was created, and new MPLS label type entries should be added there. This document defines new code points for the typical use cases covered in Section 2 ๐Ÿ’–

2. MPLS Segment Routing Top Label Type ๐Ÿ’œ

so by adding five new code points to the IPFIX IE mplsTopLabelType(46), for Path Computation Element (PCE), IS-IS, OSPFv2, OSPFv3, and BGP Prefix-SIDs, you can tell which traffic is being forwarded based on which MPLS SR control plane protocol is in use ๐Ÿ”ฅ

One typical use case is monitoring an MPLS control plane migration from LDP to IS-IS or OSPF Segment Routing. That migration can be done node by node, as described in Appendix A of [RFC8661] ๐ŸŒˆ

Another use case is monitoring a migration from dynamic BGP labels [RFC8277] to BGP Prefix-SIDs [RFC8669]. For example, the motivation for this kind of migration in large-scale data centers, and its benefits, are described in [RFC8670] โœจ

Both use cases can be verified with the mplsTopLabelType(46), mplsTopLabelIPv4Address(47), mplsTopLabelIPv6Address(140), mplsTopLabelStackSection(70), and forwardingStatus(89) IEs, so you can infer:

  • how many packets are forwarded or dropped
  • if packets are dropped, for which reasons, and
  • the MPLS provider edge loopback address and label protocol

ngl the label value by itself doesn't always tell you which label protocol it belongs to ๐Ÿ™ˆ That's because different protocols can share the same label allocation range. IGP-Adjacency SIDs, LDP, and dynamic BGP labels are a classic example of this ๐Ÿ’€

3. IANA Considerations ๐Ÿ“

IANA has allocated the following code points in the "IPFIX MPLS label type (Value 46)" subregistry, which sits within the "IPFIX Information Elements" registry [RFC7012]. See [IANA-IPFIX] ๐Ÿซถ

   +=======+================================+====================+
   | Value | Description                    | Reference          |
   +=======+================================+====================+
   | 6     | Path Computation Element       | RFC 9160, RFC 8664 |
   +-------+--------------------------------+--------------------+
   | 7     | OSPFv2 Segment Routing         | RFC 9160, RFC 8665 |
   +-------+--------------------------------+--------------------+
   | 8     | OSPFv3 Segment Routing         | RFC 9160, RFC 8666 |
   +-------+--------------------------------+--------------------+
   | 9     | IS-IS Segment Routing          | RFC 9160, RFC 8667 |
   +-------+--------------------------------+--------------------+
   | 10    | BGP Segment Routing Prefix-SID | RFC 9160, RFC 8669 |
   +-------+--------------------------------+--------------------+

        Table 1: Updates to "IPFIX MPLS label type (Value 46)"
                             Subregistry

References to RFCs 4364, 4271, and 5036 have been added to the "Reference" column in the "IPFIX MPLS label type (Value 46)" subregistry [IANA-IPFIX] for code points 3, 4, and 5, respectively ๐ŸŒธ Before this, those references were in the "Additional Information" column for mplsTopLabelType(46) in the "IPFIX Information Elements" registry [IANA-IPFIX] ๐Ÿงš

4. Operational Considerations ๐ŸŒˆ

okay this is the important bit for not mixing things up ๐Ÿ‘‘ In the IE mplsTopLabelType(46), BGP code point 4 refers to the label value in the MP_REACH_NLRI path attribute described in Section 2 of [RFC8277]. BGP Segment Routing Prefix-SID code point 10, on the other hand, corresponds to the label index value in the Label-Index TLV described in Section 3.1 of [RFC8669]. Those values serve distinct purposes, so they're used separately โœจ

5. Security Considerations ๐Ÿ”ฅ

no cap, there are no significant extra security considerations for allocating these new IPFIX IEs compared to [RFC7012] ๐Ÿ’…

6. References ๐Ÿ“š

6.1. Normative References

6.2. Informative References

Acknowledgements ๐Ÿซถ

bestie, huge thanks to the IE doctors, Paul Aitken and Andrew Feren ๐Ÿ’– Also to Benoรฎt Claise, Loa Andersson, Tianran Zhou, Pierre Franรงois, Bruno Decraene, Paolo Lucente, Hannes Gredler, Ketan Talaulikar, Sabrina Tanamal, Erik Auerswald, Sergey Fomin, Mohamed Boucadair, Tom Petch, Qin Wu, and Matthias Arnold for their review and valuable comments ๐ŸŒธ Many thanks also to Robert Wilton for the AD review ๐Ÿ‘‘ And thanks to Alvaro Retana, ร‰ric Vyncke, and Benjamin Kaduk for the IESG review ๐Ÿงš

Author's Address ๐Ÿฆ‹

Thomas Graf Swisscom Binzring 17 CH-8045 Zรผrich Switzerland

Email: thomas.graf@swisscom.com ๐Ÿ’œ

๐Ÿ“ฆ where this page comes from