Network Working Group                                              Z. Li
Internet-Draft                                              China Mobile
Intended status: Standards Track                                 M. Chen                                 T. Zhou
Expires: August 23, 2021 July 28, 2022                                            Huawei
                                                               G. Mirsky
                                                                  J. Guo
                                                               ZTE Corp.
                                                       February 19, 2021
                                                               G. Mirsky
                                                                Ericsson
                                                               R. Gandhi
                                                                   Cisco
                                                        January 24, 2022

 Simple Two-Way Active Measurement Protocol Extensions for Performance
                           Measurement on LAG
                     draft-li-ippm-stamp-on-lag-00
                     draft-li-ippm-stamp-on-lag-01

Abstract

   This document defines extensions to extends Simple Two-Way Active Measurement Protocol
   (STAMP) to implement performance measurement on every member link of
   a Link Aggregation Group (LAG).  Knowing the measured metrics of each
   member link of a LAG enables operators to enforce a performance metric-based based
   traffic steering policy across the member links.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "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.

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 August 23, 2021. July 28, 2022.

Copyright Notice

   Copyright (c) 2021 2022 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) 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.  Micro-Session  Micro Session on LAG  . . . . . . . . . . . . . . . . . . . .   3
   3.  Micro-STAMP Session . .  Member Link Validation  . . . . . . . . . . . . . . . . . . .   4
     3.1.  Micro-STAMP-Test  . . . . . . . . . . . . . . . . . . . .   4
       3.1.1.  LAG Member Link ID TLV  . . . . . . . . . . . . . . . . .   4
       3.1.2.  Micro-STAMP-Test
     3.2.  Micro STAMP-Test Procedures . . . . . . . . . . . . . . .   5
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   6
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   Link Aggregation Group (LAG), as defined in [IEEE802.1AX], provides
   mechanisms to combine multiple physical links into a single logical
   link.  This logical link offers higher bandwidth and better
   resiliency, because if one of the physical member links fails, the
   aggregate logical link can continue to forward traffic over the
   remaining operational physical member links.

   Usually, when forwarding traffic over a LAG, a the hash-based or similar mechanism
   is used to load-balance load balance the traffic across the LAG member links.  In some cases, the link delays
   Link delay of the each member links are
   different link varies because they are over of different transport
   paths.  To provide low delay latency service to time-sensitive for time sensitive traffic, we have
   need to know explicitly steer the link delay of each traffic across the LAG member links
   based on the link of a LAG delay, loss and then steer traffic
   accordingly. so on.  That requires a solution that could to
   measure the performance metrics of each member link of a LAG.

   However, when using

   Simple Two-Way Active Measurement Protocol (STAMP) [RFC8762] is an
   active measurement method according to measure a LAG's performance, the LAG is treated
   as classification given in
   RFC7799 [RFC7799].  It provides a mechanism to measure both one-way
   and round-trip performance metrics, like delay, delay variation, and
   packet loss.  Running a single logical link/path.  The measured metrics reflect STAMP test session over the
   performance
   aggregation without the knowledge of one each member link or an average would make it
   impossible to measure the performance of some/all a given physical member links
   of the LAG.

   In addition, for LAG, using passive or hybrid methods (like
   alternative marking[RFC8321] or iOAM [I-D.ietf-ippm-ioam-data]) can
   only monitor the link crossed by traffic.  It means that the
   link.  The measured metrics can only reflect the performance of some one
   member links link or an average of some/all member links of the LAG.  Therefore, in order to measure
   every link of a LAG, using active methods would be more appropriate.

   This document defines extensions to extends STAMP [RFC8762] to implement performance measurement on
   every member link of a LAG.  The proposed method could also
   potentially apply to layer 3 ECMP (Equal Cost Multi-Path), e.g., with
   SR-Policy [I-D.ietf-spring-segment-routing-policy].

2.  Micro-Session  Micro Session on LAG

   This document intends to address the scenario (e.g., Figure 1) where
   a LAG (e.g., the LAG includes three member links) directly connects
   two nodes (A and B) . The goal is to measure the performance of each
   link of the LAG.

                     +---+                       +---+
                     |   |-----------------------|   |
                     | A |-----------------------| B |
                     |   |-----------------------|   |
                     |   |-----------------------|   |
                     +---+                       +---+

                           Figure 1: PM for LAG

   To measure the performance metrics of every member link of a LAG,
   multiple sessions (one session for each member link) need to be
   established between the two hosts end points that are connected by the LAG.
   These sessions are called micro-sessions for micro sessions in the remainder of this
   document.

   All micro-sessions micro sessions of a LAG share the same Sender Address, IP Address and
   Receiver IP Address.  As for the Sender Port and Receiver UDP Port, the micro- micro sessions may
   share the same Sender Port and Receiver Port pair, or each micro
   session is configured with a different Sender Port and Receiver Port
   pair.  But from simplifying operation the operational point of view, the former is simpler
   and is recommended.

   In addition, with micro-sessions, there needs a way to correlate a

   At the Sender side, each micro STAMP session MUST be assgined with a member link.  For example, when
   unique SSID [RFC8972].  Both the micro STAMP Session Sender and
   Reflector receives
   a Test packet, it needs MUST use SSID to know from which member link correlate the Test packet is
   received, and correlate it with to a micro-session.  That micro
   session.  If there is no such a new
   functionality for STAMP as defined in [RFC8762] and [RFC8972].

   Upon receiving a Test packet for a micro-session, the receiver uses session, or the receiving link's identifier to correlate SSID is not correct,
   the Test packet to a
   particular session.  In addition, MUST be discarded.

   Test packets may need to MAY carry the member link information for validation checking.
   check.  For example, when a
   Session-Sender/Session-Reflector micro STAMP Session-Sender receives a
   reflected Test packet, it may need to check whether the Test packet
   is from the expected member link.

3.  Micro-STAMP Session

3.1.  Micro-STAMP-Test  The micro-STAMP-Test protocol detailed description about the
   member link validation is based on in section 3.

   A micro STAMP Session-Sender MAY include the STAMP-Test protocol
   [RFC8762] and Follow-Up Telemetry TLV
   [RFC8972] with to request information from the following extensions.

3.1.1.  LAG Member Link ID TLV

   The LAG micro Session-Reflector.
   This timestamp might be important for the micro Session-Sender, as it
   improves the accuracy of network delay measurement by minimizing the
   impact of egress queuing delays on the measurement.

3.  Member Link ID TLV is defined to Validation

   Test packets MAY carry the LAG member link
   identifiers associated with a micro-STAMP session. information for validation
   check.  The micro Session Sender can verify whether the test packet
   is reveived from the expected member link.  It can also verify
   whether the packet is sent from the expected member link
   identifiers are used for at the Session-Sender and Session-Reflector to
   check
   Reflector side.  The micro Session Reflector can verify whether a Test the
   test packet is received from the expected member link.  The detailed procedures are defined in Section 3.1.2.

3.1.  LAG Member Link ID TLV

   STAMP TLV [RFC8972] mechanism extends STAMP Test packets with one or
   more optional TLVs.  This document defines the TLV Type (value TBA1)
   for the LAG Member Link ID TLV that carries the micro STAMP Session-
   Sender member link identifier and Session-Reflector member link
   identifier.  The format of the LAG Member Link ID TLV is shown as below:
   follows:

       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |STAMP TLV Flags|  Type = TBA1  |           Length              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |     Sender Member Link ID     |   Reflector Member Link ID    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 2: LAG Member Link ID TLV

   o  Type: A one-octet field.  Value TBA1 is allocated by IANA
      (Section 5).

   o  Length: A two-octet field equal to the length of the Value field
      in octets.  The Length field value MUST be 4 octets.

   o  Sender Member Link ID (2-octets in length): it is defined to carry
      the LAG member link identifier of the Sender side.  The value of
      the Sender Member Link ID MUST be unique at the Session-Sender.

   o  Reflector Member Link ID (2-octets in length): it is defined to
      carry the LAG member link identifier of the Reflector side.  The
      value of the Reflector Member ID MUST be unique at the Session-Reflector.

3.1.2.  Micro-STAMP-Test Session-
      Reflector.

3.2.  Micro STAMP-Test Procedures

   The micro-STAMP-Test micro STAMP-Test reuses the procedures as defined in Section 4 of
   STAMP [RFC8762] with the following additions: additions.

   The micro-STAMP micro STAMP Session-Sender MUST send the micro-STAMP-Test micro STAMP-Test packets
   over the member link associated with which the session.  The micro STAMP
   Session-Reflector MUST send the reflected Test packets over the
   receiving member link. session is associated.  The
   configuration and management of the association mapping between a micro- micro STAMP
   session and the Sender/Reflector member link identifiers are outside
   the scope of this document.

   When the Session-Sender sends sending a Test packet, the LAG micro STAMP Session-Sender MUST set
   the Sender Member Link ID
   TLV MUST be carried, and field with the Sender member link identifier
   associated with the micro-STAMP session MUST be put in the Sender Member Link ID
   field. micro STAMP session.  If the Session-Sender knows
   the Reflector member link identifier, it MUST set it as the Reflector Member Link ID field's
   value.
   field MUST be set.  Otherwise, the Reflector Member Link ID field
   MUST be set to zero.  The Session-Sender uses the Sender Member Link ID field's value to
   check whether the reflected Test packet is received from the member
   link associated with the correct micro-STAMP session.  Therefore, the
   Session-Reflector MUST copy the Sender Member Link ID value to the
   reflected Test packet.

   The Session-Reflector uses the Reflector Member Link ID value to
   check whether a Test packet is received from the member link
   associated with the correct micro-STAMP session.

   The Reflector member link identifier can be obtained
   from pre-
   configuration pre-configuration or learned through the data plane (e.g., learned
   from a reflected Test packet).  How to obtain/learn the Reflector
   member link identifier is outside of this document's scope.

   When the micro-STAMP micro STAMP Session-Reflector receives a Test packet, it
   MUST use the receiving member link to correlate the Test packet to a
   micro-STAMP session.  If there is no such a micro-STAMP session, the
   Test packet MUST be discarded.  Suppose if the
   Reflector Member Link ID is not zero.  In that case, zero, the micro-STAMP Session-Reflector micro STAMP Session-
   Reflector MUST use the Reflector member link identifier to check
   whether it is associated with the micro-STAMP micro STAMP session.  If it is not, the
   validation fails, the Test packet MUST be discarded and no reflected Test packet will be sent
   back to the Session-Sender. discarded.  If all validation
   validations passed, the Session-
   Reflector Session-Reflector sends a reflected Test
   packet to the Session-Sender over
   the receiving member link. Session-Sender.  The micro-STAMP micro STAMP Session-Reflector MUST
   put the Sender and Reflector member link identifiers that are
   associated with the micro-STAMP micro STAMP session in the Sender Member Link ID
   and Reflector Member Link ID fields, fields respectively.  The Sender member
   link identifier is copied from the received Test packet.

   When the micro-STAMP Session-Sender receives receiving a reflected Test packet,
   it the micro Session-Sender MUST
   use the receiving member link Sender Member Link ID to correlate validate whether the reflected Test
   packet to a micro-STAMP session.  If there is no such a session, correctly transmitted over the expected member link.  If
   the validation fails, the
   reflected Test packet MUST be discarded.  If a matched micro-STAMP
   session exists, the  The micro
   Session-Sender MUST use the identifier carried in
   the Sender Reflector Member Link ID field to check whether it associates with validate the session.
   Reflector's behavior.  If the checking failed, validation fails, the Test packet MUST
   be discarded.

4.  IANA Considerations

   This document requires the IANA to allocate the following the TLV
   type from

   In the "STAMP TLV Types" sub-registry.

              Value   |Description registry created for [RFC8972], a new STAMP
   TLV Type for LAG Member Link ID TLV is requested from IANA as
   follows:

   +----------------+-------------------+-----------------+------------+
   | STAMP TLV Type | Description       | Semantics       | Reference
             ---------+----------------------+----------------------
              TBD1    |LAG  |
   | Value          |                   | Definition      |            |
   +----------------+-------------------+-----------------+------------+
   | TBA1           | LAG Member Link ID   | Section 3       | This document       |
   |                | ID TLV            |                 | Document   |
   +----------------+-------------------+-----------------+------------+

                            New STAMP TLV Type

5.  Security Considerations

   The STAMP extension defined in this document is intended for
   deployment in LAG scenario where Session-Sender and Session-Reflector
   are directly connnected.  As such, it's assumed that a node involved
   in STAMP protocol operation has previously verified the integrity of
   the LAG connection and the identity of its one-hop-away peer node.

   This document does not introduce any additional security requirements issues and
   mechanisms other than
   the ones described security mechanisms defined in [RFC8762] and [RFC8972] apply to in
   this document.

6.  Acknowledgements

   The authors would like to thank Mach Chen, Min Xiao, Fang Xin for the
   valuable comments to this work.

7.  References

7.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,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC7799]  Morton, A., "Active and Passive Metrics and Methods (with
              Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799,
              May 2016, <https://www.rfc-editor.org/info/rfc7799>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8762]  Mirsky, G., Jun, G., Nydell, H., and R. Foote, "Simple
              Two-Way Active Measurement Protocol", RFC 8762,
              DOI 10.17487/RFC8762, March 2020,
              <https://www.rfc-editor.org/info/rfc8762>.

   [RFC8972]  Mirsky, G., Min, X., Nydell, H., Foote, R., Masputra, A.,
              and E. Ruffini, "Simple Two-Way Active Measurement
              Protocol Optional Extensions", RFC 8972,
              DOI 10.17487/RFC8972, January 2021,
              <https://www.rfc-editor.org/info/rfc8972>.

7.2.  Informative References

   [I-D.ietf-ippm-ioam-data]
              Brockners, F., Bhandari, S.,

   [I-D.ietf-spring-segment-routing-policy]
              Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and T. Mizrahi, "Data Fields
              for In-situ OAM", draft-ietf-ippm-ioam-data-11
              P. Mattes, "Segment Routing Policy Architecture", draft-
              ietf-spring-segment-routing-policy-14 (work in progress), November 2020.
              October 2021.

   [IEEE802.1AX]
              IEEE Std. 802.1AX, "IEEE Standard for Local and
              metropolitan area networks - Link Aggregation", November
              2008.

   [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

   Zhenqiang Li
   China Mobile

   Email: li_zhenqiang@hotmail.com

   Mach(Guoyi) Chen

   Tianran Zhou
   Huawei
   China

   Email: mach.chen@huawei.com

   Greg Mirsky zhoutianran@huawei.com

   Jun Guo
   ZTE Corp.
   China

   Email: guo.jun2@zte.com.cn
   Greg Mirsky
   Ericsson
   United States of America

   Email: gregimirsky@gmail.com

   Rakesh Gandhi
   Cisco
   Canada

   Email: rgandhi@cisco.com