Internet Engineering Task Force                            S. Jacob, Ed.
Internet-Draft                                               Independent
Intended status: Informational                           K. Tiruveedhula
Expires: 18 February 2024                               Juniper Networks
                                                          17 August 2023


             Benchmarking Methodology for EVPN and PBB-EVPN
                      draft-ietf-bmwg-evpntest-10

Abstract

   This document defines methodologies for benchmarking EVPN and PBB-
   EVPN performance.  EVPN is defined in RFC 7432, and is being deployed
   in Service Provider networks.  Specifically, this document defines
   the methodologies for benchmarking EVPN/PBB-EVPN convergence, data
   plane performance, and control plane performance.

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 18 February 2024.

Copyright Notice

   Copyright (c) 2023 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 Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.



Jacob & Tiruveedhula    Expires 18 February 2024                [Page 1]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
     1.2.  Terminologies . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Test Topology . . . . . . . . . . . . . . . . . . . . . . . .   4
   3.  Test Cases for EVPN Benchmarking  . . . . . . . . . . . . . .   7
     3.1.  Data Plane MAC Learning . . . . . . . . . . . . . . . . .   7
     3.2.  Control Plane MAC Learning  . . . . . . . . . . . . . . .   8
     3.3.  MAC Flush-Local Link Failure and Relearning . . . . . . .   9
     3.4.  MAC Flush-Remote Link Failure and Relearning  . . . . . .  10
     3.5.  MAC Aging . . . . . . . . . . . . . . . . . . . . . . . .  11
     3.6.  Remote MAC Aging  . . . . . . . . . . . . . . . . . . . .  11
     3.7.  Control and Data Plane MAC Learning . . . . . . . . . . .  12
     3.8.  High Availability . . . . . . . . . . . . . . . . . . . .  13
     3.9.  ARP/ND Learning rate  . . . . . . . . . . . . . . . . . .  14
     3.10. Scaling of Services . . . . . . . . . . . . . . . . . . .  15
     3.11. Scale Convergence . . . . . . . . . . . . . . . . . . . .  15
     3.12. SOAK Test.  . . . . . . . . . . . . . . . . . . . . . . .  16
   4.  Test Cases for PBB-EVPN Benchmarking  . . . . . . . . . . . .  17
     4.1.  Data Plane Local MAC Learning . . . . . . . . . . . . . .  17
     4.2.  Data Plane Remote MAC Learning  . . . . . . . . . . . . .  18
     4.3.  MAC Flush-Local Link Failure  . . . . . . . . . . . . . .  18
     4.4.  MAC Flush-Remote Link Failure . . . . . . . . . . . . . .  19
     4.5.  MAC Aging . . . . . . . . . . . . . . . . . . . . . . . .  20
     4.6.  Remote MAC Aging. . . . . . . . . . . . . . . . . . . . .  21
     4.7.  Local and Remote MAC Learning . . . . . . . . . . . . . .  21
     4.8.  High Availability . . . . . . . . . . . . . . . . . . . .  22
     4.9.  Scale . . . . . . . . . . . . . . . . . . . . . . . . . .  23
     4.10. Scale Convergence . . . . . . . . . . . . . . . . . . . .  23
     4.11. Soak Test . . . . . . . . . . . . . . . . . . . . . . . .  24
   5.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  25
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  25
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .  26
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  26
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  26
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  26
   Appendix A.  Appendix . . . . . . . . . . . . . . . . . . . . . .  26
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  26

1.  Introduction

   EVPN is defined in RFC 7432, and describes BGP MPLS based Ethernet
   VPNs (EVPN).  PBB-EVPN is defined in RFC 7623, discusses how Ethernet
   Provider backbone Bridging can be combined with EVPNs to provide a
   new/combined solution.  This draft defines methodologies that can be
   used to benchmark both RFC 7432 and RFC 7623 solutions.  Further,
   this draft provides methodologies for benchmarking the performance of



Jacob & Tiruveedhula    Expires 18 February 2024                [Page 2]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   EVPN data and control planes, MAC learning, MAC flushing, MAC aging,
   convergence, high availability, and scale.

1.1.  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 BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

1.2.  Terminologies

   Most of the terminology used in this documents comes from [RFC7432]
   and [RFC7632].

   CE: Customer Router/Devices/Switch.

   DF: Designated Forwarder.

   DUT: Device under test.

   Ethernet Segment (ES): When a customer site (device or network) is
   connected to one or more PEs via a set of Ethernet links, then that
   set of links is referred to as an 'Ethernet segment'.

   EVI: An EVPN instance spanning the Provider Edge (PE) devices
   participating in that EVPN.

   Ethernet Segment Identifier (ESI): A unique non-zero identifier that
   identifies an Ethernet segment is called an 'Ethernet Segment
   Identifier'.

   Ethernet Tag: An Ethernet tag identifies a particular broadcast
   domain, e.g., a VLAN.  An EVPN instance consists of one or more
   broadcast domains.

   Interface: Physical interface of a router/switch.

   IRB: Integrated routing and bridging.

   MAC: Media Access Control addresses on a PE.

   MHPE2: Multi homed Provider Edge router 2.

   MHPE1: Multi homed Provider Edge router 1.

   SHPE3: Single homed Provider Edge Router 3.



Jacob & Tiruveedhula    Expires 18 February 2024                [Page 3]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   PE: Provider Edge device.

   P: Provider Router.

   RR: Route Reflector.

   pps: Packets per sec.

   RT/Traffic Generator: Traffic Generator to generate traffic.

   SA: Single Active

   Single-Active Redundancy Mode: When a single PE (among all the PEs
   attached to an Ethernet segment) is the only PE allowed to forward
   traffic to/from a given Ethernet segment for a given VLAN, then that
   Ethernet segment is defined to be operating in Single-Active
   redundancy mode.

2.  Test Topology

   There are five routers in the Test setup.  SHPE3, RR/P, MHPE1 and
   MHPE2 emulating a service provider network.  CE is a customer device
   connected to MHPE1 and MHPE2. it is configured with bridge domains in
   multiple VLANS.  The traffic generator is connected to the CE and
   SHPE3.  The MHPE1 acts as DUT.  The traffic generator will be used as
   sender and receiver of traffic.  The test measurements are taken from
   the DUT.  MHPE1 and MHPE2 are multi-homed routers connected to CE
   running single active mode.  The traffic generator will be generating
   traffic at 10% of the line rate.






















Jacob & Tiruveedhula    Expires 18 February 2024                [Page 4]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


             +----------------+                +---------------------------+
             |                |                |                           |
             |                |                |Traffic Generator sender/  |
             |  SHPE3         |                |receiver of layer 2 traffic|
             |                +----------------|  with multiple VLANs      |
             |                |                +---------------------------+
             +---------+------+
                       |  Core Link
                       |
              +--------+-----+
              |              |
              |   RR/P       +----------------------+
              |              |     Core link        |
              |              |                      |
              +--+-----------+                      |
                 |                                  |
                 |  core link                       |
                 |                                  |
   +-------------+---+                       +------+------------+
   |                 |                       |                   |
   |                 |                       |                   |
   |   MHPE1(DUT)    |                       |     MHPE2         |
   |                 |                       |                   |
   |                 |                       |                   |
   +-----------------+------+          +-----+-------------------+
                            |          |
           PE-CE link       |          | PE-CE link
                            |          |
                            |          |
                            |          |
                            |          |
                      +-----+----------+----+           +----------------------------+
                      |                     |           | Traffic Generator  sender/ |
                      |                     |           |receiver  of layer 2 traffic|
                      | CE/Layer 2 bridge   +-----------+   | with multiple VLANs        |
                      |                     |           +----------------------------+
                      |                     |
                      +---------------------+


Topology 1


                               Figure 1

   Test Setup





Jacob & Tiruveedhula    Expires 18 February 2024                [Page 5]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


+--------------+------------------+-------------+---------+-----------+----------------+
|              |                  |             |         |           |                |
| Mode         |  Test            |  Traffic    | Sender  | Receiver  |                |
|              |                  |  Direction  |         |           |                |
+--------------------------------------------------------------------------------------+
|              |                  |             |         |           |                |
|Single Active |  Local MAC       |             |  CE     |  SHPFE3   |Layer 2 traffic |
|              | Learning         |   Uni       |         |           |                |
|              |                  |             |         |           | multiple MAC   |
+--------------------------------------------------------------------------------------+
|              |                  |             |         |           |                |
|Single Active | Remote MAC       |             |         |  CE       |Layer 2 traffic |
|              | Learning         |   Uni       | SHPE3   |           |                |
|              |                  |             |         |           |multiple MAC    |
+--------------------------------------------------------------------------------------+
|              |                  |             |         |           |                |
|Single Active | Scale Convergence|   Bi        |         | CE/SHPE3  |                |
|              |                  |             |CE/SHPE3 |           |Layer 2 traffic |
|              | Local& Remote    |             |         |           |multiple MAC &  |
|              | Learning         |             |         |           |   VLANs        |
+--------------+------------------+-------------+---------+-----------+----------------+






                               Figure 2

   Table showing the traffic directions of various EVPN/PBB-EVPN
   benchmarking test cases.  Depending on the test scenario, the traffic
   can be uni-directional or bi-directional (configured in the traffic
   generator).

   Test Setup Configurations:

   SHPE3 is configured with Interior Gateway protocols like OSPF or IS-
   IS for the underlay, LDP for MPLS support, and Interior Border
   Gateway with EVPN address family for overlay support.  This router
   must be configured with N EVPN/PBB-EVPN instances for testing.  A
   traffic generator is connected to this router for sending and
   receiving traffic.

   RR is configured with Interior Gateway protocols like OSPF or IS-IS
   for the underlay, LDP for MPLS support, and Interior Border Gateway
   with EVPN address family for overlay support.  This router functions
   as both a provider router and a route reflector.




Jacob & Tiruveedhula    Expires 18 February 2024                [Page 6]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   MHPE1 is configured with Interior Gateway protocols like OSPF or IS-
   IS for the underlay, LDP for MPLS support, and Interior Border
   Gateway with EVPN address family for overlay support.  This router
   must be configured with N EVPN/PBB-EVPN instances for testing.  It is
   also configured with ESI per VLAN or ESI per interface.  MHPE1
   functions as a multi-homing PE in Single Active EVPN mode.  This
   router serves as the Device Under Test (DUT) and is connected to the
   CE.

   MHPE2 is configured with Interior Gateway protocols like OSPF or IS-
   IS for the underlay, LDP for MPLS support, and Interior Border
   Gateway with EVPN address family for overlay support.  This router
   must be configured with N EVPN/PBB-EVPN instances for testing.  It is
   also configured with ESI per VLAN or ESI per interface.  MHPE2
   functions as a standby router during the tests and is connected to
   the CE.

   CE is acting as a bridge configured with multiple VLANs.  The same
   VLANs are configured on MHPE1, MHPE2, and SHPE3.  A traffic generator
   is connected to the CE, which acts as both a sender and receiver of
   traffic.

   Depending on the test scenarios, the traffic generators will be used
   to generate uni-directional or bi-directional flows.

   The above configuration will serve as the base configuration for all
   test cases.

   The 'X' below is used as a variable to denote the scale factor of the
   testing parameters.  It must be a multiple of 100.

   'N' is an arbitrary number used to collect statistically significant
   samples.  The range can vary from 5 to 15.

3.  Test Cases for EVPN Benchmarking


3.1.  Data Plane MAC Learning

   Objective: Measure the time taken to learn the Data Plane MAC in the
   DUT.

   Topology: Topology 1

   Procedure:

   The data plane MAC learning can be measured using the parameters
   defined in RFC 2889 section 5.8.



Jacob & Tiruveedhula    Expires 18 February 2024                [Page 7]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Confirm that the DUT is up and running with EVPN.

   The traffic generator connected to CE must send frames with X
   different source and destination MAC addresses for one VLAN.  The
   same VLAN must be present in all the devices except RR.

   Send X unicast frames from CE to MHPE1 (DUT) for one EVPN instance
   working in Single Active (SA) mode.

   The DUT will learn these X MAC addresses in the data plane.

   Measurement: Measure the time taken to learn X MAC addresses locally
   in the DUT's EVPN MAC table.  The data plane measurement is taken by
   considering the DUT as a black box.  The range of MAC addresses is
   known from the traffic generator; the same must be learned in the
   DUT.  The time taken to learn X MAC addresses is measured.  This
   measurement is carried out using an external server that polls the
   DUT using automated scripts, which records the MAC counter value with
   a timestamp.  Note that at present, there are no standard models to
   measure the counters.

   The test is repeated N times, and the values are collected.  The MAC
   learning rate is calculated by averaging the values obtained from N
   samples.  N is an arbitrary number to obtain a sufficient sample
   size.  The time measured for each sample is denoted by T1, T2, ...,
   Tn.

   MAC learning rate = (T1 + T2 + ... + Tn) / N

3.2.  Control Plane MAC Learning

   Objective: Measure the time taken to learn the control plane MAC.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   The traffic generator connected to SHPE3 must send frames with X
   different source and destination MAC addresses for one VLAN.  The
   same VLAN must be present in all devices except RR.

   Ensure the frames are destined for one EVPN instance.

   The DUT will learn these X MAC addresses in the control plane.





Jacob & Tiruveedhula    Expires 18 February 2024                [Page 8]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Measurement: Measure the time taken by the DUT to learn the X MAC
   addresses in the control plane.  The test is repeated N times, and
   the values are collected.  The remote MAC learning rate is calculated
   by averaging the values obtained from N samples.  N is an arbitrary
   number to obtain a sufficient sample size.  The time measured for
   each sample is denoted by T1, T2, ..., Tn.  This measurement is
   carried out using an external server that polls the DUT using
   automated scripts, which records the MAC counter value with a
   timestamp.  Note that there are currently no standard models to
   measure the counters.

   MAC learning rate = (T1 + T2 + ... + Tn) / N

3.3.  MAC Flush-Local Link Failure and Relearning

   Objective: Measure the time taken to flush the Data Plane MAC and the
   time taken to relearn the same amount of MAC.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames with X different source and destination MAC addresses
   to the DUT from CE using the traffic generator for one VLAN.

   Ensure the DUT learns all X MAC addresses in the data plane.

   Fail the link between DUT and CE, and measure the time taken to flush
   these X MAC addresses from the EVPN MAC table.

   Bring up the previously failed DUT-CE link and measure the time taken
   by the DUT to relearn these X MAC addresses.

   The DUT and MHPE2 are both running in Single Active (SA) mode.

   Measurement: Measure the time taken for flushing these X MAC
   addresses.  Measure the time taken to relearn these X MAC addresses
   in the DUT.  The test is repeated N times, and the values are
   collected.  The flush and relearning times are calculated by
   averaging the values obtained from N samples.  N is an arbitrary
   number to obtain a sufficient sample size.  The time measured for
   each sample is denoted by T1, T2, ..., Tn, R1, R2, ..., Rn.  This
   measurement is carried out using an external server that polls the
   DUT using automated scripts, which records the MAC counter value with
   a timestamp.




Jacob & Tiruveedhula    Expires 18 February 2024                [Page 9]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Flush rate = (T1 + T2 + ... + Tn) / N

   Relearning rate = (R1 + R2 + ... + Rn) / N

3.4.  MAC Flush-Remote Link Failure and Relearning

   Objective: Measure the time taken to flush the Control plane MAC
   learned in DUT during remote link failure and the time taken to
   relearn.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames with X different source and destination MAC addresses
   to the DUT from SHPE3 using the traffic generator for one VLAN.

   Bring down the link between SHPE3 and the traffic generator.

   SHPE3 will withdraw the routes from DUT due to the link failure.

   Measure the time taken to flush the DUT's EVPN MAC table.  The DUT
   and MHPE2 are both running in Single Active (SA) mode.

   Bring up the previously failed link between SHPE3 and the traffic
   generator.

   Measure the time taken by the DUT to relearn these X MAC addresses
   from the control plane.

   Measurement: Measure the time taken to flush X remote MAC addresses
   from the EVPN MAC table of the DUT.  Measure the time taken to
   relearn these X MAC addresses in the DUT.  The test is repeated N
   times, and the values are collected.  The flush rate is calculated by
   averaging the values obtained from N samples.  N is an arbitrary
   number to obtain a sufficient sample size.  The time measured for
   each sample is denoted by T1, T2, ..., Tn, R1, R2, ..., Rn.  This
   measurement is carried out using an external server that polls the
   DUT using automated scripts, which records the MAC counter value with
   a timestamp.

   Flush rate = (T1 + T2 + ... + Tn) / N

   Relearning rate = (R1 + R2 + ... + Rn) / N





Jacob & Tiruveedhula    Expires 18 February 2024               [Page 10]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


3.5.  MAC Aging

   Objective: To measure the MAC Aging time.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames with X different source and destination MAC addresses
   to the DUT from CE using the traffic generator for one VLAN.

   Ensure that these X MAC addresses are learned in the DUT.

   Then stop the traffic.

   Ensure that the DUT and other devices in the test are using the
   default timers for aging.

   Measure the time taken to flush X MAC addresses from the DUT's EVPN
   MAC table due to aging.

   The DUT and MHPE2 are both running in Single Active (SA) mode.

   Measurement: Measure the time taken to flush X MAC addresses due to
   aging.  The test is repeated N times, and the values are collected.
   The aging time is calculated by averaging the values obtained from N
   samples.  N is an arbitrary number to obtain a sufficient sample
   size.  The time measured for each sample is denoted by T1, T2, ...,
   Tn.  This measurement is carried out using an external server that
   polls the DUT using automated scripts, which records the MAC counter
   value with a timestamp.

   Aging time for X MAC addresses in seconds = (T1 + T2 + ... + Tn) / N

3.6.  Remote MAC Aging

   Objective: Measure the control plane learned MAC Aging time.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames with X different source and destination MAC addresses
   to the DUT from SHPE3 using the traffic generator for one VLAN.



Jacob & Tiruveedhula    Expires 18 February 2024               [Page 11]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Ensure that these X MAC addresses are learned in the DUT via control
   plane.

   Then stop the traffic.

   Ensure that the DUT and other devices in the test are using the
   default timers for aging.

   Measure the time taken to flush X MAC addresses from the DUT's EVPN
   MAC table due to aging.

   The DUT and MHPE2 are both running in Single Active (SA) mode.

   Measurement: Measure the time taken to flush X remote MAC addresses
   learned in the DUT's EVPN MAC table due to aging.  The test is
   repeated N times, and the values are collected.  The aging is
   calculated by averaging the values obtained from N samples.  N is an
   arbitrary number to obtain a sufficient sample size.  The time
   measured for each sample is denoted by T1, T2, ..., Tn.  This
   measurement is carried out using an external server that polls the
   DUT using automated scripts, which records the MAC counter value with
   a timestamp.

   Aging time for X MAC addresses in seconds = (T1 + T2 + ... + Tn) / N

3.7.  Control and Data Plane MAC Learning

   Objective: To record the time taken to learn both local and remote
   MAC.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames with X different source and destination MAC addresses
   to the DUT from SHPE3 using the traffic generator for one VLAN.

   Send X frames with different source and destination MAC addresses
   from the traffic generator connected to CE for one VLAN.

   The source and destination addresses of flows must be complementary
   to have unicast flows.

   Measure the time taken by the DUT to learn 2X MAC addresses in the
   EVPN MAC table.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 12]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   The DUT and MHPE2 are both running in Single Active (SA) mode.

   Measurement: Measure the time taken to learn 2X MAC addresses in the
   DUT's EVPN MAC table.  The test is repeated N times, and the values
   are collected.  The MAC learning time is calculated by averaging the
   values obtained from N samples.  N is an arbitrary number to obtain a
   sufficient sample size.  The time measured for each sample is denoted
   by T1, T2, ..., Tn.  This measurement is carried out using an
   external server that polls the DUT using automated scripts, which
   records the MAC counter value with a timestamp.

   MAC learning rate = (T1 + T2 + ... + Tn) / N

3.8.  High Availability

   Objective: Measure traffic loss during routing engine failover.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with EVPN.

   Send X frames from CE to DUT using the traffic generator with X
   different source and destination MAC addresses.

   Send X frames from the traffic generator to SHPE3 with X different
   source and destination MAC addresses, resulting in 2X MAC addresses
   being learned in the DUT.

   Set up bidirectional traffic flow with X packets per second (pps) in
   each direction.

   Ensure that the DUT learns 2X MAC addresses.

   Then perform a routing engine failover.















Jacob & Tiruveedhula    Expires 18 February 2024               [Page 13]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Measurement: The expectation of the test is to observe 0 traffic loss
   with no change in the Designated Forwarder (DF) role.  The DUT should
   not withdraw any routes.  However, if the DUT is not properly
   synchronized between the master and standby, resulting in packet
   loss, measure that packet loss.  The test is repeated N times, and
   the values are collected.  The packet loss is calculated by averaging
   the values obtained from N samples.  N is an arbitrary number to
   obtain a sufficient sample size.  The time measured for each sample
   is denoted by T1, T2, ..., Tn.  This measurement is carried out using
   an external server that polls the DUT using automated scripts to
   ensure the DUT learned 2X MAC addresses.  The packet drop is measured
   using the traffic generator.

   Packet loss in seconds with 2X MAC addresses = (T1 + T2 + ... + Tn) /
   N

3.9.  ARP/ND Learning rate

   Measure the DUT learning rate of ARP/ND.

   Objective: Learning rate measurement.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with EVPN.

   Send X arp/neighbour discovery(ND) per second from the traffic
   generator to DUT with different sender ip/ipv6, MAC to the target IRB
   address configured in EVPN instance.

   Measure the time taken by the DUT to learn X MAC+IP/MAC+IPV6 in the
   EVPN MAC table.

   The DUT and MHPE2 are both running in Single Active (SA) mode.

   Measurement: Measure the time taken to learn X MAC+IP/MAC+IPV6
   addresses in the DUT's EVPN MAC table.  The test is repeated N times,
   and the values are collected.  The MAC learning time is calculated by
   averaging the values obtained from N samples.  N is an arbitrary
   number to obtain a sufficient sample size.  The time measured for
   each sample is denoted by T1, T2, ..., Tn.  This measurement is
   carried out using an external server that polls the DUT using
   automated scripts, which records the counter value with a timestamp.

   ARP Learning Rate = (T1 + T2 + ... + Tn) / N




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 14]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   ND Learning Rate = (T1 + T2 + ... + Tn) / N

3.10.  Scaling of Services

   Objective: Measure the scale of EVPN instances that a DUT can hold.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with EVPN.

   The DUT, MHPE2 and SHPE3 are scaled to N EVI.

   Ensure routes received from MHPE2 and SHPE3 for N EVI in the DUT.

   Then increment the scale of N by 5% of N till the limit is reached.

   The limit is where the DUT cant learn any EVPN routes from its peers.

   Measurement : There should not be any loss of route types 1,2,3 and 4
   in DUT.  DUT must relearn all type 1, 2, 3 and 4 from remote routers.
   The DUT must be subjected to various values of N to find the optimal
   scale limit.  The scope of the test is find out the maximum EVPN
   instance that a DUT can hold.  The measurement is carried out using
   external server which polls the DUT using automated scripts to find
   the scale limit of EVPN instances.  Once the limit is reached the DUT
   will no longer learn any incremental type 1,2,3 routes.

3.11.  Scale Convergence

   Objective: Measure the convergence time of DUT when the DUT is scaled
   with EVPN instance along with traffic.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with EVPN.

   Scale N EVIs in DUT,SHPE3 and MHPE2.

   Send F frames to DUT from CE using traffic generator with X different
   source and destination MAC for N EVI's.

   Send F frames from traffic generator to SHPE3 with X different source
   and destination MAC.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 15]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   There will be 2X number of MAC will be learned in DUT EVPN MAC table.

   There is a bi directional traffic flow with F pps in each direction.

   Then clear the BGP neighbours in the DUT.

   Once the BGP session is in established state in DUT.

   Measure the time taken to learn 2X MAC in DUT MAC table.

   Measurement : The DUT must learn 2X MAC.  Measure the time taken to
   learn 2X MAC in DUT.  The test is repeated for N times and the values
   are collected.  The convergence time is calculated by averaging the
   values obtained by N samples.  N is an arbitrary number to get a
   sufficient sample.The time measured for each sample is denoted by
   T1,T2...Tn.  The measurement is carried out using external server
   which polls the DUT using automated scripts which measures the MAC
   counter value with timestamp.

   Time taken to learn 2X MAC in DUT = (T1+T2+..Tn)/N

3.12.  SOAK Test.

   Objective: This test is carried out to measure the stability of the
   DUT in a scaled environment with traffic over a period of time "T'".
   In each interval "t1" the DUT CPU usage, memory usage are measured.
   The DUT is checked for any crashes till the end of the cycle which is
   24 hours.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with EVPN.

   Scale N EVI's in DUT, SHPE3 and MHPE2.Send F frames to DUT from CE
   using traffic generator with different X source and destination MAC
   for N EVI's.

   Send F frames from traffic generator to SHPE3 with X different source
   and destination MAC.

   There will be 2X number of MAC will be learned in DUT EVPN MAC table.

   There is a bi directional traffic flow with F pps in each direction.

   The DUT must run with traffic for 24 hours.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 16]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Every hour check for memory leak in EVPN process, CPU usage and
   crashes in DUT,this must be repeated till the end of the cycle.

   If the DUT crashed during the test and it is not able to recover,then
   the test will be terminated.

   Measurement : Take the hourly reading of CPU, process memory.  There
   should not be any memory leak, crashes, CPU spikes.  The CPU spike is
   determined as the sudden increase of CPU usage to 100 percent
   compared to the average usage.  The average value vary from device to
   device.  Memory leak is determined as the increase of memory usage
   with respect to time.  The expectation is under steady state the
   memory usage for EVPN process should not increase with respect to
   time.  The measurement is carried out using external server which
   polls the DUT using automated scripts which captures the CPU usage
   and process memory.  The data collected from the 24 hour duration
   must be evaluated to see any leaks and crashes during the entire
   period.

4.  Test Cases for PBB-EVPN Benchmarking

4.1.  Data Plane Local MAC Learning

   Objective: Measure the time taken to learn the Data Plane MAC in DUT.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.

   Traffic generator connected to CE must send frames with X different
   source and destination MAC for one VLAN, the same VLAN must be
   present in all the devices except RR.

   Send X unicast frames from CE to MHPE1(DUT) for one PBB-EVPN instance
   working in SA mode.

   The DUT will learn these X MAC in data plane.

   Measurement : Measure the time taken to learn X MAC locally in DUT
   PBB-EVPN MAC table.  The data plane measurement is taken by
   considering DUT as black box.  The range of MAC are known from
   traffic generator, the same must be learned in DUT, the time taken to
   learn X MAC is measured.The measurement is carried out using external
   server which polls the DUT using automated scripts which measures the
   MAC counter value with timestamp.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 17]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   The test is repeated for N times and the values are collected.  The
   MAC learning rate is calculated by averaging the values obtained from
   N samples.  N is an arbitrary number to get a sufficient sample.  The
   time measured for each sample is denoted by T1,T2...Tn.

   MAC learning rate = (T1+T2+..Tn)/N

4.2.  Data Plane Remote MAC Learning

   Objective: To Record the time taken to learn the remote MAC.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.

   Traffic generator connected to SHPE3 must send frames with X
   different source and destination MAC for one VLAN, the same VLAN must
   be present in all the devices except RR.

   Ensure the frames must be destined to one PBB-EVPN instance.

   The DUT will learn these X MAC in data plane.

   Measurement : Measure the time taken by the DUT to learn the X MAC in
   the data plane.  The test is repeated for N times and the values are
   collected.  The remote MAC learning rate is calculated by averaging
   the values obtained from N samples.  N is an arbitrary number to get
   a sufficient sample.  The time measured for each sample is denoted by
   T1,T2...Tn.  The measurement is carried out using external server
   which polls the DUT using automated scripts which measures the MAC
   counter value with timestamp.

   MAC learning rate = (T1+T2+..Tn)/N

4.3.  MAC Flush-Local Link Failure

   Objective: Measure the time taken to flush the locally learned MAC
   and the time taken to relearn the same amount of MAC.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.





Jacob & Tiruveedhula    Expires 18 February 2024               [Page 18]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Send X frames with X different source and destination MAC to DUT from
   CE using traffic generator for one VLAN.

   Ensure the DUT learns all X MAC in data plane.

   Fail the DUT-CE link and measure the time taken to flush these X MAC
   from the PBB-EVPN MAC table.

   Bring up the link which was made Down(the link between DUT and
   CE).Measure time taken by the DUT to relearn these X MAC.

   The DUT and MHPE2 are running SA mode.

   Measurement : Measure the time taken for flushing these X MAC.
   Measure the time taken to relearn these X MAC in DUT.  The test is
   repeated for N times and the values are collected.  The flush and the
   relearning time is calculated by averaging the values obtained by N
   samples.  N is an arbitrary number to get a sufficient sample.  The
   time measured for each sample is denoted by T1,T2...Tn,R1,R2..Rn.
   The measurement is carried out using external server which polls the
   DUT using automated scripts which measures the MAC counter value with
   timestamp.

   Flush rate = (T1+T2+..Tn)/N

   Relearning rate = (R1+R2+..Rn)/N

4.4.  MAC Flush-Remote Link Failure

   Objective: Measure the time taken to flush the remote MAC learned in
   DUT due to remote link failure and relearning it.

   Topology : Topology 1

   Procedure:

   confirm the DUT is up and running with PBB-EVPN.

   Send X frames with X different source and destination MAC to DUT from
   SHPE3 using traffic generator for one VLAN.

   Bring down the link between SHPE3 and traffic generator.

   Measure the time taken to flush the DUT PBB-EVPN MAC table.  The DUT
   and MHPE2 are running SA mode.

   Bring up the link which was made Down(the link between SHPE3 and
   traffic generator).



Jacob & Tiruveedhula    Expires 18 February 2024               [Page 19]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Measure time taken by the DUT to relearn these X MAC

   Measurement : Measure the time taken to flush X remote MAC from PBB-
   EVPN MAC table of the DUT.  Measure the time taken to relearn these X
   MAC in DUT.  The test is repeated for N times and the values are
   collected.  The flush rate is calculated by averaging the values
   obtained by N samples.  N is an arbitrary number to get a sufficient
   sample.  The time measured for each sample is denoted by
   T1,T2...Tn,R1,R2..Rn.  The measurement is carried out using external
   server which polls the DUT using automated scripts which measures the
   MAC counter value with timestamp.

   Flush rate = (T1+T2+..Tn)/N

   Relearning rate = (R1+R2+..Rn)/N

4.5.  MAC Aging

   Objective: Measure the MAC Aging time.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.

   Send X frames with X different source and destination MAC to DUT from
   CE using traffic generator for one VLAN.

   Ensure these X MAC are learned in DUT.

   Then stop the traffic.

   Ensure the DUT and other devices in the test are using the default
   timers for aging.

   Measure the time taken to flush X MAC from DUT PBB-EVPN MAC table due
   to aging.

   The DUT and MHPE2 are running SA mode.

   Measurement : Measure the time taken to flush X MAC due to aging.
   The test is repeated for N times and the values are collected.  The
   aging is calculated averaging the values obtained by N samples.  N is
   an arbitrary number to get a sufficient sample.  The time measured
   for each sample is denoted by T1,T2...Tn.  The measurement is carried
   out using external server which polls the DUT using automated scripts
   which measures the MAC counter value with timestamp.



Jacob & Tiruveedhula    Expires 18 February 2024               [Page 20]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Aging time for X MAC in sec = (T1+T2+..Tn)/N

4.6.  Remote MAC Aging.

   Objective: Measure the remote MAC Aging time.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.

   Send X frames with X different source and destination MAC to DUT from
   SHPE3 using traffic generator for one VLAN.

   Ensure these X MAC are learned in DUT.

   Then stop the traffic.

   Ensure the DUT and other devices in the test are using the default
   timers for aging.

   Measure the time taken to flush X MAC from DUT PBB-EVPN MAC table due
   to aging.

   The DUT and MHPE2 are running SA mode.

   Measurement : Measure the time taken to flush X remote MAC learned in
   DUT EVPN MAC table due to aging.  The test is repeated for N times
   and the values are collected.  The aging is calculated by averaging
   the values obtained by N samples.  N is an arbitrary number to get a
   sufficient sample.  The time measured for each sample is denoted by
   T1,T2...Tn.  The measurement is carried out using external server
   which polls the DUT using automated scripts which measures the MAC
   counter value with timestamp.

   Aging time for X MAC in sec = (T1+T2+..Tn)/N

4.7.  Local and Remote MAC Learning

   Objective: Measure the time taken to learn both local and remote MAC.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 21]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Send X frames with X different source and destination MAC to DUT from
   SHPE3 using traffic generator for one VLAN.

   Send X frames with different source and destination MAC from traffic
   generator connected to CE for one VLAN.

   The source and destination addresses of flows must be complimentary
   to have unicast flows.

   Measure the time taken by the DUT to learn 2X in PBB-EVPN MAC table.

   DUT and MHPE2 are running in SA mode.

   Measurement : Measure the time taken to learn 2X MAC in DUT PBB-EVPN
   MAC table.  The test is repeated for N times and the values are
   collected.  The MAC learning time is calculated by averaging the
   values obtained by N samples.  N is an arbitrary number to get a
   sufficient sample.  The time measured for each sample is denoted by
   T1,T2...Tn.  The measurement is carried out using external server
   which polls the DUT using automated scripts which measures the MAC
   counter value with timestamp.

   MAC learning rate = (T1+T2+..Tn)/N

4.8.  High Availability

   Objective: Measure traffic loss during routing engine failover.

   Topology : Topology 1

   Procedure:

   Confirm the DUT is up and running with PBB-EVPN.

   Send X frames from CE to DUT from traffic generator with X different
   source and destination MAC.

   Send X frames from traffic generator to SHPE3 with X different source
   and destination MAC, so that 2X MAC will be learned in the DUT.

   There is a bi directional traffic flow with X pps in each direction.

   Ensure the DUT learn 2X MAC.

   Then do a routing engine fail-over.






Jacob & Tiruveedhula    Expires 18 February 2024               [Page 22]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Measurement : The expectation of the test is 0 traffic loss with no
   change in the DF role.  DUT should not withdraw any routes.But in
   cases where the DUT is not property synchronised between master and
   standby, due to that packet loss are observed.  In that scenario the
   packet loss is measured.  The test is repeated for N times and the
   values are collected.  The packet loss is calculated by averaging the
   values obtained by N samples.  N is an arbitrary number to get a
   sufficient sample.  The time measured for each sample is denoted by
   T1,T2...Tn.  The measurement is carried out using external server
   which polls the DUT using automated scripts to ensure the DUT learned
   2X MAC.  The packet drop is measured using traffic generator.

   Packet loss in sec with 2X MAC = (T1+T2+..Tn)/N

4.9.  Scale

   Objective: Measure the scale limit of the DUT for PBB-EVPN.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with PBB-EVPN.

   Scale the DUT, MHPE2, and SHPE3 to N PBB-EVI instances.

   Ensure that routes are received from MHPE2 and SHPE3 for N PBB-EVI
   instances in the DUT.

   Increment the scale by 5% of N until the limit is reached.

   The limit is reached when the DUT can no longer learn any EVPN routes
   from its peers.

   Measurement: There should be no loss of route types 2, 3, and 4 in
   the DUT.  The DUT must relearn all type 2, 3, and 4 routes from
   remote routers.  The DUT should be subjected to various values of N
   to find the optimal scale limit.  The scope of the test is to
   determine the maximum number of EVPN instances that a DUT can handle.
   The measurement is carried out using an external server that polls
   the DUT using automated scripts to determine the scale limit of PBB-
   EVPN instances.

4.10.  Scale Convergence

   Objective: To measure the convergence time of the DUT when it's
   scaled with EVPN instances along with traffic.




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 23]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with PBB-EVPN.

   Scale N PBB-EVIs in DUT, SHPE3, and MHPE2.

   Send F frames to DUT from CE using the traffic generator with X
   different source and destination MAC addresses for N PBB-EVIs.

   Send F frames from the traffic generator to SHPE3 with X different
   source and destination MAC addresses.

   There will be 2X number of MAC addresses learned in the DUT's PBB-
   EVPN MAC table.

   Set up bidirectional traffic flow with F packets per second (pps) in
   each direction.

   Then clear the BGP neighbors in the DUT.

   Once the BGP session is established in the DUT, measure the time
   taken to learn 2X MAC addresses in the DUT's MAC table.

   Measurement: The DUT must learn 2X MAC addresses.  Measure the time
   taken to learn 2X MAC addresses in the DUT.  The test is repeated N
   times, and the values are collected.  The convergence time is
   calculated by averaging the values obtained from N samples.  N is an
   arbitrary number to obtain a sufficient sample size.  The time
   measured for each sample is denoted by T1, T2, ..., Tn.  This
   measurement is carried out using an external server that polls the
   DUT using automated scripts, which records the MAC counter value with
   a timestamp.

   Time taken to learn 2X MAC addresses in DUT = (T1 + T2 + ... + Tn) /
   N

4.11.  Soak Test

   Objective: To measure the stability of the DUT in a scaled
   environment with traffic.

   Topology: Topology 1

   Procedure:

   Confirm that the DUT is up and running with PBB-EVPN.



Jacob & Tiruveedhula    Expires 18 February 2024               [Page 24]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Scale N PBB-EVIs in DUT, SHPE3, and MHPE2.

   Send F frames to DUT from CE using the traffic generator with X
   different source and destination MAC addresses for N EVIs.

   Send F frames from the traffic generator to SHPE3 with X different
   source and destination MAC addresses.

   There will be 2X number of MAC addresses learned in the DUT's PBB-
   EVPN MAC table.

   Set up bidirectional traffic flow with F packets per second (pps) in
   each direction.

   The DUT must run with traffic for 24 hours.

   Every hour, check for memory leaks in the PBB-EVPN process, CPU
   usage, and crashes in the DUT until the end of the 24-hour cycle.

   If the DUT crashes during the test and is unable to recover, the test
   will be terminated.

   Measurement: Take hourly readings of CPU usage and process memory.
   There should be no memory leaks, crashes, or CPU spikes.  A CPU spike
   is defined as a sudden increase in CPU usage to 100 percent compared
   to the average usage.  The average value may vary from device to
   device.  A memory leak is defined as an increase in memory usage over
   time.  Under steady-state conditions, the memory usage for the PBB-
   EVPN process should not increase significantly.  The measurement is
   carried out using an external server that polls the DUT using
   automated scripts, capturing the CPU usage and process memory.

5.  Acknowledgments

   We would like to thank Fioccola Giuseppe of Telecom Italia reviewing
   our draft and commenting it.  We would like to thank Sarah Banks for
   guiding and mentoring us.  We take the opportunity to thank Al for
   reviewing our draft and gave us valuable comments.

6.  IANA Considerations

   This memo includes no request to IANA.









Jacob & Tiruveedhula    Expires 18 February 2024               [Page 25]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


7.  Security Considerations

   The benchmarking tests described in this document are limited to the
   performance characterisation of controllers in a lab environment with
   isolated networks.  The benchmarking network topology will be an
   independent test setup and MUST NOT be connected to devices that may
   forward the test traffic into a production network or misroute
   traffic to the test management network.  Further, benchmarking is
   performed on a "black-box" basis, relying solely on measurements
   observable external to the controller.  Security features mentioned
   in the RFC 7432 will affect the test results.  Special capabilities
   SHOULD NOT exist in the controller specifically for benchmarking
   purposes.  Any implications for network security arising from the
   controller SHOULD be identical in the lab and in production networks.

8.  References

8.1.  Normative References

   [RFC2544]  Bradner, S. and J. McQuaid, "Benchmarking Methodology for
              Network Interconnect Devices", RFC 2544,
              DOI 10.17487/RFC2544, March 1999,
              <https://www.rfc-editor.org/info/rfc2544>.

   [RFC2899]  Ginoza, S., "Request for Comments Summary RFC Numbers
              2800-2899", RFC 2899, DOI 10.17487/RFC2899, May 2001,
              <https://www.rfc-editor.org/info/rfc2899>.

   [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>.

8.2.  Informative References

   [RFC7432]  Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A.,
              Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based
              Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February
              2015, <https://www.rfc-editor.org/info/rfc7432>.

   [RFC7623]  Sajassi, A., Ed., Salam, S., Bitar, N., Isaac, A., and W.
              Henderickx, "Provider Backbone Bridging Combined with
              Ethernet VPN (PBB-EVPN)", RFC 7623, DOI 10.17487/RFC7623,
              September 2015, <https://www.rfc-editor.org/info/rfc7623>.

Appendix A.  Appendix

Authors' Addresses




Jacob & Tiruveedhula    Expires 18 February 2024               [Page 26]


Internet-Draft        EVPN Benchmarking Methodology          August 2023


   Sudhin Jacob (editor)
   Independent
   Bangalore
   India
   Phone: +91 8061212543
   Email: sudhinjacob@rediffmail.com


   Kishore Tiruveedhula
   Juniper Networks
   10 Technology Park Dr
   Westford, MA 01886
   United States of America
   Phone: +1 9785898861
   Email: kishoret@juniper.net




































Jacob & Tiruveedhula    Expires 18 February 2024               [Page 27]