EVPN MAC-VRF Validation on ACX7000 Family - 夜莺博客

EVPN MAC-VRF Validation on ACX7000 Family

By Suneesh Babu — Juniper TechPost (posted 2022-10-29)

JUNOS unified way of bringing up EVPN E-LAN using the mac-vrf instance type, supporting 6,000 instances on ACX7000 with 642,000 MAC scale.

Introduction

Layer-2 VPN technologies provide multipoint services over IP/MPLS networks. The latest addition is Ethernet VPN (EVPN), where MAC learning is done via the control plane — compared to its predecessor Virtual Private LAN Service (VPLS), where MACs were learned via the data plane. RFC 7432 describes BGP MPLS Based Ethernet VPNs with three service types: VLAN-Based, VLAN-Bundle, and VLAN-Aware-Bundle.

The instance type mac-vrf is a unified way to configure EVPN E-LAN across entire Juniper platforms. The ACX7100-32C supports EVPN-MPLS E-LAN functionality with instance type mac-vrf. In this test scenario, VLAN-Based and VLAN-Bundle service types were covered for scale with the 22.2R1 Junos-EVO build (VLAN-Aware Bundle support is on the roadmap). The same scale was tested on ACX7100-48L and ACX7509.

Note: despite sharing the ACX moniker, ACX7000 products are different from ACX500/710/1000/1100/2100/2200/4000/5000/5400/6000. They use different Packet Forwarding Engines (PFE) and support different feature sets and scales.

Metro EVPN Topology

The test topology consists of three routers:

  • PE1: ACX7100-32C
  • PE2: ACX7100-48L
  • P1: PTX10008

Scale numbers tested: 6,000 EVPN MAC-VRF instances, with 43 local and 43 remote hosts learned per VLAN-Based MAC-VRF instance, and 64 local and 64 remote hosts per VLAN-Bundle instance — totaling 642,000 hosts. Bidirectional traffic in iMIX mode at 99.9% offer-load flows for all EVPN services; ~1 Tbps of traffic transits through the DUT.

Base Configuration

The IGP and BGP configuration required to bring up EVPN:

regress@PE1> show configuration protocols | display inheritance no-comments
bgp {
    group IBGP {
        type internal;
        local-address 12.1.1.1;
        family inet { unicast; }
        family evpn { signaling; }
        neighbor 12.1.1.3 { export nhself; }
    }
}
mpls {
    interface ae0.0;
    interface ae1.0;
}
ospf {
    source-packet-routing {
        node-segment ipv4-index 101;
        srgb start-label 45000 index-range 2000;
    }
    area 0.0.0.0 {
        interface lo0.0 { passive; }
        interface ae0.0 { interface-type p2p; }
        interface ae1.0 { interface-type p2p; }
    }
}

Generating Scale Configuration

Scale configurations were generated with a Jinja2 template driven by a Python script (create_evpn_vrf.py) that reads a YAML definition and builds the routing instances, demonstrating a practical automation approach for large-scale Metro deployments.

Conclusion

ACX7000 Family platforms (ACX7100-32C, ACX7100-48L, ACX7509) at this tested scale are ready for Metro deployments. The EVPN services capabilities are paramount for next-generation Metro solution requirements.

References

  • RFC 7432: BGP MPLS-Based Ethernet VPN — https://datatracker.ietf.org/doc/html/rfc7432
  • MAC-VRF: https://www.juniper.net/documentation/us/en/software/junos/evpn-vxlan/topics/concept/mac-vrf-routing-instance-overview.html

原文链接:https://community.juniper.net/blogs/suneesh-babu/2022/10/28/evpn-mac-vrf-validation-on-acx7000