Internet Engineering Task Force S. Jacob, Ed. Internet-Draft K. Tiruveedhula Intended status: Informational Juniper Networks Expires: August 6, 2021 February 2, 2021 Benchmarking Methodology for EVPN and PBB-EVPN draft-ietf-bmwg-evpntest-07 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 August 6, 2021. Copyright Notice 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) 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. Jacob & Tiruveedhula Expires August 6, 2021 [Page 1] Internet-Draft EVPN Benchmarking Methodology February 2021 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 Scale . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . 19 4.4. MAC Flush-Remote Link Failure . . . . . . . . . . . . . . 20 4.5. MAC Aging . . . . . . . . . . . . . . . . . . . . . . . . 21 4.6. Remote MAC Aging. . . . . . . . . . . . . . . . . . . . . 21 4.7. Local and Remote MAC Learning . . . . . . . . . . . . . . 22 4.8. High Availability . . . . . . . . . . . . . . . . . . . . 23 4.9. Scale . . . . . . . . . . . . . . . . . . . . . . . . . . 24 4.10. Scale Convergence . . . . . . . . . . . . . . . . . . . . 25 4.11. Soak Test . . . . . . . . . . . . . . . . . . . . . . . . 26 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 26 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27 7. Security Considerations . . . . . . . . . . . . . . . . . . . 27 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 27 8.1. Normative References . . . . . . . . . . . . . . . . . . 27 8.2. Informative References . . . . . . . . . . . . . . . . . 27 Appendix A. Appendix . . . . . . . . . . . . . . . . . . . . . . 28 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 28 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 August 6, 2021 [Page 2] Internet-Draft EVPN Benchmarking Methodology February 2021 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", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 8174 [RFC8174]. 1.2. Terminologies Most of the terminology used in this documents comes from [RFC7432] and [RFC7632]. All-Active Redundancy Mode: When all PEs attached to an Ethernet segment are allowed to forward known unicast traffic to/from that Ethernet segment for a given VLAN, then the Ethernet segment is defined to be operating in All-Active redundancy mode. AA: All Active mode 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 interface MAC: Media Access Control addresses on a PE. Jacob & Tiruveedhula Expires August 6, 2021 [Page 3] Internet-Draft EVPN Benchmarking Methodology February 2021 MHPE2: Multi homed Provider Edge router 2. MHPE1: Multi homed Provider Edge router 1. SHPE3: Single homed Provider Edge Router 3. PE: Provider Edge device. P: Provider Router. RR: Route Reflector. RT: Traffic Generator. Sub Interface: Each physical Interfaces is subdivided in to a set of Logical units. 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 August 6, 2021 [Page 4] Internet-Draft EVPN Benchmarking Methodology February 2021 +----------------+ +---------------------------+ | | | | | | |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 Test Setup Figure 1 Jacob & Tiruveedhula Expires August 6, 2021 [Page 5] Internet-Draft EVPN Benchmarking Methodology February 2021 +--------------+------------------+-------------+---------+-----------+----------------+ | | | | | | | | 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 | +--------------+------------------+-------------+---------+-----------+----------------+ 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). Figure 2 Test Setup Configurations: SHPE3 is configured with Interior Gateway protocols like OPSF or IS- IS for underlay, LDP for MPLS support, Interior Border Gateway with EVPN address family for overlay support. This router must be configured with N EVPN/PBB-EVPN instances for testing. Traffic generator is connected to this router for sending and receiving traffic. RR is configured with Interior Gateway protocols like OPSF or IS-IS for underlay, LDP for MPLS support, Interior Border Gateway with EVPN address family for overlay support. This router function as both provider router and a route reflector. Jacob & Tiruveedhula Expires August 6, 2021 [Page 6] Internet-Draft EVPN Benchmarking Methodology February 2021 MHPE1 is configured with Interior Gateway protocols like OPSF or IS- IS for underlay, LDP for MPLS support, Interior Border Gateway with EVPN address family for overlay support. This router must be configured with N EVPN/PBB-EVPN instances for testing. This router is configured with ESI per vlan or ESI per interface. It is functioning as multi homing PE working on Single Active EVPN mode. This router serves as the DUT and it is connected to CE. MHPE1 is acting as DUT for all the test cases. MHPE2 is configured with Interior Gateway protocols like OPSF or IS- IS for underlay, LDP for MPLS support,Interior Border Gateway with EVPN address family for overlay support. This router must be configured with N EVPN/PBB-EVPN instances for testing. This router is configured with ESI per vlan or ESI per interface. It is functioning as multi homing PE working on Single Active EVPN mode. It is connected to CE. CE is acting as bridge configured with multiple vlans. The same vlans are configured on MHPE1,MHPE2,SHPE3. traffic generator is connected to CE. the traffic generator acts as sender or receiver of traffic. Depending up on the test scenarios the traffic generators will be used to generate uni directional or bi directional flows. The above configuration will be serving as the base configuration for all test cases. The X is used as variable to denote scale factor of the testing parameters.It must be in the multiples of 100. 3. Test Cases for EVPN Benchmarking 3.1. Data Plane MAC Learning Objective: Measure the time taken to learn the Data Plane MAC in DUT. Topology : Topology 1 Procedure: The data plane MAC learning can be measured using the parameters defined in RFC 2889 section 5.8. Confirm the DUT is up and running with EVPN. Jacob & Tiruveedhula Expires August 6, 2021 [Page 7] Internet-Draft EVPN Benchmarking Methodology February 2021 Traffic generator connected to CE must send frames with X different source and destination MAC address 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 SA mode. The DUT will learn these X MAC in data plane. Measurement : Measure the time taken to learn X MAC locally in DUT 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. 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 3.2. Control Plane MAC Learning Objective: Measure the time taken to learn the control plane MAC. Topology : Topology 1 Procedure: Confirm the DUT is up and running with EVPN. Traffic generator connected to SHPE3 must send frames with X different source and destination MAC address for one vlan, the same vlan must be present in all the devices except RR. Ensure the frames must be destined to one EVPN instance. The DUT will learn these X MAC in control plane. Measurement : Jacob & Tiruveedhula Expires August 6, 2021 [Page 8] Internet-Draft EVPN Benchmarking Methodology February 2021 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. 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 the DUT is up and running with EVPN. Send X frames with X different source and destination MAC addresses to DUT from CE using traffic generator for one vlan. Ensure the DUT learns all X MAC addresses in data plane. Fail the DUT-CE link and measure the time taken to flush these X MAC from the 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 addresses. 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. The measurement is carried out using external server which polls the DUT using automated scripts. Jacob & Tiruveedhula Expires August 6, 2021 [Page 9] Internet-Draft EVPN Benchmarking Methodology February 2021 Flush rate = (T1+T2+..Tn)/N Relearning rate = (T1+T2+..Tn)/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 the DUT is up and running with EVPN. Send X frames with X different source and destination MAC addresses to DUT from SHPE3 using traffic generator for one vlan. Bring down the link between SHPE3 and traffic generator. SHPE3 will withdraw the routes from DUT due to link failure. Measure the time taken to flush the DUT 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). Measure time taken by the DUT to relearn these X MAC from control plane. Measurement : Measure the time taken to flush X remote MAC from 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. The measurement is carried out using external server which polls the DUT using automated scripts. Flush rate = (T1+T2+..Tn)/N Relearning rate = (T1+T2+..Tn)/N Jacob & Tiruveedhula Expires August 6, 2021 [Page 10] Internet-Draft EVPN Benchmarking Methodology February 2021 3.5. MAC Aging Objective: To measure the MAC aging time. Topology : Topology 1 Procedure: Confirm the DUT is up and running with EVPN. Send X frames with X different source and destination MAC addresses to DUT from CE using traffic generator for one vlan. Ensure these X MAC addresses 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 EVPN MAC table due to aging. The DUT and MHPE2 are running SA mode. Measurement : Measure the time taken to flush X MAC addresses 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. Aging time for X MAC in sec = (T1+T2+..Tn)/N 3.6. Remote MAC Aging Objective: Measure the control plane learned MAC aging time. Topology : Topology 1 Procedure: Jacob & Tiruveedhula Expires August 6, 2021 [Page 11] Internet-Draft EVPN Benchmarking Methodology February 2021 Confirm the DUT is up and running with EVPN. Send X frames with X different source and destination MAC addresses to DUT from SHPE3 using traffic generator for one vlan. Ensure these X MAC addresses are learned in DUT via control plane. 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 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. Aging time for X MAC in sec = (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 the DUT is up and running with EVPN. Send X frames with X different source and destination MAC addresses to DUT from SHPE3 using traffic generator for one vlan. Send X frames with different source and destination MAC addresses from traffic generator connected to CE for one vlan. Jacob & Tiruveedhula Expires August 6, 2021 [Page 12] Internet-Draft EVPN Benchmarking Methodology February 2021 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 EVPN MAC table. DUT and MHPE2 are running in SA mode. Measurement : Measure the time taken to learn 2X MAC addresses in DUT 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 MAC learning rate = (T1+T2+..Tn)/N 3.8. High Availability. Objective: Measure traffic loss during routing engine fail over. Topology : Topology 1 Procedure: Confirm the DUT is up and running with EVPN. Send X frames from CE to DUT from traffic generator with X different source and destination MAC addresses. Send X frames from traffic generator to SHPE3 with X different source and destination MAC addresses, so that 2X MAC address 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. Measurement : Jacob & Tiruveedhula Expires August 6, 2021 [Page 13] Internet-Draft EVPN Benchmarking Methodology February 2021 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 synchronized 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 addresses = (T1+T2+..Tn)/N 3.9. ARP/ND Scale Measure the DUT scaling limit of ARP/ND. Objective: Measure the ARP/ND scale of the DUT. Topology : Topology 1 Procedure: Confirm the DUT is up and running with EVPN. Send X arp/neighbor discovery(ND) from the traffic generator to DUT with different sender ip/ipv6,MAC addresses to the target IRB address configured in EVPN instance. The EVPN instance learns the MAC+ip and MAC+ipv6 addresses from these request and advertise as type 2 MAC+ip/MAC+ipv6 route to remote provide edge routers which have same EVPN configurations. The value of X must be increased at a incremental value of 5% of X, till the limit is reached. The limit is where the DUT cant learn any more type 2 MAC+ip/MAC+ipv6.The test must be separately conducted for arp and ND. Measurement : Measure the scale limit of type 2 MAC+ip/MAC+ipv6 route which DUT can learn. The test is repeated for N times and the values are collected. The scale limit is calculated by averaging the values obtained by N samples for both MAC+ip and MAC+ipv6. N is an Jacob & Tiruveedhula Expires August 6, 2021 [Page 14] Internet-Draft EVPN Benchmarking Methodology February 2021 arbitrary number to get a sufficient sample. The scale value obtained by each sample be v1,v2..vn. The measurement is carried out using external server which polls the DUT using automated scripts to find the scale limit of MAC+ipv4/MAC+ipv6. Scale limit for MAC+ip = (v1+v2+..vn)/N Scale limit for MAC+ipv6 = (v1+v2+..vn)/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. 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 Jacob & Tiruveedhula Expires August 6, 2021 [Page 15] Internet-Draft EVPN Benchmarking Methodology February 2021 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 addresses for N EVI's. Send F frames from traffic generator to SHPE3 with X different source and destination MAC addresses. There will be 2X number of MAC addresses 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 neighbors in the DUT. Once the BGP session is in established state in DUT. Measure the time taken to learn 2X MAC address in DUT MAC table. Measurement : The DUT must learn 2X MAC addresses. 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. 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 during this time period. Topology : Topology 1 Procedure: Jacob & Tiruveedhula Expires August 6, 2021 [Page 16] Internet-Draft EVPN Benchmarking Methodology February 2021 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 addresses for N EVI's. Send F frames from traffic generator to SHPE3 with X different source and destination MAC addresses. There will be 2X number of MAC addresses 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. Every hour check for memory leak in EVPN process, CPU usage and crashes in DUT. Measurement : Take the hourly reading of CPU, process memory. There should not be any leak, crashes, CPU spikes. The CPU spike is determined as the CPU usage which shoots at 40 to 50 percent of the average usage. The average value vary from device to device. Memory leak is determined by increase usage of the memory for EVPN process. The expectation is under steady state the memory usage for EVPN process should not increase. The measurement is carried out using external server which polls the DUT using automated scripts which captures the CPU usage and process memory. 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. Jacob & Tiruveedhula Expires August 6, 2021 [Page 17] Internet-Draft EVPN Benchmarking Methodology February 2021 Traffic generator connected to CE must send frames with X different source and destination MAC address 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. 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 address 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 : Jacob & Tiruveedhula Expires August 6, 2021 [Page 18] Internet-Draft EVPN Benchmarking Methodology February 2021 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. 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. Send X frames with X different source and destination MAC addresses to DUT from CE using traffic generator for one vlan. Ensure the DUT learns all X MAC addresses 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 addresses. 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. The measurement is carried out using external server which polls the DUT using automated scripts. Jacob & Tiruveedhula Expires August 6, 2021 [Page 19] Internet-Draft EVPN Benchmarking Methodology February 2021 Flush rate = (T1+T2+..Tn)/N Relearning rate = (T1+T2+..Tn)/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 addresses 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). 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. The measurement is carried out using external server which polls the DUT using automated scripts. Flush rate = (T1+T2+..Tn)/N Relearning rate = (T1+T2+..Tn)/N Jacob & Tiruveedhula Expires August 6, 2021 [Page 20] Internet-Draft EVPN Benchmarking Methodology February 2021 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 addresses to DUT from CE using traffic generator for one vlan. Ensure these X MAC addresses 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 addresses 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. 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: Jacob & Tiruveedhula Expires August 6, 2021 [Page 21] Internet-Draft EVPN Benchmarking Methodology February 2021 Confirm the DUT is up and running with PBB-EVPN. Send X frames with X different source and destination MAC addresses to DUT from SHPE3 using traffic generator for one vlan. Ensure these X MAC addresses 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. 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. Send X frames with X different source and destination MAC addresses to DUT from SHPE3 using traffic generator for one vlan. Send X frames with different source and destination MAC addresses from traffic generator connected to CE for one vlan. Jacob & Tiruveedhula Expires August 6, 2021 [Page 22] Internet-Draft EVPN Benchmarking Methodology February 2021 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 addresses 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 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 addresses. Send X frames from traffic generator to SHPE3 with X different source and destination MAC addresses, so that 2X MAC address 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. Measurement : Jacob & Tiruveedhula Expires August 6, 2021 [Page 23] Internet-Draft EVPN Benchmarking Methodology February 2021 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 synchronized 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 addresses = (T1+T2+..Tn)/N 4.9. Scale Objective: Measure the scale limit of DUT for PBB-EVPN. Topology : Topology 1 Procedure: Confirm the DUT is up and running with PBB-EVPN. The DUT,MHPE2 and SHPE3 are scaled to N PBB-EVI. Ensure routes received from MHPE2 and SHPE3 for N PBB-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 2,3 and 4 in DUT. DUT must relearn all type 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 PBB-EVPN instances. Jacob & Tiruveedhula Expires August 6, 2021 [Page 24] Internet-Draft EVPN Benchmarking Methodology February 2021 4.10. Scale Convergence Objective: To 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 PBB-EVPN. Scale N PBB-EVIs in DUT,SHPE3 and MHPE2. Send F frames to DUT from CE using traffic generator with X different source and destination MAC addresses for N PBB-EVI's. Send F frames from traffic generator to SHPE3 with X different source and destination MAC addresses. There will be 2X number of MAC addresses will be learned in DUT PBB- EVPN MAC table. There is a bi directional traffic flow with F pps in each direction. Then clear the BGP neighbors in the DUT. Once the BGP session is in established state in DUT. Measure the time taken to learn 2X MAC address in DUT MAC table. Measurement : The DUT must learn 2X MAC addresses. 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. Time taken to learn 2X MAC in DUT = (T1+T2+..Tn)/N Jacob & Tiruveedhula Expires August 6, 2021 [Page 25] Internet-Draft EVPN Benchmarking Methodology February 2021 4.11. Soak Test Objective: To measure the stability of the DUT in a scaled environment with traffic. Topology : Topology 1 Procedure: Confirm the DUT is up and running with PBB-EVPN. Scale N PBB-EVI's in DUT,SHPE3 and MHPE2.Send F frames to DUT from CE using traffic generator with different X source and destination MAC addresses for N EVI's. Send F frames from traffic generator to SHPE3 with X different source and destination MAC addresses. There will be 2X number of MAC addresses will be learned in DUT PBB- 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. Every hour check for memory leak in PBB-EVPN process,CPU usage and crashes in DUT. Measurement : Take the hourly reading of CPU, process memory. There should not be any leak, crashes, CPU spikes. The CPU spike is determined as the CPU usage which shoots at 40 to 50 percent of the average usage. The average value vary from device to device. Memory leak is determined by increase usage of the memory for PBB-EVPN process. The expectation is under steady state the memory usage for PBB-EVPN process should not increase. The measurement is carried out using external server which polls the DUT using automated scripts which captures 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 Jacob & Tiruveedhula Expires August 6, 2021 [Page 26] Internet-Draft EVPN Benchmarking Methodology February 2021 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. 7. Security Considerations The benchmarking tests described in this document are limited to the performance characterization 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. 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, . [RFC2899] Ginoza, S., "Request for Comments Summary RFC Numbers 2800-2899", RFC 2899, DOI 10.17487/RFC2899, May 2001, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . 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, . Jacob & Tiruveedhula Expires August 6, 2021 [Page 27] Internet-Draft EVPN Benchmarking Methodology February 2021 [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, . Appendix A. Appendix Authors' Addresses Sudhin Jacob (editor) Juniper Networks Bangalore India Phone: +91 8061212543 Email: sjacob@juniper.net Kishore Tiruveedhula Juniper Networks 10 Technology Park Dr Westford, MA 01886 USA Phone: +1 9785898861 Email: kishoret@juniper.net Jacob & Tiruveedhula Expires August 6, 2021 [Page 28]