6MAN Working Group                                           G. Fioccola
Internet-Draft                                                   T. Zhou
Intended status: Standards Track                                  Huawei
Expires: July 16, 2020                                       M. Cociglio
                                                          Telecom Italia
                                                        January 13, 2020

            IPv6 Application of the Alternate Marking Method


   This document describes how the Alternate Marking Method can be used
   as the passive performance measurement tool in an IPv6 domain and
   reports implementation considerations.  It proposes how to define a
   new Extension Header Option to encode alternate marking technique and
   also considers the Segment Routing Header TLV alternative.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   document are to be interpreted as described in RFC 2119 [RFC2119].

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 https://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 July 16, 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Fioccola, et al.          Expires July 16, 2020                 [Page 1]

Internet-Draft                  IPv6 AMM                    January 2020

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  IPv6 application of the Alternate Marking . . . . . . . . . .   3
   3.  Definition of the AltMark Option/TLV  . . . . . . . . . . . .   4
     3.1.  Data Fields Format  . . . . . . . . . . . . . . . . . . .   4
   4.  AltMark: EH Option or SRH TLV . . . . . . . . . . . . . . . .   5
   5.  Alternate Marking Method Operation  . . . . . . . . . . . . .   6
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   6
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   6
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   [RFC8321] and [I-D.ietf-ippm-multipoint-alt-mark] describe passive
   performance measurement method, which can be used to measure packet
   loss, latency and jitter on live traffic.  Since this method is based
   on marking consecutive batches of packets, the method often referred
   as Alternate Marking Method.

   This document defines how the alternate marking method can be used to
   measure packet loss and delay metrics of IPv6.  Consequently, the
   SRv6 (Segment Routing over IPv6 data plane) application is also
   discussed.  Both Extension Header (EH) Option and Segment Routing
   Header (SRH) TLV are considered here.

   The format of the IPv6 addresses is defined in [RFC4291].  [RFC8200]
   introduces the IPv6 Header Format, including the Extension Headers in
   the base IPv6 Header and the availability of a 20-bit flow label.  In
   this respect, [I-D.fioccola-v6ops-ipv6-alt-mark] reported a summary
   on the possible implementation options for the application of the
   alternate marking method in an IPv6 domain.  This document, starting
   from the outcome of [I-D.fioccola-v6ops-ipv6-alt-mark], introduces a
   new Option/TLV that can be encoded as EH Option or as SRH TLV.

Fioccola, et al.          Expires July 16, 2020                 [Page 2]

Internet-Draft                  IPv6 AMM                    January 2020

   [I-D.song-opsawg-ifit-framework] introduces the telemetry
   architecture that can be considered as reference.

2.  IPv6 application of the Alternate Marking

   The application of the alternate marking requires a marking field.
   As mentioned, several alternatives have been analysed in
   [I-D.fioccola-v6ops-ipv6-alt-mark] (Extension Header, IPv6 Address,
   Flow Label).  Anyway the best choice would be the use of an Extension
   Header(EH) Option or TLV.

   A new Option/TLV can be defined for this scope.  This approach
   follows [RFC8200] that strongly recommended against creating new EHs
   especially with hop by hop behaviour.

   The document aims to be general for IPv6 data plane.  A possibility
   can be to use a Destination or a Hop-By-Hop(HBH) Extension
   Header(EH).  The assumption is that an EH with an alternate marking
   measurement option can be defined.  The router processing can be
   easily optimized to handle this use case.  For SRv6, SRH TLV (as
   described in [I-D.ietf-6man-segment-routing-header]) can be a good
   choice to encode the Data fields.

   The main objective is to ensure enough space to implement and
   optimize the deployment of the Alternate Marking method and the use
   of a monitored flow identification field (FlowMonID), as introduced
   in the next Section, goes in this direction.

   The monitored flow identification can be required for some general

      Firstly, it helps to reduce the per node configuration.
      Otherwise, each node needs to configure the ACLs for all the
      monitored flows.  And, with Flow ID, there may be different
      granularity for flow definition.

      Secondly, it simplifies the counters handling, because hardware is
      hard to pull out and match the flow tuples defined by ACLs,
      especially in tunnels.

      Thirdly, it eases the data export encapsulation and correlation
      for the collectors.

   Note that FlowMonID is different from the Flow Label field of the
   IPv6 Header ([RFC8200]).  Flow Label is used for application service,
   like LB/ECMP and QoS.  Instead, FlowMonID is only used to identify
   the monitored flow.  The reuse of flow label field for monitored flow
   identification is not considered since it may change the application

Fioccola, et al.          Expires July 16, 2020                 [Page 3]

Internet-Draft                  IPv6 AMM                    January 2020

   intent and forwarding behaviour, so that the measurement does not
   align with the original traffic.  Furthermore the flow label may be
   changed en route and this may also violate the measurement task.
   That is to explain the reason why we need to introduce FlowMonID for
   IPv6.  Flow Label and FlowMonID within the same packet have different
   scope, identify different flows, different usage.

3.  Definition of the AltMark Option/TLV

   The desired choice is to define a new Extension Header Option/TLV,
   and the data fields id dedicated for the alternate marking method and
   deployment considerations have inspired the layout.

3.1.  Data Fields Format

   The following figure shows the data fields format for enhanced
   alternate marking EH Option/TLV.  This AltMark data is expected to be
   encapsulated to specific encapsulation, e.g. the IPv6 Option or SRH

    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
                                   |     Type      |    Length     |
   |              FlowMonID                |L|D|     Reserved      |


   o  Type/Option Type: 8 bit identifier of the type of Option/TLV that
      needs to be allocated.  Unrecognised Types MUST be ignored on

   o  Length/Opt Data Len: The length of the length Data Fields of this
      Option/TLV in bytes.

   o  FlowMonID: 20 bits unsigned integer.  The FlowMon identifier field
      is to uniquely identify a monitored flow within the measurement
      domain.  The field is set at the ingress node.  The FlowMonID can
      be uniformly assigned by the central controller or algorithmically
      generated by the ingress node.  The latter approach cannot
      guarantee the uniqueness of FlowMonID but it may be preferred for
      local or private network, where the conflict probability is small
      due to the large FlowMonID space.

   o  L: Loss flag as defined in [RFC8321];

Fioccola, et al.          Expires July 16, 2020                 [Page 4]

Internet-Draft                  IPv6 AMM                    January 2020

   o  D: Delay flag as defined in [RFC8321];

   o  Reserved: is reserved for further use.  These bits MUST be set to

4.  AltMark: EH Option or SRH TLV

   Using a new EH Option assumes that all routers in the domain support
   this type of headers, but, beyond backward compatibility, the new
   AltMark Option Layout seems the best way to implement the Alternate
   Marking method.

   It is important to highlight that the Option Layout can be used both
   as Destination Option and as Hop-By-Hop Option depending on the Use
   Cases.  In general, it is needed to perform end-to-end or hop-by-hop
   measurements, and the alternate marking methodology in [RFC8321]
   allows, by definition, both end-to-end and hop-by-hop performance

   So, Hop-By-Hop Options Header or Destination Options Header can be
   used based on the chosen type of performance measurement.

   SRv6 is a subset of IPv6 and it is one type of routing header.  Like
   any other use case of IPv6, HBH and Destination options are useable
   when SRv6 header is present.  Because SRv6 is a routing header,
   destination options before the routing header are processed by each
   destination in the route list.

   SRH TLV can also be used to encode the AltMark Data Fields for SRv6.
   Furthermore the intermediated nodes that are not in the SID list may
   consider the SRH as a green field, therefore they cannot support and
   bypass or support and dig into the SRH TLV.

   In summary, it is possible to list the alternative options:

      Destination Option => measurement only by node in Destination

      Hop-By-Hop Option => every router on the path with feature

      SRH TLV => every node along the SR path.

      Destination Option + SRH => every node along the SR path.

   Note that the SRH TLV and Destination Option + SRH can be considered
   equivalent; so in this case it may be preferred the use of SRH TLV.

Fioccola, et al.          Expires July 16, 2020                 [Page 5]

Internet-Draft                  IPv6 AMM                    January 2020

   In addition to the previous alternatives, for legacy network it is
   possible to mention a non-conventional application of SRH TLV and
   Destination Option for the hop-by-hop usage.  [RFC8200] defines that
   the nodes along a path examine and process the Hop-by-Hop Options
   header only if HBH processing is explicitly configured.  But, on the
   other hand, using SRH TLV or Destination Option for hop-by-hop action
   would cause worse performance than Hop-By-Hop.  The only motivation
   for hiding the hop-by-hop options inside of destination options can
   be for compatibility reasons.  Anyway this is not recommended.

5.  Alternate Marking Method Operation

   [RFC8321] and [I-D.ietf-ippm-multipoint-alt-mark] describe in detail
   the methodology.

6.  Security Considerations


7.  IANA Considerations

   The option type should be assigned in IANA's "Destination Options and
   Hop-by-Hop Options" registry.  Also, the TLV type should be assigned
   from Segment Routing Header TLVs Registry.

8.  Acknowledgements

   The authors would like to thank Bob Hinden, Ole Troan, Tom Herbert,
   Stefano Previdi for the precious comments and suggestions.

9.  References

9.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,

9.2.  Informative References

              Fioccola, G., Velde, G., Cociglio, M., and P. Muley, "IPv6
              Performance Measurement with Alternate Marking Method",
              draft-fioccola-v6ops-ipv6-alt-mark-01 (work in progress),
              June 2018.

Fioccola, et al.          Expires July 16, 2020                 [Page 6]

Internet-Draft                  IPv6 AMM                    January 2020

              Filsfils, C., Dukes, D., Previdi, S., Leddy, J.,
              Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header
              (SRH)", draft-ietf-6man-segment-routing-header-26 (work in
              progress), October 2019.

              Fioccola, G., Cociglio, M., Sapio, A., and R. Sisto,
              "Multipoint Alternate Marking method for passive and
              hybrid performance monitoring", draft-ietf-ippm-
              multipoint-alt-mark-04 (work in progress), January 2020.

              Song, H., Qin, F., Chen, H., Jin, J., and J. Shin, "In-
              situ Flow Information Telemetry", draft-song-opsawg-ifit-
              framework-10 (work in progress), December 2019.

   [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, DOI 10.17487/RFC4291, February
              2006, <https://www.rfc-editor.org/info/rfc4291>.

   [RFC8200]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", STD 86, RFC 8200,
              DOI 10.17487/RFC8200, July 2017,

   [RFC8321]  Fioccola, G., Ed., Capello, A., Cociglio, M., Castaldelli,
              L., Chen, M., Zheng, L., Mirsky, G., and T. Mizrahi,
              "Alternate-Marking Method for Passive and Hybrid
              Performance Monitoring", RFC 8321, DOI 10.17487/RFC8321,
              January 2018, <https://www.rfc-editor.org/info/rfc8321>.

Authors' Addresses

   Giuseppe Fioccola
   Riesstrasse, 25
   Munich  80992

   Email: giuseppe.fioccola@huawei.com

Fioccola, et al.          Expires July 16, 2020                 [Page 7]

Internet-Draft                  IPv6 AMM                    January 2020

   Tianran Zhou
   156 Beiqing Rd.
   Beijing  100095

   Email: zhoutianran@huawei.com

   Mauro Cociglio
   Telecom Italia
   Via Reiss Romoli, 274
   Torino  10148

   Email: mauro.cociglio@telecomitalia.it

Fioccola, et al.          Expires July 16, 2020                 [Page 8]