L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x

Unknown

PDF - Complete Book (14.1 MB)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x - Configure EVPN IRB [Cisco ASR 9000 Series Aggregation Services Routers] - Cisco

PDF preview unavailable. Download the PDF instead.

b-l2vpn-cg-asr9000-75x
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x
First Published: 2021-11-30 Last Modified: 2022-04-29
Americas Headquarters
Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000
800 553-NETS (6387) Fax: 408 527-0883

THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB's public domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED "AS IS" WITH ALL FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.
All printed copies and duplicate soft copies of this document are considered uncontrolled. See the current online version for the latest version.
Cisco has more than 200 offices worldwide. Addresses and phone numbers are listed on the Cisco website at www.cisco.com/go/offices.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: https://www.cisco.com/c/en/us/about/legal/trademarks.html. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1721R)
© 2021 Cisco Systems, Inc. All rights reserved.

CONTENTS

PREFACE CHAPTER 1 CHAPTER 2

Preface xxv Changes to This Document xxv Obtaining Documentation and Submitting a Service Request xxv
New and Changed VPN Features 1 New and Changed VPN Features 1
The Carrier Ethernet Model 3 Prerequisites for Configuring Layer 2 Ethernet Interfaces 3 Layer 2 Theory and Standards Adherence 4 Ethernet Technology Overview 4 Carrier Ethernet Services 4 Ethernet Wire Service 5 Ethernet Virtual Private Line 6 Ethernet LAN Service 6 Ethernet Flow Point 7 Ethernet Virtual Circuit 7 Ethernet OAM Protocols 7 Layer 2 VPN on Ethernet Interfaces 7 Gigabit Ethernet Protocol Standards Overview 8 IEEE 802.3 Physical Ethernet Infrastructure 8 IEEE 802.3ab 1000BASE-T Gigabit Ethernet 8 IEEE 802.3z 1000 Mbps Gigabit Ethernet 8 IEEE 802.3ae 10 Gbps Ethernet 9 General Ethernet Standards 9 MAC Address 9

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x iii

Contents

Ethernet MTU 9 Flow Control on Ethernet Interfaces 10 VRRP 10 HSRP 10 Link Autonegotiation on Ethernet Interfaces 11 What is an Ethernet Flow Point? 11
Improving the Scalability of EFPs on Bundle Interfaces 12 EFP CLI Overview 12 Egress EFP Filtering 13 Identifying Frames of an EFP 13 Applying Features 15 Defining Data-Forwarding Behavior 16 802.1Q VLAN 16 802.1Q Tagged Frames 16 Subinterfaces 17 Subinterface MTU 17 VLAN Subinterfaces on Ethernet Bundles 17 Layer 2 VPN on VLANs 17 How to Configure Layer 2 Features on Ethernet Interfaces 18 Default Configuration Values for Gigabit Ethernet and 10-Gigabit Ethernet 18 Configuring Ethernet Interfaces 19 Configuring a 10-Gigabit Ethernet Interface 20 Configuring a Gigabit Ethernet Interface 21 What to Do Next 23 Configuring an Attachment Circuit on an Ethernet Port 23 Configuring Egress EFP Filtering 26 Configuring 802.1Q VLAN Interfaces 28 Restrictions for Configuring 802.1Q VLAN Interfaces 28 Configuring 802.1Q VLAN Subinterfaces 28 Configuring Native VLAN 30 Removing an 802.1Q VLAN Subinterface 31 Configuration Examples 33 Configuring an Ethernet Interface: Example 33 Configuring a L2VPN AC: Example 33

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x iv

CHAPTER 3 CHAPTER 4

Configuring VPWS with Link Bundles: Example 34 Physical Interfaces (Port mode) 34 Sub Interfaces (EFP mode) 35
Configuring Ethernet Bundle with L2 and L3 Services: Example 35 Configuring VLAN Subinterfaces: Example 36 Where to Go Next 37
Ethernet Features 39 Prerequisites for Implementing Ethernet Features 39 Information About Implementing Ethernet Features 39 Policy Based Forwarding 39 Layer 2 Protocol Tunneling 40 L2PT Features 40 L2PT in the Forward Mode 40 L2PT in the Reverse Mode with Protocol Frame Tagging 42 L2PT Configuration Notes 45 How to Implement Ethernet Features 46 Restrictions for Implementing Ethernet Features 46 Configuring Policy Based Forwarding 46 Enabling Policy Based Forwarding 46 Configuring Source Bypass Filter 48 Configuration Examples 50 Configuring Policy Based Forwarding: Example 50 Configuring Layer 2 Protocol Tunneling: Example 50 Configuring L2PT in forward mode 50 Configuring L2PT in reverse mode 51
Configuring Link Bundles 55 Feature History for Configuring Link Bundles 55 Prerequisites for Configuring Link Bundles 55 Information About Configuring Link Bundles 56 Link Bundling Overview 56 Characteristics of Link Bundles 57 IEEE 802.3ad Standard 58

Contents

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x v

Contents

CHAPTER 5

Non Revertive Behavior for LACP Bundle Interface 58 QoS and Link Bundling 58 VLANs on an Ethernet Link Bundle 59 Link Bundle Configuration Overview 59 Nonstop Forwarding During Card Failover 60 Link Failover 60 Bundle Interfaces: Redundancy, Load Sharing, Aggregation 60 How to Configure Link Bundling 60 Configuring Ethernet Link Bundles 60 Configuring VLAN Bundles 64 Configuration Examples for Link Bundles 69 EtherChannel Bundle running LACP: Example 69 Creating VLANs on a Ethernet Bundle: Example 70 ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example 70
Implementing Point to Point Layer 2 Services 75 Prerequisites for Implementing Point to Point Layer 2 Services 76 Information About Implementing Point to Point Layer 2 Services 77 Layer 2 Virtual Private Network Overview 77 Layer 2 Local Switching Overview 77 ATMoMPLS with L2VPN Overview 78 Virtual Circuit Connection Verification on L2VPN 78 Ethernet over MPLS 78 Ethernet Port Mode 78 VLAN Mode 79 Inter-AS Mode 79 QinQ Mode 80 QinAny Mode 81 Quality of Service 81 High Availability 82 Preferred Tunnel Path 82 Multisegment Pseudowire 82 Pseudowire Redundancy 84 Pseudowire Load Balancing 84

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x vi

Contents
L2 Traffic Tunneling with IP Load Balance Hashing for MPLS Encapsulated Packets 84 Pseudowire Grouping 85 Ethernet Wire Service 85
IGMP Snooping 86 IP Interworking 86
AToM iMSG 88 Any Transport over MPLS 88
Control Word Processing 89 High-level Data Link Control over MPLS 89 PPP over MPLS 89 Frame Relay over MPLS 90 MPLS Transport Profile 90 Circuit Emulation Over Packet Switched Network 91 L2VPN Nonstop Routing 92 L2TPv3 over IPv6 92 Overview 93 Traffic Injection from L2TPv3 over IPv6 Tunnel 93 Configure Traffic Injection from L2TPv3 over IPv6 Tunnel 94 L2TPv3 over IPv4 96 Dynamic Single-Segment Pseudowire 97 Active and Passive Signaling 97 Functionality of Dynamic Single Segment Pseudowire 98 Prerequisites for Configuring L2VPN Single Segment Pseudowires 99 Restrictions for Configuring L2VPN Single Segment Pseudowires 99 Configuring L2VPN Single Segment Pseudowire 99 EVPN Virtual Private Wire Service (VPWS) 104 Information About EVPN-VPWS Single Homed 104 Prerequisites for EVPN-VPWS 105 Restrictions for EVPN-VPWS 105 EVPN Head End Multi-Homed 106 How to Implement Point to Point Layer 2 Services 107 Configuring an Interface or Connection for Point to Point Layer 2 Services 107 Configuring Local Switching 109 Configuring Local Connection Redundancy 110
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x vii

Contents

Configuring Static Point-to-Point Cross-Connects 112 Configuring Dynamic Point-to-Point Cross-Connects 114 Configuring Inter-AS 116 Configuring L2VPN Quality of Service 116
Restrictions 116 Configuring an L2VPN Quality of Service Policy in Port Mode 116 Configuring an L2VPN Quality of Service Policy in VLAN Mode 118 Configuring Multisegment Pseudowire 119 Provisioning a Multisegment Pseudowire Configuration 119 Provisioning a Global Multisegment Pseudowire Description 121 Provisioning a Cross-Connect Description 122 Provisioning Switching Point TLV Security 123 Enabling Multisegment Pseudowires 125 Configuring Pseudowire Redundancy 126 Configuring Point-to-Point Pseudowire Redundancy 126 Forcing a Manual Switchover to the Backup Pseudowire 128 Configuring a Backup Pseudowire 129 Configuring Point-to-Point Pseudowire Redundancy 130 Forcing a Manual Switchover to the Backup Pseudowire 132 Configuring Preferred Tunnel Path 133 Configuring PW Status OAM 134 Enabling Flow-based Load Balancing 135 Enabling Flow-based Load Balancing for a Pseudowire Class 136 Enabling Pseudowire Grouping 137 Setting Up Your Multicast Connections 138 Configuring AToM IP Interworking 141 Configuring PPP IP Interworking 142 Configuring IP Interworking between PPP and Ethernet 145 Configuring MLPPP IP Interworking 147 Configuring Circuit Emulation Over Packet Switched Network 150 Adding CEM attachment circuit to a Pseudowire 150 Associating a Pseudowire Class 152 Enabling Pseudowire Status 154 Configuring a Backup Pseudowire 155

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x viii

Contents
Configuring L2VPN Nonstop Routing 157 Configure MPLS LDP Nonstop Routing 158 Configuring L2TPv3 over IPv6 Tunnels 159
Configuring Neighbor AFI for Pseudowire 159 Configuring L2TPv3 encapsulation and protocol 160 Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel 162 Configuring Local and Remote Sessions 164 Configuring Local And Remote Cookies 165 Enabling L2TP Static Submode 167 Enabling TOS Reflection in the L2TPv3 Header 169 Configuring TTL for L2TPv3 over IPv6 Tunnels 170 Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels 172 Configuring L2TPv3 over IPv4 Tunnels 174 Configuring a Dynamic L2TPv3 Pseudowire 174 Configuring L2TPv3 Encapsulation and Protocol 176 Configuring L2TP Control-Channel Parameters 177 Configuring L2VPN Single Segment Pseudowire 180 Configuring L2VPN Global Parameters 180 Configuring L2VPN VPWS SS-PW 181 Configuring L2VPN MS-PW Address Family Under BGP 183 Verifying Single-Segment Pseudowires 185 Displaying Information about the L2VPN Single-Segment Pseudowires 185 How to Configure EPVN-VPWS 185 Configuring L2VPN EVPN Address Family Under BGP 185 Configuring EVPN-VPWS 186 Configuring an Access Pseudowire using EVPN-VPWS 188 Configuration Examples for Point to Point Layer 2 Services 189 L2VPN Interface Configuration: Example 189 Local Switching Configuration: Example 189 Local Connection Redundancy Configuration: Example 190 Point-to-Point Cross-connect Configuration: Examples 191 Inter-AS: Example 191 L2VPN Quality of Service: Example 193 Pseudowires: Examples 193
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x ix

Contents

Configuring Dynamic Pseudowires at T-PE1 Node: Example 193 Configuring Dynamic Pseudowires at S-PE1 Node: Example 194 Configuring Dynamic Pseudowires at T-PE2 Node: Example 194 Configuring Dynamic Pseudowires and Preferred Paths at T-PE1 Node: Example 194 Configuring Dynamic Pseudowires and Preferred Paths at S-PE1 Node: Example 195 Configuring Dynamic Pseudowires and Preferred Paths at T-PE2 Node: Example 195 Configuring Static Pseudowires at T-PE1 Node: Example 195 Configuring Static Pseudowires at S-PE1 Node: Example 196 Configuring Static Pseudowires at T-PE2 Node: Example 196 Preferred Path: Example 196 MPLS Transport Profile: Example 196 Configuring Preferred Tunnel Path: Example 196 Configuring PW Status OAM: Example 196 Viewing Pseudowire Status: Example 197 show l2vpn xconnect 197 show l2vpn xconnect detail 197 Configuring Any Transport over MPLS: Example 198 Configuring AToM IP Interworking: Example 198 Configuring PPP IP Interworking: Example 198 Configuring cHDLC IP Interworking: Example 199 Configuring MLPPP IP Interworking: Example 199 Configuring Circuit Emulation Over Packet Switched Network: Example 200 Configuring L2VPN Nonstop Routing: Example 201 Enabling Pseudowire Grouping: Example 201 Configuring L2TPv3 over IPv6 Tunnels: Example 201 Configuring Neighbor AFI for Pseudowire: Example 201 Configuring L2TPv3 encapsulation and protocol: Example 202 Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel: Example 202 Configuring Local and Remote Sessions: Example 202 Configuring Local and Remote Cookies: Example 202 Enabling L2TP Static Submode: Example 203 Enabling TOS Reflection in the L2TPv3 Header: Example 203 Configuring TTL for L2TPv3 over IPv6 Tunnels: Example 204 Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels: Example 204

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x x

Contents

CHAPTER 6

Configuring L2TPv3 over IPv4 Tunnels: Example 204 Configuring a Dynamic L2TPv3 Pseudowire 205 Configuring L2TPv3 Encapsulation and Protocol: Example 206 Configuring L2TP Control-Channel Parameters: Example 206
Configuration Examples for EVPN-VPWS 207 Configuring EVPN-VPWS: Example 207 Configuring an Access PW using EVPN-VPWS: Example 207
Implementing Multipoint Layer 2 Services 209 Prerequisites for Implementing Multipoint Layer 2 Services 211 Information About Implementing Multipoint Layer 2 Services 212 Multipoint Layer 2 Services Overview 212 Bridge Domain 212 Pseudowires 214 Virtual Forwarding Instance 214 VPLS for an MPLS-based Provider Core 215 VPLS Architecture 215 VPLS for Layer 2 Switching 216 VPLS Discovery and Signaling 216 BGP-based VPLS Autodiscovery 217 BGP Auto Discovery With BGP Signaling 217 BGP Auto Discovery With LDP Signaling 218 Service Path Preference for L2VPN 219 Understanding How Service Path Preference Works 219 L2VPN Route Policy 220 Interoperability Between Cisco IOS XR and Cisco IOS on VPLS LDP Signaling 220 MAC Address-related Parameters 221 MAC Address Flooding 221 MAC Address-based Forwarding 221 MAC Address Source-based Learning 221 MAC Address Aging 222 MAC Address Limit 222 MAC Address Withdrawal 223 MAC Address Security 224

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xi

Contents

MAC Loop Prevention 224 MAC Security Recovery 227 MAC Address Move and Unicast Traffic Counters 231 LSP Ping over VPWS and VPLS 231 Split Horizon Groups 231 Layer 2 Security 232 Port Security 232 Dynamic Host Configuration Protocol Snooping 233 G.8032 Ethernet Ring Protection 233 Overview 233 Flow Aware Transport Pseudowire (FAT PW) 237 Pseudowire Headend 238 Benefits of PWHE 239 Restrictions 240 Generic Interface List 240 LFA over Pseudowire Headend 240 PW-HE Multicast 241 PW-HE over MPLS-TE Tunnels 241 PWHE Load Balancing Support using FAT Label 241 MVPN Profile 26 for Pseudowire Headend 246 Configure MVPN Profile 26 for Pseudowire Headend 247 DHCP on PWHE Interfaces 257 Configure DHCP on Pseudowire Headend 257 L2VPN over GRE 263 L2VPN over GRE Restrictions 264 GRE Deployment Scenarios 264 GRE Tunnel as Preferred Path 265 How to Implement Multipoint Layer 2 Services 265 Configuring a Bridge Domain 266 Creating a Bridge Domain 266 Configuring a Pseudowire 267 Associating Members with a Bridge Domain 269 Configuring Bridge Domain Parameters 271 Disabling a Bridge Domain 273

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xii

Blocking Unknown Unicast Flooding 274 Changing the Flood Optimization Mode 276 Configuring Layer 2 Security 277 Enabling Layer 2 Security 277 Attaching a Dynamic Host Configuration Protocol Profile 278 Configuring a Layer 2 Virtual Forwarding Instance 280 Creating the Virtual Forwarding Instance 280 Associating Pseudowires with the Virtual Forwarding Instance 281 Associating a Virtual Forwarding Instance to a Bridge Domain 283 Attaching Pseudowire Classes to Pseudowires 284 Configuring Pseudowires Using Static Labels 286 Disabling a Virtual Forwarding Instance 288 Configuring the MAC Address-related Parameters 290 Configuring the MAC Address Source-based Learning 290 Enabling the MAC Address Withdrawal 291 Configuring the MAC Address Limit 293 Configuring the MAC Address Aging 296 Disabling MAC Flush at the Bridge Port Level 298 Configuring MAC Address Security 299 Configuring an Attachment Circuit to the AC Split Horizon Group 301 Adding an Access Pseudowire to the AC Split Horizon Group 303 Configuring VPLS with BGP Autodiscovery and Signaling 304 Configuring VPLS with BGP Autodiscovery and LDP Signaling 308 Configuring Service Path Preference 311 Setting a Forward Class in a Route Policy 311 Attaching a Route Policy at Table Policy Attach Point 311 Associating a TE Tunnel with Forward Class Index 312 Enabling Route Policy for L2VPN VPLS with BGP Autodiscovery 312 Enabling Route Policy for L2VPN VPWS with BGP Autodiscovery 314 Configuring G.8032 Ethernet Ring Protection 316 Configuring ERP Profile 316 Configuring CFM MEP 317 Configuring an ERP Instance 317 Configuring ERP Parameters 321

Contents

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xiii

Contents

Configuring TCN Propagation 323 Configuring Flow Aware Transport Pseudowire 324
Enabling Load Balancing with ECMP and FAT PW for VPWS 324 Enabling Load Balancing with ECMP and FAT PW for VPLS 326 Configuring Pseudowire Headend 329 PWHE Configuration Restrictions 329 Configuring Generic Interface List 330 Configuring PWHE Interfaces 331 Configuring PWHE Crossconnect 332 Configuring the Source Address 334 Configuring PWHE Interface Parameters 336 Configuring PWHE Layer 2 Subinterfaces and Adding it to the Bridge-domain 338 Configuring PWHE Layer 3 Subinterfaces 341 Configuring L2VPN over GRE 344 Configuring a GRE Tunnel as Preferred Path for Pseudowire 349 Configuration Examples for Multipoint Layer 2 Services 351 Multipoint Layer 2 Services Configuration for Provider Edge-to-Provider Edge: Example 351 Multipoint Layer 2 Services Configuration for Provider Edge-to-Customer Edge: Example 352 Displaying MAC Address Withdrawal Fields: Example 352 Split Horizon Group: Example 354 Blocking Unknown Unicast Flooding: Example 355 Disabling MAC Flush: Examples 355 Bridging on IOS XR Trunk Interfaces: Example 356 Bridging on Ethernet Flow Points: Example 360 Changing the Flood Optimization Mode 363 Configuring VPLS with BGP Autodiscovery and Signaling: Example 364 LDP and BGP Configuration 365 Minimum L2VPN Configuration for BGP Autodiscovery with BGP Signaling 365 VPLS with BGP Autodiscovery and BGP Signaling 366 Minimum Configuration for BGP Autodiscovery with LDP Signaling 367 VPLS with BGP Autodiscovery and LDP Signaling 367 VPLS with both BGP Autodiscovery and Manual Provisioning of VPLS Peers 369 Configuring Dynamic ARP Inspection: Example 370 Configuring IP Source Guard: Example 371

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xiv

Contents

CHAPTER 7

Configuring G.8032 Ethernet Ring Protection: Example 373 Configuring Interconnection Node: Example 374 Configuring the Node of an Open Ring: Example 375
Configuring Flow Aware Transport Pseudowire: Example 375 Configuring Pseudowire Headend: Example 376 Configuring L2VPN over GRE: Example 379
Configuring a GRE Tunnel as Preferred Path for Pseudowire 379
Implementing IEEE 802.1ah Provider Backbone Bridge 383 Prerequisites for Implementing 802.1ah Provider Backbone Bridge 384 Information About Implementing 802.1ah Provider Backbone Bridge 384 Benefits of IEEE 802.1ah standard 384 IEEE 802.1ah Standard for Provider Backbone Bridging Overview 385 Backbone Edge Bridges 386 IB-BEB 387 Multiple I-SID Registration Protocol Lite 388 Provider Backbone Bridging Ethernet VPN 391 Ethernet VPN 391 PBB-EVPN Overview 392 MMRP for PBB VPLS Flood Optimization 395 Configuring PBB-VPLS Flood Optimization 395 Enabling PBB-VPLS Flood Optimization on PBB Core Bridge 395 Configuring Generic MRP Protocol Parameters 397 How to Implement 802.1ah Provider Backbone Bridge 398 Restrictions for Implementing 802.1ah Provider Backbone Bridge 398 Configuring Ethernet Flow Points on CNP and PNP Ports 399 Configuring PBB Edge Bridge Domain and Service Instance ID 400 Configuring the PBB Core Bridge Domain 402 Configuring Backbone VLAN Tag under the PBB Core Bridge Domain 403 Configuring Backbone Source MAC Address 405 Configuring Unknown Unicast Backbone MAC under PBB Edge Bridge Domain 407 Configuring Static MAC addresses under PBB Edge Bridge Domain 409 Configuring PBB VPLS 411 Configuring Access Pseudowire in I-Component 411

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xv

Contents

CHAPTER 8

Configuring Core Pseudowire in B-Component 413 Configuring PBB-EVPN 415
Configuring PBB Core Bridge Domains 415 Configuring PBB Edge Bridge Domains 416 Configuring EVPN Ethernet Segment 416 Configuring BGP Route Target 419 Configuring Global EVPN Timers 421 Configuring EVPN Timers Per Ethernet Segment and CE flushing mechanism 423 Configuring Multichassis Link Aggregation 424 Configuring BGP Routing Process 425 PBB EVPN Flow Label 426 Configure PBB EVPN Flow Label 427 Configuration Examples for Implementing 802.1ah Provider Backbone Bridge 428 Configuring Ethernet Flow Points: Example 428 Configuring PBB Edge Bridge Domain and Service Instance ID: Example 428 Configuring PBB Core Bridge Domain: Example 429 Configuring Backbone VLAN Tag: Example 429 Configuring Backbone Source MAC Address: Example 429 Configuring Static Mapping and Unknown Unicast MAC Address under the PBB Edge Bridge Domain 429 Configuring PBB-VPLS: Example 430 Configuring MIRP Lite: Example 430 Configuring PBB-EVPN: Example 431 PBB-EVPN on Single Homed Device/Single Homed Network 431 PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Flow load-balancing 432 PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Dynamic Service Carving 434 PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving 436 PBB-EVPN Multi Homed Network 439
Implementing Multiple Spanning Tree Protocol 441 Prerequisites for Implementing Multiple Spanning Tree Protocol 441 Information About Implementing Multiple Spanning Tree Protocol 442

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xvi

Spanning Tree Protocol Overview 442 STP Protocol Operation 442 Topology Changes 443 Variants of STP 443
Multiple Spanning Tree Protocol Overview 444 MSTP Regions 444 MSTP Port Fast 445 MSTP Root Guard 445 MSTP Topology Change Guard 446
MSTP Supported Features 446 BPDU Guard 447 Flush Containment 447 Bringup Delay 447
Restrictions for configuring MSTP 448 Access Gateway 448
Overview of Access Gateway 449 Topology Change Propagation 451 Preempt Delay 452 Supported Access Gateway Protocols 452 MSTAG Edge Mode 452 PVSTAG on Bundle Interfaces 454 Per-VLAN Rapid Spanning Tree 454 Multiple VLAN Registration Protocol 455 How to Implement Multiple Spanning Tree Protocol 455 Configuring MSTP 455 Enabling MSTP 456 Configuring MSTP parameters 456 Verifying MSTP 461 Configuring MSTAG or REPAG 462 Configuring an untagged subinterface 462 Enabling MSTAG 462 Configuring MSTAG parameters 462 Configuring MSTAG Topology Change Propagation 468 Verifying MSTAG 468

Contents

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xvii

Contents

CHAPTER 9

MSTAG Uplink Tracking 469 Benefits 470 Prerequisites 470 Restrictions 470 Configure MSTAG Uplink Tracking 470
Configuring PVSTAG or PVRSTAG 472 Enabling PVSTAG 472 Configuring PVSTAG parameters 472 Configuring Subinterfaces 476 Verifying PVSTAG 477
Configuring PVRST 477 Configuring MVRP-lite 479
Enabling MVRP-lite 479 Configuring MVRP-lite parameters 479 Verifying MVRP-lite 481 Configuration Examples for Implementing MSTP 481 Configuring MSTP: Examples 481 Configuring MSTAG: Examples 485 Configuring PVSTAG: Examples 488 Configuring PVSTAG on a Cluster with a Satellite: Example 488 Configuring PVRST: Example 491 Configuring MVRP-Lite: Examples 491
Implementing of Layer 2 Access Lists 493 Prerequisites for Implementing Layer 2 Access Lists 493 Information About Implementing Layer 2 Access Lists 494 Ethernet Services Access Lists Feature Highlights 494 Purpose of Ethernet Services Access Lists 494 How an Ethernet Services Access List Works 494 Ethernet Services Access List Process and Rules 494 Helpful Hints for Creating Ethernet Services Access Lists 495 Source and Destination Addresses 495 Ethernet Services Access List Entry Sequence Numbering 495 Sequence Numbering Behavior 495

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xviii

Contents

CHAPTER 10 CHAPTER 11

How to Implement Layer 2 Access Lists 496 Restrictions for Implementing Layer 2 Access Lists 496 Configuring Ethernet Services Access Lists 496 What to Do Next 497 Applying Ethernet Services Access Lists 497 Controlling Access to an Interface 498 Copying Ethernet Services Access Lists 499 Resequencing Access-List Entries 500
Configuration Examples for Implementing Layer 2 Access Lists 501 Resequencing Entries in an Access List: Example 501 Adding Entries with Sequence Numbers: Example 501
Implementing VXLAN 503 Prerequisites for implementing VXLANs 503 Information about Implementing VXLAN 503 VXLAN 504 VXLAN Anycast Gateway 504 VXLAN Packet Format 505 VXLAN Tunnel Endpoint 505 Configuring a Layer 2 VXLAN gateway 506 Prerequisites 506 Restrictions 506 Creating and Configuring the Network Virtualization Endpoint (NVE) interface 507 Creating and configuring a layer 2 sub-interface 509 Associating VLAN and VXLAN with a bridge domain 509 Configuring VXLAN source UDP port 510 Configuring VXLAN destination UDP port 511 Configuration Example for Implementing Layer 2 VXLAN Gateway 511
EVPN Features 515 EVPN Overview 516 EVPN Timers 516 EVPN Operation 518 EVPN Route Types 519

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xix

Contents

Configure EVPN L2 Bridging Service 520 EVPN Software MAC Learning 522
Software and Hardware Support 523 Configure EVPN Native with Software MAC Learning 523 Supported Modes for EVPN Native with Software MAC Learning 524 Single Home Device or Single Home Network 524
Configure EVPN in Single Home Device or Single Home Network 524 Dual Home Device--All-Active Load Balancing Mode 525
Configure EVPN Software MAC Learning in Dual Home Device--All-Active Mode 526 Dual Home Device--Single-Active Load Balancing 528
Configure EVPN in Dual Home Device--Single-Active Mode 529 Verify EVPN Native with Software MAC Learning 530 EVPN Software MAC Aging 532 EVPN Out of Service 532 Configure EVPN Out of Service 533
Running Configuration 534 EVPN VXLAN Layer 2 Data Center Interconnect Gateway 536
All-Active Multi Homing with Anycast VTEP IP Address 536 All-Active Multi Homing with Unique VTEP IP Address 537 EVPN ESI Multipath for VxLAN - EVI Based Load balancing 537 EVPN ESI Multipath for VxLAN - Flow-based Load Balancing 538 Configure EVPN VXLAN Layer 2 Data Center Interconnect Gateway 539 Configure L2 EVPN Address Family under BGP Routing Process 539 Configure the Routing Sessions Between the DCI and ToR 540 Configure BGP session for remote DCI Connectivity 542 Configure Network Virtualization Endpoint (NVE) Interface 544 Configure a Bridge Domain 547 Configure BGP Route Targets Import/Export Rules 548 Configure Ethernet Segment Identifier 551 Configure ICCP Group 552 Enable Flow-based Load Balancing 554 Example: All-Active Multi Homing with Anycast VTEP IP Address Configuration 555 Example: All-Active Multi Homing with Unique VTEP IP Address Configuration 556 EVPN Port-Active Multihoming 557

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xx

Contents
Configure EVPN Port-Active Multihoming 558 EVPN Single-Flow-Active Load Multihoming Balancing Mode 562 EVPN Convergence Using NTP Synchronization 568 EVPN MPLS Seamless Integration with VPLS 570
Migrate VPLS Network to EVPN Network through Seamless Integration 571 Configure EVPN on the Existing VPLS Network 572
EVPN Single-Active Multi-Homing 583 Configure EVPN Single-Active Multi-Homing 583 Configuring EVPN Ethernet Segment 583 Configure EVPN Service Instance (EVI) Parameters 587 Configure Layer 2 Interface 589 Configure a Bridge Domain 590
Virtual Ethernet Segment (vES) 591 Configure Virtual Ethernet Segment (vES) 593 Configure Access PW 593 Running Configuration - Access PW 594 Configure Access VFI 595 Running Configuration - Access VFI 596
AC-based Virtual Ethernet Segment 597 Configure Virtual Ethernet Segment - AC based 602
EVPN Anycast Gateway All-Active Static Pseudowire 605 Configure EVPN Anycast All-active Static Pseudowire 605 Configure Static PW 605 Running Configuration 606 Verification 607
CFM Support for EVPN 611 EVPN Multiple Services per Ethernet Segment 612
Configure EVPN Multiple Services per Ethernet Segment 612 Configuration Example 612 Running Configuration 614 Associated Commands 615
EVPN VXLAN Ingress Replication 615 Single Homing VXLAN L2 GW 616 Anycast VXLAN L2 Gateway 617
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxi

Contents

CHAPTER 12

All-Active Multihoming VXLAN L2 Gateway 618 Configure EVPN VXLAN Ingress Replication 619
Running Configuration 621 Verification 623 EVPN Core Isolation Protection 625 Configure EVPN Core Isolation Protection 625 Restrictions 625 Running Configuration 626 Verification 626 EVPN Routing Policy 627 EVPN Route Types 628 EVPN RPL Attribute 632 EVPN RPL Attribute Set 634 EVPN Attributes and Operators 635 Configure EVPN RPL Feature 636 Running Configuration 637 BGP Multiple Sourced or Redistributed Paths 643 Configure BGP Multiple Sourced or Redistributed Paths 643 Highest Random Weight Mode for EVPN DF Election 645 Configure Highest Random Weight Mode for EVPN DF Election 645 Layer 2 Fast Reroute 647 EVPN Preferred Nexthop 653 Configure EVPN Preferred Nexthop 653 EVPN Access-Driven DF Election 655 Configure EVPN Access-Driven DF Election 661 Hierarchical EVPN Access Pseudowire 665 Configure Hierarchical EVPN Access Pseudowire 666 Inter-AS EVPN Option B 667 Configure Inter-AS EVPN Option B 669 EVPN IGMPv2 Selective Multicast 675
Configure EVPN IRB 685 EVPN IRB 685 EVPN Single-Homing Access EVPN Gateway 686

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxii

Contents
EVPN Multi-Homing Active-Active 686 EVPN Single-Active Multihoming for Anycast Gateway IRB 687
Configure EVPN Single-Active Multihoming 687 Configure EVPN IRB with Host Routing 688 Configure EVPN Ethernet Segment 688 Configure EVPN Service Instance (EVI) Parameters 689 Configure Layer 2 Interface 689 Configure a Bridge Domain 690 Configure VRF 690
EVPN IRB Support 691 Distributed Anycast Gateway 691
EVPN IRB with Active-Active Multi-Homing with Subnet Stretch or Host-Routing across the Fabric 691
MAC and IP Unicast Control Plane 691 Intra-subnet Unicast Data Plane 692 Inter-subnet Unicast Data Plane 692 Centralized Anycast Gateway for EVPN IRB 693 BVI-Coupled Mode 698 VM Mobility Support 699 Configuring EVPN IRB 699 Running Configuration for EVPN IRB 701 Verify EVPN IRB 702 EVPN IPv6 Hosts with Mobility 711 Configure EVPN IPv6 Hosts with Mobility 712
Running Configuration 716 Verification 720 EVPN IRB: DHCPv4 and DHCPv6 Relay 722 Configure EVPN IRB: DHCPv4 and DHCPv6 Relay 724 Duplicate IP Address Detection 728 Configure Duplicate IP Address Detection 729 Configuration Example 729 Running Configuration 729 Verification 729 EVPN E-Tree Using RT Constraints 730
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxiii

Contents

CHAPTER 13 CHAPTER 14

CE with Multihoming Active-Active and CE with Multihoming Active-Active 731 EVPN E-Tree Per-PE (Scenario1b) 744
Configure EVPN E-Tree Per-PE (Scenario1b) 745 EVPN ETREE Per-AC (Scenario 2) 746
EVPN Virtual Private Wire Service (VPWS) 749 Supported Modes for EVPN-VPWS 749 EVPN-VPWS Single Homed 750 Configure EVPN-VPWS Single Homed 750 Running Configuration 751 EVPN-VPWS Multi-Homed 751 Configure EVPN-VPWS Single-Active Multi-Homed 752 Running Configuration 753 Configure EVPN-VPWS All-Active Multi-Homed 754 Running Configuration 755 Flow Label Support for EVPN VPWS 756 Configure Flow Label for EVPN VPWS 757
L2VPN Services over Segment Routing for Traffic Engineering Policy 761 Overview of Segment Routing 761 How Segment Routing Works 762 Segment Routing Global Block 763 Preferred Path over SR-TE 763 EVPN VPWS Preferred Path over SR-TE Policy 763 Configure EVPN VPWS Preferred Path over SR-TE Policy 764 L2VPN VPLS or VPWS Preferred Path over SR-TE Policy 778 Configure L2VPN VPLS or VPWS Preferred Path over SR-TE Policy 778 EVPN VPWS On-Demand Next Hop with SR-TE 795 Configure EVPN VPWS On Demand Next Hop with SR-TE 795

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxiv

Preface

From Release 6.1.2 onwards, Cisco introduces support for the 64-bit Linux-based IOS XR operating system. Extensive feature parity is maintained between the 32-bit and 64-bit environments. Unless explicitly marked otherwise, the contents of this document are applicable for both the environments. For more details on Cisco IOS XR 64 bit, refer to the Release Notes for Cisco ASR 9000 Series Routers, Release 6.1.2 document.
This guide describes the Cisco ASR 9000 Series Router configurations. The preface for the L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers contains these sections:
· Changes to This Document, on page xxv · Obtaining Documentation and Submitting a Service Request, on page xxv

Changes to This Document

The following table lists the technical changes made to this document since it was first published.

Date

Change Summary

April 2022

Republished with feature updates for Release 7.5.2.

November 2021

Initial release of this document.

Obtaining Documentation and Submitting a Service Request
For information on obtaining documentation, submitting a service request, and gathering additional information, see the monthly What's New in Cisco Product Documentation, which also lists all new and revised Cisco technical documentation, at:
http://www.cisco.com/en/US/docs/general/whatsnew/whatsnew.html
Subscribe to the What's New in Cisco Product Documentation as a Really Simple Syndication (RSS) feed and set content to be delivered directly to your desktop using a reader application. The RSS feeds are a free service and Cisco currently supports RSS version 2.0.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxv

Obtaining Documentation and Submitting a Service Request

Preface

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x xxvi

1 C H A P T E R

New and Changed VPN Features

This table summarizes the new and changed feature information for the L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, and tells you where they are documented.
· New and Changed VPN Features, on page 1

New and Changed VPN Features

Table 1: VPN Features Added or Modified in IOS XR Release 7.5.x

Feature

Description

MAC Loop Prevention This feature was introduced.

EVPN E-Tree Per-PE (Scenario 1b)

This feature was introduced.

EVPN E-TREE Per-AC This feature was

(Scenario 2)

introduced.

Virtual Ethernet Segment This feature was

- AC-based

introduced.

Changed in Release Release 7.5.2 Release 7.5.1 Release 7.5.1 Release 7.5.1

Where Documented
MAC Loop Prevention, on page 224
EVPN E-Tree Per-PE (Scenario1b), on page 744
EVPN ETREE Per-AC (Scenario 2), on page 746
AC-based Virtual Ethernet Segment, on page 597

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 1

New and Changed VPN Features

New and Changed VPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 2

2 C H A P T E R
The Carrier Ethernet Model
This chapter introduces you to Layer 2 (L2) features and standards. This chapter also describes how to configure L2VPN features The distributed Gigabit Ethernet and 10-Gigabit Ethernet architecture and features deliver network scalability and performance, while enabling service providers to offer high-density, high-bandwidth networking solutions designed to interconnect the router with other systems in POPs, including core and edge routers and L2 and Layer 3 (L3) switches.

Note This chapter does not include configuration information for Management Ethernet interfaces. To set up a Management Ethernet interface and enable Telnet servers, see the Cisco ASR 9000 Series Aggregation Services Routers Getting Started Guide. To configure a Management Ethernet interface for routing or to modify the configuration of a Management Ethernet interface, see the Advanced Configuration and Modification of the Management Ethernet Interface on the Cisco ASR 9000 Series Router chapter of the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.

Feature History for Configuring Ethernet Interfaces

Release

Modification

Release 3.7.2

This feature was introduced on the Cisco ASR 9000 Series Routers.

Release 4.1.1

Scalability of EFPs on bundle interfaces was introduced.

· Prerequisites for Configuring Layer 2 Ethernet Interfaces, on page 3 · Layer 2 Theory and Standards Adherence, on page 4 · How to Configure Layer 2 Features on Ethernet Interfaces, on page 18 · Configuration Examples, on page 33 · Where to Go Next, on page 37

Prerequisites for Configuring Layer 2 Ethernet Interfaces
Before configuring Ethernet interfaces, ensure that these tasks and conditions are met:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 3

Layer 2 Theory and Standards Adherence

The Carrier Ethernet Model

· You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
· Confirm that at least one of these line cards is installed on the router: · 4-port 10-Gigabit Ethernet (4 x 10 GE) line card · 8-port 10-Gigabit Ethernet (4 x 10 GE) line card · 40-port 1-Gigabit Ethernet line card
· You know the interface IP address. · You know how to apply the specify the generalized interface name with the generalized notation
rack/slot/module/port .
Layer 2 Theory and Standards Adherence
To configure Ethernet interfaces, you must understand these concepts:
Ethernet Technology Overview
Ethernet is defined by the IEEE 802.3 international standard. It enables the connection of up to 1024 nodes over coaxial, twisted-pair, or fiber-optic cable. The Cisco ASR 9000 Series Routers support Gigabit Ethernet (1000 Mbps) and 10-Gigabit Ethernet (10 Gbps) interfaces.
Carrier Ethernet Services
Cisco endorses Metro Ethernet Forum (MEF) Carrier Ethernet (CE) 2.0 services: · E-LINE: An E-Line is a point-to-point Ethernet service that connects exactly 2 UNIs.
· E-LAN: An E-LAN is a multipoint-to-multipoint service that connects a number of UNIs (2 or more) providing full mesh connectivity for those sites.
· E-TREE: An E-Tree is a rooted multipoint service that connects a number of UNIs providing sites with hub and spoke multipoint connectivity.
· E-ACCESS: An E-Access Service is an OVC-based service with at least one UNI OVC End Point and one ENNI End Point.
When discussing an Ethernet WAN (EWAN), these terminologies should be used: · CE (customer edge): The customer device connecting to the service provider · PE (provider edge): The service provider device connecting to the customer · UNI: The connection between the CE and PE · AC: The physical or virtual circuit attaching a CE to a PE · Multiplexed UNI: A UNI supporting multiple VLAN flows · Pseudowire: A term used to indicate an end-to-end path in a service provider network

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 4

The Carrier Ethernet Model Figure 1: EWAN Terms

Ethernet Wire Service

Ethernet Wire Service
An Ethernet Wire Service is a service that emulates a point-to-point Ethernet segment. This is similar to Ethernet private line (EPL), a Layer 1 point-to-point service, except the provider edge operates at Layer 2 and typically runs over a Layer 2 network. The EWS encapsulates all frames that are received on a particular UNI and transports these frames to a single-egress UNI without reference to the contents contained within the frame. The operation of this service means that an EWS can be used with VLAN-tagged frames. The VLAN tags are transparent to the EWS (bridge protocol data units [BPDUs])--with some exceptions. These exceptions include IEEE 802.1x, IEEE 802.2ad, and IEEE 802.3x, because these frames have local significance and it benefits both the customer and the Service Provider to terminate them locally.
Since the service provider simply accepts frames on an interface and transmits these without reference to the actual frame (other than verifying that the format and length are legal for the particular interface) the EWS is indifferent to VLAN tags that may be present within the customer Ethernet frames.
EWS subscribes to the concept of all-to-one bundling. That is, an EWS maps a port on one end to a point-to-point circuit and to a port on another end. EWS is a port-to-port service. Therefore, if a customer needs to connect a switch or router to n switches or routers it will need n ports and n pseudowires or logical circuits.
One important point to consider is that, although the EWS broadly emulates an Ethernet Layer 1 connection, the service is provided across a shared infrastructure, and therefore it is unlikely that the full interface bandwidth will be, or needs to be, available at all times. EWS will typically be a sub-line rate service, where many users share a circuit somewhere in their transmission path. As a result, the cost will most likely be less than that of EPL. Unlike a Layer 1 EPL, the SP will need to implement QoS and traffic engineering to meet the specific objectives of a particular contract. However, if the customer's application requires a true wire rate transparent service, then an EPL service--delivered using optical transmission devices such as DWDM (dense wavelength division multiplexing), CDWM (coarse wavelength division multiplexing), or SONET/SDH--should be considered.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 5

Ethernet Virtual Private Line

The Carrier Ethernet Model

Ethernet Virtual Private Line
Ethernet Virtual Private Line (EVPL) is similar to EWS in that it offers point-to-point connectivity. The key differentiation between EWS and EVPL is that an EVPL uses a VLAN tag to multiplex several, non-same-destination pseudowires to one port. That is, unlike EPL and EWS, EVPL is a one-to-many multiplexed service. Service multiplexing simply means that multiple pseudowires utilize a single access interface or UNI. These circuits can terminate within an L2VPN or on, for example, an Internet gateway. From the service user's perspective, this service multiplexing capability offers more efficient interface utilization, simplification of cable plant, and reduced maintenance costs associated with additional interfaces.
Using the same example as above, where a router connects to n other routers, the source router only needs one port for the service instead of n, as is the case with an EWS. The service need not be port-to-port, but can be logical-pseudowire-to-logical-pseudowire. In the case of an EVPL, each circuit can terminate at a different remote location, whereas using EWS, all frames are mapped to a single circuit and therefore a single egress point.
Figure 2: EVPL Service Multiplexing Example: One Port (Left) Can Be Used for All Destinations (Right)

Like Frame Relay, EVPL allows a customer device to access multiple connections through a single physical port attached to the service provider network. The service offered by EVPL can be thought of as being similar in concept to Frame Relay, in that a VLAN number is used as a virtual circuit identifier in a similar fashion to Frame Relay data link connection identifier (DLCI). Unlike EWS, EVPL does not forward BPDUs, because IEEE 802.1Q (VLAN tagging) only sends BPDUs on a default VLAN. In a hub-and-spoke network, only one spoke at most would receive BPDUs, thus breaking the spanning tree in the rest of the network. Therefore, an EVPL does not transmit any BPDUs and runs routing protocols instead of Ethernet Spanning Tree. The routing protocols give the customer and provider greater flexibility, traffic determination characteristics, and value-added services.
Ethernet LAN Service
An Ethernet LAN Service (E-LAN) differs from EWS and ERS in that an E-LAN provides a multipoint connectivity model. It should be noted that an E-LAN service definition is still under review within the IETF Multipoint Layer 2 Services working group. Although E-LAN uses a multipoint model, it can forward unicast packets to single destinations; that is, it also supports point-to-point connections. To the end user, the network looks like a giant Ethernet switch where each customer has their own VLAN or broadcast domain, rather than end-to-end pseudowire link(s).
E-LAN Example
An E-LAN does not map an interface or VLAN to a specific point-to-point pseudowire. Instead, it models the operation of a virtual Ethernet switch: E-LAN uses the customer's MAC address to forward frames to the correct egress UNI within the service provider's network. An E-LAN emulates the service attributes of an Ethernet switch and learns source MAC to interface associations, floods unknown broadcast and multicast frames, and (optionally) monitors the service user's spanning tree protocol. One important point to note is that although the service provider may utilize spanning tree within the transport network, there is no interaction with the service user's spanning tree.
This service works similar to an MPLS VPN, except it functions at L2 instead of L3. While a VPLS E-LAN is a viable solution, its scalability and QoS control are suspect compared to that of MPLS VPNs. In addition,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 6

The Carrier Ethernet Model

Ethernet Flow Point

it is much more difficult, and may be impossible, for the service provider to offer value-added Layer 3 services (this is discussed later in the document).
Ethernet Flow Point
An Ethernet Flow Point (EFP) is a substream partition of a main interface. On Cisco ASR 9000 Series Routers, the EFP is implemented as an L2 subinterface with an encapsulation statement.
Ethernet Virtual Circuit
An Ethernet Virtual Circuit (EVC) is a point-to-point tunnel. On Cisco ASR 9000 Series Routers, the EVC is implemented as a pseudowire (PW).
Ethernet OAM Protocols
Ethernet as a Metro Area Network (MAN) or a Wide Area Network (WAN) technology benefits greatly from the implementation of Operations, Administration and Maintenance (OAM) features. OAM features allow Service Providers to monitor the quality of the connections on a MAN or WAN. Service providers can monitor specific events, take actions on events, and if necessary, put specific interfaces into loopback mode for troubleshooting. Ethernet OAM features can be configured to monitor either side or both sides of a link.
For more information on Ethernet OAM protocols, refer to the Configuring Ethernet Interfaces chapter of the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.
Layer 2 VPN on Ethernet Interfaces
Layer 2 Virtual Private Network (L2VPN) connections emulate the behavior of a LAN across an IP or MPLS-enabled IP network, allowing Ethernet devices to communicate with each other as if they were connected to a common LAN segment.
The L2VPN feature enables service providers (SPs) to provide L2 services to geographically disparate customer sites. Typically, an SP uses an access network to connect the customer to the core network. This access network may use a mixture of L2 technologies, such as Ethernet and Frame Relay. The connection between the customer site and the nearby SP edge router is known as an attachment circuit (AC). Traffic from the customer travels over this link to the edge of the SP core network. The traffic then tunnels through a pseudowire over the SP core network to another edge router. The edge router sends the traffic down another AC to the customer's remote site.
The L2VPN feature enables the connection between different types of L2 attachment circuits and pseudowires, allowing users to implement different types of end-to-end services.
Cisco IOS XR software supports a point-to-point end-to-end service, where two Ethernet circuits are connected together. An L2VPN Ethernet port can operate in one of two modes:
· Port Mode--In this mode, all packets reaching the port are sent over the pseudowire, regardless of any VLAN tags that are present on the packets. In VLAN mode, the configuration is performed under the l2transport configuration mode.
· VLAN Mode--Each VLAN on a CE (customer edge) or access network to PE (provider edge) link can be configured as a separate L2VPN connection (using either VC type 4 or VC type 5). To configure L2VPN on VLANs, see The Carrier Ethernet Model chapter in this manual. In VLAN mode, the configuration is performed under the individual subinterface.
Switching can take place in three ways:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 7

Gigabit Ethernet Protocol Standards Overview

The Carrier Ethernet Model

· AC-to-PW--Traffic reaching the PE is tunneled over a PW (pseudowire) (and conversely, traffic arriving over the PW is sent out over the AC). This is the most common scenario.
· Local switching--Traffic arriving on one AC is immediately sent out of another AC without passing through a pseudowire.
· PW stitching--Traffic arriving on a PW is not sent to an AC, but is sent back into the core over another PW.
Keep these in mind when configuring L2VPN on an Ethernet interface:
· L2VPN links support QoS (Quality of Service) and MTU (Maximum Transmission Unit) configuration. · If your network requires that packets are transported transparently, you may need to modify the packet's
destination MAC (Media Access Control) address at the edge of the Service Provider (SP) network. This prevents the packet from being consumed by the devices in the SP network.
Use the show interfaces command to display AC and pseudowire information.
Gigabit Ethernet Protocol Standards Overview
The Gigabit Ethernet interfaces support these protocol standards:
· IEEE 802.3 Physical Ethernet Infrastructure · IEEE 802.3ab 1000BASE-T Gigabit Ethernet · IEEE 802.3z 1000 Mbps Gigabit Ethernet · IEEE 802.3ae 10 Gbps Ethernet
These standards are further described in the sections that follow.
IEEE 802.3 Physical Ethernet Infrastructure
The IEEE 802.3 protocol standards define the physical layer and MAC sublayer of the data link layer of wired Ethernet. IEEE 802.3 uses Carrier Sense Multiple Access with Collision Detection (CSMA/CD) access at a variety of speeds over a variety of physical media. The IEEE 802.3 standard covers 10 Mbps Ethernet. Extensions to the IEEE 802.3 standard specify implementations for Gigabit Ethernet, 10-Gigabit Ethernet, and Fast Ethernet.
IEEE 802.3ab 1000BASE-T Gigabit Ethernet
The IEEE 802.3ab protocol standards, or Gigabit Ethernet over copper (also known as 1000BaseT) is an extension of the existing Fast Ethernet standard. It specifies Gigabit Ethernet operation over the Category 5e/6 cabling systems already installed, making it a highly cost-effective solution. As a result, most copper-based environments that run Fast Ethernet can also run Gigabit Ethernet over the existing network infrastructure to dramatically boost network performance for demanding applications.
IEEE 802.3z 1000 Mbps Gigabit Ethernet
Gigabit Ethernet builds on top of the Ethernet protocol, but increases speed tenfold over Fast Ethernet to 1000 Mbps, or 1 Gbps. Gigabit Ethernet allows Ethernet to scale from 10 or 100 Mbps at the desktop to 100 Mbps up to 1000 Mbps in the data center. Gigabit Ethernet conforms to the IEEE 802.3z protocol standard.
By leveraging the current Ethernet standard and the installed base of Ethernet and Fast Ethernet switches and routers, network managers do not need to retrain and relearn a new technology in order to provide support for Gigabit Ethernet.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 8

The Carrier Ethernet Model

IEEE 802.3ae 10 Gbps Ethernet

IEEE 802.3ae 10 Gbps Ethernet
Under the International Standards Organization's Open Systems Interconnection (OSI) model, Ethernet is fundamentally a L2 protocol. 10-Gigabit Ethernet uses the IEEE 802.3 Ethernet MAC protocol, the IEEE 802.3 Ethernet frame format, and the minimum and maximum IEEE 802.3 frame size. 10 Gbps Ethernet conforms to the IEEE 802.3ae protocol standards.
Just as 1000BASE-X and 1000BASE-T (Gigabit Ethernet) remained true to the Ethernet model, 10-Gigabit Ethernet continues the natural evolution of Ethernet in speed and distance. Because it is a full-duplex only and fiber-only technology, it does not need the carrier-sensing multiple-access with the CSMA/CD protocol that defines slower, half-duplex Ethernet technologies. In every other respect, 10-Gigabit Ethernet remains true to the original Ethernet model.
General Ethernet Standards
· Ethernet II framing also known as DIX. · IEEE 802.3 framing also includes LLC and LLC/SNAP protocol frame formats. · IEEE 802.1d MAC Bridges and Spanning Tree--This standard specifies the MAC learning and MAC
aging in a bridging environment. It also defines the original spanning tree protocol. Also MSTP is defined in IEEE 802.1s and IEEE 802.1q. · IEEE 802.1q VLAN tagging--This standard defines VLAN tagging, and also the traditional VLAN trunking between switches. Technically, it also defines QinQ tagging, and MSTP. The Cisco ASR 9000 Series Routers do NOT support ISL. · IEEE 802.1ad Provider Bridges--This standard is a subset of 802.1q and is often referred to as 802.1ad. The Cisco ASR 9000 Series Routers do not adhere to the entire standard, but large portions of the standard's functionality are supported.
MAC Address
A MAC address is a unique 6-byte address that identifies the interface at L2.
Ethernet MTU
The Ethernet Maximum Transmission Unit (MTU) is the size of the largest frame, minus the 4-byte Frame Check Sequence (FCS), that can be transmitted on the Ethernet network. Every physical network along the destination of a packet can have a different MTU.
Cisco IOS XR software supports two types of frame forwarding processes:
· Fragmentation for IPV4 packets--In this process, IPv4 packets are fragmented as necessary to fit within the MTU of the next-hop physical network.
Note IPv6 does not support fragmentation.
· MTU discovery process determines largest packet size--This process is available for all IPV6 devices, and for originating IPv4 devices. In this process, the originating IP device determines the size of the largest IPv6 or IPV4 packet that can be sent without being fragmented. The largest packet is equal to the smallest MTU of any network between the IP source and the IP destination devices. If a packet is larger

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 9

Flow Control on Ethernet Interfaces

The Carrier Ethernet Model

than the smallest MTU of all the networks in its path, that packet will be fragmented as necessary. This process ensures that the originating device does not send an IP packet that is too large.
Jumbo frame support is automatically enable for frames that exceed the standard frame size. The default value is 1514 for standard frames and 1518 for 802.1Q tagged frames. These numbers exclude the 4-byte FCS.

Flow Control on Ethernet Interfaces
The flow control used on 10-Gigabit Ethernet interfaces consists of periodically sending flow control pause frames. It is fundamentally different from the usual full- and half-duplex flow control used on standard management interfaces. On the Cisco ASR 9000 Series Routers both ingress and egress flow control are off by default.

VRRP

The Virtual Router Redundancy Protocol (VRRP) eliminates the single point of failure inherent in the static default routed environment. VRRP specifies an election protocol that dynamically assigns responsibility for a virtual router to one of the VPN concentrators on a LAN. The VRRP VPN concentrator controlling the IP addresses associated with a virtual router is called the primary, and forwards packets sent to those IP addresses. When the primary becomes unavailable, a backup VPN concentrator takes the place of the primary.
For more information on VRRP, see the Implementing VRRP chapter of Cisco ASR 9000 Series Routers IP Addresses and Services Configuration Guide.

HSRP

Hot Standby Routing Protocol (HSRP) is a proprietary protocol from Cisco. HSRP is a routing protocol that provides backup to a router in the event of failure. Several routers are connected to the same segment of an Ethernet, FDDI, or token-ring network and work together to present the appearance of a single virtual router on the LAN. The routers share the same IP and MAC addresses and therefore, in the event of failure of one router, the hosts on the LAN are able to continue forwarding packets to a consistent IP and MAC address. The transfer of routing responsibilities from one device to another is transparent to the user.
HSRP is designed to support non disruptive failover of IP traffic in certain circumstances and to allow hosts to appear to use a single router and to maintain connectivity even if the actual first hop router they are using fails. In other words, HSRP protects against the failure of the first hop router when the source host cannot learn the IP address of the first hop router dynamically. Multiple routers participate in HSRP and in concert create the illusion of a single virtual router. HSRP ensures that one and only one of the routers is forwarding packets on behalf of the virtual router. End hosts forward their packets to the virtual router.
The router forwarding packets is known as the active router. A standby router is selected to replace the active router should it fail. HSRP provides a mechanism for determining active and standby routers, using the IP addresses on the participating routers. If an active router fails, a standby router can take over without a major interruption in the host's connectivity.
HSRP runs on top of User Datagram Protocol (UDP), and uses port number 1985. Routers use their actual IP address as the source address for protocol packets, not the virtual IP address, so that the HSRP routers can identify each other.
For more information on HSRP, see the Implementing HSRP chapter of Cisco ASR 9000 Series Routers IP Addresses and Services Configuration Guide.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 10

The Carrier Ethernet Model

Link Autonegotiation on Ethernet Interfaces

Link Autonegotiation on Ethernet Interfaces
Link autonegotiation ensures that devices that share a link segment are automatically configured with the highest performance mode of interoperation. Use the negotiation auto command in interface configuration mode to enable link autonegotiation on an Ethernet interface. On line card Ethernet interfaces, link autonegotiation is disabled by default.
Note The negotiation auto command is available on Gigabit Ethernet interfaces only.
What is an Ethernet Flow Point?
An Ethernet Flow Point (EFP) is a Layer 2 logical subinterface used to classify traffic under a physical or a bundle interface. A physical interface can be a Gigabit Ethernet 0/0/0/1 or a 10 Gigabit Ethernet 0/0/0/0 interface and has ports on the line card. A bundle interface is a virtual interface, created by grouping physical interfaces together. For example, physical interfaces such as Gigabit Ethernet 0/0/0/1 and 10 Gigabit Ethernet 0/0/0/0 can be configured as members of a bundle interface. Grouping physical interfaces together can:
· Reduce the routing entries
· Increase the bandwidth of the bundle interface · Balance the traffic on the bundle members EFP has the following characteristics: · An EFP represents a logical demarcation point of an Ethernet Virtual Connection (EVC) on an interface.
For an EVC associating two or more UNIs, there is a flow point on each interface of every device, through which that EVC passes. · An EFP can be regarded as an instantiation of a particular service. An EFP is defined by a set of filters. These filters are applied to all the ingress traffic to classify the frames that belong to a particular EFP. An EFP filter is a set of entries, where each entry looks similar to the start of a packet (ignoring source/destination MAC address). Each entry usually contains 0, 1 or 2 VLAN tags. A packet that starts with the same tags as an entry in the filter is said to match the filter; if the start of the packet does not correspond to any entry in the filter then the packet does not match the filter.
· An EFP serves four purposes: · Identifies all frames that belong to a particular flow on a given interface · Performs ingress and egress Ethernet header manipulations · Adds features to the identified frames · Optionally define how to forward those frames in the data path
You can perform a variety of operations on the traffic flows when a router is configured with EFPs on various interfaces. Also, you can bridge or tunnel the traffic by many ways from one or more of the router's ingress EFPs to one or more egress EFPs. This traffic is a mixture of VLAN IDs, single or double (QinQ) encapsulation, and ethertypes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 11

Improving the Scalability of EFPs on Bundle Interfaces Figure 3: EFP Model

The Carrier Ethernet Model

An EFP subinterface is configured to specify which traffic on ingress is vectored to that EFP. This is done by specifying a VLAN, range of VLANs, or QinQ tagging to match against on ingress. All traffic on ingress is compared to each EFP's matching criterion, and processed by that EFP if a match occurs. The processing performed by an EFP can change VLAN IDs, add or remove VLAN tags, and change ethertypes.
Improving the Scalability of EFPs on Bundle Interfaces
You can improve the scalability of EFPs on bundle interfaces in two ways: · Increase the number of EFPs per chassis from 32000 to 64000. · Increase the number of EFPs per line card, on a single node point, to the same scale as the physical interface scaling.
The following example illustrates how to improve the scalability of EFPs per line card: Consider a B module line card type with a bundle interface scaling of 4000 and a physical interface scaling of 16000. The scalability of EFPs on the B module is improved by adding three additional bundles of 4000 EFPs per bundle. The number of EFPs per line card is now scaled to 16000 or 4 bundles of 4000 EFPs each.
Note The maximum number of EFPs that can be added to a bundle interface is 4000.
EFP CLI Overview
Cisco IOS XR implements a structured CLI for EFP and EVC configuration. The following commands are typically used to configure an EFP:
· l2transport command - This command identifies a subinterface (or a physical port or bundle-port parent interface) as an EFP.
· encapsulation command - This command is used to specify matching criteria. · rewrite command - This command is used to specify the VLAN tag rewrite criteria.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 12

The Carrier Ethernet Model

Egress EFP Filtering

Egress EFP Filtering
The Egress EFP Filtering feature implements a means of filtering EFP egress traffic, ensuring that all the given EFP's egress traffic complies with the ingress matching criterion.
An ingress EFP is similar to an egress EFP. The router is configured to send traffic on the EFP, that matches that EFP's ingress matching criterion. It is possible to configure a router so that this does not occur, and there is no safeguard to prevent such mismatching egress EFP traffic from exiting the router.
The Cisco ASR 9000 Series Routers allow for different VLANs on different ports within the same bridge domain. This allows a bridge to forward a packet out of a port not configured for the VLAN tag on the packet. Egress EFP filtering checks this and drops invalid packets at the egress port.

Identifying Frames of an EFP
The EFP identifies frames belonging to a particular flow on a given port, independent of their Ethernet encapsulation. An EFP can flexibly map frames into a flow or EFP based on the fields in the frame header. The frames can be matched to an EFP using:
· VLAN tag or tags · MAC address (source address, destination address, or both) · 802.1p CoS bits · Logical conjunction of two or more of the above: VLAN, MAC, and CoS · Default match (that is, any other traffic that has not matched a more specific EFP) · Protocol ethertype
The frames cannot be matched to an EFP through use of any of these: · Any information outside the outermost Ethernet frame header and its associated tags such as · IPv4, IPv6, or MPLS tag header data · C-DMAC, C-SMAC, or C-VLAN

· Logical disjunction of the valid frame matches above: VLAN, MAC, and CoS The specific match criteria are covered in more detail in these sections.

VLAN Tag Matching Below table describes the different encapsulation types and the EFP identifier corresponding to each.

Encapsulation Type Untagged

EFP Identifier
Static configuration on the ingress physical interface or a subinterface that uses the untagged keyword in the encapsulation command. There can be only one untagged subinterface. If an untagged subinterface has been created, traffic goes to this interface instead of the main interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 13

Identifying Frames of an EFP

The Carrier Ethernet Model

Encapsulation Type Priority-tagged Ethernet frames Native VLAN
Single tagged frames Double tagged frames
Default tagging

EFP Identifier A priority-tagged frame is defined as having a single 802.1Q VLAN header, with a VLAN id of zero.
Cisco ASR 9000 Series Routers do not support native VLAN. Use this command: encapsulation dot1q <vlan-id>, untagged
802.1Q customer-tagged Ethernet frames
802.1Q (ethertype 0x8100) double tagged frames 802.1ad double tagged frames Legacy 0x9100 and 0x9200 double tagged frames
An EFP which has a maximum-match wildcard. The effect is to receive any traffic that does not match any other EFP on the same physical interface.

You can use wildcards as well as VLAN ranges while defining frames that map to a given EFP. EFPs can distinguish flows based on a single VLAN tag, a range of VLAN tags, a stack of VLAN tags or a combination of both (VLAN stack with wildcards). It provides the EFP model, a flexibility of being encapsulation agnostic, and allows it to be extensible as new tagging or tunneling schemes are added.

MAC Address Matching
The source MAC address, the destination MAC address, or both can be matched. In all cases, the MAC address requires an exact match. A wildcard match or partial match is not adequate.

802.1p CoS Bits Matching One or more exact CoS matches are specified. Because CoS is only 3 bits, this limits it to 8 possible choices.

Logical Conjunction All of the match criteria above can be selectively combined those frames that match all of the separate criteria.

Default Match A single EFP can be defined that matches all other traffic that has not been matched by a more specific EFP.

Match Precedence and Config Verification
Overlapping EFPs are allowed to be configured, where it is possible to determine an order in which they should be used for matching. But EFPs that conflict with other EFPs or subinterfaces on the parent trunk interface should be blocked at config verification.
An ordering precedence is used for how EFP matches are applied in hardware. The model is for matches that are more specific to be processed before matches that are less specific.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 14

The Carrier Ethernet Model

Applying Features

Egress Behavior The EFP matching criteria can also be used on egress to police the frames that can egress from the EFP, based on the platform support. Frames that do not match the criteria (source/destination MAC match criteria are reversed) are dropped.
Applying Features
After the frames are matched to a particular EFP, any appropriate features can be applied. In this context, "features" means any frame manipulations specified by the configuration as well as things such as QoS and ACLs. The Ethernet infrastructure provides an appropriate interface to allow the feature owners to apply their features to an EFP. Hence, IM interface handles are used to represent EFPs, allowing feature owners to manage their features on EFPs in the same way the features are managed on regular interfaces or subinterfaces. The only L2 features that can be applied on an EFP that is part of the Ethernet infrastructure are the L2 header encapsulation modifications. The L2 features are described in this section.
Encapsulation Modifications EFP supports these L2 header encapsulation modifications on both ingress and egress:
· Push 1 or 2 VLAN tags · Pop 1 or 2 VLAN tags
Note This modification can only pop tags that are matched as part of the EFP.
· Rewrite 1 or 2 VLAN tags: · Rewrite outer tag · Rewrite outer 2 tags · Rewrite outer tag and push an additional tag · Remove outer tag and rewrite inner tag
Note For dot1ad encapsulation, priority-tagged frame and rewrite ingress tag cannot coexist.
For each of the VLAN ID manipulations, these can be specified: · The VLAN tag type, that is, C-VLAN, S-VLAN, or I-TAG. The ethertype of the 802.1Q C-VLAN tag
is defined by the dot1q tunneling type command. · The VLAN ID. 0 can be specified for an outer VLAN tag to generate a priority-tagged frame.
Note For tag rewrites, the CoS bits from the previous tag should be preserved in the same way as the DEI bit for 802.1ad encapsulated frames.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 15

Defining Data-Forwarding Behavior

The Carrier Ethernet Model

Defining Data-Forwarding Behavior
The EFP can be used to designate the frames belonging to a particular Ethernet flow forwarded in the data path. These forwarding cases are supported for EFPs in Cisco IOS XR software:
· L2 Switched Service (Bridging)--The EFP is mapped to a bridge domain, where frames are switched based on their destination MAC address. This includes multipoint services:
· Ethernet to Ethernet Bridging · Multipoint Layer 2 Services
· L2 Stitched Service (AC to AC xconnect)--This covers point-to-point L2 associations that are statically established and do not require a MAC address lookup.
· Ethernet to Ethernet Local Switching--The EFP is mapped to an S-VLAN either on the same port or on another port. The S-VLANs can be identical or different.
· Tunneled Service (xconnect)--The EFP is mapped to a Layer 3 tunnel. This covers point-to-point services only:
· EoMPLS · L2TPv3
· L2 Terminated Service (Ethernet access to Layer 3 service)--The EFP is mapped to an IP interface that has a global address or belongs to a VRF (includes both IP and MPLS Layer 3 VPNs).
802.1Q VLAN
A VLAN is a group of devices on one or more LANs that are configured so that they can communicate as if they were attached to the same wire, when in fact they are located on a number of different LAN segments. Because VLANs are based on logical instead of physical connections, it is very flexible for user and host management, bandwidth allocation, and resource optimization.
The IEEE's 802.1Q protocol standard addresses the problem of breaking large networks into smaller parts so broadcast and multicast traffic does not consume more bandwidth than necessary. The standard also helps provide a higher level of security between segments of internal networks.
The 802.1Q specification establishes a standard method for inserting VLAN membership information into Ethernet frames.
Cisco IOS XR software supports VLAN subinterface configuration on Gigabit Ethernet and10-Gigabit Ethernet interfaces.
802.1Q Tagged Frames
The IEEE 802.1Q tag-based VLAN uses an extra tag in the MAC header to identify the VLAN membership of a frame across bridges. This tag is used for VLAN and Quality of Service (QoS) priority identification. The VLANs can be created statically by manual entry or dynamically through Generic Attribute Registration Protocol (GARP) VLAN Registration Protocol (GVRP). The VLAN ID associates a frame with a specific VLAN and provides the information that switches must process the frame across the network. A tagged frame is four bytes longer than an untagged frame and contains two bytes of Tag Protocol Identifier (TPID) residing within the type and length field of the Ethernet frame and two bytes of Tag Control Information (TCI) which starts after the source address field of the Ethernet frame.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 16

The Carrier Ethernet Model

Subinterfaces

Subinterfaces

Subinterfaces are logical interfaces created on a hardware interface. These software-defined interfaces allow for segregation of traffic into separate logical channels on a single hardware interface as well as allowing for better utilization of the available bandwidth on the physical interface.
Subinterfaces are distinguished from one another by adding an extension on the end of the interface name and designation. For instance, the Ethernet subinterface 23 on the physical interface designated TenGigE 0/1/0/0 would be indicated by TenGigE 0/1/0/0.23.
Before a subinterface is allowed to pass traffic it must have a valid tagging protocol encapsulation and VLAN identifier assigned. All Ethernet subinterfaces always default to the 802.1Q VLAN encapsulation. However, the VLAN identifier must be explicitly defined.

Subinterface MTU
The subinterface Maximum Transmission Unit (MTU) is inherited from the physical interface with an additional four bytes allowed for the 802.1Q VLAN tag.

VLAN Subinterfaces on Ethernet Bundles
An Ethernet bundle is a group of one or more Ethernet ports that are aggregated together and treated as a single link. Multiple VLAN subinterfaces can be added to a single Ethernet bundle.
For more information about configuring Ethernet bundles, see the Configuring Link Bundles chapter in this document. The procedure for creating VLAN subinterfaces on an Ethernet bundle is exactly the same as the procedure for creating VLAN subinterfaces on a physical Ethernet interface.
To create a VLAN subinterface on an Ethernet bundle, see the Configuring 802.1Q VLAN Interfaces section later in this chapter.

Layer 2 VPN on VLANs
The Layer 2 Virtual Private Network (L2VPN) feature enables Service Providers (SPs) to provide L2 services to geographically disparate customer sites, as described in the Layer 2 VPN on Ethernet Interfaces section of the The Carrier Ethernet Model, on page 3 chapter.
The configuration model for configuring VLAN Attachment Circuits (ACs) is similar to the model used for configuring basic VLANs, where the user first creates a VLAN subinterface, and then configures that VLAN in subinterface configuration mode. To create an Attachment Circuit, you need to include the l2transport keyword in the interface command string to specify that the interface is a L2 interface.
VLAN ACs support three modes of L2VPN operation:
· Basic Dot1Q Attachment Circuit--The Attachment Circuit covers all frames that are received and sent with a specific VLAN tag.
· QinQ Attachment Circuit--The Attachment Circuit covers all frames received and sent with a specific outer VLAN tag and a specific inner VLAN tag. QinQ is an extension to Dot1Q that uses a stack of two tags.
· Q-in-Any Attachment Circuit--The Attachment Circuit covers all frames received and sent with a specific outer VLAN tag and any inner VLAN tag, as long as that inner VLAN tag is not Layer 3 terminated. Q-in-Any is an extension to QinQ that uses wildcarding to match any second tag.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 17

How to Configure Layer 2 Features on Ethernet Interfaces

The Carrier Ethernet Model

Note The Q-in-Any mode is a variation of the basic Dot1Q mode. In Q-in-Any mode, the frames have a basic QinQ encapsulation; however, in Q-in-Any mode the inner tag is not relevant, except for the fact that a few specific inner VLAN tags are siphoned for specific services. For example, a tag may be used to provide L3 services for general internet access.
Each VLAN on a CE-to-PE link can be configured as a separate L2VPN connection (using either VC type 4 or VC type 5). Keep these in mind when configuring L2VPN on a VLAN:
· Cisco IOS XR software supports 4000 Attachment Circuits per line card. · In a point-to-point connection, the two Attachment Circuits do not have to be of the same type. For
example, a port mode Ethernet Attachment Circuit can be connected to a Dot1Q Ethernet Attachment Circuit. · Pseudowires can run in VLAN mode or in port mode. A pseudowire running in VLAN mode has a single Dot1Q tag, while a pseudowire running in port mode has no tags. Some interworking is required to connect these different types of circuits together. This interworking takes the form of popping, pushing, and rewriting tags. The advantage of L2VPN is that is simplifies the interworking required to connect completely different media types together. · The Attachment Circuits on either side of an MPLS pseudowire can be different types. In this case, the appropriate conversion is carried out at one or both ends of the Attachment Circuit to pseudowire connection.
Use the show interfaces command to display Attachment Circuit and pseudowire information.
Note For more information on the show interfaces command, refer to the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.
How to Configure Layer 2 Features on Ethernet Interfaces
Note For more information on configuring interfaces, refer to the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.
Default Configuration Values for Gigabit Ethernet and 10-Gigabit Ethernet
The below table describes the default interface configuration parameters that are present when an interface is enabled on a Gigabit Ethernet or 10-Gigabit Ethernet modular services card and its associated PLIM.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 18

The Carrier Ethernet Model

Configuring Ethernet Interfaces

Note You must use the shutdown command to bring an interface administratively down. The interface default is no shutdown. When a modular services card is first inserted into the router, if there is no established preconfiguration for it, the configuration manager adds a shutdown item to its configuration. This shutdown can be removed only be entering the no shutdown command.

Table 2: Gigabit Ethernet and 10-Gigabit Ethernet Modular Services Card Default Configuration Values

Parameter Flow control MTU
MAC address L2 port Egress filtering Link negotiation Tunneling Ethertype
VLAN tag matching

Configuration File Entry Default Value

flow-control

egress on ingress off

Restrictions none

mtu

1514 bytes for normal none

frames

1518 bytes for 802.1Q tagged frames

1522 bytes for QinQ frames

mac address

Hardware burned-in L3 only address (BIA2)

l2transport

off/L3

L2 subinterfaces must have L3 main parent interface

Ethernet egress-filter off

none

negotiation

off

physical main interfaces only

tunneling ethertype 0X8100

configured on main interface only; applied to subinterfaces only

encapsulation

all frames for main interface; only ones specified for subinterfaces

encapsulation command only subinterfaces

1. The restrictions are applicable to L2 main interface, L2 subinterface, L3 main interface, interflex L2 interface etc.
2. burned-in address

Configuring Ethernet Interfaces
For more information on configuring Ethernet interfaces, see the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 19

Configuring a 10-Gigabit Ethernet Interface

The Carrier Ethernet Model

Configuring a 10-Gigabit Ethernet Interface
Perform this task to configure an Ethernet interface:

SUMMARY STEPS

1. configure interface TenGigE [ instance ] 2. l2transport 3. mtu bytes 4. no shutdown 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure interface TenGigE [ instance ] Example:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router# interface TenGigE 0/0/0/1
Enters interface configuration mode for a 10-Gigabit Ethernet interface. l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# l2transport
Enables Layer 2 transport mode on a port and enter Layer 2 transport configuration mode. mtu bytes Example:
RP/0/RSP0/CPU0:router(config-if-l2)# mtu 1448
Adjusts the maximum packet size or Maximum Transmission Unit (MTU) size for the bridge domain. · Use the bytes argument to specify the MTU size, in bytes. The range is from 64 to 65535.
no shutdown Example:
RP/0/RSP0/CPU0:router(config-if-l2)# no shutdown
Removes the shutdown configuration, which forces an interface administratively down. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 20

The Carrier Ethernet Model

Configuring a Gigabit Ethernet Interface

end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring a Gigabit Ethernet Interface
Perform this task to configure a basic Gigabit Ethernet or 10-Gigabit Ethernet interface:

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. ipv4 address ip-address mask 4. flow-control { bidirectional | egress | ingress } 5. mtu bytes 6. mac-address value1.value2.value3 7. negotiation auto (on Gigabit Ethernet interfaces only) 8. no shutdown 9. Use the commit or end command. 10. show interfaces [ GigabitEthernet | TenGigE ] instance

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure terminal
Enters the Global Configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet 0/1/0/0
Enters interface configuration mode and specifies the Ethernet interface name and notation rack/slot/module/port. ipv4 address ip-address mask Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 172.18.189.38 255.255.255.224
Assigns an IP address and subnet mask to the interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 21

Configuring a Gigabit Ethernet Interface

The Carrier Ethernet Model

Step 4 Step 5 Step 6 Step 7

· Replace ip-address with the primary IPv4 address for the interface. · Replace mask with the mask for the associated IP subnet. The network mask can be specified in either of two
ways: · The network mask can be a four-part dotted decimal address. For example, 255.0.0.0 indicates that each bit equal to 1 means that the corresponding address bit belongs to the network address. · The network mask can be indicated as a slash (/) and number. For example, /8 indicates that the first 8 bits of the mask are ones, and the corresponding bits of the address are network address.
flow-control { bidirectional | egress | ingress } Example:
RP/0/RSP0/CPU0:router(config-if)# flow control ingress
(Optional) Enables the sending and processing of flow control pause frames. · egress--Enables the sending of flow control pause frames in egress. · ingress--Enables the processing of received pause frames on ingress. · bidirectional--Enables the sending of flow control pause frames in egress and the processing of received pause frames on ingress.
mtu bytes Example:
RP/0/RSP0/CPU0:router(config-if)# mtu 1448
(Optional) Sets the MTU value for the interface. · The default is 1514 bytes for normal frames and 1518 bytes for 802.1Q tagged frames. · The range for Gigabit Ethernet and 10-Gigabit Ethernet mtu values is 64 bytes to 65535 bytes.
mac-address value1.value2.value3 Example:
RP/0/RSP0/CPU0:router(config-if)# mac address 0001.2468.ABCD
(Optional) Sets the MAC layer address of the Management Ethernet interface. · The values are the high, middle, and low 2 bytes, respectively, of the MAC address in hexadecimal. The range of each 2-byte value is 0 to ffff.
negotiation auto (on Gigabit Ethernet interfaces only) Example:
RP/0/RSP0/CPU0:router(config-if)# negotiation auto

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 22

The Carrier Ethernet Model

What to Do Next

Step 8 Step 9 Step 10

(Optional) Enables autonegotiation on a Gigabit Ethernet interface. · Autonegotiation must be explicitly enabled on both ends of the connection, or speed and duplex settings must be configured manually on both ends of the connection.
· If autonegotiation is enabled, any manually configured speed or duplex settings take precedence.

Note

The negotiation auto command is available on Gigabit Ethernet interfaces only.

no shutdown Example:

RP/0/RSP0/CPU0:router(config-if)# no shutdown

Removes the shutdown configuration, which forces an interface administratively down.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.
show interfaces [ GigabitEthernet | TenGigE ] instance Example:

RP/0/RSP0/CPU0:router #show interfaces TenGigE 0/3/0/0

(Optional) Displays statistics for interfaces on the router.

What to Do Next

· To configure an 802.1Q VLAN subinterface on the Ethernet interface, see the "The Carrier Ethernet Model" chapter later in this manual.
· To configure an AC on the Ethernet port for L2VPN implementation, see the "Configuring an Attachment Circuit on an Ethernet Port" section later in this chapter.

Configuring an Attachment Circuit on an Ethernet Port
Use this procedure to configure an attachment circuit on a Gigabit Ethernet or 10-Gigabit Ethernet port. For more information on configuring an attachment circuit, refer to the Interface and Hardware Component Configuration Guide for Cisco ASR 9000 Series Routers.

Note The steps in this procedure configure the L2VPN Ethernet port to operate in EFP mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 23

Configuring an Attachment Circuit on an Ethernet Port

The Carrier Ethernet Model

SUMMARY STEPS

1. configure 2. interface [GigabitEthernet | TenGigE] instance.subinterface l2transport 3. encapsulation dot1q vlan-id 4. interface [GigabitEthernet | TenGigE] instance.subinterface l2transport 5. encapsulation dot1q vlan-id 6. l2vpn 7. bridge group bridge-group-name 8. bridge-domain domain-name 9. interface [GigabitEthernet | TenGigE] instance.subinterface 10. interface [GigabitEthernet | TenGigE] instance.subinterface 11. Use the commit or end command. 12. show run interface [GigabitEthernet | TenGigE] instance.subinterface

DETAILED STEPS

Step 1 Step 2
Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface [GigabitEthernet | TenGigE] instance.subinterface l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/5/0/0.20 l2transport
Enters subinterface configuration mode and specifies the interface type, location, and subinterface number. · Replace the instance argument with one of these instances: · Physical Ethernet interface instance, or with an Ethernet bundle instance. Naming notation is rack/slot/module/port, and a slash between values is required as part of the notation. · Ethernet bundle instance. Range is from 1 through 65535.
· Replace the subinterface argument with the subinterface value. Range is from 0 through 4095. · Naming notation is instance.subinterface, and a period between arguments is required as part of the notation.
encapsulation dot1q vlan-id Example:
RP/0/RSP0/CPU0:router(config-subif)#encapsulation dot1q 50

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 24

The Carrier Ethernet Model

Configuring an Attachment Circuit on an Ethernet Port

Step 4
Step 5 Step 6 Step 7 Step 8

Assigns the matching VLAN ID and Ethertype to the interface. interface [GigabitEthernet | TenGigE] instance.subinterface l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/5/0/0.20 l2transport
Enters subinterface configuration mode and specifies the interface type, location, and subinterface number. · Replace the instance argument with one of these instances: · Physical Ethernet interface instance, or with an Ethernet bundle instance. Naming notation is rack/slot/module/port, and a slash between values is required as part of the notation. · Ethernet bundle instance. Range is from 1 through 65535.
· Replace the subinterface argument with the subinterface value. Range is from 0 through 4095. · Naming notation is instance.subinterface, and a period between arguments is required as part of the notation.
encapsulation dot1q vlan-id Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 50
Assigns the matching VLAN ID and Ethertype to the interface. l2vpn Example:
RP/0/RSP0/CPU0:router(config-subif)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group ce-doc-examples
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridgedomain ac-example

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 25

Configuring Egress EFP Filtering

The Carrier Ethernet Model

Step 9 Step 10 Step 11 Step 12

Enters configuration mode for the named bridge domain. This creates a new bridge domain modifies the existing bridge domain if it already exists. interface [GigabitEthernet | TenGigE] instance.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20
Adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. The interface EFP now becomes an attachment circuit on this bridge domain. interface [GigabitEthernet | TenGigE] instance.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# interface GigabitEthernet0/5/0/1.15
Adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. The interface EFP now becomes an attachment circuit on this bridge domain. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show run interface [GigabitEthernet | TenGigE] instance.subinterface Example:
RP/0/RSP0/CPU0:router# show run interface GigabitEthernet0/5/0/1.15
(Optional) Displays statistics for the subinterface on the router.

Configuring Egress EFP Filtering
This section describes the procedures for configuring the egress EFP filtering feature on the Cisco ASR 9000 Series Routers.
Egress EFP filtering is a L2 subinterface specific feature that controls how strictly subinterface encapsulation filtering is performed in the egress direction. According to the EFP behavior and model, all packets transmitted out of a subinterface should match the subinterface encapsulation or rewrite criteria if the same packet is to be received on the subinterface (with the source and destination MAC addresses swapped).
Egress EFP filtering has two stages; first stage is without rewrite command, and the second stage is with rewrite command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 26

The Carrier Ethernet Model

Configuring Egress EFP Filtering

In the first stage filtering, the packet is checked against the encapsulation to ensure the match, the same way it is checked on ingress to determine that the packet is forwarded to that EFP.
In the second stage filtering, the packet is checked before the egress rewrite occurs to ensure that the packet in its egress pre-rewrite state is correct. This means that the egress packet's VLAN encapsulation should be same as a hypothetical ingress packet after the ingress rewrite occurs.
In case of an interface configured with both a rewrite and egress EFP filtering, where egress traffic is getting dropped unexpectedly due to egress EFP filtering, the user must first ascertain which stage the drops occur.

Note Output drops counter displays the drops occurred due to egress EFP filtering in the "show interface" display for that interface. Output drops counter is a summation of drops from multiple causes and not necessarily due to egress EFP filtering.
By using the ethernet egress-filter command, you can configure egress EFP filtering in either global or L2 subinterface mode:
· ethernet egress-filter strict configures Egress EFP Filtering inGlobal Configuration mode.
· ethernet egress-filter {strict | disabled} configures Egress EFP Filtering in L2 subinterface mode.

SUMMARY STEPS

1. configure 2. ethernet egress-filter strict 3. interface {GigabitEthernet | TenGigE | FastEthernet | Bundle-Ether} instance.subinterface 4. ethernet egress-filter {strict | disabled} 5. exit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:PE44_ASR-9010# config Thu Jun 4 07:50:02.660 PST RP/0/RSP0/CPU0:PE44_ASR-9010(config)#
Enters Global Configuration mode. ethernet egress-filter strict Example:
RP/0/RSP0/CPU0:PE44_ASR-9010(config)# ethernet egress-filter strict
Enables strict egress filtering on all subinterfaces on the device by default. interface {GigabitEthernet | TenGigE | FastEthernet | Bundle-Ether} instance.subinterface Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 27

Configuring 802.1Q VLAN Interfaces

The Carrier Ethernet Model

Step 4 Step 5

RP/0/RSP0/CPU0:PE44_ASR-9010(config)# interface GigabitEthernet 0/1/0/1.1 RP/0/RSP0/CPU0:PE44_ASR-9010(config-subif)#
Creates an L2 subinterface. ethernet egress-filter {strict | disabled} Example:
RP/0/RSP0/CPU0:PE44_ASR-9010(config-subif)# ethernet egress-filter strict
Allows egress filtering to be explicitly enabled or disabled on any L2 subinterface. It can also be used to override global settings. exit Example:
RP/0/RSP0/CPU0:PE44_ASR-9010(config-subif)# exit RP/0/RSP0/CPU0:PE44_ASR-9010(config)# exit
Exit from the configuration mode.

Configuring 802.1Q VLAN Interfaces

Restrictions for Configuring 802.1Q VLAN Interfaces
To use the sub-interface configurations encapsulation dot1ad (or encapsulation dot1q) and encapsulation dot1ad second-dot1q any (or encapsulation dot1q second-dot1q any) together on the same physical interface, use the exact keyword as shown below. Else, it results in traffic loss.
Router(config)# interface hundredGigE 0/0/0/0.0 Router(config-subif)# encapsulation dot1ad 200 exact
Router(config)# interface hundredGigE 0/0/0/0.1 Router(config-subif)# encapsulation dot1ad 200 dot1q any Router(config-subif)# commit
Configuring 802.1Q VLAN Subinterfaces
This task explains how to configure 802.1Q VLAN subinterfaces. To remove these subinterfaces, see the "Removing an 802.1Q VLAN Subinterface" section of this chapter.

SUMMARY STEPS

1. configure 2. interface {GigabitEthernet | TenGigE | Bundle-Ether} instance.subinterface 3. l2transport 4. encapsulation dot1q vlan-id 5. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 28

The Carrier Ethernet Model

Configuring 802.1Q VLAN Subinterfaces

DETAILED STEPS

6. show ethernet trunk bundle-ether instance

Step 1 Step 2
Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface {GigabitEthernet | TenGigE | Bundle-Ether} instance.subinterface Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/2/0/4.10
Enters subinterface configuration mode and specifies the interface type, location, and subinterface number. · Replace the instance argument with one of these instances: · Physical Ethernet interface instance, or with an Ethernet bundle instance. Naming notation is rack/slot/module/port, and a slash between values is required as part of the notation. · Ethernet bundle instance. Range is from 1 through 65535.
· Replace the subinterface argument with the subinterface value. Range is from 0 through 4095. · Naming notation is instance.subinterface, and a period between arguments is required as part of the notation.
l2transport Example:
RP/0/RSP0/CPU0:router(config-subif)# l2transport
Enables Layer 2 transport mode on a port and enter Layer 2 transport configuration mode. encapsulation dot1q vlan-id Example:
RP/0/RSP0/CPU0:router(config-subif-l2)# encapsulation dot1q 100
Assigns a VLAN Attachment Circuit to the subinterface. · Replace the vlan-id argument with a subinterface identifier. Range is from 1 to 4094 inclusive (0 and 4095 are reserved). To configure a basic Dot1Q Attachment Circuit, use this syntax: encapsulation dot1q vlan-id · To configure a QinQ Attachment Circuit, use this syntax: encapsulation dot1q vlan-id second-dot1q vlan-id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 29

Configuring Native VLAN

The Carrier Ethernet Model

Note

Following are the varieties of encapsulation commands:

· encapsulation dot1q 100

· encapsulation dot1q 100 second-dot1q 101

· encapsulation dot1ad 200 dot1q 201

Step 5 Step 6

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show ethernet trunk bundle-ether instance Example:
RP/0/RSP0/CPU0:router# show ethernet trunk bundle-ether 5
(Optional) Displays the interface configuration. The Ethernet bundle instance range is from 1 through 65535.

Configuring Native VLAN
This task explains how to configure a native VLAN on an interface.

SUMMARY STEPS

1. configure 2. interface [GigabitEthernet | TenGigE | Bundle-Ether] instance.subinterface l2transport 3. encapsulation [dot1q vlan-id, untagged] 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. interface [GigabitEthernet | TenGigE | Bundle-Ether] instance.subinterface l2transport Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 30

The Carrier Ethernet Model

Removing an 802.1Q VLAN Subinterface

Step 3 Step 4

RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet 0/2/0/4.2 l2transport

Enters subinterface configuration mode and specifies the interface type, location, and subinterface number. · Replace the instance argument with one of these instances: · Physical Ethernet interface instance, or with an Ethernet bundle instance. Naming notation is rack/slot/module/port, and a slash between values is required as part of the notation.
· Ethernet bundle instance. Range is from 1 through 65535.

· Replace the subinterface argument with the subinterface value. Range is from 0 through 4095. · Naming notation is instance.subinterface, and a period between arguments is required as part of the notation.

Note

You must include the l2transport keyword in the command string; otherwise, the configuration creates a

Layer 3 subinterface rather than an Attachment Circuit.

encapsulation [dot1q vlan-id, untagged] Example:

RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 400

Defines the Native VLAN, associated with an 802.1Q trunk interface. · The vlan-id argument is the ID of the subinterface. · Range is from 1 through 4094 inclusive (0 and 4095 are reserved).
It is possible to receive both dot1q 400 and untagged frames by issuing the encapsulation command with the untagged keyword.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Removing an 802.1Q VLAN Subinterface
This task explains how to remove 802.1Q VLAN subinterfaces that have been previously configured using the "Configuring 802.1Q VLAN Subinterfaces" task in this chapter.

SUMMARY STEPS

1. configure 2. no interface {GigabitEthernet | TenGigE | Bundle-Ether} instance.subinterface 3. Repeat Step 2 to remove other VLAN subinterfaces.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 31

Removing an 802.1Q VLAN Subinterface

The Carrier Ethernet Model

DETAILED STEPS

4. Use the commit or end command. 5. show ethernet trunk bundle-ether instance

Step 1 Step 2
Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. no interface {GigabitEthernet | TenGigE | Bundle-Ether} instance.subinterface Example:
RP/0/RSP0/CPU0:router(config)# no interface TenGigE 0/2/0/4.10
Removes the subinterface, which also automatically deletes all the configuration applied to the subinterface. · Replace the instance argument with one of these instances: · Physical Ethernet interface instance, or with an Ethernet bundle instance. Naming notation is rack/slot/module/port, and a slash between values is required as part of the notation. · Ethernet bundle instance. Range is from 1 through 65535.
· Replace the subinterface argument with the subinterface value. Range is from 0 through 4095.
Naming notation is instance.subinterface, and a period between arguments is required as part of the notation.
Repeat Step 2 to remove other VLAN subinterfaces. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show ethernet trunk bundle-ether instance Example:
RP/0/RSP0/CPU0:router# show ethernet trunk bundle-ether 5
(Optional) Displays the interface configuration. The Ethernet bundle instance range is from 1 through 65535.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 32

The Carrier Ethernet Model

Configuration Examples

Configuration Examples
Configuring an Ethernet Interface: Example
This example shows how to configure an interface for a 10-Gigabit Ethernet modular services card:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/0/0/1 RP/0/RSP0/CPU0:router(config-if)# l2transport RP/0/RSP0/CPU0:router(config-if)# mtu 1448 RP/0/RSP0/CPU0:router(config-if)# no shutdown RP/0/RSP0/CPU0:router(config-if)# end Uncommitted changes found, commit them? [yes]: yes
RP/0/RSP0/CPU0:router# show interfaces TenGigE 0/0/0/1
TenGigE0/0/0/1 is down, line protocol is down Hardware is TenGigE, address is 0001.2468.abcd (bia 0001.81a1.6b23) Internet address is 172.18.189.38/27 MTU 1448 bytes, BW 10000000 Kbit reliability 0/255, txload Unknown, rxload Unknown Encapsulation ARPA, Full-duplex, 10000Mb/s, LR output flow control is on, input flow control is on loopback not set ARP type ARPA, ARP timeout 01:00:00 Last clearing of "show interface" counters never 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 total input drops 0 drops for unrecognized upper-level protocol Received 0 broadcast packets, 0 multicast packets 0 runts, 0 giants, 0 throttles, 0 parity 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 0 packets output, 0 bytes, 0 total output drops Output 0 broadcast packets, 0 multicast packets 0 output errors, 0 underruns, 0 applique, 0 resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions
Configuring a L2VPN AC: Example
This example indicates how to configure a L2VPN AC on an Ethernet interface:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface gigabitethernet 0/5/0/0.2 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 100 RP/0/RSP0/CPU0:router(config-subif)# ethernet egress-filter strict RP/0/RSP0/CPU0:router(config-subif)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# clear
RP/0/RSP0/CPU0:router#configure RP/0/RSP0/CPU0:router(config)# interface gigabitethernet 0/5/0/0.2 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 100 RP/0/RSP0/CPU0:router(config-subif)# ethernet egress-filter strict RP/0/RSP0/CPU0:router(config-subif)# interface gigabitethernet 0/5/0/1.100 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 100 RP/0/RSP0/CPU0:router(config-subif)# ethernet egress-filter strict RP/0/RSP0/CPU0:router(config-subif)# l2vpn
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 33

Configuring VPWS with Link Bundles: Example

The Carrier Ethernet Model

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group example RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain mybridge RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface gigabitethernet 0/5/0/0.2 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# interface gigabitethernet 0/5/0/1.100 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# exit RP/0/RSP0/CPU0:router(config-l2vpn-bg)# exit RP/0/RSP0/CPU0:router(config-l2vpn)# exit RP/0/RSP0/CPU0:router(config)# show
Building configuration... !! IOS XR Configuration 0.0.0 interface GigabitEthernet0/5/0/0.2 l2transport
encapsulation dot1q 100 ethernet egress-filter strict ! interface GigabitEthernet0/5/0/1.100 l2transport encapsulation dot1q 100 ethernet egress-filter strict ! l2vpn bridge group example
bridge-domain mybridge interface GigabitEthernet0/5/0/0.2 ! interface GigabitEthernet0/5/0/1.100 !
! ! end
Configuring VPWS with Link Bundles: Example
Physical Interfaces (Port mode)
interface Bundle-Ether12 l2transport
! interface GigabitEthernet0/1/0/10
negotiation auto l2transport ! interface GigabitEthernet0/1/0/20 bundle id 12 mode on negotiation auto ! interface GigabitEthernet0/1/0/21 bundle id 12 mode on negotiation auto ! ! l2vpn xconnect group test
p2p test interface Bundle-Ether12 ! interface GigabitEthernet0/1/0/10 !
! ! !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 34

The Carrier Ethernet Model

Sub Interfaces (EFP mode)

Sub Interfaces (EFP mode)
interface Bundle-Ether12 ! interface Bundle-Ether12.1 l2transport
encapsulation dot1q 12 ! ! interface GigabitEthernet0/1/0/10 negotiation auto ! interface GigabitEthernet0/1/0/10.1 l2transport
encapsulation dot1q 12 !
! interface GigabitEthernet0/1/0/20
bundle id 12 mode on negotiation auto ! interface GigabitEthernet0/1/0/21 bundle id 12 mode on negotiation auto ! ! l2vpn xconnect group test
p2p test interface Bundle-Ether12.1 ! interface GigabitEthernet0/1/0/10.1 !
! ! !
Configuring Ethernet Bundle with L2 and L3 Services: Example
This example shows how to configure an Ethernet bundle interface with L3 services:
configure interface Bundle-Ether 100
ipv4 address 12.12.12.2 255.255.255.0
!
This example shows how to configure an Ethernet bundle subinterface with L3 services:
configure interface Bundle-Ether 100.1
ipv4 address 13.13.13.2 255.255.255.0
!
This example shows how to configure an Ethernet bundle interface with L2 services:
configure interface Bundle-Ether 101 l2transport
!
This example shows how to configure an Ethernet bundle interface with L2 services:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 35

Configuring VLAN Subinterfaces: Example

The Carrier Ethernet Model

configure interface Bundle-Ether1.1 l2transport
!
Configuring VLAN Subinterfaces: Example
This example shows how to create VLAN subinterfaces:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/2/0/4.1 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 20 RP/0/RSP0/CPU0:router(config-subif)# interface TenGigE0/2/0/4.2 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 30 RP/0/RSP0/CPU0:router(config-subif)# interface TenGigE0/2/0/4.3 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 40 RP/0/RSP0/CPU0:router(config-subif)# commit RP/0/RSP0/CPU0:router(config-subif)# exit RP/0/RSP0/CPU0:router(config)# exit
This example shows how to create two VLAN subinterfaces on an Ethernet bundle at one time:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether 1 l2transport RP/0/RSP0/CPU0:router(config-if-l2)# exit RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether 1.1 l2transport RP/0/RSP0/CPU0:router(config-subif-l2)# encapsulation dot1q 10 RP/0/RSP0/CPU0:router(config-subif)# exit RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether 1.2 l2transport RP/0/RSP0/CPU0:router(config-subif-l2)# encapsulation dot1q 20 RP/0/RSP0/CPU0:router(config-subif)# exit
This example shows how to create a basic Dot1Q Attachment Circuit:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/2/0/4.1 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 20 RP/0/RSP0/CPU0:router(config-subif)# commit RP/0/RSP0/CPU0:router(config-subif)# exit RP/0/RSP0/CPU0:router(config)# exit
This example shows how to create a QinQ Attachment Circuit:
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/2/0/4.2 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 20 second-dot1q 10 RP/0/RSP0/CPU0:router(config-subif)# commit RP/0/RSP0/CPU0:router(config-subif)# exit RP/0/RSP0/CPU0:router(config)# exit
This example shows how to create a Q-in-Any Attachment Circuit:
RP/0/RSP/CPU0:router# configure RP/0/RSP/CPU0:router(config)# interface TenGigE 0/2/0/4.3 l2transport RP/0/RSP/CPU0:router(config-subif)# encapsulation dot1q 30 second-dot1q any RP/0/RSP/CPU0:router(config-subif)# commit RP/0/RSP/CPU0:router(config-subif)# exit RP/0/RSP/CPU0:router(config)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 36

The Carrier Ethernet Model

Where to Go Next

Where to Go Next
When you have configured an Ethernet interface, you can configure individual VLAN subinterfaces on that Ethernet interface. For information about configuring VLAN subinterfaces, see the The Carrier Ethernet Model chapter later in this document.
For information about IPv6, see the IP Addresses and Services Configuration Guide for Cisco ASR 9000 Series Routers.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 37

Where to Go Next

The Carrier Ethernet Model

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 38

3 C H A P T E R

Ethernet Features

This chapter describes how to configure Layer 2 (L2) Ethernet features on the Cisco ASR 9000 Series Aggregation Services Routers supporting Cisco IOS XR software.
For more information on configuring Ethernet interfaces, refer to The Carrier Ethernet Model module of this configuration guide.

Feature History for Configuring Ethernet Interfaces on the Cisco ASR 9000 Series Routers

Release Release 3.9.1

Modification
Support for Policy Based Forwarding and Layer 2 Protocol Tunneling features was added..

· Prerequisites for Implementing Ethernet Features, on page 39 · Information About Implementing Ethernet Features, on page 39 · How to Implement Ethernet Features, on page 46 · Configuration Examples, on page 50

Prerequisites for Implementing Ethernet Features
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

Information About Implementing Ethernet Features
To configure 10-Gigabit Ethernet interfaces, you must understand these concepts:
Policy Based Forwarding
The Cisco ASR 9000 Series Routers allow a single MAC address to be mapped to a VLAN that is different from the port's configured VLAN. To separate the traffic entering two different EFPs, you must define an EFP using the source VLAN tag and the source MAC address.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 39

Layer 2 Protocol Tunneling

Ethernet Features

Note This feature is supported only in the ASR 9000 Ethernet Line Card.

Layer 2 Protocol Tunneling
Layer 2 Protocol Tunneling (L2PT) is a Cisco proprietary protocol for tunneling Ethernet protocol frames across Layer 2 (L2) switching domains.
When an L2 protocol frame enters the interface of an L2 switching device, the switch or router performs one of these actions on the frame:
· forward--the frame is switched or routed with no exceptional handling.
· drop--the frame is discarded on the router.
· terminate--the router recognizes that the frame is an L2 protocol frame, and therefore sends it to the router's control plane for protocol processing.
· tunnel--the router encapsulates the frame to hide its identity as a protocol frame. This prevents the frame from being terminated on other routers. The opposite end of the tunnel performs a decapsulation, returning the frame to its original state.

L2PT Features

The Cisco ASR 9000 Series Routers offer these functions: · Tunnels these protocols: · Cisco Discovery Protocol (CDP) · Spanning Tree Protocol (STP and its derivatives) · Virtual Trunking Protocol (VTP)

· Supports these modes of tunneling · Forward · Reverse

· L2PT encapsulates and decapsulates protocol frames that have VLAN headers.
· Supports capability of handling enormous frame rates. The Cisco ASR 9000 Series Routers perform L2PT encapsulation and decapsulation at the interface line rates.

Note There are no dedicated L2PT counters. There are no L2PT-specific adjustments for QoS or other miscellaneous parameters.
L2PT in the Forward Mode
Figure below shows L2PT configured in the forward mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 40

Ethernet Features Figure 4: L2PT in forward mode

L2PT in the Forward Mode

A Service Provider network (S-network) is depicted in Figure 1. The customer network (C-network) connects to router R1 at the GigabitEthernet subinterface 0/1/0/1.1, and to router R2 at the GigabitEthernet subinterface 0/5/0/2.1. The C-network is not shown in the diagram; however, the C-network sends L2 traffic through the S-network, and the S-network switches the traffic from end to end. The customer traffic also carries L2 protocol frames. The purpose of L2PT is to allow these protocol frames to pass through the S-network. In forward mode, L2PT is applied to the customer facing interfaces of the S-network, R1 GigabitEthernet 0/1/0/1.1 and R2 GigabitEthernet 0/5/0/2.1.
Figure above depicts the configuration for L2PT in forward mode:
In the following examples, the l2protocol cpsv tunnel command is used for backward compatibility with legacy devices.
Note The l2protocol cpsv drop command is not supported on Cisco ASR 9000 series routers.
R1:
! interface GigabitEthernet0/1/0/1
negotiation auto ! interface GigabitEthernet0/1/0/1.1 l2transport
encapsulation default l2protocol cpsv tunnel ! interface GigabitEthernet0/1/0/2 negotiation auto ! interface GigabitEthernet0/1/0/2.1 l2transport encapsulation default ! l2vpn xconnect group examples
p2p r1-connect interface GigabitEthernet0/1/0/1.1 interface GigabitEthernet0/1/0/2.1
! ! !
R2:
! interface GigabitEthernet0/5/0/1
negotiation auto ! interface GigabitEthernet0/5/0/1.1 l2transport
encapsulation default
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 41

L2PT in the Reverse Mode with Protocol Frame Tagging

Ethernet Features

! interface GigabitEthernet0/5/0/2
negotiation auto ! interface GigabitEthernet0/5/0/2.1 l2transport
encapsulation default l2protocol cpsv tunnel ! l2vpn xconnect group examples
p2p r2-connect interface GigabitEthernet0/5/0/1.1 interface GigabitEthernet0/5/0/2.1
! ! !
Protocol traffic enters router R1 at the GigabitEthernet subinterface 0/1/0/1.1. Router R1 detects the frames as protocol frames, and performs L2PT encapsulation at the customer facing interface. Inside R1, the local connection r1-connect connects R1's customer-facing and service provider-facing interfaces. The traffic then flows out of router R1 on GigabitEthernet subinterface 0/1/0/2.1 through several other service provider network routers or switches (switch cloud) into router R2 at GigabitEthernet subinterface 0/5/0/1.1. Router R2 connects the customer-facing and service provider-facing interfaces through a local connection r2-connect. Therefore, traffic is sent to the customer-facing interface GigabitEthernet 0/5/0/2.1. At this interface, an L2PT decapsulation occurs and the protocol traffic flows out of router R2 into the customer network.
Without L2PT being configured the customer protocol frames that are sent into R1 are terminated. The customer traffic can consist of a variety of traffic; the protocol frames comprise a small percentage of the overall traffic stream.
L2PT in the Reverse Mode with Protocol Frame Tagging
The Cisco ASR 9000 Series Routers can perform L2PT encapsulation and decapsulation on supported L2 protocol frames that have VLAN headers. The L2 protocol frames do not have VLAN headers. However, in a service provider (SP) network that transports customer protocol traffic from one customer campus to another, this capability can be put to use within the SP network.
Figure below shows L2PT configured in the reverse mode. Assume that the customer traffic that enters R1 is trunked, that is all traffic is tagged. The only untagged traffic is the protocol traffic, that comes from the customer network.
Figure 5: L2PT in reverse mode

When L2PT is configured in the reverse mode, the L2PT encapsulation occurs when the frame exits the interface. Likewise, in reverse mode decapsulation is performed when the frame enters the interface. Therefore, the L2PT tunnel is formed between the service provider-facing interfaces, instead of the customer-facing interfaces.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 42

Ethernet Features

L2PT in the Reverse Mode with Protocol Frame Tagging

In this example, once the protocol traffic enters router R1, a VLAN tag is added to it. Before the traffic is sent through the service provider network, a second VLAN tag is added (100). The Cisco ASR 9000 Series Routers perform the L2PT encapsulation on a double-tagged protocol frame.
The above figure above shows four customer-facing interfaces (R1: GigabitEthernet subinterface 0/1/0.1.1, GigabitEthernet subinterface 0/1/0/2.1 and R2: GigabitEthernet subinterface 0/5/0/5.1, GigabitEthernet subinterface 0/5/0/6.1) and two service provider-facing interfaces (R1: GigabitEthernet subinterface 0/1/0/3.1 and R2: GigabitEthernet subinterface 0/5/0/4.1).
Figure above depicts the configuration for L2PT in reverse mode:
At R1:
! interface GigabitEthernet0/1/0/1
negotiation auto ! interface GigabitEthernet0/1/0/1.1 l2transport
encapsulation untagged rewrite ingress tag push dot1q 100 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/1/0/2 negotiation auto ! interface GigabitEthernet0/1/0/2.1 l2transport encapsulation untagged rewrite ingress tag push dot1q 200 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/1/0/3 negotiation auto ! interface GigabitEthernet0/1/0/3.1 l2transport encapsulation dot1q 500 rewrite ingress tag pop 1 symmetric l2protocol cpsv reverse-tunnel ethernet egress-filter strict ! l2vpn bridge group examples
bridge-domain r1-bridge interface GigabitEthernet0/1/0/1.1 ! interface GigabitEthernet0/1/0/2.1
! interface GigabitEthernet0/1/0/3.1 !
! ! !
At R2:
! interface GigabitEthernet0/5/0/4
negotiation auto ! interface GigabitEthernet0/5/0/4.1 l2transport
encapsulation dot1q 500 rewrite ingress tag pop 1 symmetric l2protocol cpsv reverse-tunnel ethernet egress-filter strict

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 43

L2PT in the Reverse Mode with Protocol Frame Tagging

Ethernet Features

! interface GigabitEthernet0/5/0/5
negotiation auto ! interface GigabitEthernet0/5/0/5.1 l2transport
encapsulation untagged rewrite ingress tag push dot1q 100 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/5/0/6 negotiation auto ! interface GigabitEthernet0/5/0/6.1 l2transport encapsulation untagged rewrite ingress tag push dot1q 200 symmetric ethernet egress-filter strict ! l2vpn bridge group examples
bridge-domain r2-bridge interface GigabitEthernet0/5/0/4.1 ! interface GigabitEthernet0/5/0/5.1 ! interface GigabitEthernet0/5/0/6.1 !
! ! !
These assumptions are made:
· Customer traffic entering router R1 is trunked, that is all traffic is tagged. The only untagged traffic is the protocol traffic, which arrives from the customer network.
· The Customer-facing interfaces GigabitEthernet 0/1/0/1 at router R1 and Gigabit Ethernet 0/5/0/5 at router R2 belong to the same customer. Customer-facing interfaces GigabitEthernet 0/1/0/2 at router R1 and GigabitEthernet 0/5/0/6 at router R2 belong to a different customer.
· Traffic from different customers remain segregated.
· Only L2 protocol traffic is sent through the customer-facing interfaces.
· L2 protocol traffic entering the customer-facing interfaces is untagged.
· Traffic must be L2PT encapsulated to successfully pass through the switch cloud.
The purpose of this topology is that router R1 and R2 must receive customer protocol traffic from multiple customer interfaces, and multiplex the traffic across a single service provider interface and link. At the decapsulation end, the reverse is performed. Traffic entering router R1 on the GigabitEthernet subinterface 0/1/0/1.1 exits router R2 from the GigabitEthernet subinterface 0/5/0/5.1 only while traffic entering router R1 at GigabitEthernet subinterface 0/1/0/2.1 exits router R2 from GigabitEthernet subinterface 0/5/0/6.1 only.
A protocol frame entering router R1 on GigabitEthernet interface 0/1/0/1 travels through the network in this manner:
· The protocol frame is directed to GigabitEthernet subinterface 0/1/0/1.1, as the frame is untagged.
· The rewrite statement with GigabitEthernet subinterface 0/1/0/1.1 causes a tag of ID 100 to be added to the frame.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 44

Ethernet Features

L2PT Configuration Notes

· The frame enters router R1's bridge domain r1-bridge. · The bridge (r1-bridge) floods the frame to all attachment circuits (AC) on the bridge domain, except the
originating AC (split horizon AC). · Ethernet egress filtering on GigabitEthernet subinterface 0/1/0/2.1 detects a tag ID mismatch, and drops
the frame. In this way, the bridge domain's flooded traffic is prevented from exiting other customer interfaces. · A flooded copy of the frame is sent to GigabitEthernet subinterface 0/1/0/3.1. · GigabitEthernet subinterface 0/1/0/3.1 adds a second tag. · The frame receives an L2PT encapsulation by GigabitEthernet subinterface 0/1/0/3.1 before it leaves router R1 through the GigabitEthernet interface 0/1/0/3.
Note The frame is now double-tagged (100 inner, 500 outer) and has the L2PT MAC DA.
· The frame passes to router R2 GigabitEthernet interface 0/5/0/4 because of the L2PT encapsulation. · The frame after having entered router R2 on GigabitEthernet interface 0/5/0/4 is directed to GigabitEthernet
subinterface 0/5/0/4.1. · On entering GigabitEthernet subinterface 0/5/0/4.1, an L2PT decapsulation operation is performed on
the frame. · The outer tag ID 500 is removed by GigabitEthernet subinterface 0/5/0/4.1 · Router R2's bridge (r2-bridge) floods the frames to all ACs. · Ethernet egress filtering drops the frames on all ACs except the AC through which the frame exits. · As the frame exits router R2 from GigabitEthernet subinterface 0/5/0/5.1, the tag of ID 100 is removed. · The frame that exits router R2 from GigabitEthernet interface 0/5/0/5 is identical to the original frame
that entered router R1 through GigabitEthernet interface 0/1/0/1.
L2PT Configuration Notes
Keep these points in mind while configuring L2PT: · The l2protocol command can be configured on either a main or L2 subinterface. · The l2protocol command can be configured on physical or bundle interfaces. · When the l2protocol and ethernet filtering commands are configured on the same interface, L2PT encapsulation occurs before ethernet filtering. This means that L2PT prevents the CDP, STP, and VTP protocol frames from being dropped by ethernet filtering. · When L2PT is configured with other interface features, L2PT encapsulation occurs before the processing for other interface features.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 45

How to Implement Ethernet Features

Ethernet Features

· L2PT encapsulation and decapsulation is supported for untagged protocol frames, single-tagged, and double-tagged frames. Tag Ethertypes of 0x8100, 0x88A8, and 0x9100 are supported, however, 0x9200 is not.
How to Implement Ethernet Features

Note For information on configuring Ethernet interfaces, refer to the Cisco ASR 9000 Series Aggregation Services Router Interface and Hardware Component Configuration Guide.

Restrictions for Implementing Ethernet Features
To use the sub-interface configurations encapsulation dot1ad (or encapsulation dot1q) and encapsulation dot1ad second-dot1q any (or encapsulation dot1q second-dot1q any) together on the same physical interface, use the exact keyword as shown below. Else, it results in traffic loss.
Router(config)# interface hundredGigE 0/0/0/0.0 Router(config-subif)# encapsulation dot1ad 200 exact
Router(config)# interface hundredGigE 0/0/0/0.1 Router(config-subif)# encapsulation dot1ad 200 dot1q any Router(config-subif)# commit

Configuring Policy Based Forwarding

Enabling Policy Based Forwarding
Perform this task to enable policy based forwarding.

SUMMARY STEPS

1. configure 2. interface type interface-path-id.subinterface l2transport 3. Do one of the following:
· encapsulation dot1q vlan-id ingress source-mac mac-address or · encapsulation dot1ad vlan-id ingress source-mac mac-address or · encapsulation untagged ingress source-mac mac-address or · encapsulation dot1q vlan-id second-dot1q vlan-id ingress source-mac mac-address
4. Do one of the following:
· rewrite ingress tag translate 1-to-1 dot1q vlan-id symmetric or · rewrite tag push dot1q vlan-id symmetric
5. ethernet egress-filter strict 6. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 46

Ethernet Features

Enabling Policy Based Forwarding

DETAILED STEPS

Step 1 Step 2 Step 3
Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters Global Configuration mode.
interface type interface-path-id.subinterface l2transport Example:
RP/0/RSP0/CPU0:router# interface Bundle-Ether1.1 l2transport

Enters subinterface configuration mode and enables Layer 2 transport mode on a port and enters Layer 2 transport configuration mode.
Do one of the following:
· encapsulation dot1q vlan-id ingress source-mac mac-address or · encapsulation dot1ad vlan-id ingress source-mac mac-address or · encapsulation untagged ingress source-mac mac-address or · encapsulation dot1q vlan-id second-dot1q vlan-id ingress source-mac mac-address
Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 10 ingress source-mac 0.1.2 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1ad 10 ingress source-mac 0.1.4 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation untagged ingress source-mac 0.1.3 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1ad 10 dot1q 10 ingress source-mac 0.1.2 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 10 second-dot1q 20 ingress source-mac 0.1.2

Assigns the matching VLAN ID and Ethertype to the interface.

Note

The encapsulation dot1q vlan-id ingress source-mac mac-address command is supported only on bundle

sub-interfaces.

Do one of the following:
· rewrite ingress tag translate 1-to-1 dot1q vlan-id symmetric or · rewrite tag push dot1q vlan-id symmetric
Example:
RP/0/RSP0/CPU0:router(config-subif)# rewrite ingress tag translate 1-to-1 dot1q 100 symmetric or rewrite ingress tag push dot1q 101 symmetric

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 47

Configuring Source Bypass Filter

Ethernet Features

Step 5 Step 6

Specifies the encapsulation adjustment that is to be performed on the frame ingress to the service instance. ethernet egress-filter strict Example:
RP/0/RSP0/CPU0:router(config-subif)# ethernet egress-filter strict
Enables strict egress filtering on all subinterfaces. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Source Bypass Filter
Perform this task to add a source bypass filter.

SUMMARY STEPS

1. configure 2. interface type interface-path-id.subinterface l2transport 3. Do one of the following:
· encapsulation dot1q vlan-id or · encapsulation dot1ad vlan-id or · encapsulation untagged or · encapsulation dot1ad vlan-id dot1q vlan-id or · encapsulation dot1q vlan-id second-dot1q vlan-id or
4. rewrite ingress tag translate translate 1-to-1 dot1q vlan-id symmetric 5. ethernet egress-filter disable 6. ethernet source bypass egress-filter 7. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 48

Ethernet Features

Configuring Source Bypass Filter

Step 2 Step 3
Step 4 Step 5 Step 6

interface type interface-path-id.subinterface l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet 0/2/0/4.1 l2transport
Enters subinterface configuration mode and enables Layer 2 transport mode on a port and enters Layer 2 transport configuration mode.
Do one of the following: · encapsulation dot1q vlan-id or · encapsulation dot1ad vlan-id or · encapsulation untagged or · encapsulation dot1ad vlan-id dot1q vlan-id or · encapsulation dot1q vlan-id second-dot1q vlan-id or
Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 10 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1ad 10 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation untagged or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1ad 10 dot1q 10 or RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 10 second-dot1q 20
Assigns the matching VLAN ID and Ethertype to the interface.
rewrite ingress tag translate translate 1-to-1 dot1q vlan-id symmetric Example:
RP/0/RSP0/CPU0:router (config-subif)# rewrite ingress tag translate 1-to-1 dot1q 100 symmetric
Specifies the encapsulation adjustment that is to be performed on the frame ingress to the service instance.
ethernet egress-filter disable Example:
RP/0/RSP0/CPU0:router(config-subif)# ethernet egress-filter strict
Disables egress filtering on all subinterfaces.
ethernet source bypass egress-filter Example:
RP/0/RSP0/CPU0:router(config-subif)# ethernet source bypass egress-filter
Enables source bypass egress filtering on the subinterfaces.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 49

Configuration Examples

Ethernet Features

Step 7

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuration Examples
Configuring Policy Based Forwarding: Example
This example shows how to configure policy based forwarding:
config interface Bundle-Ether1.1 l2transport encapsulation dot1q 10 ingress source-mac 0000.1111.2222 rewrite ingress tag translate 1-to-1 dot1q 100 symmetric ethernet egress-filter strict
! interface Bundle-Ether1.2 l2transport
encapsulation untagged ingress source-mac 0000.1111.3333 rewrite ingress tag push dot1q 101 symmetric ethernet egress-filter strict !
interface Bundle-Ether3.1 l2transport encapsulation dot1q 1 rewrite ingress tag translate 1-to-1 dot1q 4094 symmetric ethernet egress-filter disabled ethernet source-bypass-egress-filter
!
Configuring Layer 2 Protocol Tunneling: Example
This section includes configuration examples for L2PT in the forward and reverse modes.
Configuring L2PT in forward mode
This example shows how to configure L2PT in the forward mode. In the following examples, the l2protocol cpsv tunnel command is used for backward compatibility with legacy devices.
Note The l2protocol cpsv drop command is not supported on Cisco ASR 9000 series routers.
At the customer facing router (encapsulation end):
! interface GigabitEthernet0/1/0/1
negotiation auto

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 50

Ethernet Features

Configuring L2PT in reverse mode

! interface GigabitEthernet0/1/0/1.1 l2transport
encapsulation default l2protocol cpsv tunnel ! interface GigabitEthernet0/1/0/2 negotiation auto ! interface GigabitEthernet0/1/0/2.1 l2transport encapsulation default ! l2vpn xconnect group examples
p2p r1-connect interface GigabitEthernet0/1/0/1.1 interface GigabitEthernet0/1/0/2.1
! ! !
At the customer facing router (decapsulation end):
! interface GigabitEthernet0/5/0/1
negotiation auto ! interface GigabitEthernet0/5/0/1.1 l2transport
encapsulation default ! interface GigabitEthernet0/5/0/2
negotiation auto ! interface GigabitEthernet0/5/0/2.1 l2transport
encapsulation default l2protocol cpsv tunnel ! l2vpn xconnect group examples
p2p r2-connect interface GigabitEthernet0/5/0/1.1 interface GigabitEthernet0/5/0/2.1
! ! !
Configuring L2PT in reverse mode
This example shows how to configure L2PT in the reverse mode:
At the customer facing router (encapsulation end):
! interface GigabitEthernet0/1/0/1
negotiation auto ! interface GigabitEthernet0/1/0/1.1 l2transport
encapsulation untagged rewrite ingress tag push dot1q 100 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/1/0/2 negotiation auto ! interface GigabitEthernet0/1/0/2.1 l2transport

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 51

Configuring L2PT in reverse mode
encapsulation untagged rewrite ingress tag push dot1q 200 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/1/0/3 negotiation auto ! interface GigabitEthernet0/1/0/3.1 l2transport encapsulation dot1q 500 rewrite ingress tag pop 1 symmetric l2protocol cpsv reverse-tunnel ethernet egress-filter strict ! l2vpn bridge group examples
bridge-domain r1-bridge interface GigabitEthernet0/1/0/1.1 ! interface GigabitEthernet0/1/0/2.1 ! interface GigabitEthernet0/1/0/3.1 !
! ! !
At the customer facing router (decapsulation end):
! interface GigabitEthernet0/5/0/4
negotiation auto ! interface GigabitEthernet0/5/0/4.1 l2transport
encapsulation dot1q 500 rewrite ingress tag pop 1 symmetric l2protocol cpsv reverse-tunnel ethernet egress-filter strict ! interface GigabitEthernet0/5/0/5 negotiation auto ! interface GigabitEthernet0/5/0/5.1 l2transport encapsulation untagged rewrite ingress tag push dot1q 100 symmetric ethernet egress-filter strict ! interface GigabitEthernet0/5/0/6 negotiation auto ! interface GigabitEthernet0/5/0/6.1 l2transport encapsulation untagged rewrite ingress tag push dot1q 200 symmetric ethernet egress-filter strict ! l2vpn bridge group examples
bridge-domain r2-bridge interface GigabitEthernet0/5/0/4.1 ! interface GigabitEthernet0/5/0/5.1 ! interface GigabitEthernet0/5/0/6.1 !
!

Ethernet Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 52

Ethernet Features
! !

Configuring L2PT in reverse mode

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 53

Configuring L2PT in reverse mode

Ethernet Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 54

4 C H A P T E R
Configuring Link Bundles
A bundle is a group of one or more ports that are aggregated together and treated as a single link. The different links within a single bundle can have varying speeds, where the fastest link can be a maximum of four times greater than the slowest link. Each bundle has a single MAC, a single IP address, and a single configuration set (such as ACLs or QoS). The router supports bundling for these types of interfaces:
· Ethernet interfaces · VLAN subinterfaces

Note Bundles do not have a one-to-one modular services card association.
· Feature History for Configuring Link Bundles, on page 55 · Prerequisites for Configuring Link Bundles, on page 55 · Information About Configuring Link Bundles, on page 56 · How to Configure Link Bundling, on page 60 · Configuration Examples for Link Bundles, on page 69

Feature History for Configuring Link Bundles

Release Release 3.7.2

Modification
This feature was introduced on the Cisco ASR 9000 Series Routers.

Prerequisites for Configuring Link Bundles
Before configuring Link Bundling, be sure that these tasks and conditions are met: · You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 55

Information About Configuring Link Bundles

Configuring Link Bundles

If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance. · You know the interface IP address. · You know which links should be included in the bundle you are configuring. · If you are configuring an Ethernet link bundle, you have at least one of these Ethernet line cards installed in the router:
· 2-port 10-Gigabit Ethernet line card · 4-port 10-Gigabit Ethernet line card · 8-port 10-Gigabit Ethernet line card · 16-port 10-Gigabit Ethernet line card · 20-port Gigabit Ethernet line card · 40-port Gigabit Ethernet line card

Note For more information about physical interfaces, PLIMs, and modular services cards, refer to the Cisco ASR 9000 Series Aggregation Services Router Hardware Installation Guide .
Information About Configuring Link Bundles
To implement the Link Bundling feature, you must understand these concepts:
Link Bundling Overview
A link bundle is simply a group of ports that are bundled together and act as a single link. The advantages of link bundles are these:
· Multiple links can span several line cards to form a single interface. Thus, the failure of a single link does not cause a loss of connectivity.
· Bundled interfaces increase bandwidth availability, because traffic is forwarded over all available members of the bundle. Therefore, traffic can flow on the available links if one of the links within a bundle fails. Bandwidth can be added without interrupting packet flow.
Although the individual links within a single bundle can have varying speeds, all links within a bundle must be of the same type. Cisco IOS XR software supports these methods of forming bundles of Ethernet interfaces:
· IEEE 802.3ad--Standard technology that employs a Link Aggregation Control Protocol (LACP) to ensure that all the member links in a bundle are compatible. Links that are incompatible or have failed are automatically removed from a bundle.
· EtherChannel--Cisco proprietary technology that allows the user to configure links to join a bundle, but has no mechanisms to check whether the links in a bundle are compatible.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 56

Configuring Link Bundles

Characteristics of Link Bundles

Characteristics of Link Bundles
This list describes the properties and limitations of link bundles: · Any type of Ethernet interfaces can be bundled, with or without the use of LACP (Link Aggregation Control Protocol).
· Bundle membership can span across several line cards that are installed in a single router.
· A single bundle supports maximum of 64 physical links.
· Different link speeds are allowed within a single bundle, with a maximum of four times the speed difference between the members of the bundle.
· Physical layer and link layer configuration are performed on individual member links of a bundle.
· Configuration of network layer protocols and higher layer applications is performed on the bundle itself.
· A bundle can be administratively enabled or disabled.
· Each individual link within a bundle can be administratively enabled or disabled.
· Ethernet link bundles are created in the same way as Ethernet channels, where the user enters the same configuration on both end systems.
· The MAC address that is set on the bundle becomes the MAC address of the links within that bundle.
· When LACP configured, each link within a bundle can be configured to allow different keepalive periods on different members.
· Load balancing (the distribution of data between member links) is done by flow instead of by packet. Data is distributed to a link in proportion to the bandwidth of the link in relation to its bundle.
· QoS is supported and is applied proportionally on each bundle member.
· Link layer protocols, such as CDP and HDLC keepalives, work independently on each link within a bundle.
· Upper layer protocols, such as routing updates and hellos, are sent over any member link of an interface bundle.
· Bundled interfaces are point to point.
· A link must be in the up state before it can be in distributing state in a bundle.
· All links within a single bundle must be configured either to run 802.3ad (LACP) or Etherchannel (non-LACP). Mixed links within a single bundle are not supported.
· A bundle interface can contain physical links and VLAN subinterfaces only.
· Access Control List (ACL) configuration on link bundles is identical to ACL configuration on regular interfaces.
· Multicast traffic is load balanced over the members of a bundle. For a given flow, internal processes select the member link and all traffic for that flow is sent over that member.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 57

IEEE 802.3ad Standard

Configuring Link Bundles

IEEE 802.3ad Standard
The IEEE 802.3ad standard typically defines a method of forming Ethernet link bundles. For each link configured as bundle member, this information is exchanged between the systems that host each end of the link bundle:
· A globally unique local system identifier
· An identifier (operational key) for the bundle of which the link is a member
· An identifier (port ID) for the link
· The current aggregation status of the link
This information is used to form the link aggregation group identifier (LAG ID). Links that share a common LAG ID can be aggregated. Individual links have unique LAG IDs. The system identifier distinguishes one router from another, and its uniqueness is guaranteed through the use of a MAC address from the system. The bundle and link identifiers have significance only to the router assigning them, which must guarantee that no two links have the same identifier, and that no two bundles have the same identifier. The information from the peer system is combined with the information from the local system to determine the compatibility of the links configured to be members of a bundle. Bundle MAC addresses in the routers come from a set of reserved MAC addresses in the backplane. This MAC address stays with the bundle as long as the bundle interface exists. The bundle uses this MAC address until the user configures a different MAC address. The bundle MAC address is used by all member links when passing bundle traffic. Any unicast or multicast addresses set on the bundle are also set on all the member links.
Note We recommend that you avoid modifying the MAC address, because changes in the MAC address can affect packet forwarding.
Non Revertive Behavior for LACP Bundle Interface
In LACP, by default, a higher priority port would become the active port after it becomes operational again. To avoid this reversion, you can run the lacp non-revertive command. This configures the lower priority port to continue as the active port even after the higher priority port is capable of being operational. This avoids the traffic disruption that may happen in putting the currently active but lower priority port into standby and diverting traffic through the higher priority port that is now capable of being operational.
QoS and Link Bundling
On the ingress direction, QoS is applied to the local instance of a bundle. Each bundle is associated with a set of queues. QoS is applied to the various network layer protocols that are configured on the bundle. On the egress direction, QoS is applied on the bundle with a reference to the member links. QoS is applied based on the sum of the member bandwidths.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 58

Configuring Link Bundles

VLANs on an Ethernet Link Bundle

When QoS is applied on the bundle for either the ingress or egress direction, QoS is applied at each member interface. The Link Bundling feature supports all the QoS features described in the Cisco ASR 9000 Series Aggregation Services Router Modular Quality of Service Configuration Guide. The Link Bundling feature supports these QoS features:
· hi priority /lo priority--Maximum bandwidth is calculated as a percentage of the bundle interface bandwidth. This percentage is then applied to every member link on the egress, or to the local bundle instance on ingress.
· guaranteed bandwidth--Provided in percentage and applied to every member link. · traffic shaping--Provided in percentage and applied to every member link. · WRED--Minimum and maximum parameters are converted to the right proportion per member link or
bundle instance, and then are applied to the bundle. · marking--Process of changing the packet QoS level according to a policy. · tail drop-- Packets are dropped when the queue is full.
VLANs on an Ethernet Link Bundle
802.1Q VLAN subinterfaces can be configured on 802.3ad Ethernet link bundles. Keep this information in mind when adding VLANs on an Ethernet link bundle:
· The maximum number of VLANs allowed per bundle is 4000. · The maximum number of bundled VLANs allowed per router is 128000.
Note The memory requirement for bundle VLANs is slightly higher than standard physical interfaces.
To create a VLAN subinterface on a bundle, include the VLAN subinterface instance with the interface Bundle-Ether command: interface Bundle-Ether instance.subinterface After you create a VLAN on an Ethernet link bundle, all physical VLAN subinterface configuration is supported on that link bundle.
Link Bundle Configuration Overview
These steps provide a general overview of the link bundle configuration process. Keep in mind that a link must be cleared of all previous network layer configuration before it can be added to a bundle: 1. In global configuration mode, create a link bundle. To create an Ethernet link bundle, enter the interface
Bundle-Ether command. 2. Assign an IP address and subnet mask to the virtual interface using the ipv4 address command. 3. Add interfaces to the bundle you created in Step 1 with the bundle id command in the interface
configuration submode. You can add up to 32 links to a single bundle.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 59

Nonstop Forwarding During Card Failover

Configuring Link Bundles

Note A link is configured to be a member of a bundle from the interface configuration submode for that link.
Nonstop Forwarding During Card Failover
The Cisco IOS XR software supports nonstop forwarding during failover between active and standby paired RSP cards. Nonstop forwarding ensures that there is no change in the state of the link bundles when a failover occurs. For example, if an active RSP fails, the standby RSP becomes operational. The configuration, node state, and checkpoint data of the failed RSP are replicated to the standby RSP. The bundled interfaces will all be present when the standby RSP becomes the active RSP.
Note Failover is always onto the standby RSP.
Note You do not need to configure anything to guarantee that the standby interface configurations are maintained.
Link Failover
When one member link in a bundle fails, traffic is redirected to the remaining operational member links and traffic flow remains uninterrupted.
Bundle Interfaces: Redundancy, Load Sharing, Aggregation
A bundle is a group of one or more ports that are aggregated together and treated as a single link. The different links within a single bundle can have varying speeds, where the fastest link can be a maximum of four times greater than the slowest link. Each bundle has a single MAC, a single IP address, and a single configuration set (such as ACLs or QoS). The router supports bundling for these types of interfaces:
· Ethernet interfaces · VLAN subinterfaces
How to Configure Link Bundling
Configuring Ethernet Link Bundles
This section describes how to configure a Ethernet link bundle.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 60

Configuring Link Bundles

Configuring Ethernet Link Bundles

Note MAC accounting is not supported on Ethernet link bundles.

Note In order for an Ethernet bundle to be active, you must perform the same configuration on both connection endpoints of the bundle.
The creation of an Ethernet link bundle involves creating a bundle and adding member interfaces to that bundle, as shown in the steps that follow.

SUMMARY STEPS

1. configure 2. interface Bundle-Ether bundle-id 3. ipv4 address ipv4-address-address mask 4. bundle minimum-active bandwidth kbps (optional) 5. bundle minimum-active links links (optional) 6. bundle maximum-active links links (optional) 7. bundle maximum-active links links hot-standby 8. exit 9. interface {GigabitEthernet | TenGigE} instance 10. bundle id bundle-id [ mode { active | on | passive} ] 11. no shutdown(optional) 12. exit 13. Repeat Step 8 through Step 11 to add more links to the bundle you created in Step 2. 14. Use the commit or end command. 15. exit 16. exit 17. Perform Step 1 through Step 15 on the remote end of the connection. 18. show bundle Bundle-Ether bundle-id [ reasons ] (optional) 19. show lacp Bundle-Ether bundle-id (optional)

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface Bundle-Ether bundle-id Example:
RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether 3

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 61

Configuring Ethernet Link Bundles

Configuring Link Bundles

Step 3 Step 4 Step 5 Step 6
Step 7 Step 8

Creates and names a new Ethernet link bundle. This interface Bundle-Ether command enters you into the interface configuration submode, where you can enter interface specific configuration commands are entered. Use the exit command to exit from the interface configuration submode back to the normal Global Configuration mode.
ipv4 address ipv4-address-address mask Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 10.1.2.3 255.0.0.0

Assigns an IP address and subnet mask to the virtual interface using the ipv4 address configuration subcommand.
bundle minimum-active bandwidth kbps (optional) Example:
RP/0/RSP0/CPU0:router(config-if)# bundle minimum-active bandwidth 580000

Sets the minimum amount of bandwidth required before a user can bring up a bundle.
bundle minimum-active links links (optional) Example:
RP/0/RSP0/CPU0:router(config-if)# bundle minimum-active links 2

Sets the number of active links required before you can bring up a specific bundle.
bundle maximum-active links links (optional) Example:
RP/0/RSP0/CPU0:router(config-if)# bundle maximum-active links 1

Designates one active link and one link in standby mode that can take over immediately for a bundle if the active link fails (1:1 protection).

The default number of active links allowed in a single bundle is 8.

Note

If the bundle maximum-active command is issued, then only the highest-priority link within the bundle

is active. The priority is based on the value from the bundle port-priority command, where a lower value

is a higher priority. Therefore, we recommend that you configure a higher priority on the link that you

want to be the active link.

bundle maximum-active links links hot-standby Example:
RP/0/RSP0/CPU0:router(config-if)# bundle maximum-active links 1 hot-standby

The hot-standby keyword helps to avoid bundle flaps on a switchover or switchback event during which the bundle temporarily falls below the minimum links or bandwidth threshold. It sets default values for the wait-while timer and suppress-flaps timer to achieve this.
exit Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 62

Configuring Link Bundles

Configuring Ethernet Link Bundles

Step 9
Step 10
Step 11 Step 12 Step 13 Step 14

RP/0/RSP0/CPU0:router(config-#if)exit

Exits interface configuration submode for the Ethernet link bundle.
interface {GigabitEthernet | TenGigE} instance Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE 1/0/0/0

Enters the interface configuration mode for the specified interface.

Enter the GigabitEthernet or TenGigE keyword to specify the interface type. Replace the instance argument with the node-id in the rack/slot/module format.

Mixed bandwidth bundle member configuration is only supported when 1:1 redundancy is configured (this means that a 1 GigabitEthernet member can only be configured as the backup of the 10 GigabitEthernet interface.)

Note

Mixed link bundle mode is supported only when active-standby operation is configured (usually with the

lower speed link in standby mode).

bundle id bundle-id [ mode { active | on | passive} ] Example:
RP/0/RSP0/CPU0:router(config-if)# bundle-id 3

Adds the link to the specified bundle.

To enable active or passive LACP on the bundle, include the optional mode active or mode passive keywords in the command string.

To add the link to the bundle without LACP support, include the optional mode on keywords with the command string.

Note

If you do not specify the mode keyword, the default mode is on (LACP is not run over the port).

no shutdown(optional) Example:
RP/0/RSP0/CPU0:router(config-if)# no shutdown

If a link is in the down state, bring it up. The no shutdown command returns the link to an up or down state depending on the configuration and state of the link.
exit Example:
RP/0/RSP0/CPU0:router(config-if)# exit

Exits interface configuration submode for the Ethernet link bundle.
Repeat Step 8 through Step 11 to add more links to the bundle you created in Step 2. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 63

Configuring VLAN Bundles

Configuring Link Bundles

Step 15 Step 16 Step 17 Step 18 Step 19

· No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. exit Example:
RP/0/RSP0/CPU0:router(config-if)# exit
Exits interface configuration mode. exit Example:
RP/0/RSP0/CPU0:router(config)# exit
Exits the Global Configuration mode. Perform Step 1 through Step 15 on the remote end of the connection. Brings up the other end of the link bundle. show bundle Bundle-Ether bundle-id [ reasons ] (optional) Example:
RP/0/RSP0/CPU0:router# show bundle Bundle-Ether 3 reasons
Shows information about the specified Ethernet link bundle show lacp Bundle-Ether bundle-id (optional) Example:
RP/0/RSP0/CPU0:router # show lacp Bundle-Ether 3
Shows detailed information about LACP ports and their peers.

Configuring VLAN Bundles
This section describes how to configure a VLAN bundle. The creation of a VLAN bundle involves three main tasks: 1. Create an Ethernet bundle. 2. Create VLAN subinterfaces and assign them to the Ethernet bundle. 3. Assign Ethernet links to the Ethernet bundle. These tasks are describe in detail in the procedure that follows.
Note In order for a VLAN bundle to be active, you must perform the same configuration on both ends of the bundle connection.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 64

Configuring Link Bundles

Configuring VLAN Bundles

The creation of a VLAN link bundle is described in the steps that follow.

SUMMARY STEPS

1. configure 2. interface Bundle-Ether bundle-id 3. ipv4 address ipv4-address mask 4. bundle minimum-active bandwidth kbps (optional) 5. bundle minimum-active links links (optional) 6. bundle maximum-active links links (optional) 7. exit 8. interface Bundle-Ether bundle-id.vlan-id 9. encapsulation dot1q vlan-id 10. ipv4 address ip-address mask 11. no shutdown 12. exit 13. Repeat Step 7 through Step 12 to add more VLANs to the bundle you created in Step 2. 14. Use the commit or end command. 15. exit 16. exit 17. show ethernet trunk bundle-Ether instance 18. configure 19. interface {GigabitEthernet | TenGigE} instance 20. bundle id bundle-id [mode {active | on | passive}] 21. no shutdown 22. Repeat Step 19 through Step 21 to add more Ethernet interfaces to the bundle you created in Step 2 . 23. Use the commit or end command. 24. Perform Step 1 through Step 23 on the remote end of the connection. 25. show bundle Bundle-Ether bundle-id [ reasons ] 26. show ethernet trunk bundle-Ether instance

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. interface Bundle-Ether bundle-id Example:
RP/0/RSP0/CPU0:router#(config)# interface Bundle-Ether 3
Creates and names a new Ethernet link bundle.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 65

Configuring VLAN Bundles

Configuring Link Bundles

Step 3 Step 4 Step 5 Step 6
Step 7 Step 8

This interface Bundle-Ether command enters you into the interface configuration submode, where you can enter interface specific configuration commands are entered. Use the exit command to exit from the interface configuration submode back to the normal Global Configuration mode
ipv4 address ipv4-address mask
Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 10.1.2.3 255.0.0.0

Assigns an IP address and subnet mask to the virtual interface using the ipv4 address configuration subcommand.
bundle minimum-active bandwidth kbps (optional) Example:
RP/0/RSP0/CPU0:router(config-if) # bundle minimum-active bandwidth 580000

(Optional) Sets the minimum amount of bandwidth required before a user can bring up a bundle.
bundle minimum-active links links (optional) Example:
RP/0/RSP0/CPU0:router(config-if)# bundle minimum-active links 2

(Optional) Sets the number of active links required before you can bring up a specific bundle.
bundle maximum-active links links (optional) Example:
RP/0/RSP0/CPU0:router(config-if)# bundle maximum-active links 1

(Optional) Designates one active link and one link in standby mode that can take over immediately for a bundle if the active link fails (1:1 protection).

Note

The default number of active links allowed in a single bundle is 8.

Note

If the bundle maximum-active command is issued, then only the highest-priority link within the bundle

is active. The priority is based on the value from the bundle port-priority command, where a lower value

is a higher priority. Therefore, we recommend that you configure a higher priority on the link that you

want to be the active link.

exit Example:
RP/0/RSP0/CPU0:router(config-if)# exit

Exits interface configuration submode.
interface Bundle-Ether bundle-id.vlan-id Example:
RP/0/RSP0/CPU0:router#(config)#interface Bundle-Ether 3.1

Creates a new VLAN, and assigns the VLAN to the Ethernet bundle you created in Step 2. Replace the bundle-id argument with the bundle-id you created in Step 2.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 66

Configuring Link Bundles

Configuring VLAN Bundles

Step 9 Step 10 Step 11 Step 12 Step 13 Step 14
Step 15

Replace the vlan-id with a subinterface identifier. Range is from 1 to 4094 inclusive (0 and 4095 are reserved).

Note

When you include the vlan-id argument with the interface Bundle-Ether bundle-id command, you enter

subinterface configuration mode.

encapsulation dot1q vlan-id Example:
RP/0/RSP0/CPU0:router#(config-subif)# encapsulation dot1q 10

Assigns a VLAN to the subinterface. Replace the vlan-id argument with a subinterface identifier. Range is from 1 to 4094 inclusive (0 and 4095 are reserved).
ipv4 address ip-address mask Example:
RP/0/RSP0/CPU0:router#(config-subif)# ipv4 address 10.1.2.3/24

Assigns an IP address and subnet mask to the subinterface.
no shutdown Example:
RP/0/RSP0/CPU0:router(config-subif) # no shutdown

(Optional) If a link is in the down state, bring it up. The no shutdown command returns the link to an up or down state depending on the configuration and state of the link.
exit Example:
RP/0/RSP0/CPU0:router(config-subif)#exit

Exits subinterface configuration mode for the VLAN subinterface.
Repeat Step 7 through Step 12 to add more VLANs to the bundle you created in Step 2. (Optional) Adds more subinterfaces to the bundle.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.
exit Example:
RP/0/RSP0/CPU0:router (config-subif)# exit

Exits interface configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 67

Configuring VLAN Bundles

Configuring Link Bundles

Step 16 Step 17 Step 18 Step 19 Step 20
Step 21

exit Example:
RP/0/RSP0/CPU0:router (config)# exit

Exits Global Configuration mode.
show ethernet trunk bundle-Ether instance Example:
RP/0/RSP0/CPU0:routerrouter# show ethernet trunk bundle-ether 5

(Optional) Displays the interface configuration. The Ethernet bundle instance range is from 1 through 65535.
configure Example:
RP/0/RSP0/CPU0:router# configure

Enters Global Configuration mode.

interface {GigabitEthernet | TenGigE} instance

Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE 1/0/0/0

Enters the interface configuration mode for the specified interface.

Replace the instance argument with the node-id in the rack/slot/module format.

Note

A VLAN bundle is not active until you add an Ethernet interface on both ends of the link bundle.

bundle id bundle-id [mode {active | on | passive}] Example:
RP/0/RSP0/CPU0:router(config-if)# bundle-id 3

Adds an Ethernet interface to the bundle you configured in Step 2 through Step 13.

To enable active or passive LACP on the bundle, include the optional mode active or mode passive keywords in the command string.

To add the interface to the bundle without LACP support, include the optional mode on keywords with the command string.

Note

If you do not specify the mode keyword, the default mode is on (LACP is not run over the port).

no shutdown Example:
RP/0/RSP0/CPU0:router(config-if)# no shutdown

(Optional) If a link is in the down state, bring it up. The no shutdown command returns the link to an up or down state depending on the configuration and state of the link.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 68

Configuring Link Bundles

Configuration Examples for Link Bundles

Step 22 Step 23
Step 24 Step 25
Step 26

Repeat Step 19 through Step 21 to add more Ethernet interfaces to the bundle you created in Step 2 . Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.
Perform Step 1 through Step 23 on the remote end of the connection. Brings up the other end of the link bundle.
show bundle Bundle-Ether bundle-id [ reasons ] Example:
RP/0/RSP0/CPU0:router#show bundle Bundle-Ether 3 reasons
(Optional) Shows information about the specified Ethernet link bundle. The show bundle Bundle-Ether command displays information about the specified bundle. If your bundle has been configured properly and is carrying traffic, the State field in the show bundle Bundle-Ether command output will show the number "4," which means the specified VLAN bundle port is "distributing."
show ethernet trunk bundle-Ether instance Example:
RP/0/RSP0/CPU0:router# show ethernet trunk bundle-ether 5
(Optional) Displays the interface configuration. The Ethernet bundle instance range is from 1 through 65535.

Configuration Examples for Link Bundles
EtherChannel Bundle running LACP: Example
This example shows how to join two ports to form an EtherChannel bundle running LACP:
RP/0/RSP0/CPU0:Router# config RP/0/RSP0/CPU0:Router(config)# interface Bundle-Ether 3 RP/0/RSP0/CPU0:Router(config-if)# ipv4 address 1.2.3.4/24 RP/0/RSP0/CPU0:Router(config-if)# bundle minimum-active bandwidth 620000 RP/0/RSP0/CPU0:Router(config-if)# bundle minimum-active links 1 RP/0/RSP0/CPU0:Router(config-if)# exit RP/0/RSP0/CPU0:Router(config)# interface TenGigE 0/3/0/0 RP/0/RSP0/CPU0:Router(config-if)# bundle id 3 mode active RP/0/RSP0/CPU0:Router(config-if)# no shutdown RP/0/RSP0/CPU0:Router(config)# exit RP/0/RSP0/CPU0:Router(config)# interface TenGigE 0/3/0/1 RP/0/RSP0/CPU0:Router(config-if)# bundle id 3 mode active

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 69

Creating VLANs on a Ethernet Bundle: Example

Configuring Link Bundles

RP/0/RSP0/CPU0:Router(config-if)# no shutdown RP/0/RSP0/CPU0:Router(config-if)# exit
Creating VLANs on a Ethernet Bundle: Example
This example shows how to create and bring up two VLANs on an Ethernet bundle:
RP/0/RSP0/CPU0:Router# config RP/0/RSP0/CPU0:Router(config)# interface Bundle-Ether 1 RP/0/RSP0/CPU0:Router(config-if)# ipv4 address 1.2.3.4/24 RP/0/RSP0/CPU0:Router(config-if)# bundle minimum-active bandwidth 620000 RP/0/RSP0/CPU0:Router(config-if)# bundle minimum-active links 1 RP/0/RSP0/CPU0:Router(config-if)# exit RP/0/RSP0/CPU0:Router(config)# interface Bundle-Ether 1.1 RP/0/RSP0/CPU0:Router(config-subif)# encapsulation dot1q 10 RP/0/RSP0/CPU0:Router(config-subif)# ip addr 10.2.3.4/24 RP/0/RSP0/CPU0:Router(config-subif)# no shutdown RP/0/RSP0/CPU0:Router(config-subif)# exit RP/0/RSP0/CPU0:Router(config)# interface Bundle-Ether 1.2 RP/0/RSP0/CPU0:Router(config-subif)# encapsulation dot1q 20 RP/0/RSP0/CPU0:Router(config-subif)# ip addr 20.2.3.4/24 RP/0/RSP0/CPU0:Router(config-subif)# no shutdown RP/0/RSP0/CPU0:Router(config-subif)# exit RP/0/RSP0/CPU0:Router(config)#interface tengige 0/1/5/7 RP/0/RSP0/CPU0:Router(config-if)# bundle-id 1 mode act RP/0/RSP0/CPU0:Router(config-if)# commit RP/0/RSP0/CPU0:Router(config-if)# exit RP/0/RSP0/CPU0:Router(config)# exit RP/0/RSP0/CPU0:Router # show ethernet trunk bundle-ether 1
ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example
This example is an end-to-end example of a bundle between ASR 9000 Series router (ASR-9010) and a Cisco 7600 Series Router (P19_C7609-S) in the Metro Ethernet network that supports both L2 and L3 services.
On the Cisco ASR 9000 Series Routers, the bundle is configured with LACP, 1:1 link protection, two L2 subinterfaces, and two layer 3 subinterfaces.
IOS XR side:
hostname PE44_IOS-XR_Router
interface Bundle-Ether16 description Connect to P19_C7609-S Port-Ch 16 mtu 9216 no ipv4 address bundle maximum-active links 1
! interface Bundle-Ether16.160 l2transport
description Connect to P19_C7609-S Port-Ch 16 EFP 160 encapsulation dot1q 160 ! interface Bundle-Ether16.161 l2transport description Connect to P19_C7609-S Port-Ch 16 EFP 161 encapsulation dot1q 161 ! interface Bundle-Ether16.162 description Connect to P19_C7609-S Port-Ch 16.162 ipv4 address 10.194.8.44 255.255.255.0 encapsulation dot1q 162

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 70

Configuring Link Bundles

ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example

! interface Bundle-Ether16.163
description Connect to P19_C7609-S Port-Ch 16.163 ipv4 address 10.194.12.44 255.255.255.0 encapsulation dot1q 163 !
interface TenGigE 0/1/0/16 description Connected to P19_C7609-S GE 8/0/16 bundle id 16 mode active bundle port-priority 1
! interface TenGigE 0/1/0/17
description Connected to P19_C7609-S GE 8/0/17 bundle id 16 mode active bundle port-priority 2 !
IOS XR side - connections to CE devices:
hostname PE44_IOS-XR_Router
interface TenGigE 0/1/0/3.160 l2transport description VLAN 160 over BE 16.160 encapsulation dot1q 100 second-dot1q 160 rewrite ingress tag pop 1 symmetric
! interface TenGigE 0/1/0/3.161 l2transport
description VLAN 161 over BE 16.161 encapsulation dot1q 161 ! l2vpn ! xconnect group 160
p2p 160 interface Bundle-Ether16.160 interface TenGigE 0/1/0/3.160 description VLAN_160_over_BE_16.160
! !
xconnect group 161 p2p 161 interface Bundle-Ether16.161 interface TenGigE 0/1/0/3.161 description VLAN_161_over_BE_16.161 !
!
IOS XR side - CE devices:
hostname PE64_C3750-ME ! vlan 161 ! interface TenGigE 1/0/1
description Connected to PE65_ME-C3400 GE 0/1 switchport access vlan 100 switchport mode dot1q-tunnel ! interface TenGigE 1/0/2 description Connected to PE44_IOS-XR_Router GE 0/1/0/3 switchport trunk encapsulation dot1q

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 71

ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example
switchport trunk allowed vlan 100,161 switchport mode trunk ! interface Vlan161 description VLAN 161 over BE 16.161 on PE44 ip address 161.0.0.64 255.255.255.0 !
hostname PE65_ME-C3400 ! vlan 160 ! interface TenGigE 0/1
description Connected to PE64_C3750-ME GE 1/0/1 port-type nni switchport trunk allowed vlan 160 switchport mode trunk ! interface Vlan160 description VLAN 160 over BE 16.160 on PE44 ip address 160.0.0.65 255.255.255.0 !
IOS side:
hostname P19_C7609-S
port-channel load-balance src-dst-port ! interface Port-channel16
description Connected to PE44_IOS-XR_Router BE 16 mtu 9202 no ip address logging event link-status logging event status speed nonegotiate mls qos trust dscp lacp fast-switchover lacp max-bundle 1 service instance 160 ethernet
description Connected to PE44_IOS-XR_Router BE 16.160 encapsulation dot1q 160 ! service instance 161 ethernet description Connected to PE44_IOS-XR_Router BE 16.161 encapsulation dot1q 161 ! ! interface Port-channel16.162 description Connected to PE44_IOS-XR_Router BE 16.162 encapsulation dot1Q 162 ip address 10.194.8.19 255.255.255.0 ! interface Port-channel16.163 description Connected to PE44_IOS-XR_Router BE 16.163 encapsulation dot1Q 163 ip address 10.194.12.19 255.255.255.0 !
interface TenGigE 8/0/16 no shut description Connected to PE44_IOS-XR_Router GE 0/1/0/16

Configuring Link Bundles

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 72

Configuring Link Bundles

ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example

mtu 9202 no ip address logging event link-status logging event status speed nonegotiate no mls qos trust dscp lacp port-priority 1 channel-protocol lacp channel-group 16 mode active ! interface TenGigE 8/0/17 no shut description Connected to PE44_IOS-XR_Router GE 0/1/0/17 mtu 9202 no ip address logging event link-status logging event status speed nonegotiate no mls qos trust dscp lacp port-priority 2 channel-protocol lacp channel-group 16 mode active !
IOS side - connections to CE devices:
hostname P19_C7609-S
interface TenGigE 8/0/7 description Connected to PE62_C3750-ME GE 1/0/2 mtu 9000 no ip address speed nonegotiate mls qos trust dscp service instance 160 ethernet description VLAN 160 over Port-Ch 16 encapsulation dot1q 100 second-dot1q 160 rewrite ingress tag pop 1 symmetric ! service instance 161 ethernet description VLAN 161 over Port-Ch 16 encapsulation dot1q 161 !
! connect eline-161 Port-channel16 161 TenGigE 8/0/7 161
! ! connect eline-160 Port-channel16 160 TenGigE 8/0/7 160
! !
IOS side - CE devices:
hostname PE62_C3750-ME ! vlan 161 ! interface TenGigE 1/0/1
description Connected to PE63_ME-C3400 GE 0/1 switchport access vlan 100 switchport mode dot1q-tunnel ! interface TenGigE 1/0/2

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 73

ASR 9000 Link Bundles connected to a Cisco 7600 EtherChannel: Example
description Connected to P19_C7609-S GE 8/0/7 switchport trunk encapsulation dot1q switchport trunk allowed vlan 100,161 switchport mode trunk ! interface Vlan161 description VLAN 161 over Port-Chan 16 on P19 ip address 161.0.0.62 255.255.255.0 !
hostname PE63_ME-C3400 ! vlan 160 ! interface TenGigE 0/1
description Connected to PE62_C3750-ME GE 1/0/1 port-type nni switchport trunk allowed vlan 160 switchport mode trunk ! interface Vlan160 description VLAN 160 over Port-Chan 16 on P19 ip address 160.0.0.63 255.255.255.0 !

Configuring Link Bundles

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 74

5 C H A P T E R
Implementing Point to Point Layer 2 Services
This module provides conceptual and configuration information for point-to-point Layer 2 (L2) connectivity. These point-to-point services are supported:
· Local Switching--A point-to-point circuit internal to a single Cisco ASR 9000 Series Router, also known as local connect.
· Pseudowires--A virtual point-to-point circuit from a Cisco ASR 9000 Series Router. Pseudowires are implemented over MPLS.

Note Point to Point Layer 2 Services are also called as MPLS Layer 2 VPNs.

Note For more information about Point to Point Layer 2 Services on the Cisco ASR 9000 Series Router and for descriptions of the commands listed in this module, see the "Related Documents" section.

Feature History for Implementing Point to Point Layer 2 Services

Release Release 3.7.2

Modification This feature was introduced.

Release 3.9.0

Scale enhancements were introduced.

Release 4.0.0

Support was added for Any Transport over MPLS (AToM) features.

Release 4.0.1

Support was added for these features: · Pseudowire Load Balancing · Any Transport over MPLS (AToM) features: · HDLC over MPLS (HDLCoMPLS) · PPP over MPLS (PPPoMPLS)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 75

Prerequisites for Implementing Point to Point Layer 2 Services

Implementing Point to Point Layer 2 Services

Release Release 4.1.0 Release 4.2.0 Release 4.3.0 Release 4.3.1
Release 5.1.0
Release 5.1.2

Modification Support was added for the Flexible Router ID feature. Support was added for these features:
· MPLS Transport Profile · Circuit EMulation (CEM) over Packet
Support was added for the L2VPN Nonstop Routing feature. Support was added for these features:
· L2TPv3 over IPv6 Tunnel · ATMoMPLS Cell Relay VP Mode · GTP Load Balancing
Support was added for these features: · Two-way pseudowire (PW) for ATM/CEMoMPLS · PW grouping for Multi-Segment PW · Hot Standby PW for ATM/CEMoMPLS · MR-APS Integration with Hot-Standby PW
Support was added for the following: · Dynamic Single Segment Pseudowire. · Faster network convergence after pseudowire failure.

· Prerequisites for Implementing Point to Point Layer 2 Services, on page 76 · Information About Implementing Point to Point Layer 2 Services, on page 77 · How to Implement Point to Point Layer 2 Services, on page 107 · Configuration Examples for Point to Point Layer 2 Services , on page 189

Prerequisites for Implementing Point to Point Layer 2 Services
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 76

Implementing Point to Point Layer 2 Services

Information About Implementing Point to Point Layer 2 Services

Information About Implementing Point to Point Layer 2 Services
To implement Point to Point Layer 2 Services, you should understand these concepts:
Layer 2 Virtual Private Network Overview
Layer 2 Virtual Private Network (L2VPN) emulates the behavior of a LAN across an L2 switched, IP or MPLS-enabled IP network, allowing Ethernet devices to communicate with each other as they would when connected to a common LAN segment. Point-to-point L2 connections are vital when creating L2VPNs.
As Internet service providers (ISPs) look to replace their Frame Relay or Asynchronous Transfer Mode (ATM) infrastructures with an IP infrastructure, there is a need to provide standard methods of using an L2 switched, IP or MPLS-enabled IP infrastructure. These methods provide a serviceable L2 interface to customers; specifically, to provide virtual circuits between pairs of customer sites.
Building a L2VPN system requires coordination between the ISP and the customer. The ISP provides L2 connectivity; the customer builds a network using data link resources obtained from the ISP. In an L2VPN service, the ISP does not require information about a the customer's network topology, policies, routing information, point-to-point links, or network point-to-point links from other ISPs.
The ISP requires provider edge (PE) routers with these capabilities:
· Encapsulation of L2 protocol data units (PDU) into Layer 3 (L3) packets.
· Interconnection of any-to-any L2 transports.
· Emulation of L2 quality-of-service (QoS) over a packet switch network.
· Ease of configuration of the L2 service.
· Support for different types of tunneling mechanisms (MPLS, L2TPv3, IPSec, GRE, and others).
· L2VPN process databases include all information related to circuits and their connections.
Layer 2 Local Switching Overview
Local switching allows you to switch L2 data between two interfaces of the same type, (for example, Ethernet to Ethernet) and on the same router. The interfaces can be on the same line card, or on two different line cards. During these types of switching, Layer 2 address is used instead of the Layer 3 address. A local switching connection switches L2 traffic from one attachment circuit (AC) to the other. The two ports configured in a local switching connection are ACs with respect to that local connection. A local switching connection works like a bridge domain that has only two bridge ports; traffic enters one port of the local connection and leaves the other. However, because there is no bridging involved in a local connection, there is neither MAC learning nor flooding. Also, the ACs in a local connection are not in the UP state if the interface state is DOWN. (This behavior is also different when compared to that of a bridge domain.)
Local switching ACs utilize a full variety of L2 interfaces, including L2 trunk (main) interfaces, bundle interfaces, and EFPs.
Additionally, same-port local switching allows you to switch Layer 2 data between two circuits on the same interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 77

ATMoMPLS with L2VPN Overview

Implementing Point to Point Layer 2 Services

ATMoMPLS with L2VPN Overview
ATMoMPLS is a type of Layer 2 point-to-point connection over an MPLS core. To implement the ATMoMPLS feature, the Cisco ASR 9000 Series Router plays the role of provider edge (PE) router at the edge of a provider network in which customer edge (CE) devices are connected to the Cisco ASR 9000 Series Router.
Virtual Circuit Connection Verification on L2VPN
Virtual Circuit Connection Verification (VCCV) is an L2VPN Operations, Administration, and Maintenance (OAM) feature that allows network operators to run IP-based provider edge-to-provider edge (PE-to-PE) keepalive protocol across a specified pseudowire to ensure that the pseudowire data path forwarding does not contain any faults. The disposition PE receives VCCV packets on a control channel, which is associated with the specified pseudowire. The control channel type and connectivity verification type, which are used for VCCV, are negotiated when the pseudowire is established between the PEs for each direction. Two types of packets can arrive at the disposition egress:
· Type 1--Specifies normal Ethernet-over-MPLS (EoMPLS) data packets.
· Type 2--Specifies VCCV packets.
Cisco ASR 9000 Series Router supports Label Switched Path (LSP) VCCV Type 1, which uses an inband control word if enabled during signaling. The VCCV echo reply is sent as IPv4 that is the reply mode in IPv4. The reply is forwarded as IP, MPLS, or a combination of both. VCCV pings counters that are counted in MPLS forwarding on the egress side. However, on the ingress side, they are sourced by the route processor and do not count as MPLS forwarding counters.
Ethernet over MPLS
Ethernet-over-MPLS (EoMPLS) provides a tunneling mechanism for Ethernet traffic through an MPLS-enabled L3 core and encapsulates Ethernet protocol data units (PDUs) inside MPLS packets (using label stacking) to forward them across the MPLS network. EoMPLS features are described in these subsections:
Ethernet Port Mode
In Ethernet port mode, both ends of a pseudowire are connected to Ethernet ports. In this mode, the port is tunneled over the pseudowire or, using local switching (also known as an attachment circuit-to-attachment circuit cross-connect) switches packets or frames from one attachment circuit (AC) to another AC attached to the same PE node. The following figure provides an example of Ethernet port mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 78

Implementing Point to Point Layer 2 Services Figure 6: Ethernet Port Mode Packet Flow

VLAN Mode

VLAN Mode

In VLAN mode, each VLAN on a customer-end to provider-end link can be configured as a separate L2VPN connection using virtual connection (VC) type 4 or VC type 5. VC type 5 is the default mode.
As illustrated in the following figure, the Ethernet PE associates an internal VLAN-tag to the Ethernet port for switching the traffic internally from the ingress port to the pseudowire; however, before moving traffic into the pseudowire, it removes the internal VLAN tag.
Figure 7: VLAN Mode Packet Flow

At the egress VLAN PE, the PE associates a VLAN tag to the frames coming off of the pseudowire and after switching the traffic internally, it sends out the traffic on an Ethernet trunk port.
Note Because the port is in trunk mode, the VLAN PE doesn't remove the VLAN tag and forwards the frames through the port with the added tag.
Inter-AS Mode
Inter-AS is a peer-to-peer type model that allows extension of VPNs through multiple provider or multi-domain networks. This lets service providers peer up with one another to offer end-to-end VPN connectivity over extended geographical locations.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 79

QinQ Mode

Implementing Point to Point Layer 2 Services

EoMPLS support can assume a single AS topology where the pseudowire connecting the PE routers at the two ends of the point-to-point EoMPLS cross-connects resides in the same autonomous system; or multiple AS topologies in which PE routers can reside on two different ASs using iBGP and eBGP peering.
The following figure illustrates MPLS over Inter-AS with a basic double AS topology with iBGP/LDP in each AS.
Figure 8: EoMPLS over Inter-AS: Basic Double AS Topology

QinQ Mode

QinQ is an extension of 802.1Q for specifying multiple 802.1Q tags (IEEE 802.1QinQ VLAN Tag stacking). Layer 3 VPN service termination and L2VPN service transport are enabled over QinQ sub-interfaces.
The Cisco ASR 9000 Series Routers implement the Layer 2 tunneling or Layer 3 forwarding depending on the subinterface configuration at provider edge routers. This function only supports up to two QinQ tags on the SPA and fixed PLIM:
· Layer 2 QinQ VLANs in L2VPN attachment circuit: QinQ L2VPN attachment circuits are configured under the Layer 2 transport subinterfaces for point-to-point EoMPLS based cross-connects using both virtual circuit type 4 and type 5 pseudowires and point-to-point local-switching-based cross-connects including full interworking support of QinQ with 802.1q VLANs and port mode.
· Layer 3 QinQ VLANs: Used as a Layer 3 termination point, both VLANs are removed at the ingress provider edge and added back at the remote provider edge as the frame is forwarded.
Layer 3 services over QinQ include:
· IPv4 unicast and multicast
· IPv6 unicast and multicast
· MPLS
· Connectionless Network Service (CLNS) for use by Intermediate System-to-Intermediate System (IS-IS) Protocol
In QinQ mode, each CE VLAN is carried into an SP VLAN. QinQ mode should use VC type 5, but VC type 4 is also supported. On each Ethernet PE, you must configure both the inner (CE VLAN) and outer (SP VLAN).
The following figure illustrates QinQ using VC type 4.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 80

Implementing Point to Point Layer 2 Services Figure 9: EoMPLS over QinQ Mode

QinAny Mode

QinAny Mode

In the QinAny mode, the service provider VLAN tag is configured on both the ingress and the egress nodes of the provider edge VLAN. QinAny mode is similar to QinQ mode using a Type 5 VC, except that the customer edge VLAN tag is carried in the packet over the pseudowire, as the customer edge VLAN tag is unknown.

Quality of Service
Using L2VPN technology, you can assign a quality of service (QoS) level to both Port and VLAN modes of operation.
L2VPN technology requires that QoS functionality on PE routers be strictly L2-payload-based on the edge-facing interfaces (also know as attachment circuits). The following figure illustrates L2 and L3 QoS service policies in a typical L2VPN network.
Figure 10: L2VPN QoS Feature Application

The following figure shows four packet processing paths within a provider edge device where a QoS service policy can be attached. In an L2VPN network, packets are received and transmitted on the edge-facing interfaces as L2 packets and transported on the core-facing interfaces as MPLS (EoMPLS).
Figure 11: L2VPN QoS Reference Model

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 81

High Availability

Implementing Point to Point Layer 2 Services

High Availability
L2VPN uses control planes in both route processors and line cards, as well as forwarding plane elements in the line cards. The availability of L2VPN meets these requirements:
· A control plane failure in either the route processor or the line card will not affect the circuit forwarding path.
· The router processor control plane supports failover without affecting the line card control and forwarding planes.
· L2VPN integrates with existing Label Distribution Protocol (LDP) graceful restart mechanism.
Preferred Tunnel Path
Preferred tunnel path functionality lets you map pseudowires to specific traffic-engineering tunnels. Attachment circuits are cross-connected to specific MPLS traffic engineering tunnel interfaces instead of remote PE router IP addresses (reachable using IGP or LDP). Using preferred tunnel path, it is always assumed that the traffic engineering tunnel that transports the L2 traffic runs between the two PE routers (that is, its head starts at the imposition PE router and its tail terminates on the disposition PE router).

Note

· Currently, preferred tunnel path configuration applies only to MPLS encapsulation.

Multisegment Pseudowire
Pseudowires transport Layer 2 protocol data units (PDUs) across a public switched network (PSN). A multisegment pseudowire is a static or dynamically configured set of two or more contiguous pseudowire segments. These segments act as a single pseudowire, allowing you to:
· Manage the end-to-end service by separating administrative or provisioning domains.
· Keep IP addresses of provider edge (PE) nodes private across interautonomous system (inter-AS) boundaries. Use IP address of autonomous system boundary routers (ASBRs) and treat them as pseudowire aggregation routers. The ASBRs join the pseudowires of the two domains.
A multisegment pseudowire can span either an inter-AS boundary or two multiprotocol label switching (MPLS) networks.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 82

Implementing Point to Point Layer 2 Services Figure 12: Multisegment Pseudowire: Example

Multisegment Pseudowire

A pseudowire is a tunnel between two PE nodes. There are two types of PE nodes: · A Switching PE (S-PE) node · Terminates PSN tunnels of the preceding and succeeding pseudowire segments in a multisegment pseudowire. · Switches control and data planes of the preceding and succeeding pseudowire segments of the multisegment pseudowire.
· A Terminating PE (T-PE) node · Located at both the first and last segments of a multisegment pseudowire. · Where customer-facing attachment circuits (ACs) are bound to a pseudowire forwarder.
Note Every end of a multisegment pseudowire must terminate at a T-PE. A multisegment pseudowire is used in two general cases when: · It is not possible to establish a PW control channel between the source and destination PE nodes. For the PW control channel to be established, the remote PE node must be accessible. Sometimes, the local PE node may not be able to access the remote node due to topology, operational, or security constraints. A multisegment pseudowire dynamically builds two discrete pseudowire segments and performs a pseudowire switching to establish a PW control channel between the source and destination PE nodes. · Pseudowire Edge To Edge Emulation (PWE3) signaling and encapsulation protocols are different. The PE nodes are connected to networks employing different PW signaling and encapsulation protocols. Sometimes, it is not possible to use a single segment PW. A multisegment pseudowire, with the appropriate interworking performed at the PW switching points, enables PW connectivity between the PE nodes in the network.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 83

Pseudowire Redundancy

Implementing Point to Point Layer 2 Services

Pseudowire Redundancy
Pseudowire redundancy allows you to configure your network to detect a failure in the network and reroute the Layer 2 service to another endpoint that can continue to provide service. This feature provides the ability to recover from a failure of either the remote provider edge (PE) router or the link between the PE and customer edge (CE) routers. L2VPNs can provide pseudowire resiliency through their routing protocols. When connectivity between end-to-end PE routers fails, an alternative path to the directed LDP session and the user data takes over. However, there are some parts of the network in which this rerouting mechanism does not protect against interruptions in service. Pseudowire redundancy enables you to set up backup pseudowires. You can configure the network with redundant pseudowires and redundant network elements. Prior to the failure of the primary pseudowire, the ability to switch traffic to the backup pseudowire is used to handle a planned pseudowire outage, such as router maintenance.
Note Pseudowire redundancy is provided only for point-to-point Virtual Private Wire Service (VPWS) pseudowires.
Pseudowire Load Balancing
To maximize networks while maintaining redundancy typically requires traffic load balancing over multiple links. To achieve better and more uniformed distribution, load balancing on the traffic flows that are part of the provisioned pipes is desirable. Load balancing can be flow based according to the IP addresses, Mac addresses, or a combination of those. Load balancing can be flow based according to source or destination IP addresses, or source or destination MAC addresses. Traffic falls back to default flow based MAC addresses if the IP header cannot proceed or IPv6 is be flow based. This feature applies to pseudowires under L2VPN; this includes VPWS and VPLS.
Note Enabling virtual circuit (VC) label based load balancing for a pseudowire class overrides global flow based load balancing under L2VPN.
L2 Traffic Tunneling with IP Load Balance Hashing for MPLS Encapsulated Packets
If the frame is IP-based, the load-balancing flow "src-dst-ip" configuration causes the Layer 2 interfaces to use the IP header for flow balancing hash calculation. If the frame is not IP-based, the MAC header is used for the hash calculation. In previous releases, for an MPLS header between the MAC and IP headers, the code would use the MAC header for the flow balancing hash. From Release 6.4.1 onwards, the code analyzes the MPLS header, and if an IP header is available, it uses that for hash calculation. If the MPLS label stack is more than four labels deep, the code stops looking for an IP header and reverts to the MAC header hash calculation.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 84

Implementing Point to Point Layer 2 Services

Pseudowire Grouping

When L2VPN flow-based src-dst-ip load-balancing is configured, and if a payload with encapsulated GTP is used, the GTP ID is considered for load-balancing criteria. Starting from Release 6.5.1, you do not have to configure the cef load-balancing command to use GTP ID as a criteria for load-balancing for L2VPN scenarios. However, you must explicitly configure CEF load-balancing for Layer 3 scenarios.
Pseudowire Grouping
When pseudowires (PWs) are established, each PW is assigned a group ID that is common for all PWs created on the same physical port. When a physical port becomes non-functional or disabled, Automatic Protection Switching (APS) signals the peer router to get activated and L2VPN sends a single message to advertise the status change of all PWs that have the Group ID associated with the physical port. A single L2VPN signal thus avoids a lot of processing and loss in reactivity.
For CEM interfaces, various levels of configuration are permitted for the parent controllers, such as T1 and T3, framed or unframed. To achieve best grouping, the physical controller handle is used as the group ID.
Note Pseudowire grouping is disabled by default.
Ethernet Wire Service
An Ethernet Wire Service is a service that emulates a point-to-point Ethernet segment. This is similar to Ethernet private line (EPL), a Layer 1 point-to-point service, except the provider edge operates at Layer 2 and typically runs over a Layer 2 network. The EWS encapsulates all frames that are received on a particular UNI and transports these frames to a single-egress UNI without reference to the contents contained within the frame. The operation of this service means that an EWS can be used with VLAN-tagged frames. The VLAN tags are transparent to the EWS (bridge protocol data units [BPDUs])--with some exceptions. These exceptions include IEEE 802.1x, IEEE 802.2ad, and IEEE 802.3x, because these frames have local significance and it benefits both the customer and the Service Provider to terminate them locally.
Since the service provider simply accepts frames on an interface and transmits these without reference to the actual frame (other than verifying that the format and length are legal for the particular interface) the EWS is indifferent to VLAN tags that may be present within the customer Ethernet frames.
EWS subscribes to the concept of all-to-one bundling. That is, an EWS maps a port on one end to a point-to-point circuit and to a port on another end. EWS is a port-to-port service. Therefore, if a customer needs to connect a switch or router to n switches or routers it will need n ports and n pseudowires or logical circuits.
One important point to consider is that, although the EWS broadly emulates an Ethernet Layer 1 connection, the service is provided across a shared infrastructure, and therefore it is unlikely that the full interface bandwidth will be, or needs to be, available at all times. EWS will typically be a sub-line rate service, where many users share a circuit somewhere in their transmission path. As a result, the cost will most likely be less than that of EPL. Unlike a Layer 1 EPL, the SP will need to implement QoS and traffic engineering to meet the specific objectives of a particular contract. However, if the customer's application requires a true wire rate transparent service, then an EPL service--delivered using optical transmission devices such as DWDM (dense wavelength division multiplexing), CDWM (coarse wavelength division multiplexing), or SONET/SDH--should be considered.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 85

IGMP Snooping

Implementing Point to Point Layer 2 Services

IGMP Snooping
IGMP snooping provides a way to constrain multicast traffic at Layer 2. By snooping the IGMP membership reports sent by hosts in the bridge domain, the IGMP snooping application can set up Layer 2 multicast forwarding tables to deliver traffic only to ports with at least one interested member, significantly reducing the volume of multicast traffic.
Configured at Layer 3, IGMP provides a means for hosts in an IPv4 multicast network to indicate which multicast traffic they are interested in and for routers to control and limit the flow of multicast traffic in the network (at Layer 3).
IGMP snooping uses the information in IGMP membership report messages to build corresponding information in the forwarding tables to restrict IP multicast traffic at Layer 2. The forwarding table entries are in the form <Route, OIF List>, where:
· Route is a <*, G> route or <S, G> route.
· OIF List comprises all bridge ports that have sent IGMP membership reports for the specified route plus all Multicast Router (mrouter) ports in the bridge domain.
The IGMP snooping feature can provide these benefits to a multicast network:
· Basic IGMP snooping reduces bandwidth consumption by reducing multicast traffic that would otherwise flood an entire VPLS bridge domain.
· With optional configuration options, IGMP snooping can provide security between bridge domains by filtering the IGMP reports received from hosts on one bridge port and preventing leakage towards the hosts on other bridge ports.
· With optional configuration options, IGMP snooping can reduce the traffic impact on upstream IP multicast routers by suppressing IGMP membership reports (IGMPv2) or by acting as an IGMP proxy reporter (IGMPv3) to the upstream IP multicast router.
Refer to the Implementing Layer 2 Multicast with IGMP Snooping module in the Cisco ASR 9000 Series Aggregation Services Router Multicast Configuration Guide for information on configuring IGMP snooping.
The applicable IGMP snooping commands are described in the Cisco ASR 9000 Series Aggregation Services Router Multicast Command Reference.
IP Interworking
Customer deployments require a solution to support AToM with disparate transport at network ends. This solution must have the capability to translate transport on one customer edge (CE) device to another transport, for example, Frame relay to Ethernet. The Cisco ASR 9000 Series SPA Interface Processor-700 and the Cisco ASR 9000 Series Ethernet line cards enable the Cisco ASR 9000 Series Routers to support multiple legacy services.
IP Interworking is a solution for transporting Layer 2 traffic over an IP/MPLS backbone. It accommodates many types of Layer 2 frames such as Ethernet and Frame Relay using AToM tunnels. It encapsulates packets at the provider edge (PE) router, transports them over the backbone to the PE router on the other side of the cloud, removes the encapsulation, and transports them to the destination. The transport layer can be Ethernet on one end and Frame relay on the other end. IP interworking occurs between disparate endpoints of the AToM tunnels.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 86

Implementing Point to Point Layer 2 Services

IP Interworking

Note Only routed interworking is supported between Ethernet and Frame Relay based networks for MPLS and Local-connect scenarios.
The following figure shows the interoperability between an Ethernet attachment VC and a Frame Relay attachment VC.
Figure 13: IP Interworking over MPLS Core

An attachment circuit (AC) is a physical or logical port or circuit that connects a CE device to a PE device. A pseudowire (PW) is a bidirectional virtual connection (VC) connecting two ACs. In an MPLS network, PWs are carried inside an LSP tunnel. The core facing line card on the PE1 and PE2 could be a Cisco ASR 9000 Series SPA Interface Processor-700 or a Cisco ASR 9000 Series Ethernet line card. In the IP Interworking mode, the Layer 2 (L2) header is removed from the packets received on an ingress PE, and only the IP payload is transmitted to the egress PE. On the egress PE, an L2 header is appended before the packet is transmitted out of the egress port. In Figure above , CE1 and CE2 could be a Frame Relay (FR) interface or a GigabitEthernet (GigE) interface. Assuming CE1 is a FR and CE2 is either a GigE or dot1q, or QinQ. For packets arriving from an Ethernet CE (CE2), ingress LC on the PE (PE2) facing the CE removes L2 framing and forwards the packet to egress PE (PE1) using IPoMPLS encapsulation over a pseudowire. The core facing line card on egress PE removes the MPLS labels but preserves the control word and transmits it to the egress line card facing FR CE (CE1). At the FR PE, after label disposition, the Layer 3 (L3) packets are encapsulated over FR. Similarly, IP packets arriving from the FR CE are translated into IPoMPLS encapsulation over the pseudowire. At the Ethernet PE side, after label disposition, the PE adds L2 Ethernet packet header back to the packet before transmitting it to the CE, as the packets coming out from the core carry only the IP payload. These modes support IP Interworking on AToM:
· Ethernet to Frame Relay Packets arriving from the Ethernet CE device have MAC (port-mode, untagged, single, double tag), IPv4 header and data. The Ethernet line card removes the L2 framing and then forwards the L3 packet to the egress line card. The egress line card adds the FR L2 header before transmitting it from the egress port.
· Ethernet to Ethernet Both the CE devices are Ethernet. Each ethernet interface can be port-mode, untagged, single, or double tag, although this is not a typical scenario for IP interworking.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 87

AToM iMSG

Implementing Point to Point Layer 2 Services

AToM iMSG

This feature enables an interworking layer in the access network(s) to terminate all non-Ethernet functionality and translate these connections to a Ethernet centric service which can be terminated on the Layer 3 edge routers. Currently, the time-division multiplexing (TDM) based services terminate on the Layer 3 edge routers directly. A simplified and more cost optimized model for the L3 networks is enabled by moving the TDM complexity into the access layer. The Layer 2 encapsulation is removed from an IP packet by the ingress PE's attachment circuit facing ingress line card. The MPLS encapsulated IP packet payload is then sent across the fabric to the core facing egress line card. The egress line card then transmits the packet through the MPLS core. On the remote PE, the MPLS label is removed, Layer 2 header of the egress AC is added and finally the packet is sent to the connected CE. L2VPN VPWS has been enhanced to support:
· Point-to-Point Protocol (PPP)
· High-level Data Link Control (HDLC)
· Multilink Point-to-Point Protocol (MLPPP)
· QOS support for all the encapsulation types For more information on QoS, see the Cisco ASR 9000 Series Aggregation Services Router Modular Quality of Service Configuration.
The TDM ACs can be configured on these SPAs: · SPA-8XCHT1/E1
· SPA-4XCT3/DS0
· SPA-1XCHSTM1/OC3
· SPA-2XCHOC12/DS0
· SPA-1XCHOC48/DS3
· SPA-4XT3/E3
· SPA-4XOC3-POS-V2
· SPA-8XOC3-POS
· SPA-8XOC12-POS
· SPA-1XOC48POS/RPR
· SPA-2XOC48POS/RPR

Any Transport over MPLS
Any Transport over MPLS (AToM) transports Layer 2 packets over a Multiprotocol Label Switching (MPLS) backbone. This enables service providers to connect customer sites with existing Layer 2 networks by using a single, integrated, packet-based network infrastructure. Using this feature, service providers can deliver Layer 2 connections over an MPLS backbone, instead of using separate networks.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 88

Implementing Point to Point Layer 2 Services

Control Word Processing

AToM encapsulates Layer 2 frames at the ingress PE router, and sends them to a corresponding PE router at the other end of a pseudowire, which is a connection between the two PE routers. The egress PE removes the encapsulation and sends out the Layer 2 frame. The successful transmission of the Layer 2 frames between PE routers is due to the configuration of the PE routers. You set up a connection, called a pseudowire, between the routers. You specify this information on each PE router:
· The type of Layer 2 data that will be transported across the pseudowire, such as Ethernet and Frame Relay
· The IP address of the loopback interface of the peer PE router, which enables the PE routers to communicate.
· A unique combination of peer PE IP address and VC ID that identifies the pseudowire.
Control Word Processing
The control word contains forward explicit congestion notification (FECN), backward explicit congestion notification (BECN) and DE bits in case of frame relay connection. Control word is mandatory for:
· Frame Relay
· ATM AAL5
· Frame Relay to Ethernet bridged interworking
· cHDLC/PPP IP interworking
· CEM (Circuit Emulation)
The system does not map bits from one transport end point to another across an AToM IP Interworking connection. Whenever supported, control word is also recommended for pseudowires, as it enables proper load balancing without packet desequencing independent of L2VPN packet content. Without control word the heuristics used to perform load balancing cannot achieve optimal results in all cases.
High-level Data Link Control over MPLS
The attachment circuit (AC) is a main interface configured with HDLC encapsulation. Packets to or from the AC are transported using an AToM pseudowire (PW) of VC type 0x6 to or from the other provider edge (PE) router over the MPLS core network. With HDLC over MPLS, the entire HDLC packet is transported. The ingress PE router removes only the HDLC flags and FCS bits.
PPP over MPLS
The attachment circuit (AC) is a main interface configured with PPP encapsulation. Packets to or from the AC are transported through an AToM PW of VC type 0x7 to or from the other provider edge (PE) routers over the MPLS core network. With PPP over MPLS, the ingress PE router removes the flags, address, control field, and the FCS bits.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 89

Frame Relay over MPLS

Implementing Point to Point Layer 2 Services

Frame Relay over MPLS
Frame Relay over MPLS (FRoMPLS) provides leased line type of connectivity between two Frame Relay islands. Frame Relay traffic is transported over the MPLS network.
Note The Data Link Connection Identifier (DLCI) DCLI-DLCI mode is supported. A control word (required for DLCI-DLCI mode) is used to carry additional control information.
When a Provider Edge (PE) router receives a Frame Relay protocol packet from a subscriber site, it removes the Frame Relay header and Frame Check Sequence (FCS) and appends the appropriate Virtual Circuit (VC) label. The removed Backward Explicit Congestion Notification (BECN), Forward Explicit Congestion Notification (FECN), Discard Eligible (DE) and Command/Response (C/R) bits are (for DLCI-DLCI mode) sent separately using a control word.
MPLS Transport Profile
MPLS transport profile (MPLS-TP) tunnels provide the transport network service layer over which IP and MPLS traffic traverse. Within the MPLS-TP environment, pseudowires (PWs) use MPLS-TP tunnels as the transport mechanism. MPLS-TP tunnels help transition from SONET/SDH TDM technologies to packet switching, to support services with high bandwidth utilization and low cost. Transport networks are connection oriented, statically provisioned, and have long-lived connections. Transport networks usually avoid control protocols that change identifiers (like labels). MPLS-TP tunnels provide this functionality through statically provisioned bidirectional label switched paths (LSPs). For more information on configuring MPLS transport profile, refer to the Cisco ASR 9000 Series Aggregation Services Router MPLS Configuration Guide. MPLS-TP supports these combinations of static and dynamic multisegment pseudowires:
· Static-static
· Static-dynamic
· Dynamic-static
· Dynamic-dynamic
MPLS-TP supports one-to-one L2VPN pseudowire redundancy for these combinations of static and dynamic pseudowires:
· Static pseudowire with a static backup pseudowire
· Static pseudowire with a dynamic backup pseudowire
· Dynamic pseudowire with a static backup pseudowire
· Dynamic pseudowire with a dynamic backup pseudowire
The existing TE preferred path feature is used to pin down a PW to an MPLS-TP transport tunnel. See Preferred Tunnel Path for more information on configuring preferred tunnel path. For a dynamic pseudowire, PW status is exchanged through LDP whereas for static PW, status is transported in PW OAM message. See Configuring PW Status OAM for more information on configuring PW status OAM. By default, alarms are not generated when the state of a PW changes due to change in the state of MPLS TP tunnel carrying that PW.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 90

Implementing Point to Point Layer 2 Services

Circuit Emulation Over Packet Switched Network

Circuit Emulation Over Packet Switched Network
Circuit Emulation over Packet (CEoP) is a method of carrying TDM circuits over packet switched network. CEoP is similar to a physical connection. The goal of CEoP is to replace leased lines and legacy TDM networks.
CEoP operates in two major modes:
· Unstructured mode is called SAToP (Structure Agnostic TDM over Packet)
SAToP addresses only structure-agnostic transport, i.e., unframed E1, T1, E3 and T3. It segments all TDM services as bit streams and then encapsulates them for transmission over a PW tunnel. This protocol can transparently transmit TDM traffic data and synchronous timing information. SAToP completely disregards any structure and provider edge routers (PEs) do not need to interpret the TDM data or to participate in the TDM signaling. The protocol is a simple way for transparent transmission of PDH bit-streams.
· Structured mode is named CESoPSN (Circuit Emulation Service over Packet Switched Network)
Compared with SAToP, CESoPSN transmits emulated structured TDM signals. That is, it can identify and process the frame structure and transmit signaling in TDM frames. It may not transmit idle timeslot channels, but only extracts useful timeslots of CE devices from the E1 traffic stream and then encapsulates them into PW packets for transmission.CEoP SPAs are half-height (HH) Shared Port Adapters (SPA) and the CEoP SPA family consists of 24xT1/E1, 2xT3/E3, and 1xOC3/STM1 unstructured and structured (NxDS0) quarter rate, half height SPAs.
Figure 14: Enterprise Data Convergence using Circuit Emulation over Packet

The CEM functionality is supported only on Engine 5 line cards having CEoP SPAs. CEM is supported on: · 1-port Channelized OC3 STM1 ATM CEoP SPA (SPA-1CHOC3-CE-ATM) CESoPSN and SAToP can use MPLS, UDP/IP, and L2TPv3 as the underlying transport mechanism. This release supports only MPLS transport mechanism.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 91

L2VPN Nonstop Routing

Implementing Point to Point Layer 2 Services

CEoP SPA supports these modes of operation: · Circuit Emulation Mode (CEM) · ATM Mode · IMA Mode
Note Only CEM mode is supported.
Benefits of Circuit Emulation over Packet Switched Network CEM offers these benefits to the service provider and end-users:
· Saving cost in installing equipment. · Saving cost in network operations; as leased lines are expensive, limiting their usage to access only mode
saves significant costs. · Ensuring low maintenance cost because only the core network needs to be maintained. · Utilizing the core network resources more efficiently with packet switched network, while keeping
investment in access network intact. · Providing cheaper services to the end-user.
L2VPN Nonstop Routing
The L2VPN Nonstop Routing (NSR) feature avoids label distribution path (LDP) sessions from flapping on events such as process failures (crash) and route processor failover (RP FO). NSR on process failure (crash) is supported by performing RP FO, if you have enabled NSR using NSR process failure switchover. NSR enables the router (where failure has occurred) to maintain the control plane states without a graceful restart (GR). NSR, by definition, does not require any protocol extension and typically uses Stateful Switch Over (SSO) to maintain it's control plane states.
Note NSR is enabled by default for L2VPN on Cisco IOS XR 64 bit operating system. You cannot configure the nsr command under L2VPN configuration submode.
L2TPv3 over IPv6
A L2TPv3 over IPv6 tunnel is a static L2VPN cross-connect that uses Layer 2 Tunneling Protocol version 3 (L2TPv3) over IPv6, with a unique IPv6 source address for each cross-connect. The L2TPv3 over IPv6 tunnels consists of one L2TPv3 tunnel for each subscriber VLAN. The unique IPv6 address completely identifies the customer, and the service that is delivered.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 92

Implementing Point to Point Layer 2 Services

Overview

Note L2TPv3 over IPv6 tunnels are supported on the ASR 9000 Enhanced Ethernet line cards by a scale of 15000 crossconnects for each router and line card.

Overview

Note nV satellite access interfaces do not support L2TPv3 over IPv6.
L2TPv3 defines the L2TP protocol for tunneling Layer 2 payloads over an IP core network using Layer 2 virtual private networks (VPNs). Traffic between two customer network sites is encapsulated in IP packets carrying L2TP data messages (payload) and sent across an IP network. The backbone routers of the IP network treat this payload in the same manner as it treats any other IP traffic. Implementing L2TPv3 over IPv6 provides an opportunity to utilize unique source IPv6 addresses to directly identify Ethernet attachment circuits. In this case, processing of the L2TPv3 session ID is bypassed; this is because each tunnel has only one associated session. This local optimization, however, does not hinder the ability to continue supporting circuit multiplexing through the session ID for other L2TPv3 tunnels on the same router. For more information on:
· Configuration procedures, see Configuring L2TPv3 over IPv6 Tunnels. · Configuration examples, see Configuring L2TPv3 over IPv6 Tunnels: Example.

Traffic Injection from L2TPv3 over IPv6 Tunnel
Traffic Injection from L2TPv3 over IPv6 Tunnel feature allows you to inject diagnostic traffic through Layer 2 Tunneling Protocol version 3 (L2TPv3) Switched Port Analyzer (SPAN) tunnel. The diagnostic traffic allows you to monitor and troubleshoot the network traffic. You can send the diagnostic traffic from customer office (CO) using traffic generator towards the customer or towards the network.
In previous releases, with traffic mirroring feature the user was only able to send the mirrored traffic from customer towards the monitoring device, the mirror tunnel was unidirectional.
Traffic mirroring copies traffic from one or more source ports and sends the copied traffic to one or more destinations for analysis by a network analyzer or other monitoring device. Traffic mirroring does not affect the flow of traffic on the source interfaces or sub-interfaces, and allows the mirrored traffic to be sent to a destination interface or sub-interface
Restrictions
· This feature is not supported on bundle and sub-bundle interfaces, supported only on main and sub interfaces.
· Diagnostic traffic directed from network to customer does not traverse the same path as the actual non-diagnostic network to customer traffic. As a result, any issue with the core facing interface is not diagnosed.
· Diagnostic traffic will mix with the actual customer traffic. It is the responsibility of CO to ensure that it does not cause any problems to the customer, and CO is able to differentiate diagnostic traffic from customer traffic in the SPAN tunnel.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 93

Configure Traffic Injection from L2TPv3 over IPv6 Tunnel

Implementing Point to Point Layer 2 Services

· Physical port features are not available in the inward inject path, so the problems in the physical port features, such as, EOAM or BIA MAC are not diagnosed.
· Bundle and other hash calculations, such as, ECMP, are not available, so the only customer interface supported is a physical interface.
· For Layer 3, only IPv4 and IPv6 diagnostic payload is supported.
Topology
Figure 15: Traffic Injection from L2TPv3 over IPv6 Tunnel

Consider a topology where an L2TPv3 tunnel is created between two ASR 9000 devices. Customer Office (CO) sends diagnostic traffic using traffic generator over L2TPv3 over IPv6 tunnel to the ASR 9000 router. The ASR 9000 router on the left-hand side sends the diagnostic traffic towards the customer as though it is sent from the network or sends the diagnostic traffic towards the network as though it is sent from the customer. The diagnostic traffic header contains destination MAC address, source MAC address, and IP payload. If the header contains destination MAC address of the ASR 9000 router, the diagnostic traffic is sent to the network as though it sent from the customer. If the header contains source MAC address of the ASR 9000 router, the diagnostic traffic is sent to the customer as though it sent from the network.
Configure Traffic Injection from L2TPv3 over IPv6 Tunnel
Perform these tasks on ASR 9000 router, which is on the left-hand side to configure Traffic Injection from L2TPv3 over IPv6 Tunnel feature,
· Create a pseudowire monitor session with inject interface · Attach the monitor session to an interface which needs to be spanned · Configure L2VPN xconnect with monitor session
/* Create a pseudowire monitor session with inject interface */
Router# configure Router(config)# monitor-session span1 Router(config-mon)# destination pseudowire Router(config-mon)# inject-interface tenGigE 0/1/0/0/0 Router(config-mon)# commit Router(config-mon)# end
/* Attach the monitor session to an interface which needs to be spanned */
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 94

Implementing Point to Point Layer 2 Services

Running Configuration

Router# configure Router(config)# int tenGigE 0/1/0/0/0 Router(config-subif)# monitor-session span1 ethernet Router(config-if-mon)# commit
/* Configure L2VPN xconnect with monitor session */
Router(config)# l2vpn Router(config-l2vpn)# xconnect group xc-span1 Router(config-l2vpn-xc)# p2p span-session1 Router(config-l2vpn-xc-p2p)# monitor-session span1 Router(config-l2vpn-xc-p2p)# neighbor ipv6 1112::1:1 pw-id 101 Router(config-l2vpn-xc-p2p-pw)# pw-class ts Router(config-l2vpn-xc-p2p-pw)# source 1111::1:1 Router(config-l2vpn-xc-p2p-pw)# l2tp static local cookie size 8 value 0x1 0xa1 local session
101 Router(config-l2vpn-xc-p2p-pw)# l2tp static remote cookie size 8 value 0xa1 0x1 remote session 101 Router(config-l2vpn-xc-p2p-pw)# commit Router(config-l2vpn-xc-p2p-pw)# end
Running Configuration

Verification

configure monitor-session span1 destination pseudowire inject-interface tenGigE 0/1/0/0/0 !
!
configure int tenGigE 0/1/0/0/0 monitor-session span1 ethernet !
!
l2vpn xconnect group xc-span1 p2p span-session1 monitor-session span1 neighbor ipv6 1112::1:1 pw-id 101 pw-class ts source 1111::1:1 l2tp static local cookie size 8 value 0x1 0xa1 local session 101 remote cookie size 8 value 0xa1 0x1 remote session 101 ! ! !
Verify that the source MAC address and destination MAC address are matching.

/* Verify that the source MAC address is matching */
Router#show monitor-session span1 counters Monitor-session span1
TenGigE0/1/0/0/0.1 Rx replicated: 248 packets, 247086 octets

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 95

L2TPv3 over IPv4

Implementing Point to Point Layer 2 Services

Tx replicated: 20001 packets, 20000094 octets Non-replicated: 0 packets, 0 octets

Router#show interface tenGigE 0/1/0/7/8 accounting

TenGigE0/1/0/7/8.1

Protocol

Pkts In

Chars In

IPV6_UNICAST

10001

10480072

IPV6_MULTICAST

1

104

IPV6_ND

2

212

Pkts Out 10005 0 1

Chars Out 10480632 0 72

Router#show interface tenGigE 0/1/0/0/0 accounting

TenGigE0/1/0/0/0.1

Protocol

Pkts In

Chars In

IPV6_UNICAST

2

136

IPV6_ND

Pkts Out 10002

/* Verify that the destination MAC address is matching */

Router#show monitor-session counters Monitor-session span1
TenGigE0/1/0/0/0.1 Rx replicated: 10001 packets, 10000094 octets Tx replicated: 1 packets, 94 octets Non-replicated: 0 packets, 0 octets

Chars Out 9780144

Router#show interface tenGigE 0/1/0/7/8 accounting

TenGigE0/1/0/7/8.1

Protocol

Pkts In

Chars In

IPV6_UNICAST

10000

10480000

IPV6_MULTICAST

0

0

IPV6_ND

0

0

Pkts Out 10000 1 1

Chars Out 10480000 104 104

Router#show interface tenGigE 0/1/0/0/0 accounting

TenGigE0/1/0/0/0.1

Protocol

Pkts In

Chars In

IPV6_UNICAST

10000

9780000

IPV6_ND

1

82

Pkts Out 0 1

Chars Out 0
72

L2TPv3 over IPv4
Layer 2 Tunneling Protocol version 3 (L2TPv3) over IPv4 provides a dynamic mechanism for tunneling Layer 2 (L2) circuits across a packet-oriented data network, with multiple attachment circuits multiplexed over a single pair of IP address endpoints, using the L2TPv3 session ID as a circuit discriminator.
The following figure shows how the L2TPv3 feature is used to set up VPNs using Layer 2 tunneling over an IP network. All traffic between two customer network sites is encapsulated in IP packets carrying L2TP data messages and sent across an IP network. The backbone routers of the IP network treat the traffic as any other IP traffic and needn't know anything about the customer networks.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 96

Implementing Point to Point Layer 2 Services Figure 16: L2TPv3 Operation

Dynamic Single-Segment Pseudowire

In the above figure the PE routers R1 and R2 provide L2TPv3 services. The R1 and R2 routers communicate with each other using a pseudowire over the IP backbone network through a path comprising the interfaces int1 and int2, the IP network, and interfaces int3 and int4. The CE routers R3 and R4 communicate through a pair of cross-connected Ethernet or 802.1q VLAN interfaces using an L2TPv3 session. The L2TPv3 session tu1 is a pseudowire configured between interface int1 on R1 and interface int4 on R2. Any packet arriving on interface int1 on R1 is encapsulated and sent through the pseudowire control-channel (tu1) to R2. R2 decapsulates the packet and sends it on interface int4 to R4. When R4 needs to send a packet to R3, the packet follows the same path in reverse.
Note L2TPv3 over IPv4 feature is supported only on Cisco ASR 9000 High Density 100GE Ethernet line cards.
Note nV satellite access interfaces do not support L2TPv3 over IPv4.
For more information on: · Configuration procedures, see Configuring L2TPv3 over IPv4 Tunnels, on page 174. · Configuration examples, see Configuring L2TPv3 over IPv4 Tunnels: Example, on page 204.
Dynamic Single-Segment Pseudowire
A single-segment pseudowire (SS-PW) is a point-to-point pseudowire (PW) where the PW segment is present between two PE routers. In this feature, a single-segment pseudowire is established between two PE routers of the same autonomous system (AS) dynamically using the FEC 129 information. The objective of this feature is to ensure interoperability of the Cisco routers with the third-party routers.
Active and Passive Signaling
The T-PE on which the SS-PW is initiated and the signaling message is transmitted from is called as the source-terminating PE (ST-PE). The T-PE that waits and responds to the SS-PW signaling message is called the target-terminating PE (TT-PE).
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 97

Functionality of Dynamic Single Segment Pseudowire

Implementing Point to Point Layer 2 Services

The signaling flow from the ST-PE to TT-PE is referred to as the forward direction signaling or the active signaling. The signaling flow from the TT-PE to ST-PE is referred to as the reverse direction signaling or the passive signaling.
Generally, the PE with the highest prefix address takes the active role and becomes the ST-PE, and the other PE becomes the passive TT-PE.
The following figure illustrates the SS-PW signaling flow between ST-PE and TT-PE:
Figure 17: Single-Segment Pseudowire Between ST-PE and TT-PE

Functionality of Dynamic Single Segment Pseudowire
The dynamic discovery of the pseudowire path from the ST-PE to the T-PE is achieved using the L2 route table. The route table entries, that is, a list of prefix and associated next-hops to the L2VPN are populated by BGP.
Note In Release 5.1.2, Cisco supports only the routable prefix to reach the TAII on the T-PE. The routable prefix is the neighbor address of the targeted-LDP session. The reachability of packets from the source to the destination is achieved by user configurations (see Configuring L2VPN Single Segment Pseudowire, on page 99) However, BGP supports MS-PW Subsequent Address Family Identifiers (SAFI) that is used to exchange the L2 routes across all the PEs. SS-PW uses the BGP MS-PW address family to function. To ensure interoperability with other third-party routers, Cisco advertises a single BGP MS-PW route per T-PE where the value of AC-ID (attachment circuit-identifier) is a wild-card entry.
The supported pseudowire features are pw-status, pw-grouping, and tag-impose vlan. The following figure illustrates the E-line Services Network with SS-PWs:
Figure 18: E-Line Services Network with SS-PWs

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 98

Implementing Point to Point Layer 2 Services

Prerequisites for Configuring L2VPN Single Segment Pseudowires

Prerequisites for Configuring L2VPN Single Segment Pseudowires
MPLS LDP, IGP, BGP, L2VPN, and interfaces must be configured on the two end points of the PW: · Configuring MPLS Label Distribution Protocol. · Configuring Interior Gateway Protocol (IGP). · Configure Border Gateway Protocol (BGP). · Configuring an Interface or Connection for L2VPN.

Restrictions for Configuring L2VPN Single Segment Pseudowires
· The routed pseudowire can only be enabled on Virtual Private Wire Service (VPWS) cross connects.
· A cross-connect cannot have both ends configured as "neighbor routed" pseudowire.
· SS-PW is not supported as the other member of the cross-connect, that is, at a T-PE, one end of the cross-connect can be the termination of the SS-PW and the other end can either be an attachment circuit (AC) or a PW-HE.
· Source AII and AC-ID (attachment circuit identifier) are unique per router.
· L2TP and MPLS static are not supported.

Configuring L2VPN Single Segment Pseudowire
To configure single segment pseudowire in the network, do the following: 1. (Optional) Configuring the related L2VPN Global Parameters. See Configuring L2VPN Global Parameters
This procedure is used to overwrite the default BGP Route Distinguisher (RD) auto-generated value and also the Autonomous System Number (ASN) and Route Identifier (RID) of BGP. 2. Configuring L2VPN VPWS SS-PW 3. Configuring L2VPN MS-PW Address Family Under BGP The address family is configured under BGP to exchange the dynamic pseudowire routes.

Configuring L2VPN Global Parameters Perform this task to configure L2VPN global parameters.

SUMMARY STEPS

1. configure 2. l2vpn 3. router-id router-id 4. pw-routing 5. global-id global-id 6. bgp 7. rd route-distinguisher 8. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 99

Configuring L2VPN Global Parameters

Implementing Point to Point Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. router-id router-id Example:
RP/0/RSP0/CPU0:router(config)# router 2.2.2.2
Specifies the router ID. pw-routing Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-routing
Enables pseudowire routing capabilities and enters the pseudowire routing configuration submode global-id global-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwr)# global-id 1000
Configures the L2VPN global ID value for the router. bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwr)# bgp
Enables the BGP pseudowire routing capabilities and enters the BGP configuration submode. rd route-distinguisher Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 100

Implementing Point to Point Layer 2 Services

Configuring L2VPN VPWS SS-PW

Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-pwr-bgp)# rd 192.168.1.3:10
Configures the BGP route distinguisher.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2VPN VPWS SS-PW Perform this task to configure L2VPN VPWS SS-PWs.

SUMMARY STEPS

1. configure 2. interface typeinterface-path-id 3. l2vpn 4. xconnect group group-name 5. p2p xconnect-name 6. interface type interface-path-id 7. neighbor routed global-id: prefix: ac-id source ac-id 8. (optional) pw-class class-name 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:routerRP/0/RP00RSP0/CPU0:router# interface TenGigE0/1/0/12
Enters interface configuration mode and configures an interface. l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 101

Configuring L2VPN VPWS SS-PW

Implementing Point to Point Layer 2 Services

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9

Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pw-he1
Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pw-ss
Enters P2P configuration submode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/9
Specifies the interface type and instance. neighbor routed global-id: prefix: ac-id source ac-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor routed 100:2.2.2.2:10 source 10
Enables pseudowire routing configuration submode for the p2p cross-connect. (optional) pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pwr)# pw-class dynamic_sspw
Enters pseudowire class submode, allowing you to define a pseudowire class template. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 102

Implementing Point to Point Layer 2 Services

Configuring L2VPN MS-PW Address Family Under BGP

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2VPN MS-PW Address Family Under BGP Perform this task to configure L2VPN MS-PW address family under BGP:

SUMMARY STEPS

1. configure 2. router bgp autonomous-system-number 3. address-family l2vpn mspw 4. neighbor ip-address 5. address-family l2vpn mspw 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. router bgp autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Enters router configuration mode for the specified routing process. address-family l2vpn mspw Example:
RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn mspw
Specifies the L2VPN address family and enters address family configuration mode. neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.10.10.1
Adds the IP address of the neighbor in the specified autonomous system. address-family l2vpn mspw

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 103

EVPN Virtual Private Wire Service (VPWS)

Implementing Point to Point Layer 2 Services

Step 6

Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# address-family l2vpn mspw
Specifies the L2VPN address family of the neighbor and enters address family configuration mode. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

EVPN Virtual Private Wire Service (VPWS)
The EVPN-VPWS is a BGP control plane solution for point-to-point services. It implements the signaling and encapsulation techniques for establishing an EVPN instance between a pair of PEs. It has the ability to forward traffic from one network to another without MAC lookup. The use of EVPN for VPWS eliminates the need for signaling single-segment and multi-segment PWs for point-to-point Ethernet services. You can also configure the PWHE interface and a bridge domain access pseudowire using EVPN-VPWS.
EVPN-VPWS single homed technology works on IP and MPLS core; IP core to support BGP and MPLS core for switching packets between the endpoints.
Information About EVPN-VPWS Single Homed
The EVPN-VPWS single homed solution requires per EVI Ethernet Auto Discovery route. EVPN defines a new BGP Network Layer Reachability Information (NLRI) used to carry all EVPN routes. BGP Capabilities Advertisement used to ensure that two speakers support EVPN NLRI (AFI 25, SAFI 70) as per RFC 4760.
The architecture for EVPN VPWS is that the PEs run Multi-Protocol BGP in control-plane. The following image describes the EVPN-VPWS configuration:

· The VPWS service on PE1 requires the following three elements to be specified at configuration time: · The VPN ID (EVI) · The local AC identifier (AC1) that identifies the local end of the emulated service. · The remote AC identifier (AC2) that identifies the remote end of the emulated service.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 104

Implementing Point to Point Layer 2 Services

Benefits of EVPN-VPWS

PE1 allocates a MPLS label per local AC for reachability. · The VPWS service on PE2 is set in the same manner as PE1. The three same elements are required and
the service configuration must be symmetric. PE2 allocates a MPLS label per local AC for reachability. · PE1 advertise a single EVPN per EVI Ethernet AD route for each local endpoint (AC) to remote PEs with the associated MPLS label. PE2 performs the same task. · On reception of EVPN per EVI EAD route from PE2, PE1 adds the entry to its local L2 RIB. PE1 knows the path list to reach AC2, for example, next hop is PE2 IP address and MPLS label for AC2. PE2 performs the same task.
Benefits of EVPN-VPWS The following are the benefits of EVPN-VPWS: · Scalability is achieved without signaling pseudowires. · Ease of provisioning · Pseudowires (PWs) are not used. · Leverages BGP best path selection (optimal forwarding).
Prerequisites for EVPN-VPWS
· Ensure BGP is configured for EVPN SAFI. · BGP session between PEs with 'address-family l2vpn evpn' to exchange EVPN routes.
Restrictions for EVPN-VPWS
· The VPN ID is unique per router. · When specifying a list of route targets, they must be unique per PE (per BGP address-family). · On versions earlier than IOS XR release 7.0.x, MTU is not signaled and the MTU mismatch is ignored
with no interoperability issues. On versions later than IOS XR release 7.0.x, L3 MTU is advertised by default and the MTU mismatch is enforced by default. But this results in interoperability issues with IOS XR release 7.3.2, if transmit-l2-mtu is configured since L3 and L2 MTUs do not match. You can configure transmit-mtu-zero and ignore-mtu-mismatch commands to avoid this situation. On versions later than IOS XR release 7.3.2, MTU of 0 is advertised by default, and the MTU mismatch is ignored by default. L2 MTU can be advertised using the transmit-l2-mtu command, and MTU mismatch can be enforced with enforce-mtu-mismatch command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 105

EVPN Head End Multi-Homed

Implementing Point to Point Layer 2 Services

EVPN Head End Multi-Homed

Table 3: Feature History Table

Feature Name EVPN Head End Multi-Homed

Release Information Release 7.3.1

Feature Description
To backhaul Layer 3 services on service PE devices over Layer 2 networks, a resilient Layer 2 service for indirectly connected end users and protection against Layer 3 service failures is necessary.
This feature enables multihoming by providing redundant network connectivity-allowing you to connect a customer site to multiple PE devices. When a failure is detected, the redundant PE routers provide network service to the customer site. This feature also enables configuring pseudowire (PW-ether) that acts as a backup connection between PE routers and customer devices, thus maintaining Layer 2 services in the event of failures.
The PW-Ether keyword is added to the interface (EVPN) command.

Increasingly, your customers are looking for efficient methods to backhaul Layer 3 services on their service PE devices over Layer 2 networks, while still being able to monitor and provide assurances on per-service granularity. To achieve this efficiency, a key requirement is resilient Layer 3 service for their non-directly connected end users and to be able to protect against active Layer 3 service failures. In achieving Layer 3 gateway and service redundancy, traditional first-hop resilience mechanisms suffer from scalability limitations.
The alternative solution is Multi-homed EVPN Head End that, in analogy, is the EVPN flavor of Pseudo-Wire Head End (PWHE). Multi-homed EVPN Head End allows the termination of Access pseuodwires or PWs (like EVPN-VPWS) into a Layer 3 [virtual routing and forwarding (VRF) or global] domain. PWHE subinterface resides in customer VRFs allowing service providers to offer IP services such as DHCP, NTP, and Layer 3 VPN for internet connectivity.
Multi-homed EVPN Head End has the following advantages:
· Decouples the customer-facing interface (CFI) of the service PE from the underlying physical transport media of the access or aggregation network.

· Reduces capex in the access or aggregation network and service PE.

· Distributes and scales the customer-facing Layer 2 UNI interface set.

· Extends and expands service provider's Layer 3 service footprints.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 106

Implementing Point to Point Layer 2 Services

How to Implement Point to Point Layer 2 Services

· Allows provisioning features such as QoS and ACL, L3VPN on a per PWHE subinterface
The Multi-homed EVPN headend solution supports redundant Layer 3 gateway functionality over PW-Ether interface termination, residing on a pair of redundant PE routers. The PW-Ether subinterfaces offer redundancy in the Core and first-hop router towards the access on a per-customer-service basis. Multi-homed EVPN is supported with:
· Regular attachment circuits · Physical Ethernet ports · Bundle interfaces · PW-Ether interfaces
Multi-homed EVPN headend supports three load balancing modes. These load balancing modes apply to the access side only.
· Single-Active (Layer 2 Access), also referred to as anycast single-active mode. That is, all-active in Layer 3 Core and single-active in Layer 2 Access, which is the default load-balancing mode for PWHE.
· All-Active
· Port-Active

Note The load balancing mode for the EVPN headend at the core is always ALL-ACTIVE and cannot be modified.

As part of the Multi-Homed EVPN Headend functionality, a new syntax is added under the interface (EVPN) command as shown in the following example:

router(config)#evpn interface ?

PW-Ether

PWHE Ethernet Interface | short name is PE

For details about the interface (EVPN) command, see the VPN and Ethernet Services Command Reference for Cisco ASR 9000 Series Routers.

How to Implement Point to Point Layer 2 Services
This section describes the tasks required to implement Point to Point Layer 2 Services:

Configuring an Interface or Connection for Point to Point Layer 2 Services
Perform this task to configure an interface or a connection for Point to Point Layer 2 Services.

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. l2transport 4. exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 107

Configuring an Interface or Connection for Point to Point Layer 2 Services

Implementing Point to Point Layer 2 Services

DETAILED STEPS

5. interface type interface-path-id 6. Use the commit or end command. 7. show interface type interface-id

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/0/0/0
Enters interface configuration mode and configures an interface. l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# l2transport
Enables L2 transport on the selected interface. exit Example:
RP/0/RSP0/CPU0:router(config-if-l2)# exit
Exits the current configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE 0/0/0/0
Enters interface configuration mode and configures an interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 108

Implementing Point to Point Layer 2 Services

Configuring Local Switching

Step 7

· Cancel - Remains in the configuration mode, without committing the configuration changes.
show interface type interface-id Example:
RP/0/RSP0/CPU0:router show interface TenGigE 0/0/0/0
(Optional) Displays the configuration settings you committed for the interface.

Configuring Local Switching
Perform this task to configure local switching.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. interface type interface-path-id 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config-subif)# l2vpn
Enters L2VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group. p2p xconnect-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 109

Configuring Local Connection Redundancy

Implementing Point to Point Layer 2 Services

Step 5 Step 6 Step 7

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Enters a name for the point-to-point cross-connect. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface TenGigE 0/7/0/6.5
Specifies the interface type ID. The choices are: · GigabitEthernet: Gigabit Ethernet/IEEE 802.3 interfaces · TenGigE: TenGigabit Ethernet/IEEE 802.3 interfaces · CEM: Circuit Emulation interface
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface GigabitEthernet0/4/0/30
Specifies the interface type ID. The choices are: · GigabitEthernet: Gigabit Ethernet/IEEE 802.3 interfaces · TenGigE: TenGigabit Ethernet/IEEE 802.3 interfaces
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Local Connection Redundancy
Perform this task to configure local connection redundancy.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 110

Implementing Point to Point Layer 2 Services

Configuring Local Connection Redundancy

DETAILED STEPS

5. backup interface type interface-path-id 6. interface type interface-path-id 7. interface type interface-path-id 8. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config-subif)# l2vpn

Enters L2VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1

Enters the name of the cross-connect group. p2p xconnect-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1

Enters a name for the point-to-point cross-connect. backup interface type interface-path-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# backup interface Bundle-Ether 0/7/0/6.5

Configures local connect redundancy.

Note

The attachment circuit (AC) must be bundle interface that is part of MC-LAG. The backup interfaces can

either be bundle or Ethernet port.

interface type interface-path-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 111

Configuring Static Point-to-Point Cross-Connects

Implementing Point to Point Layer 2 Services

Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Bundle-Ether 0/7/0/6.2
Specifies the interface type ID. The choices are: · GigabitEthernet: Gigabit Ethernet/IEEE 802.3 interfaces · TenGigE: TenGigabit Ethernet/IEEE 802.3 interfaces · CEM: Circuit Emulation interface
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Bundle-Ether 0/7/0/6.1
Specifies the interface type ID. The choices are: · GigabitEthernet: Gigabit Ethernet/IEEE 802.3 interfaces · TenGigE: TenGigabit Ethernet/IEEE 802.3 interfaces
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Static Point-to-Point Cross-Connects
Note Consider this information about cross-connects when you configure static point-to-point cross-connects: · An cross-connect is uniquely identified with the pair; the cross-connect name must be unique within a group. · A segment (an attachment circuit or pseudowire) is unique and can belong only to a single cross-connect. · A static VC local label is globally unique and can be used in one pseudowire only. · No more than 16,000 cross-connects can be configured per router.

Note Static pseudowire connections do not use LDP for signaling.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 112

Implementing Point to Point Layer 2 Services

Configuring Static Point-to-Point Cross-Connects

Perform this task to configure static point-to-point cross-connects.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor A.B.C.D pw-id pseudowire-id 7. mpls static label local { value } remote { value } 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1

Step 4 Step 5

Enters the name of the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Enters a name for the point-to-point cross-connect. interface type interface-path-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 113

Configuring Dynamic Point-to-Point Cross-Connects

Implementing Point to Point Layer 2 Services

Step 6
Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/9

Specifies the interface type and instance. neighbor A.B.C.D pw-id pseudowire-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.2.2.2 pw-id 2000

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix.

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN. mpls static label local { value } remote { value } Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# mpls static label local 699 remote 890

Configures local and remote label ID values.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Dynamic Point-to-Point Cross-Connects
Perform this task to configure dynamic point-to-point cross-connects.

Note For dynamic cross-connects, LDP must be up and running.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 114

Implementing Point to Point Layer 2 Services

Configuring Dynamic Point-to-Point Cross-Connects

DETAILED STEPS

6. neighbor A.B.C.D pw-id pseudowire-id 7. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Enters a name for the point-to-point cross-connect. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface GigabitEthernet0/0/0/0.1
Specifies the interface type ID. The choices are: · GigabitEthernet: GigabitEthernet/IEEE 802.3 interfaces. · TenGigE: TenGigabitEthernet/IEEE 802.3 interfaces. · CEM: Circuit Emulation interface
neighbor A.B.C.D pw-id pseudowire-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 115

Configuring Inter-AS

Implementing Point to Point Layer 2 Services

Step 7

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 2.2.2.2 pw-id 2000
Configures the pseudowire segment for the cross-connect. Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Inter-AS
The Inter-AS configuration procedure is identical to the L2VPN cross-connect configuration tasks (see "Configuring Static Point-to-Point Cross-Connects" section and "Configuring Dynamic Point-to-Point Cross-Connects" section) except that the remote PE IP address used by the cross-connect configuration is now reachable through iBGP peering.

Note You must be knowledgeable about IBGP, EBGP, and ASBR terminology and configurations to complete this configuration.

Configuring L2VPN Quality of Service
This section describes how to configure L2VPN quality of service (QoS) in port mode and mode, VLAN mode, Frame Relay and ATM sub-interfaces.

Restrictions

The l2transport command cannot be used with any IP address, L3, or CDP configuration.

Configuring an L2VPN Quality of Service Policy in Port Mode
This procedure describes how to configure an L2VPN QoS policy in port mode.

Note In port mode, the interface name format does not include a subinterface number; for example, GigabitEthernet0/1/0/1.

SUMMARY STEPS

1. configure 2. interface type interface-path-id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 116

Implementing Point to Point Layer 2 Services

Configuring an L2VPN Quality of Service Policy in Port Mode

DETAILED STEPS

3. l2transport 4. service-policy [ input | output ] [ policy-map-name ] 5. Use the commit or end command. 6. show qos interface type interface-id service-policy [ input | output ] [ policy-map-name ]

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet 0/0/0/0
Specifies the interface attachment circuit. l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# l2transport
Configures an interface or connection for L2 switching. service-policy [ input | output ] [ policy-map-name ] Example:
RP/0/RSP0/CPU0:router(config-if)# service-policy input servpol1
Attaches a QoS policy to an input or output interface to be used as the service policy for that interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show qos interface type interface-id service-policy [ input | output ] [ policy-map-name ] Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 117

Configuring an L2VPN Quality of Service Policy in VLAN Mode

Implementing Point to Point Layer 2 Services

RP/0/RSP0/CPU0:router# show qos interface gigabitethernet 0/0/0/0 input serpol1
(Optional) Displays the QoS service policy you defined.

Configuring an L2VPN Quality of Service Policy in VLAN Mode
This procedure describes how to configure a L2VPN QoS policy in VLAN mode.

Note In VLAN mode, the interface name must include a subinterface. For example: GigabitEthernet0/1/0/1.1. The l2transport command must follow the interface type on the same CLI line. For example: interface GigabitEthernet 0/0/0/0.1 l2transport".

SUMMARY STEPS

1. configure 2. interface type interface-path-id.subinterface l2transport 3. service-policy [ input | output ] [ policy-map-name ] 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. interface type interface-path-id.subinterface l2transport Example:

RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/0.1 l2transport

Configures an interface or connection for L2 switching.

Note

In VLAN Mode, you must enter the l2transport keyword on the same line as the interface.

service-policy [ input | output ] [ policy-map-name ] Example:

RP/0/RSP0/CPU0:router(config-if)# service-policy input servpol1

Attaches a QoS policy to an input or output interface to be used as the service policy for that interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 118

Implementing Point to Point Layer 2 Services

Configuring Multisegment Pseudowire

Step 4

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Multisegment Pseudowire
This section describes these tasks:
Provisioning a Multisegment Pseudowire Configuration
Configure a multisegment pseudowire as a point-to-point (p2p) cross-connect. For more information on P2P cross-connects, see the "Configuring Static Point-to-Point Cross-Connects".

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. neighbor A.B.C.D pw-id value 6. pw-class class-name 7. exit 8. neighbor A.B.C.D pw-id value 9. pw-class class-name 10. commit

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router# configure
Enters L2VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 119

Provisioning a Multisegment Pseudowire Configuration

Implementing Point to Point Layer 2 Services

Step 3 Step 4 Step 5
Step 6 Step 7 Step 8

xconnect group group-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group MS-PW1

Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p ms-pw1

Enters P2P configuration submode. neighbor A.B.C.D pw-id value Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.165.200.25 pw-id 100

Configures a pseudowire for a cross-connect.

The IP address is that of the corresponding PE node.

The pw-id must match the pw-id of the PE node.

Note

For MSPW cross-connect configuration is performed at local PE, S-PE and Remote-PE.

pw-class class-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls

Enters pseudowire class submode, allowing you to define a pseudowire class template. exit Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# exit

Exits pseudowire class submode and returns the router to the parent configuration mode. neighbor A.B.C.D pw-id value Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.165.202.158 pw-id 300

Configures a pseudowire for a cross-connect. The IP address is that of the corresponding PE node. The pw-id must match the pw-id of the PE node.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 120

Implementing Point to Point Layer 2 Services

Provisioning a Global Multisegment Pseudowire Description

Step 9 Step 10

pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls
Enters pseudowire class submode, allowing you to define a pseudowire class template. commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# commit
Saves configuration changes to the running configuration file and remains in the configuration session.

Provisioning a Global Multisegment Pseudowire Description
S-PE nodes must have a description in the Pseudowire Switching Point Type-Length-Value (TLV). The TLV records all the switching points the pseudowire traverses, creating a helpful history for troubleshooting.
Each multisegment pseudowire can have its own description. For instructions, see the "Provisioning a Cross-Connect Description". If it does not have one, this global description is used.

SUMMARY STEPS

1. configure 2. l2vpn 3. description value 4. commit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. description value Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 121

Provisioning a Cross-Connect Description

Implementing Point to Point Layer 2 Services

Step 4

RP/0/RSP0/CPU0:router(config-l2vpn)# description S-PE1
Populates the Pseudowire Switching Point TLV. This TLV records all the switching points the pseudowire traverses. Each multisegment pseudowire can have its own description. If it does not have one, this global description is used. commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# commit
Saves configuration changes to the running configuration file and remains in the configuration session.

Provisioning a Cross-Connect Description
S-PE nodes must have a description in the Pseudowire Switching Point TLV. The TLV records all the switching points the pseudowire traverses, creating a history that is helpful for troubleshooting.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. description value 6. commit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. xconnect group group-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 122

Implementing Point to Point Layer 2 Services

Provisioning Switching Point TLV Security

Step 4 Step 5 Step 6

RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group MS-PW1
Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p ms-pw1
Enters P2P configuration submode. description value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# description MS-PW from T-PE1 to T-PE2
Populates the Pseudowire Switching Point TLV. This TLV records all the switching points the pseudowire traverses. Each multisegment pseudowire can have its own description. If it does not have one, a global description is used. For more information, see the "Provisioning a Multisegment Pseudowire Configuration". commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# commit
Saves configuration changes to the running configuration file and remains in the configuration session.

Provisioning Switching Point TLV Security
For security purposes, the TLV can be hidden, preventing someone from viewing all the switching points the pseudowire traverses.
Virtual Circuit Connection Verification (VCCV) may not work on multisegment pseudowires with the switching-tlv parameter set to "hide". For more information on VCCV, see the "Virtual Circuit Connection Verification on L2VPN".

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. encapsulation mpls 5. protocol ldp 6. switching-tlv hide 7. commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 123

Provisioning Switching Point TLV Security

Implementing Point to Point Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class dynamic_mpls
Enters pseudowire class submode, allowing you to define a pseudowire class template. encapsulation mpls Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation mpls
Sets pseudowire encapsulation to MPLS. protocol ldp Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-mpls)# protocol ldp
Sets pseudowire signaling protocol to LDP. switching-tlv hide Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-mpls)# switching-tlv hide
Sets pseudowire TLV to hide. commit Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 124

Implementing Point to Point Layer 2 Services

Enabling Multisegment Pseudowires

RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-mpls)#commit
Saves configuration changes to the running configuration file and remains in the configuration session.

Enabling Multisegment Pseudowires
Use the pw-status command after you enable the pw-status command. The pw-status command is disabled by default. Changing the pw-status command reprovisions all pseudowires configured under L2VPN.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-status 4. commit

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. l2vpn Example:

RP/0/RSP0/CPU0:router(config)# l2vpn

Enters Layer 2 VPN configuration mode. pw-status Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# pw-status

Enables all pseudowires configured on this Layer 2 VPN.

Note

Use the pw-status disable command to disable pseudowire status.

commit Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 125

Configuring Pseudowire Redundancy

Implementing Point to Point Layer 2 Services

Saves configuration changes to the running configuration file and remains in the configuration session.

Configuring Pseudowire Redundancy
Pseudowire redundancy allows you to configure a backup pseudowire in case the primary pseudowire fails. When the primary pseudowire fails, the PE router can switch to the backup pseudowire. You can elect to have the primary pseudowire resume operation after it becomes functional. These topics describe how to configure pseudowire redundancy:
Configuring Point-to-Point Pseudowire Redundancy
Perform this task to configure point-to-point pseudowire redundancy for a backup delay.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. backup disable {delay value | never} 5. exit 6. xconnect group group-name 7. p2p {xconnect-name} 8. neighbor A.B.C.D pw-id value 9. pw-class class-name 10. backup {neighbor A.B.C.D} {pw-id value} 11. end or commit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. pw-class class-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 126

Implementing Point to Point Layer 2 Services

Configuring Point-to-Point Pseudowire Redundancy

Step 4
Step 5 Step 6 Step 7 Step 8 Step 9

RP/O/RSP0/CPU0:router(config-l2vpn)# pw-class path1 RP/0/RSP0/CPU0:router(config-l2vpn-pwc)#
Configures the pseudowire class name. backup disable {delay value | never} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# backup disable delay 20
This command specifies how long the primary pseudowire should wait after it becomes active to take over from the backup pseudowire.
· Use the delay keyword to specify the number of seconds that elapse after the primary pseudowire comes up before the secondary pseudowire is deactivated. The range is from 0 to 180.
· Use the never keyword to specify that the secondary pseudowire does not fall back to the primary pseudowire if the primary pseudowire becomes available again, unless the secondary pseudowire fails.
exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# exit RP/O/RSP0/CPU0:router(config-l2vpn)#
Exits the current configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group A RP/0/RSP0/CPU0:router(config-l2vpn-xc)#
Enters the name of the cross-connect group p2p {xconnect-name} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p xc1
Enters a name for the point-to-point cross-connect. neighbor A.B.C.D pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.1.1.2 pw-id 2 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)#
Configures the pseudowire segment for the cross-connect. pw-class class-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 127

Forcing a Manual Switchover to the Backup Pseudowire

Implementing Point to Point Layer 2 Services

Step 10 Step 11

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)#pw-class path1
Configures the pseudowire class name. backup {neighbor A.B.C.D} {pw-id value} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# backup neighbor 10.2.2.2 pw-id 5 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw-backup)#
Configures the backup pseudowire for the cross-connect. · Use the neighbor keyword to specify the peer to the cross-connect. The A.B.C.D argument is the IPv4 address of the peer. · Use the pw-id keyword to configure the pseudowire ID. The range is from 1 to 4294967295.
end or commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw-backup)#end
or
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw-backup)#commit
Saves configuration changes. · When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)? [cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Forcing a Manual Switchover to the Backup Pseudowire
To force the router to switch over to the backup or switch back to the primary pseudowire, use the l2vpn switchover command in .EXEC mode
A manual switchover is made only if the peer specified in the command is actually available and the cross-connect moves to the fully active state when the command is entered.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 128

Implementing Point to Point Layer 2 Services

Configuring a Backup Pseudowire

Configuring a Backup Pseudowire
Perform this task to configure a backup pseudowire for a point-to-point neighbor.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. neighbor ip-address pw-id value 6. neighbor { A.B.C.D } { pw-id value } 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group A RP/0/RSP0/CPU0:router(config-l2vpn-xc)#
Enters the name of the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p rtrX_to_rtrY RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)#
Enters a name for the point-to-point cross-connect. neighbor ip-address pw-id value

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 129

Configuring Point-to-Point Pseudowire Redundancy

Implementing Point to Point Layer 2 Services

Step 6 Step 7

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.0.0.1 pw-id 2 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)#
Configures the pseudowire segment for the cross-connect. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.1.1.2 pw-id 11
Configures the backup pseudowire for the cross-connect. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Point-to-Point Pseudowire Redundancy
Perform this task to configure point-to-point pseudowire redundancy for a backup delay.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class { class-name } 4. backup disable { delayvalue | never } 5. exit 6. xconnect group group-name 7. p2p { xconnect-name } 8. neighbor { A.B.C.D } { pw-id value } 9. pw-class { class-name } 10. backup { neighbor A.B.C.D } { pw-id value } 11. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:
RP/0/RSP0/CPU0:router# configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 130

Implementing Point to Point Layer 2 Services

Configuring Point-to-Point Pseudowire Redundancy

Step 2 Step 3 Step 4
Step 5 Step 6 Step 7

Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. pw-class { class-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class path1 RP/0/RSP0/CPU0:router(config-l2vpn-pwc)#
Configures the pseudowire class name. backup disable { delayvalue | never } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# backup disable delay 20
This command specifies how long the primary pseudowire should wait after it becomes active to take over for the backup pseudowire.
· Use the delay keyword to specify the number of seconds that elapse after the primary pseudowire comes up before the secondary pseudowire is deactivated. The range, in seconds, is from 0 to 180.
· Use the never keyword to specify that the secondary pseudowire does not fall back to the primary pseudowire if the primary pseudowire becomes available again, unless the secondary pseudowire fails.
exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:router(config-l2vpn)#
Exits the current configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group A RP/0/RSP0/CPU0:router(config-l2vpn-xc)#
Enters the name of the cross-connect group. p2p { xconnect-name } Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 131

Forcing a Manual Switchover to the Backup Pseudowire

Implementing Point to Point Layer 2 Services

Step 8 Step 9 Step 10
Step 11

RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)#
Enters a name for the point-to-point cross-connect. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.1.1.2 pw-id 2 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)#
Configures the pseudowire segment for the cross-connect. pw-class { class-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class path1
Configures the pseudowire class name. backup { neighbor A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# backup neighbor 10.2.2.2 pw-id 5 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw-backup)#
Configures the backup pseudowire for the cross-connect. · Use the neighbor keyword to specify the peer to the cross-connect. The A.B.C.D argument is the IPv4 address of the peer. · Use the pw-id keyword to configure the pseudowire ID. The range is from 1 to 4294967295.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Forcing a Manual Switchover to the Backup Pseudowire
To force the router to switch over to the backup or primary pseudowire, use the l2vpn switchover command in EXEC mode.
A manual switchover is made only if the peer specified in the command is actually available and the cross-connect moves to the fully active state when the command is entered.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 132

Implementing Point to Point Layer 2 Services

Configuring Preferred Tunnel Path

Configuring Preferred Tunnel Path
This procedure describes how to configure a preferred tunnel path.

Note The tunnel used for the preferred path configuration is an MPLS Traffic Engineering (MPLS-TE) tunnel.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class {name} 4. encapsulation mpls 5. preferred-path {interface} {tunnel-ip value | tunnel-te value | tunnel-tp value} [fallback disable] 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RP0/CPU0:router# configure
Enters the configuration mode. l2vpn Example:
RP/0/RP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. pw-class {name} Example:
RP/0/RP0/CPU0:router(config-l2vpn)# pw-class path1
Configures the pseudowire class name. encapsulation mpls Example:
RP/0/RP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls
Configures the pseudowire encapsulation to MPLS. preferred-path {interface} {tunnel-ip value | tunnel-te value | tunnel-tp value} [fallback disable] Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 133

Configuring PW Status OAM

Implementing Point to Point Layer 2 Services

Step 6

RP/0/RP0/CPU0:router(config-l2vpn-pwc-encap-mpls)# preferred-path interface tunnel-te 11 fallback disable
Configures preferred path tunnel settings. If the fallback disable configuration is used and once the TE/TP tunnel is configured as the preferred path goes down, the corresponding pseudowire can also go down.
Use the commit or end command.
commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PW Status OAM
Perform this task to configure pseudowire status OAM.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-oam refresh transmit seconds 4. endorcommit

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0RP0/CPU0:router# configure
Enters the configuration mode.

l2vpn Example:
RP/0/RSP0RP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.

pw-oam refresh transmit seconds

Example:

RP/0/RSP0RP0/CPU0:router(config-l2vpn)# pw-oam refresh transmit 100

Enables pseudowire OAM functionality..

Note

The refresh transmit interval ranges from 1 to 40 seconds.

endorcommit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 134

Implementing Point to Point Layer 2 Services

Enabling Flow-based Load Balancing

Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn)# end
or
RP/0/RSP0RP0/CPU0:router(config-l2vpn)# commit
Saves configuration changes.
· When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Enabling Flow-based Load Balancing
Perform this task to enable flow-based load balancing.

SUMMARY STEPS

1. configure 2. l2vpn 3. load-balancing flow {src-dst-mac | src-dst-ip} 4. endorcommit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0RP0/CPU0:router# configure
Enters the configuration mode.
l2vpn Example:
RP/0/RSP0RP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
load-balancing flow {src-dst-mac | src-dst-ip} Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 135

Enabling Flow-based Load Balancing for a Pseudowire Class

Implementing Point to Point Layer 2 Services

Step 4

RP/0/RSP0RP0/CPU0:router(config-l2vpn)# load-balancing flow src-dst-ip
Enables flow based load balancing for all the pseudowires and bundle EFPs under L2VPN, unless otherwise explicitly specified for pseudowires via pseudowire class and bundles via EFP-hash.
endorcommit Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn)# end
or
RP/0/RSP0RP0/CPU0:router(config-l2vpn)# commit
Saves configuration changes.
· When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Enabling Flow-based Load Balancing for a Pseudowire Class
Perform this task to enable flow-based load balancing for a pseudowire class.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class {name} 4. encapsulation mpls 5. load-balancing pw-label 6. endorcommit

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0RP0/CPU0:router# configure
Enters the configuration mode.
l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 136

Implementing Point to Point Layer 2 Services

Enabling Pseudowire Grouping

Step 3 Step 4 Step 5 Step 6

Example:
RP/0/RSP0RP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
pw-class {name} Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn)# pw-class path1
Configures the pseudowire class name.
encapsulation mpls Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls
Configures the pseudowire encapsulation to MPLS.
load-balancing pw-label Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn-pwc-encap-mpls)# load-balancing pw-label
Enables all pseudowires using the defined class to use virtual circuit based load balancing.
endorcommit Example:
RP/0/RSP0RP0/CPU0:router(config-l2vpn-pwc-encap-mpls)# end
or
RP/0/RSP0RP0/CPU0:router(config-l2vpn-pwc-encap-mpls)# commit
Saves configuration changes. · When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Enabling Pseudowire Grouping
Perform this task to enable pseudowire grouping.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 137

Setting Up Your Multicast Connections

Implementing Point to Point Layer 2 Services

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-grouping 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode.
pw-grouping Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-grouping
Enables pseudowire grouping
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Setting Up Your Multicast Connections
Refer to the Implementing Multicast Routing on Cisco ASR 9000 Series Aggregation Services Routers module of the Cisco ASR 9000 Series Aggregation Services Router Multicast Configuration Guide and the Multicast Routing and Forwarding Commands on Cisco ASR 9000 Series Aggregation Services Routers module of the Cisco ASR 9000 Series Aggregation Services Router Multicast Command Reference.

SUMMARY STEPS

1. configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 138

Implementing Point to Point Layer 2 Services

Setting Up Your Multicast Connections

DETAILED STEPS

2. multicast-routing [address-family ipv4] 3. interface all enable 4. exit 5. router igmp 6. version {1 | 2 | 3} 7. endorcommit 8. show pim [ipv4] group-map [ip-address-name] [info-source] 9. show pim [vrf vrf-name] [ipv4] topology [source-ip-address [group-ip-address] |
entry-flag flag | interface-flag | summary] [route-count]

Step 1 Step 2
Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters global configuration mode.

multicast-routing [address-family ipv4] Example:
RP/0/RSP0/CPU0:router(config)# multicast-routing
Enters multicast routing configuration mode. · These multicast processes are started: MRIB, MFWD, PIM, and IGMP. · For IPv4, IGMP version 3 is enabled by default. · For IPv4, use the
address-family ipv4
keywords

interface all enable Example:
RP/0/RSP0/CPU0:router(config-mcast-ipv4)# interface all enable
Enables multicast routing and forwarding on all new and existing interfaces.

exit

Example:

RP/0/RSP0/CPU0:router(config-mcast-ipv4)# exit

Exits multicast routing configuration mode, and returns the router to the parent configuration mode.

Note

For Leaf PEs, if you intend to enable IGMPSN on the bridge domain, ensure that you configure internal

querier inside the IGMPSN profile.

router igmp Example:
RP/0/RSP0/CPU0:router(config)# router igmp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 139

Setting Up Your Multicast Connections

Implementing Point to Point Layer 2 Services

Step 6 Step 7
Step 8 Step 9

(Optional) Enters router IGMP configuration mode.
version {1 | 2 | 3} Example:
RP/0/RSP0/CPU0:router(config-igmp)# version 3
(Optional) Selects the IGMP version that the router interface uses. · The default for IGMP is version 3. · Host receivers must support IGMPv3 for PIM-SSM operation. · If this command is configured in router IGMP configuration mode, parameters are inherited by all new and existing interfaces. You can override these parameters on individual interfaces from interface configuration mode.
endorcommit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# end
or
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#commit
Saves configuration changes. · When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.
show pim [ipv4] group-map [ip-address-name] [info-source] Example:
RP/0//CPU0:router# show pim ipv4 group-map
(Optional) Displays group-to-PIM mode mapping.
show pim [vrf vrf-name] [ipv4] topology [source-ip-address [group-ip-address] | entry-flag flag | interface-flag | summary] [route-count] Example:
RP/0/RSP0/CPU0:router# show pim topology
(Optional) Displays PIM topology table information for a specific group or all groups.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 140

Implementing Point to Point Layer 2 Services

Configuring AToM IP Interworking

Configuring AToM IP Interworking
Perform this task to configure AToM IP Interworking.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect groupgroup-name 4. p2pxconnect-name 5. interworking ipv4 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
xconnect groupgroup-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group.
p2pxconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Enters a name for the point-to-point cross-connect.
interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 141

Configuring PPP IP Interworking

Implementing Point to Point Layer 2 Services

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PPP IP Interworking
Perform this tasks to configure PPP IP Interworking:

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. encapsulation ppp 4. l2transport 5. end 6. l2vpn 7. xconnect group group-name 8. p2p xconnect-name 9. interface type interface-path-id 10. interface type interface-path-id 11. interworking ipv4 12. interface type interface-path-id 13. neighborA.B.C.Dpw-id 14. pw-class interface-path-id 15. exit 16. interworking ipv4 17. endorcommit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/0/CPU0:router# configure
Enters global configuration mode.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Serial0/2/1/0/1/1/1:0
Specifies the interface type and instance.
encapsulation ppp Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 142

Implementing Point to Point Layer 2 Services

Configuring PPP IP Interworking

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

RP/0/RSP0/CPU0:router(config-if)# encapsulation ppp
Sets encapsulation type to PPP.
l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# l2transport
Enables Layer 2 transport on the selected interface.
end Example:
RP/0/RSP0/CPU0:router(config-if-l2)# end
Returns to global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group.
p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p 1
Enters a name for the point-to-point cross-connect.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Serial0/2/1/0/1/1/1:0
Specifies the interface type and instance.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/1.1
Specifies the interface type and instance.
interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.
interface type interface-path-id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 143

Configuring PPP IP Interworking

Implementing Point to Point Layer 2 Services

Step 13
Step 14 Step 15 Step 16 Step 17

Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/1.1
Specifies the interface type and instance.

neighborA.B.C.Dpw-id

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Serial0/0/0/0/2/1/1:0

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN

pw-class interface-path-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# pw-class class_c1
Enters pseudowire class submode, allowing you to define a pseudowire class template.

exit Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# exit
Exits the current configuration mode.

interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.

endorcommit
Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# end
or
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#commit
Saves configuration changes.
· When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 144

Implementing Point to Point Layer 2 Services

Configuring IP Interworking between PPP and Ethernet

· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Configuring IP Interworking between PPP and Ethernet
Perform this tasks to configure PPP IP Interworking:

SUMMARY STEPS

1. configure 2. interface typeinterface-path-id 3. l2transport 4. end 5. l2vpn 6. xconnect groupgroup-name 7. p2pxconnect-name 8. interface typeinterface-path-id 9. interface type interface-path-id 10. interworking ipv4 11. interface type interface-path-id 12. neighborA.B.C.Dpw-id 13. pw-classclass-name 14. pw-classclass-name 15. exit 16. interworking ipv4 17. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Serial0/2/1/0/1/1/1:0
Specifies the interface type and instance. l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# l2transport

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 145

Configuring IP Interworking between PPP and Ethernet

Implementing Point to Point Layer 2 Services

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

Enables Layer 2 transport on the selected interface.
end Example:
RP/0/RSP0/CPU0:router(config-if-l2)# end
Returns to global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
xconnect groupgroup-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group.
p2pxconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p 1
Enters a name for the point-to-point cross-connect.
interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Serial0/2/1/0/1/1/1:0
Specifies the interface type and instance.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/1.1
Specifies the interface type and instance.
interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Serial0/0/0/0/2/1/1:0
Specifies the interface type and instance.
neighborA.B.C.Dpw-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 146

Implementing Point to Point Layer 2 Services

Configuring MLPPP IP Interworking

Step 13
Step 14 Step 15 Step 16 Step 17

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Serial0/0/0/0/2/1/1:0

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN

pw-classclass-name

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Serial0/0/0/0/2/1/1:0

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN

pw-classclass-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# pw-class class_cem
Enters pseudowire class submode, allowing you to define a pseudowire class template.

exit Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# exit
Exits the current configuration mode.

interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring MLPPP IP Interworking
Perform this tasks to configure cHDLC IP Interworking:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 147

Configuring MLPPP IP Interworking

Implementing Point to Point Layer 2 Services

SUMMARY STEPS

1. configure 2. interface typeinterface-path-id 3. multilink [fragment|interleave|ncp] 4. l2transport 5. end 6. l2vpn 7. xconnect group group-name 8. p2p xconnect-name 9. interface typeinterface-path-id 10. interface typeinterface-path-id 11. interworking ipv4 12. interface typeinterface-path-id 13. neighbor{A.B.C.D}{pw-idvalue} 14. pw-classclass-name 15. exit 16. interworking ipv4 17. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Multilink0/2/1/0/1
Specifies the interface type and instance.
multilink [fragment|interleave|ncp] Example:
RP/0/RSP0/CPU0:router(config-if)# multilink
Modifies multilink parameters
l2transport Example:
RP/0/RSP0/CPU0:router(config-if-multilink)# l2transport
Enables Layer 2 transport on the selected interface.
end Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 148

Implementing Point to Point Layer 2 Services

Configuring MLPPP IP Interworking

Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12 Step 13

RP/0/RSP0/CPU0:router(config-if-l2)# end
Returns to global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Enters the name of the cross-connect group.
p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p 1
Enters a name for the point-to-point cross-connect.
interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface Serial0/2/1/0/1/1/1:0
Specifies the interface type and instance.
interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/1.1
Specifies the interface type and instance.
interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.
interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface Serial0/0/0/0/2/1/1:0
Specifies the interface type and instance.
neighbor{A.B.C.D}{pw-idvalue} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 120.120.120.120 pw-id 3
Configures the pseudowire segment for the cross-connect. Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 149

Configuring Circuit Emulation Over Packet Switched Network

Implementing Point to Point Layer 2 Services

Step 14 Step 15 Step 16 Step 17

Note

A.B.C.D can be a recursive or non-recursive prefix

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN

pw-classclass-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# pw-class class_cem
Enters pseudowire class submode, allowing you to define a pseudowire class template.

exit Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# exit
Exits the current configuration mode.

interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interworking ipv4
Configures IPv4 interworking under P2P.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Circuit Emulation Over Packet Switched Network
Perform these tasks to configure CEoP:
Adding CEM attachment circuit to a Pseudowire
Perform this task to add a CEM attachment circuit to a pseudowire.:

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor A.B.C.D pw-id 7. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 150

Implementing Point to Point Layer 2 Services

Adding CEM attachment circuit to a Pseudowire

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn

Enters L2VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1

Enters the name of the cross-connect group.
p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1

Enters a name for the point-to-point cross-connect.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface CEM0/1/0/9:10

Specifies the interface type and instance.
neighbor A.B.C.D pw-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 120.120.120.120 pw-id 3

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 151

Associating a Pseudowire Class

Implementing Point to Point Layer 2 Services

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Associating a Pseudowire Class
Perform this task to associate the attachment circuit with a pseudowire class.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. encapsulation mpls 5. protocol ldp 6. end 7. xconnect group group-name 8. p2p xconnect-name 9. interface type interface-path-id 10. neighbor A.B.C.D pw-id pseudowire-id 11. pw-class class-name 12. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. pw-class class-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# pw-class class_cem
Enters pseudowire class submode, allowing you to define a pseudowire class template.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 152

Implementing Point to Point Layer 2 Services

Associating a Pseudowire Class

Step 4 Step 5 Step 6
Step 7 Step 8 Step 9

encapsulation mpls Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation mpls
Sets pseudowire encapsulation to MPLS. protocol ldp Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-mpls)# protocol ldp
Sets pseudowire signaling protocol to LDP. end Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc-encap-mpls)# end
System prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· · Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Configures a cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Configures a point-to-point cross-connect. interface type interface-path-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 153

Enabling Pseudowire Status

Implementing Point to Point Layer 2 Services

Step 10
Step 11 Step 12

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface CEM0/1/0/9:20

Specifies the interface type and instance. neighbor A.B.C.D pw-id pseudowire-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.2.2.2 pw-id 11

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix.

Optionally, you can disable the control word or set the transport-type to Ethernet or VLAN.

Note

Pseudowire status (pw-status) is enabled by default, use the pw-status disable command to disable

pseudowire status if required.

pw-class class-name Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# pw-class class_cem

Associates the P2P attachment circuit with the specified pseudowire class.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Enabling Pseudowire Status
Perform this task to enable pseudowire status.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-status 4. commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 154

Implementing Point to Point Layer 2 Services

Configuring a Backup Pseudowire

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters global configuration mode.

l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.

pw-status

Example:

RP/0/RSP0/CPU0:router (config-l2vpn)# pw-status

Enables all pseudowires configured on this Layer 2 VPN.

Note

Use the pw-status disable command to disable pseudowire status.

commit Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# commit
Saves configuration changes to the running configuration file and remains in the configuration session.

Configuring a Backup Pseudowire
Perform this task to configure a backup pseudowire for a point-to-point neighbor.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. neighbor ip-address pw-id value 6. neighbor { A.B.C.D } { pw-id value } 7. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 155

Configuring a Backup Pseudowire

Implementing Point to Point Layer 2 Services

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group A RP/0/RSP0/CPU0:router(config-l2vpn-xc)#
Enters the name of the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p rtrX_to_rtrY RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)#
Enters a name for the point-to-point cross-connect. neighbor ip-address pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.0.0.1 pw-id 2 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)#
Configures the pseudowire segment for the cross-connect. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.1.1.2 pw-id 11
Configures the backup pseudowire for the cross-connect. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 156

Implementing Point to Point Layer 2 Services

Configuring L2VPN Nonstop Routing

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2VPN Nonstop Routing
Perform this task to configure L2VPN Nonstop Routing.

SUMMARY STEPS

1. configure 2. l2vpn 3. nsr 4. logging nsr 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the Global Configuration mode. nsr Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# nsr
Enables L2VPN nonstop routing. logging nsr Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# logging nsr
Enables logging of NSR events. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 157

Configure MPLS LDP Nonstop Routing

Implementing Point to Point Layer 2 Services

commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure MPLS LDP Nonstop Routing
Perform this task to enable Label Distribution Protocol (LDP) Nonstop Routing (NSR) for synchronizing label information between active and standby LDPs. From Release 6.1.1 onwards, with the introduction of stateful LDP feature, you must explicitly configure LDP NSR to synchronize label information between active and standby LDPs.

SUMMARY STEPS

1. configure 2. mpls ldp 3. nsr 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. mpls ldp Example:
RP/0/RSP0/CPU0:router(config)# mpls ldp
Enters MPLS LDP configuration mode. nsr Example:
RP/0/RSP0/CPU0:router(config-ldp)# nsr
Enables LDP nonstop routing. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 158

Implementing Point to Point Layer 2 Services

Configuring L2TPv3 over IPv6 Tunnels

end - Prompts user to take one of these actions: · Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2TPv3 over IPv6 Tunnels
Perform these tasks to configure the L2TPv3 over IPv6 tunnels:
Configuring Neighbor AFI for Pseudowire
Perform this task to configure the neighbor AFI for pseudowire.

Restriction L2TPv3 over IPv6Tunnels is supported only on layer 2 transport sub-interfaces and not physical interfaces.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor ipv6 X:X::X pw-idpseudowire-id 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 159

Configuring L2TPv3 encapsulation and protocol

Implementing Point to Point Layer 2 Services

Step 3 Step 4 Step 5
Step 6 Step 7

xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp_1
Configures a cross-connect group and specifies it's name. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1
Configures a point-to-point cross-connect. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface GigabitEthernet0/4/0/30
Specifies the interface type ID. The choices are: · GigabitEthernet: Gigabit Ethernet/IEEE 802.3 interfaces · TenGigE: TenGigabit Ethernet/IEEE 802.3 interfaces
neighbor ipv6 X:X::X pw-idpseudowire-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id 2000
Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2TPv3 encapsulation and protocol
Perform this task to configure L2TPv3 encapsulation and protocol.

SUMMARY STEPS

1. configure 2. l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 160

Implementing Point to Point Layer 2 Services

Configuring L2TPv3 encapsulation and protocol

DETAILED STEPS

3. pw-class class-name 4. encapsulation l2tpv3 5. protocol l2tpv3 6. Use the commit or end command.

Step 1 Step 2 Step 3
Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. pw-class class-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# pw-class l2tpv3_class
Enters pseudowire class submode, allows a pseudowire class template definition. These keywords can be configured in the pseudowire class (pw-class) configuration mode; however, the keywords are not applicable for the over L2TPv3 over IPv6 tunnels:
· cookie · dfbit · ipv4 source · pmtu · sequencing · transport-mode encapsulation l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation l2tpv3
Sets pseudowire encapsulation to L2TPv3 protocol l2tpv3 Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 161

Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel

Implementing Point to Point Layer 2 Services

Step 6

RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# protocol l2tpv3
Sets pseudowire signaling protocol to L2TPv3.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel
Perform this task to configure the source IPv6 address for the L2TPv3 over IPv6 tunnel.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor ipv6 peer-address pw-id pseudowire-id 7. source pw-source-address 8. end or commit

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# xconnect group g1
Configures the cross-connect group.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 162

Implementing Point to Point Layer 2 Services

Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel

Step 4 Step 5 Step 6 Step 7
Step 8

p2p xconnect-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc)# p2p xc3
Configures the point-to-point cross-connect.

interface type interface-path-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# interface GigabitEthernet0/0/0/4.2
Specifies the interface type ID.

neighbor ipv6 peer-address pw-id pseudowire-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id 1
Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect.

source pw-source-address

Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# source 1111:2222::abcd

Configures the source IPv6 address of the pseudowire.

Note

The source IPv6 address must be unique and chosen arbitrarily. It should not be configured on any type of

interfaces in the router.

end or commit
Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# end
or
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# commit
Saves configuration changes.
· When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.

· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 163

Configuring Local and Remote Sessions

Configuring Local and Remote Sessions
Perform this task to configure local and remote sessions.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor ipv6 peer-address pw-id pseudowire-id 7. l2tp static local session session-id 8. l2tp static remote session session-id 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# xconnect group g1
Configures the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc)# p2p xc3
Configures the point-to-point cross-connect. interface type interface-path-id

Implementing Point to Point Layer 2 Services

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 164

Implementing Point to Point Layer 2 Services

Configuring Local And Remote Cookies

Step 6 Step 7 Step 8 Step 9

Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# interface GigabitEthernet0/0/0/4.2

Specifies the interface type ID. neighbor ipv6 peer-address pw-id pseudowire-id Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id 1

Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect. l2tp static local session session-id Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static local session 1

(Optional) Configures a static local session for the L2TP pseudowire.

Note

If you configure the local session ID, it is ignored for decapsulation-side processing by the ASR9000 Series

routers.

l2tp static remote session session-id Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static remote session 1

(Optional) Configures a static remote session for the L2TP pseudowire.

Note

When configured, remote session value(expected at the decapsulation side) is used for encapsulation- side

processing, and the value in the session value field of the L2TPv3 header is programmed.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Local And Remote Cookies
Perform this task to configure local and remote cookies.

SUMMARY STEPS

1. configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 165

Configuring Local And Remote Cookies

Implementing Point to Point Layer 2 Services

DETAILED STEPS

2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor ipv6 peer-address pw-id pseudowire-id 7. l2tp static local cookie size bytes 8. l2tp static local cookie size bytes 9. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# xconnect group g1
Configures the cross-connect group. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc)# p2p xc3
Configures the point-to-point cross-connect. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# interface GigabitEthernet0/0/0/4.2
Specifies the interface type ID.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 166

Implementing Point to Point Layer 2 Services

Enabling L2TP Static Submode

Step 6 Step 7 Step 8 Step 9

neighbor ipv6 peer-address pw-id pseudowire-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id 1

Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect. l2tp static local cookie size bytes Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static local cookie size 0

Configures the static local cookie size settings for the L2TP pseudowire.

Note

In the case of a non-zero cookie size, the value of the cookie is a mandatory argument.

l2tp static local cookie size bytes Example:

RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static remote cookie size 0

Configures the static remote cookie size settings for the L2TP pseudowire.

Note

In the case of a non-zero cookie size, the value of the cookie is a mandatory argument.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Enabling L2TP Static Submode
Perform this task to enable L2TP static submode.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name 4. p2p xconnect-name 5. interface type interface-path-id 6. neighbor ipv6 peer-address pw-id pseudowire-id 7. l2tp static 8. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 167

Enabling L2TP Static Submode

Implementing Point to Point Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

configure Example:
RP/0/RSP0/CPU0:router # configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.
xconnect group group-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# xconnect group g1
Configures the cross-connect group.
p2p xconnect-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc)# p2p xc3
Configures the point-to-point cross-connect.
interface type interface-path-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# interface GigabitEthernet0/0/0/4.2
Specifies the interface type ID.
neighbor ipv6 peer-address pw-id pseudowire-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id
Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect.
l2tp static Example:
RP/0/RSP0/CPU0:router (config-l2vpn)#
Enters L2TP static configuration submode.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 168

Implementing Point to Point Layer 2 Services

Enabling TOS Reflection in the L2TPv3 Header

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Enabling TOS Reflection in the L2TPv3 Header
Perform this task to enable the type of service (TOS) reflection in the L2TPv3 header.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-classclass-name 4. encapsulation l2tpv3 5. protocol l2tpv3 6. neighbor ipv6peer-address pw-id pseudowire-id 7. tos { reflect | value } 8. endorcommit

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.
pw-classclass-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# pw-class l2tpv3_class
Enters pseudowire class submode, and allows a pseudowire class template definition.
encapsulation l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation l2tpv3
Sets pseudowire encapsulation to L2TPv3.
protocol l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# protocol l2tpv3
Sets pseudowire signaling protocol to L2TPv3.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 169

Configuring TTL for L2TPv3 over IPv6 Tunnels

Implementing Point to Point Layer 2 Services

Step 6 Step 7
Step 8

neighbor ipv6peer-address pw-id pseudowire-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# neighbor ipv6 1111:2222::cdef pw-id
Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect.
tos { reflect | value } Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# tos reflect
or
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# tos value 50
Enables type of service (TOS) reflection. As a result, copies TOS from inner IP header to the L2TPv3 header. Additionally, use this command to set the value of TOS for the L2TPv3 pseudowire class. The range is from 0 to 255.
endorcommit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc-encap-l2tpv3)# end
or
RP/0/RSP0/CPU0:router(config-l2vpn-pwc-encap-l2tpv3)# commit
Saves configuration changes. · When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.
· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.
· Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Configuring TTL for L2TPv3 over IPv6 Tunnels
Perform this task to configure time to live (TTL) for L2TPv3 over IPv6 tunnels.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. encapsulation l2tpv3 5. protocol l2tpv3 6. ttl value

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 170

Implementing Point to Point Layer 2 Services

Configuring TTL for L2TPv3 over IPv6 Tunnels

DETAILED STEPS

7. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router # configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode.
pw-class class-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# pw-class l2tpv3_class
Enters pseudowire class submode, and allows a pseudowire class template definition.
encapsulation l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation l2tpv3
Sets pseudowire encapsulation to L2TPv3.
protocol l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# protocol l2tpv3
Sets pseudowire signaling protocol to L2TPv3.
ttl value Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# ttl 50
Sets time to live (TTL), in node hops, to a specified value. The range is from 1 to 255.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 171

Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels

Implementing Point to Point Layer 2 Services

Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels
Perform this task to configure traffic mirroring over L2TPv3 over IPv6 tunnels.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect groupgroup-name 4. p2p xconnect-name 5. monitor-session session-name 6. neighbor ipv6 peer-address pw-id pseudowire-id 7. pw-class class-name 8. sourcepw-source-address 9. l2tp static local cookie sizesizevaluebytes 10. l2tp static remote cookie sizesizevaluebytes 11. Use the commit or end command.
· L2TPv3 over IPv6 concepts, see L2TPv3 over IPv6. · Configuration examples, see Configuring L2TPv3 over IPv6 Tunnels: Example

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router # configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect groupgroup-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# xconnect group span
Configures the cross-connect group. p2p xconnect-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 172

Implementing Point to Point Layer 2 Services

Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels

Step 5 Step 6 Step 7 Step 8 Step 9

RP/0/RSP0/CPU0:router (config-l2vpn-xc)# p2p span-foo
Configures the point-to-point cross-connect. monitor-session session-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# monitor-session customer-foo
Specifies the monitor session. neighbor ipv6 peer-address pw-id pseudowire-id Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p)# neighbor ipv6 1111:3333::cdef pw-id 1001
Specifies the peer with which to cross connect, and configures the pseudowire segment for the cross-connect. pw-class class-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# pw-class ts
Enters pseudowire class submode, and allows a pseudowire class template definition. sourcepw-source-address Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# source 1111:3333::abcd
Configures the source IPv6 address of the pseudowire. l2tp static local cookie sizesizevaluebytes Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static local cookie size 8 value 0xabcd 0x1234

Step 10

Configures the static local cookie size settings for the L2TP pseudowire. l2tp static remote cookie sizesizevaluebytes Example:
RP/0/RSP0/CPU0:router (config-l2vpn-xc-p2p-pw)# l2tp static remote cookie size 8 value 0xcdef 0x5678

Configures the static remote cookie size settings for the L2TP pseudowire.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 173

Configuring L2TPv3 over IPv4 Tunnels

Implementing Point to Point Layer 2 Services

Step 11

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. For more information on: · L2TPv3 over IPv6 concepts, see L2TPv3 over IPv6. · Configuration examples, see Configuring L2TPv3 over IPv6 Tunnels: Example

Configuring L2TPv3 over IPv4 Tunnels

Restriction L2TPv3 over Ipv4 Tunnels is supported only on layer 2 transport sub-interfaces and not on physical interfaces. When an untagged traffic has to be sent through L2TPv3 over IPv4, create a sub-interface with encapsulation as untagged.
This example shows how to create a sub-interface with encapsulation as untagged:

interface TenGigE0/3/0/1.123 l2transport encapsulation untagged
Perform these tasks to configure the L2TPv3 over IPv4 tunnels:
Configuring a Dynamic L2TPv3 Pseudowire
Perform this task to configure a dynamic L2TPv3 pseudowire connecting to a remote IPv4 peer.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group name 4. p2p name 5. interface type interface-path-id 6. neighbor ipv4 ip-address pw-id number 7. pw-class pw-class-name 8. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 174

Implementing Point to Point Layer 2 Services

Configuring a Dynamic L2TPv3 Pseudowire

Step 2 Step 3 Step 4 Step 5
Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enter L2VPN configure submode. xconnect group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group L2TPV3_V4_XC_GRP
Enter a name for the cross-connect group. p2p name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p L2TPV3_P2P_1
Enters p2p configuration submode to configure point-to-point cross-connects. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface GigabitEthernet 0/2/0/0/0.1
Specifies the interface type ID. The choices are: · GigabitEthernet · TenGigE
neighbor ipv4 ip-address pw-id number Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv4 26.26.26.26 pw-id 100
Configures a pseudowire for a cross-connect. pw-class pw-class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class L2TPV3_V4_CLASS
Enters pseudowire class submode to define a name for the cross-connect. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 175

Configuring L2TPv3 Encapsulation and Protocol

Implementing Point to Point Layer 2 Services

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2TPv3 Encapsulation and Protocol
Perform this task to configure L2TPv3 encapsulation and protocol.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. encapsulation l2tpv3 5. protocol l2tpv3 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3
Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router (config)# l2vpn
Enters Layer 2 VPN configuration mode. pw-class class-name Example:
RP/0/RSP0/CPU0:router (config-l2vpn)# pw-class l2tpv3_class
Enters pseudowire class submode, allows a pseudowire class template definition. These keywords can be configured in the pseudowire class (pw-class) configuration mode:
· cookie · dfbit · ipv4 source encapsulation l2tpv3

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 176

Implementing Point to Point Layer 2 Services

Configuring L2TP Control-Channel Parameters

Step 5 Step 6

Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc)# encapsulation l2tpv3
Sets pseudowire encapsulation to L2TPv3 protocol l2tpv3 Example:
RP/0/RSP0/CPU0:router (config-l2vpn-pwc-encap-l2tpv3)# protocol l2tpv3
Sets pseudowire signaling protocol to L2TPv3. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2TP Control-Channel Parameters
L2TP control-channel parameters are used in control-channel authentication, keepalive messages, and control-channel negotiation. In a L2tpv3 session, the same L2TP class must be configured on both PE routers. The following L2TP control-channel parameters can be configured in L2TP class configuration mode:
· Authentication for the L2TP control-channel · Password used for L2TP control-channel authentication · Retransmission parameters used for control messages. · Timeout parameters used for the control-channel. · Maintenance Parameters · L2TPv3 Control Message Hashing
Perform this task to create a template of L2TP control-channel parameters that can be inherited by different pseudowire classes.

SUMMARY STEPS

1. configure 2. l2tp-class l2tp-class-name 3. authentication 4. password {0 | 7} password 5. retransmit { initial retries initial-retries | retries retries | timeout { max | min } timeout } 6. hello-interval interval

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 177

Configuring L2TP Control-Channel Parameters

Implementing Point to Point Layer 2 Services

DETAILED STEPS

7. digest { check disable | hash { MD5 | SHA1 } ] | secret { 0 | 7 } password ] 8. hidden

Step 1 Step 2 Step 3 Step 4
Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2tp-class l2tp-class-name Example:
RP/0/RSP0/CPU0:router(config)# l2tp-class L2TP-CLASS
Specifies the L2TP class name and enters L2TP class configuration mode. authentication Example:
RP/0/RSP0/CPU0:router(config-l2tp-class)# authentication
Enables authentication for the control-channel between PE routers. password {0 | 7} password Example:
RP/0/RSP0/CPU0:router(config-l2tp-class)# password 7 pwd_1
Configures the password used for control-channel authentication. · [0 | 7]--Specifies the input format of the shared secret. The default value is 0. · 0--Specifies an encrypted password will follow. · 7--Specifies an unencrypted password will follow. · password--Defines the shared password between peer routers.
retransmit { initial retries initial-retries | retries retries | timeout { max | min } timeout } Example:
RP/0/RSP0/CPU0:router(config-l2tp-class)# retransmit retries 10
Configures parameters that affect the retransmission of control packets.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 178

Implementing Point to Point Layer 2 Services

Configuring L2TP Control-Channel Parameters

Step 6 Step 7
Step 8

· initial retries--Specifies how many SCCRQs are re-sent before giving up on the session. Range is 1 to 1000. The default is 2.
· retries--Specifies how many retransmission cycles occur before determining that the peer PE router does not respond. Range is 1 to 1000. The default is 15.
· timeout { max | min }--Specifies maximum and minimum retransmission intervals (in seconds) for resending control packets. Range is 1 to 8. The default maximum interval is 8; the default minimum interval is 1.

hello-interval interval Example:

RP/0/RSP0/CPU0:router(config-l2tp-class)# hello-interval 10

Specifies the exchange interval (in seconds) used between L2TP hello packets. · Valid values for the interval argument range from 0 to 1000. The default value is 60.

digest { check disable | hash { MD5 | SHA1 } ] | secret { 0 | 7 } password ] Example:

RP/0/RSP0/CPU0:router(config-l2tp-class)# digest hash MD5

Enables L2TPv3 control-channel authentication or integrity checking. · secret--Enables L2TPv3 control-channel authentication.

Note

If the digest command is issued without the secret keyword option, L2TPv3 integrity checking is enabled.

· {0 | 7}--Specifies the input format of the shared secret. The default value is 0.

· 0--Specifies that a plain-text secret is entered.

· 7--Specifies that an encrypted secret is entered.

· password--Defines the shared secret between peer routers. The value entered for the password argument must be in the format that matches the input format specified by the {0 | 7} keyword option.
· hash { MD5 | SHA1}--Specifies the hash function to be used in per-message digest calculations.
· MD5--Specifies HMAC-MD5 hashing (default value). · SHA1--Specifies HMAC-SHA-1 hashing.

hidden Example:

RP/0/RSP0/CPU0:router(config-l2tp-class)# hidden

Enables AVP hiding when sending control messages to an L2TPv3 peer.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 179

Configuring L2VPN Single Segment Pseudowire

Implementing Point to Point Layer 2 Services

Configuring L2VPN Single Segment Pseudowire
To configure single segment pseudowire in the network, do the following: 1. (Optional) Configuring the related L2VPN Global Parameters. See Configuring L2VPN Global Parameters
This procedure is used to overwrite the default BGP Route Distinguisher (RD) auto-generated value and also the Autonomous System Number (ASN) and Route Identifier (RID) of BGP. 2. Configuring L2VPN VPWS SS-PW 3. Configuring L2VPN MS-PW Address Family Under BGP The address family is configured under BGP to exchange the dynamic pseudowire routes.

Configuring L2VPN Global Parameters
Perform this task to configure L2VPN global parameters.

SUMMARY STEPS

1. configure 2. l2vpn 3. router-id router-id 4. pw-routing 5. global-id global-id 6. bgp 7. rd route-distinguisher 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. router-id router-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 180

Implementing Point to Point Layer 2 Services

Configuring L2VPN VPWS SS-PW

Step 4 Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config)# router 2.2.2.2
Specifies the router ID. pw-routing Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-routing
Enables pseudowire routing capabilities and enters the pseudowire routing configuration submode global-id global-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwr)# global-id 1000
Configures the L2VPN global ID value for the router. bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwr)# bgp
Enables the BGP pseudowire routing capabilities and enters the BGP configuration submode. rd route-distinguisher Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwr-bgp)# rd 192.168.1.3:10
Configures the BGP route distinguisher. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2VPN VPWS SS-PW
Perform this task to configure L2VPN VPWS SS-PWs.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 181

Configuring L2VPN VPWS SS-PW

Implementing Point to Point Layer 2 Services

SUMMARY STEPS

1. configure 2. interface typeinterface-path-id 3. l2vpn 4. xconnect group group-name 5. p2p xconnect-name 6. interface type interface-path-id 7. neighbor routed global-id: prefix: ac-id source ac-id 8. (optional) pw-class class-name 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface typeinterface-path-id Example:
RP/0/RSP0/CPU0:routerRP/0/RP00RSP0/CPU0:router# interface TenGigE0/1/0/12
Enters interface configuration mode and configures an interface. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pw-he1
Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pw-ss

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 182

Implementing Point to Point Layer 2 Services

Configuring L2VPN MS-PW Address Family Under BGP

Step 6 Step 7 Step 8 Step 9

Enters P2P configuration submode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/9
Specifies the interface type and instance. neighbor routed global-id: prefix: ac-id source ac-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor routed 100:2.2.2.2:10 source 10
Enables pseudowire routing configuration submode for the p2p cross-connect. (optional) pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pwr)# pw-class dynamic_sspw
Enters pseudowire class submode, allowing you to define a pseudowire class template. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2VPN MS-PW Address Family Under BGP
Perform this task to configure L2VPN MS-PW address family under BGP:

SUMMARY STEPS

1. configure 2. router bgp autonomous-system-number 3. address-family l2vpn mspw 4. neighbor ip-address 5. address-family l2vpn mspw 6. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 183

Configuring L2VPN MS-PW Address Family Under BGP

Implementing Point to Point Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. router bgp autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Enters router configuration mode for the specified routing process. address-family l2vpn mspw Example:
RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn mspw
Specifies the L2VPN address family and enters address family configuration mode. neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.10.10.1
Adds the IP address of the neighbor in the specified autonomous system. address-family l2vpn mspw Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# address-family l2vpn mspw
Specifies the L2VPN address family of the neighbor and enters address family configuration mode. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 184

Implementing Point to Point Layer 2 Services

Verifying Single-Segment Pseudowires

Verifying Single-Segment Pseudowires
To verify the connectivity in SS-PWs, use the ping mpls pseudowire command.
Displaying Information about the L2VPN Single-Segment Pseudowires
The show commands are used to display information about L2VPN Single Segment Pseudowires · show bgp l2vpn mspw · show l2vpn pwr summary · show l2vpn xc

How to Configure EPVN-VPWS
The following steps are performed to configure EVPN-VPWS:
Configuring L2VPN EVPN Address Family Under BGP
Perform this task to configure L2VPN EVPN address family under BGP:

SUMMARY STEPS

1. configure 2. router bgp autonomous-system-number 3. address-family l2vpn evpn 4. neighbor ip-address 5. address-family l2vpn evpn 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. router bgp autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Enters router configuration mode for the specified routing process. address-family l2vpn evpn Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 185

Configuring EVPN-VPWS

Implementing Point to Point Layer 2 Services

Step 4 Step 5 Step 6

RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn evpn
Specifies the L2VPN address family and enters address family configuration mode. neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.10.10.1
Adds the IP address of the neighbor in the specified autonomous system. address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# address-family l2vpn evpn
Specifies the L2VPN address family of the neighbor and enters address family configuration mode. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring EVPN-VPWS
Perform this task to configure EVPN-VPWS.

Note You can configure the PWHE interface as well, using EVPN-VPWS. Refer to the Configuring Pseudowire Headend, on page 329 module for more information.

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. l2vpn 4. xconnect group group-name 5. p2p xconnect-name 6. interface type interface-path-id 7. neighbor evpn evi vpn-idtarget ac-id 8. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 186

Implementing Point to Point Layer 2 Services

Configuring EVPN-VPWS

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config)# interface TenGigE0/1/0/12
Enters interface configuration mode and configures an interface. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group xc1
Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pw-ss
Enters P2P configuration submode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/9
Specifies the interface type and instance. neighbor evpn evi vpn-idtarget ac-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 187

Configuring an Access Pseudowire using EVPN-VPWS

Implementing Point to Point Layer 2 Services

Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor evpn evi 100 target 12
Enables EVPN-VPWS endpoint on the p2p cross-connect.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring an Access Pseudowire using EVPN-VPWS
Bridge-domain can configure an access pseudowire using EVPN-VPWS:

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. l2vpn 4. bridge group bridge-group-name 5. bridge-domain bridge-domain-name 6. neighbor evpn evi vpn-id target ac-id

DETAILED STEPS

Step 1

Command or Action configure Example:

Purpose Enters the Global Configuration mode.

RP/0/RSP0/CPU0:router# configure

Step 2

interface type interface-path-id Example:

Enters interface configuration mode and configures an interface.

RP/0/RSP0/CPU0:routerRP/0/RP00RSP0/CPU0:router# interface TenGigE0/1/0/12

Step 3

l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn

Enters Layer 2 VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 188

Implementing Point to Point Layer 2 Services

Configuration Examples for Point to Point Layer 2 Services

Step 4

Command or Action bridge group bridge-group-name Example:

Purpose
Creates a bridge group that can contain bridge domains, and then assigns network interfaces to the bridge domain.

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group access-pw

Step 5

bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1

Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode.

Step 6

neighbor evpn evi vpn-id target ac-id Example:

Enables EVPN-VPWS endpoint on the p2p cross-connect.

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor evpn evi 100 target 12

Example
Configuration Examples for Point to Point Layer 2 Services
This section includes these configuration examples:
L2VPN Interface Configuration: Example
The following example shows how to configure an L2VPN interface :
configure interface GigabitEthernet0/0/0/0.1 l2transport encapsulation dot1q 1 rewrite ingress tag pop 1 symmetric end
Local Switching Configuration: Example
This example shows how to configure Layer 2 local switching:
configure l2vpn xconnect group examples p2p example1 interface TenGigE0/7/0/6.5 interface GigabitEthernet0/4/0/30 commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 189

Local Connection Redundancy Configuration: Example

Implementing Point to Point Layer 2 Services

end

show l2vpn xconnect group examples Legend: ST = State, UP = Up, DN = Down, AD = Admin Down, UR = Unresolved,
SB = Standby, SR = Standby Ready

XConnect

Segment 1

Segment 2

Group

Name

ST Description

ST Description

ST

examples example1 UP Te0/7/0/6.5

UP Gi0/4/0/30

UP

Local Connection Redundancy Configuration: Example
The following example shows how to configure the LCR on PoA1:
! LCR - CE1 group 107 mlacp node 1 mlacp system mac 0001.0001.0107 mlacp system priority 107 member neighbor 200.0.2.1 ! ! LCR - CE2 group 207 mlacp node 1 mlacp system mac 0001.0001.0207 mlacp system priority 207 member neighbor 200.0.2.1 !
interface Bundle-Ether107 description CE5 - LCR mlacp iccp-group 107 mlacp port-priority 10 no shut
interface Bundle-Ether207 description CE6 - LCR mlacp iccp-group 207 mlacp port-priority 10 no shut
interface bundle-e107.1 l2t description CE5 - LCR encap dot1q 107 second 1 rewrite ingress tag pop 2 symmetric
interface bundle-e207.1 l2t description CE2 - LCR encap dot1q 207 second 1 rewrite ingress tag pop 2 symmetric
interface bundle-e307.1 l2t description PE2 - LCR encap dot1q 1 rewrite ingress tag pop 1 symmetric
l2vpn xconnect group lcr-scale p2p lcr-1 interface bundle-e107.1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 190

Implementing Point to Point Layer 2 Services

Point-to-Point Cross-connect Configuration: Examples

interface bundle-e207.1 backup interface bundle-e307.1
Point-to-Point Cross-connect Configuration: Examples
This section includes configuration examples for both static and dynamic p2p cross-connects.
Static Configuration
This example shows how to configure a static point-to-point cross-connect:
configure l2vpn xconnect group vlan_grp_1 p2p vlan1 interface GigabitEthernet0/0/0/0.1 neighbor 102.2.12.1 2 pw-id 1 mpls static label local 699 remote 890
commit2000
Dynamic Configuration
This example shows how to configure a dynamic point-to-point cross-connect:
configure l2vpn xconnect group vlan_grp_1 p2p vlan1 interface TenGigE 0/0/0/0.1 neighbor 2.2.1.1 pw-id 1
commit
Inter-AS: Example
This example shows how to set up an AC to AC cross-connect from AC1 to AC2:
router-id Loopback0
interface Loopback0 ipv4 address 10.0.0.5 255.255.255.255 ! interface GigabitEthernet0/1/0/0.1 l2transport encapsulation dot1q 1 ! ! interface GigabitEthernet0/0/0/3 ipv4 address 10.45.0.5 255.255.255.0 keepalive disable ! interface GigabitEthernet0/0/0/4 ipv4 address 10.5.0.5 255.255.255.0 keepalive disable ! router ospf 100 log adjacency changes detail area 0 interface Loopback0 ! interface GigabitEthernet0/0/0/3 !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 191

Inter-AS: Example
interface GigabitEthernet0/0/0/4 ! ! ! router bgp 100 address-family ipv4 unicast allocate-label all ! neighbor 10.2.0.5 remote-as 100 update-source Loopback0 address-family ipv4 unicast ! address-family ipv4 labeled-unicast ! ! ! l2vpn xconnect group cisco p2p cisco1 interface GigabitEthernet0/1/0/0.1 neighbor 10.0.1.5 pw-id 101 ! p2p cisco2 interface GigabitEthernet0/1/0/0.2 neighbor 10.0.1.5 pw-id 102 ! p2p cisco3 interface GigabitEthernet0/1/0/0.3 neighbor 10.0.1.5 pw-id 103 ! p2p cisco4 interface GigabitEthernet0/1/0/0.4 neighbor 10.0.1.5 pw-id 104 ! p2p cisco5 interface GigabitEthernet0/1/0/0.5 neighbor 10.0.1.5 pw-id 105 ! p2p cisco6 interface GigabitEthernet0/1/0/0.6 neighbor 10.0.1.5 pw-id 106 ! p2p cisco7 interface GigabitEthernet0/1/0/0.7 neighbor 10.0.1.5 pw-id 107 ! p2p cisco8 interface GigabitEthernet0/1/0/0.8 neighbor 10.0.1.5 pw-id 108 ! p2p cisco9 interface GigabitEthernet0/1/0/0.9 neighbor 10.0.1.5 pw-id 109 ! p2p cisco10 interface GigabitEthernet0/1/0/0.10 neighbor 10.0.1.5 pw-id 110 ! ! ! mpls ldp router-id Loopback0 log

Implementing Point to Point Layer 2 Services

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 192

Implementing Point to Point Layer 2 Services

L2VPN Quality of Service: Example

neighbor ! interface GigabitEthernet0/0/0/3 ! interface GigabitEthernet0/0/0/4 ! ! end
L2VPN Quality of Service: Example
This example shows how to attach a service-policy to an L2 interface in port mode:
configure interface GigabitEthernet 0/0/0/0 l2transport service-policy input pmap_1
commit
Pseudowires: Examples
The examples include these devices and connections:
· T-PE1 node has:
· Cross-connect with an AC interface (facing CE1) · Pseudowire to S-PE1 node · IP address 209.165.200.225
· T-PE2 node
· Cross-connect with an AC interface (facing CE2) · Pseudowire to S-PE1 node · IP address 209.165.200.254
· S-PE1 node
· Multisegment pseudowire cross-connect with a pseudowire segment to T-PE1 node · Pseudowire segment to T-PE2 node · IP address 209.165.202.158
Configuring Dynamic Pseudowires at T-PE1 Node: Example
RP/0/RSP0/CPU0:T-PE1# configure RP/0/RSP0/CPU0:T-PE1(config)# l2vpn RP/0/RSP0/CPU0:T-PE1 (config-l2vpn)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:T-PE1(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# description T-PE1 MS-PW to 10.165.202.158 via 10.165.200.254 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/0.1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 100

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 193

Configuring Dynamic Pseudowires at S-PE1 Node: Example

Implementing Point to Point Layer 2 Services

RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Dynamic Pseudowires at S-PE1 Node: Example
RP/0/RSP0/CPU0:S-PE1# configure RP/0/RSP0/CPU0:S-PE1(config)# l2vpn RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# pw-class dynamic_mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# xconnect group MS-PW1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc)# p2p ms-pw1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# description S-PE1 MS-PW between 10.165.200.225 and 10.165.202.158 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.225 pw-id 100 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.202.158 pw-id 300 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Dynamic Pseudowires at T-PE2 Node: Example
RP/0/RSP0/CPU0:T-PE2# configure RP/0/RSP0/CPU0:T-PE2(config)# l2vpn RP/0/RSP0/CPU0:T-PE2 (config-l2vpn)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE2 (config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:T-PE2 (config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:T-PE2 (config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:T-PE2 (config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:T-PE2 (config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:T-PE2(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# description T-PE2 MS-PW to 10.165.200.225 via 10.165.200.254 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# interface gigabitethernet 0/2/0/0.4 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 300 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# commit
Configuring Dynamic Pseudowires and Preferred Paths at T-PE1 Node: Example
RP/0/RSP0/CPU0:T-PE1# configure RP/0/RSP0/CPU0:T-PE1(config)# l2vpn RP/0/RSP0/CPU0:T-PE1(config-l2vpn)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# preferred-path interface tunnel-te 1000 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:T-PE1(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:T-PE1(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# description T-PE1 MS-PW to 10.165.202.158 via 10.165.200.254 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/0.1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 100

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 194

Implementing Point to Point Layer 2 Services

Configuring Dynamic Pseudowires and Preferred Paths at S-PE1 Node: Example

RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Dynamic Pseudowires and Preferred Paths at S-PE1 Node: Example
RP/0/RSP0/CPU0:S-PE1# configure RP/0/RSP0/CPU0:S-PE1(config)# l2vpn RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# pw-class dynamic_mpls1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# preferred-path interface tunnel-te 1000 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# pw-class dynamic_mpls2 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# preferred-path interface tunnel-te 2000 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# xconnect group MS-PW1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc)# p2p ms-pw1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# description S-PE1 MS-PW between 10.165.200.225 and 10.165.202.158 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.225 pw-id 100 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.202.158 pw-id 300 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls2 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Dynamic Pseudowires and Preferred Paths at T-PE2 Node: Example
RP/0/RSP0/CPU0:T-PE2# configure RP/0/RSP0/CPU0:T-PE2(config)# l2vpn RP/0/RSP0/CPU0:T-PE2(config-l2vpn)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE2(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:T-PE2(config-l2vpn-pwc-encap-mpls)# protocol ldp RP/0/RSP0/CPU0:T-PE2(config-l2vpn-pwc-encap-mpls)# control-word disable RP/0/RSP0/CPU0:S-PE1(config-l2vpn-pwc-encap-mpls)# preferred-path interface tunnel-te 2000 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-pwc-encap-mpls)# exit RP/0/RSP0/CPU0:T-PE2(config-l2vpn-pwc)# exit RP/0/RSP0/CPU0:T-PE2(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# description T-PE2 MS-PW to 10.165.200.225 via 10.165.200.254 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# interface gigabitethernet 0/2/0/0.4 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 300 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# commit
Configuring Static Pseudowires at T-PE1 Node: Example
RP/0/RSP0/CPU0:T-PE1# configure RP/0/RSP0/CPU0:T-PE1(config)# l2vpn RP/0/RSP0/CPU0:T-PE1(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/0.1 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 100

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 195

Configuring Static Pseudowires at S-PE1 Node: Example

Implementing Point to Point Layer 2 Services

RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# mpls static label local 50 remote 400 RP/0/RSP0/CPU0:T-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Static Pseudowires at S-PE1 Node: Example
RP/0/RSP0/CPU0:S-PE1# configure RP/0/RSP0/CPU0:S-PE1(config)# l2vpn RP/0/RSP0/CPU0:S-PE1(config-l2vpn)# xconnect group MS-PW1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc)# p2p ms-pw1 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.200.225 pw-id 100 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# mpls static label local 400 remote 50 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# exit RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p)# neighbor 10.165.202.158 pw-id 300 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# mpls static label local 40 remote 500 RP/0/RSP0/CPU0:S-PE1(config-l2vpn-xc-p2p-pw)# commit
Configuring Static Pseudowires at T-PE2 Node: Example
RP/0/RSP0/CPU0:T-PE2# configure RP/0/RSP0/CPU0:T-PE2(config)# l2vpn RP/0/RSP0/CPU0:T-PE2(config-l2vpn)# xconnect group XCON1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc)# p2p xc1 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# interface gigabitethernet 0/2/0/0.4 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p)# neighbor 10.165.200.254 pw-id 300 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# mpls static label local 500 remote 40 RP/0/RSP0/CPU0:T-PE2(config-l2vpn-xc-p2p-pw)# commit

Preferred Path: Example

This example shows how to configure preferred tunnel path:

configure l2vpn pw-class path1 encapsulation mpls preferred-path interface

tunnel tp 50 fallback disable

MPLS Transport Profile: Example
This section provides examples for: · Configuring Preferred Tunnel Path: Example · Configuring PW Status OAM: Example

Configuring Preferred Tunnel Path: Example
This sample configuration shows how to configure preferred tunnel path:
l2vpn pw-class foo encapsulation mpls preferred-path interface tunnel-tp 100 fallback disable commit
Configuring PW Status OAM: Example
This sample configuration shows how to configure PW status OAM functionality:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 196

Implementing Point to Point Layer 2 Services

Viewing Pseudowire Status: Example

l2vpn pw-oam refresh transmit 100 commit

Viewing Pseudowire Status: Example

show l2vpn xconnect

RP/0/RSP0/CPU0:router# show l2vpn xconnect
Legend: ST = State, UP = Up, DN = Down, AD = Admin Down, UR = Unresolved, LU = Local Up, RU = Remote Up, CO = Connected

XConnect

Segment 1

Segment 2

Group

Name

ST Description

ST Description

ST

------------------------ ------------------------- -------------------------

MS-PW1

ms-pw1

UP 70.70.70.70

100 UP 90.90.90.90

300 UP

--------------------------------------------------------------------------------

show l2vpn xconnect detail

RP/0/RSP0/CPU0:router# show l2vpn xconnect detail

Group MS-PW1, XC ms-pw1, state is up; Interworking none

PW: neighbor 70.70.70.70, PW ID 100, state is up ( established )

PW class not set

Encapsulation MPLS, protocol LDP

PW type Ethernet VLAN, control word enabled, interworking none

PW backup disable delay 0 sec

Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

16004

16006

Group ID

0x2000400

0x2000700

Interface GigabitEthernet0/1/0/2.2

GigabitEthernet0/1/0/0.3

MTU

1500

1500

Control word enabled

enabled

PW type

Ethernet VLAN

Ethernet VLAN

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x5

0x7

(control word)

(control word)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV): Status code: 0x0 (Up) in Notification message
Outgoing PW Switching TLVs (Label Mapping message): Local IP Address: 80.80.80.80, Remote IP address: 90.90.90.90, PW ID: 300 Description: S-PE1 MS-PW between 70.70.70.70 and 90.90.90.90
Outgoing Status (PW Status TLV): Status code: 0x0 (Up) in Notification message
Statistics: packet totals: receive 0 byte totals: receive 0
Create time: 04/04/2008 23:18:24 (00:01:24 ago) Last time status changed: 04/04/2008 23:19:30 (00:00:18 ago) PW: neighbor 90.90.90.90, PW ID 300, state is up ( established ) PW class not set Encapsulation MPLS, protocol LDP PW type Ethernet VLAN, control word enabled, interworking none

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 197

Configuring Any Transport over MPLS: Example

Implementing Point to Point Layer 2 Services

PW backup disable delay 0 sec

Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

16004

16006

Group ID

0x2000800

0x2000200

Interface GigabitEthernet0/1/0/0.3

GigabitEthernet0/1/0/2.2

MTU

1500

1500

Control word enabled

enabled

PW type

Ethernet VLAN

Ethernet VLAN

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x5

0x7

(control word)

(control word)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Outgoing PW Switching TLVs (Label Mapping message):

Local IP Address: 80.80.80.80, Remote IP address: 70.70.70.70, PW ID: 100

Description: S-PE1 MS-PW between 70.70.70.70 and 90.90.90.90

Outgoing Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Statistics:

packet totals: receive 0

byte totals: receive 0

Create time: 04/04/2008 23:18:24 (00:01:24 ago)

Last time status changed: 04/04/2008 23:19:30 (00:00:18 ago)

Configuring Any Transport over MPLS: Example
This example shows you how to configure Any Transport over MPLS (AToM):
config l2vpn
xconnect group test p2p test interface POS 0/1/0/0.1
neighbor 10.1.1.1 pw-id 100

Configuring AToM IP Interworking: Example
This example shows you how to configure IP interworking:
config l2vpn
xconnect group test p2p test interworking ipv4

Configuring PPP IP Interworking: Example
This example shows you how to configure PPP IP interworking:
interface Serial0/2/1/0/1/1/1:0 encapsulation ppp
l2transport !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 198

Implementing Point to Point Layer 2 Services

Configuring cHDLC IP Interworking: Example

! interface Serial0/0/0/0/2/1/1:0 encapsulation ppp
l2transport ! !
!! Local Switching Configuration l2vpn xconnect group ppp_ip_ls
p2p 1 interface Serial0/2/1/0/1/1/1:0 interface GigabitEthernet0/0/0/1.1 interworking ipv4
!
!! PW Configuration l2vpn
xconnect group ppp_ip_iw p2p 1 interface Serial0/0/0/0/2/1/1:0 neighbor 120.120.120.120 pw-id 3 pw-class class1 ! interworking ipv4
Configuring cHDLC IP Interworking: Example
This example shows you how to configure cHDLC IP interworking:
interface Serial0/2/1/0/1/1/2:0 l2transport
interface Serial0/0/0/0/2/1/2:0 l2transport
!! Local Switching Configuration l2vpn xconnect group ppp_ip_ls
p2p 1 interface Serial0/2/1/0/1/1/2:0 interface GigabitEthernet0/0/0/2.1 interworking ipv4
!
!! PW Configuration l2vpn
xconnect group ppp_ip_iw p2p 1 interface Serial0/0/0/0/2/1/2:0 neighbor 120.120.120.120 pw-id 3 pw-class class1 ! interworking ipv4
Configuring MLPPP IP Interworking: Example
This example shows you how to configure MLPPP IP interworking:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 199

Configuring Circuit Emulation Over Packet Switched Network: Example

Implementing Point to Point Layer 2 Services

interface Multilink0/2/1/0/1 multilink
l2transport !
interface Multilink0/2/1/0/51 Multilink l2transport
!! Local Switching Configuration l2vpn
xconnect group mlppp_ip_ls p2p 1 interface Multilink0/2/1/0/1 interface GigabitEthernet0/0/0/1.151 interworking ipv4
! !! PW Configuration l2vpn xconnect group mlppp_ip_iw
p2p 151 interface Multilink0/2/1/0/51 neighbor 140.140.140.140 pw-id 151 pw-class test ! interworking ipv4
!
Configuring Circuit Emulation Over Packet Switched Network: Example
This example shows you how to configure Circuit Emulation Over Packet Switched Network:
Adding CEM Attachment Circuit to PW
l2vpn xconnect group gr1 p2p p1 interface CEM 0/0/0/0:10 neighbor 3.3.3.3 pw-id 11 ! !
Associating Pseudowire Class
l2vpn pw-class class-cem encapsulation mpls protocol ldp ! !
xconnect group gr1 p2p p1 interface CEM0/0/0/0:20 neighbor 1.2.3.4 pw-id 11 pw-class class-cem !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 200

Implementing Point to Point Layer 2 Services

Configuring L2VPN Nonstop Routing: Example

Enabling Pseudowire Status
l2vpn pw-status commit
Disabling Pseudowire Status
l2vpn pw-status disable commit
Configuring Backup Pseudowire
l2vpn pw-status pw-class class-cem encapsulation mpls protocol ldp ! ! xconnect group gr1 p2p p1 interface CEM0/0/0/0:20 neighbor 1.2.3.4 pw-id 11 pw-class class-cem backup neighbor 9.9.9.9 pw-id 1221 pw-class class-cem ! !
Configuring L2VPN Nonstop Routing: Example
This example shows how to configure L2VPN Nonstop Routing.
config l2vpn
nsr logging nsr
Enabling Pseudowire Grouping: Example
This example shows how to enable pseudowire grouping.
config l2vpn
pw-grouping
Configuring L2TPv3 over IPv6 Tunnels: Example
This section provides examples for:
Configuring Neighbor AFI for Pseudowire: Example
To support IPv6 pseudowire neighbors, an AFI needs to be configured as follows:
l2vpn xconnect group g1 p2p xc3

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 201

Configuring L2TPv3 encapsulation and protocol: Example

Implementing Point to Point Layer 2 Services

interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1
Configuring L2TPv3 encapsulation and protocol: Example
For L2TPv3 tunnels, the encapsulation and protocol has to be set to l2tpv3.
Note The default encapsulation and protocol is MPLS.
l2vpn pw-class ts encapsulation l2tpv3 protocol l2tpv3
Configuring Source IPv6 address for L2TPv3 over IPv6 tunnel: Example
This example shows how to configure source IPv6 address for the L2TPv3 over IPv6 tunnel:
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 source 1111:2222::abcd
Configuring Local and Remote Sessions: Example
For L2TPv3 over IPv6 tunnels, the local and remote session ID is configured under the pseudowire; however, this configuration is optional.
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 l2tp static local session 1 l2tp static remote session 1
Configuring Local and Remote Cookies: Example
For L2TPv3 over IPv6 tunnels, the local and remote cookies are configured under the pseudowire. Support has been extended for cookie roll-over that provides the ability to configure a secondary local cookie. This example shows how to configure a cookie with size 0:
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 l2tp static local cookie size 0 l2tp static remote cookie size 0
This example shows how to configure a cookie with size 4:
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 202

Implementing Point to Point Layer 2 Services

Enabling L2TP Static Submode: Example

l2tp static local cookie size 4 value <0x0-0xffffffff> l2tp static remote cookie size 4 value <0x0-0xffffffff>
This example shows how to configure a cookie with size 8 (the lower 4 bytes are entered first; followed by the higher 4 bytes):
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 l2tp static local cookie size 8 value <0x0-0xffffffff> <0x0-0xffffffff> l2tp static remote cookie size 8 value <0x0-0xffffffff> <0x0-0xffffffff>
To support cookie roll-over on L2TPv3 over IPv6 tunnels, configure a secondary local cookie. The local cookie secondary command specifies the secondary cookie value on the local router.
Note The primary and secondary cookies must be of the same size. Primary or secondary local cookies must match the cookie value being received from the remote end, otherwise, packets are dropped.
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 l2tp static local cookie secondary size 8 value <0x0-0xffffffff> <0x0-0xffffffff>
Enabling L2TP Static Submode: Example
This example shows you how to enable the L2TP static submode:
l2vpn xconnect group g1 p2p xc3 interface GigabitEthernet0/0/0/4.2 neighbor ipv6 1111:2222::cdef pw-id 1 l2tp static local cookie <>
Enabling TOS Reflection in the L2TPv3 Header: Example
For L2TPv3 over IPv6 tunnels, configurations are supported for each pseudowire class to enable type of service (TOS) reflection, or to set a specific TOS value in the L2TPv3 header.
Note By default, the TOS is copied over from the class of service (COS) fields of the VLAN header. If the underlying packet is not an IPv4 or IPv6 packet, the COS fields are copied from the VLAN header, even if a TOS reflection is configured.
This example shows how to configure a TOS reflection in the L2TPv3 header:
l2vpn pw-class ts encapsulation l2tpv3 protocol l2tpv3 tos reflect

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 203

Configuring TTL for L2TPv3 over IPv6 Tunnels: Example

Implementing Point to Point Layer 2 Services

This example shows how to set a TOS value in the L2TPv3 header: l2vpn pw-class ts encapsulation l2tpv3 protocol l2tpv3 tos value 64
Configuring TTL for L2TPv3 over IPv6 Tunnels: Example
For L2TPv3 over IPv6 tunnels, TTL configuration is supported in the pseudowire class.
l2vpn pw-class ts encapsulation l2tpv3 protocol l2tpv3 ttl <1-255>
Configuring Traffic Mirroring over L2TPv3 over IPv6 Tunnels: Example
This example associates an EFP to a monitor-session:
interface GigabitEthernet0/0/0/4.2 l2transport monitor-session customer-foo
Layer 2 SPAN is supported on L3 interfaces; however, the Layer 2 frame is mirrored:
interface GigabitEthernet0/0/0/4.2 ipv6 address <> monitor-session customer-foo
SPAN is also supported on main interfaces.
interface GigabitEthernet0/4/0/3 l2transport monitor-session customer-foo
This example creates the monitor-session globally:
monitor-session customer-foo destination pseudowire
This example creates a cross-connect between the monitor-session and a L2TPv3 over IPv6 tunnel:
l2vpn xconnect group span p2p span-foo monitor-session customer-foo neighbor ipv6 1111:3333::cdef pw-id 1001 pw-class ts source 1111:3333::abcd l2tp static local cookie size 8 value 0xabcd 0x1234 l2tp static remote cookie size 8 value 0xcdef 0x5678
For more information on:
· L2TPv3 over IPv6 tunnel concepts, see L2TPv3 over IPv6 · Configuration procedures, see Configuring L2TPv3 over IPv6 Tunnels
Configuring L2TPv3 over IPv4 Tunnels: Example
This section provides examples for:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 204

Implementing Point to Point Layer 2 Services

Configuring a Dynamic L2TPv3 Pseudowire

Configuring a Dynamic L2TPv3 Pseudowire
Perform this task to configure a dynamic L2TPv3 pseudowire connecting to a remote IPv4 peer.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group name 4. p2p name 5. interface type interface-path-id 6. neighbor ipv4 ip-address pw-id number 7. pw-class pw-class-name 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enter L2VPN configure submode. xconnect group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group L2TPV3_V4_XC_GRP
Enter a name for the cross-connect group. p2p name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p L2TPV3_P2P_1
Enters p2p configuration submode to configure point-to-point cross-connects. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface GigabitEthernet 0/2/0/0/0.1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 205

Configuring L2TPv3 Encapsulation and Protocol: Example

Implementing Point to Point Layer 2 Services

Step 6 Step 7 Step 8

Specifies the interface type ID. The choices are: · GigabitEthernet · TenGigE
neighbor ipv4 ip-address pw-id number Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv4 26.26.26.26 pw-id 100
Configures a pseudowire for a cross-connect. pw-class pw-class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class L2TPV3_V4_CLASS
Enters pseudowire class submode to define a name for the cross-connect. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring L2TPv3 Encapsulation and Protocol: Example
This example shows how to set the encapsulation and protocol for L2TPv3 tunnels:
configure l2vpn
pw-class L2TPV3_V4_CLASS encapsulation l2tpv3 protocol l2tpv3 class L2TP-CLASS dfbit set ipv4 source 25.25.25.25 cookie size 4
! !
Configuring L2TP Control-Channel Parameters: Example
The following example shows a typical L2TPv3 control-channel configuration:
configure l2tp-class L2TP-CLASS
authentication retransmit retries 5 retransmit initial retries 10 retransmit initial timeout max 5 retransmit timeout max 6 hidden password 7 1511021F07257A767B

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 206

Implementing Point to Point Layer 2 Services

Configuration Examples for EVPN-VPWS

hello-interval 10 digest hash MD5 !
Configuration Examples for EVPN-VPWS
Configuring EVPN-VPWS: Example
The following example shows how to configure EVPN-VPWS service.
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pw-he1 RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pw-ss RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface gigabitethernet 0/1/0/9 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor evpn evi 100 target 12 source 10
The following example shows how to configure EVPN-VPWS into PWHE interface.
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group xg1 RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pwhe1 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface PW-Ether 1 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor evpn evi 2 target 20 source 20
Configuring an Access PW using EVPN-VPWS: Example
The following example shows how a bridge-domain can configure an access pseudowire using EVPN-VPWS.
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor evpn evi 1 target 100

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 207

Configuring an Access PW using EVPN-VPWS: Example

Implementing Point to Point Layer 2 Services

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 208

6 C H A P T E R
Implementing Multipoint Layer 2 Services
This module provides the conceptual and configuration information for Multipoint Layer 2 Bridging Services, also called Virtual Private LAN Services (VPLS).

Note VPLS supports Layer 2 VPN technology and provides transparent multipoint Layer 2 connectivity for customers. This approach enables service providers to host a multitude of new services such as broadcast TV and Layer 2 VPNs.

For Point to Point Layer 2 Services, see Implementing Point to Point Layer 2 Services chapter. For descriptions of the commands listed in this module, see the "Related Documents" section. Feature History for Implementing Multipoint Layer 2 Services

Release Release 3.7.2 Release 3.9.0

Modification This feature was introduced. These features were added:
· Blocking unknown unicast flooding. · Disabling MAC flush.

· Multiple Spanning Tree Access Gateway

· Scale enhancements were introduced. See Table 1 for more information on scale enhancements.

Release 3.9.1 Release 4.0.1

Support for VPLS with BGP Autodiscovery and LDP Signaling was added.
Support was added for the following features: · Dynamic ARP Inspection · IP SourceGuard
· MAC Address Security

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 209

Release Release 4.1.0
Release 4.2.1 Release 4.3.0
Release 4.3.1

Implementing Multipoint Layer 2 Services
Modification Support was added for these VPLS features on the ASR 9000 SIP-700 line card:
· MAC learning and forwarding. · MAC address aging support · MAC Limiting · Split Horizon Group · MAC address Withdrawal · Flooding of unknown unicast, broadcast and
multicast packets · Access pseudowire · H-VPLS PW-access · PW redundancy
Support was added for the G.8032 Ethernet Ring Protection feature. Support was added for Flow Aware Transport (FAT) Pseudowire feature. Support was added for these features:
· Pseudowire Headend (PWHE) · Scale enhancements on ASR 9000 Enhanced
Ethernet line card: · Support for 128000 pseudowires within VPWS and VPLS · Support for 128000 pseudowires across VPLS and VPWS instances · Support for upto 512 pseudowires in a bridge · Support for 128000 bundle attachment circuits · Support for 128000 VLANs
· L2VPN over GRE
Support was added for: · VC type 4 in VPLS with BGP Autodiscovery · IPv6 support for PWHE

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 210

Implementing Multipoint Layer 2 Services

Prerequisites for Implementing Multipoint Layer 2 Services

Release Release 5.1.0
Release 5.1.1

Modification
Support was added for Multipoint Layer 2 Services Label Switched Multicast feature.
Support was added for:
· Pseudowire Headend PW-Ether sub-interfaces (VC Type 5) and Pseudowire Headend PW-IW interworking interfaces (VC Type 11)
· LFA over Pseudowire Headend.

Release 6.1.2

Support was added for: · Service Path Preference for L2VPN · L2VPN Route Policy

Release 6.6.1 Release 7.4.1

The MAC security recovery feature was introduced.
From this release onwards, we'll deprecate the Multipoint Layer 2 Services Label Switched Multicast feature.

· Prerequisites for Implementing Multipoint Layer 2 Services, on page 211 · Information About Implementing Multipoint Layer 2 Services , on page 212 · How to Implement Multipoint Layer 2 Services, on page 265 · Configuration Examples for Multipoint Layer 2 Services, on page 351

Prerequisites for Implementing Multipoint Layer 2 Services
Before configuring Multipoint Layer 2 Services, ensure that these tasks and conditions are met: · You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
· Configure IP routing in the core so that the provider edge (PE) routers can reach each other through IP.
· Configure a loopback interface to originate and terminate Layer 2 traffic. Make sure that the PE routers can access the other router's loopback interface.

Note The loopback interface is not needed in all cases. For example, tunnel selection does not need a loopback interface when Multipoint Layer 2 Services are directly mapped to a TE tunnel.
· Configure MPLS and Label Distribution Protocol (LDP) in the core so that a label switched path (LSP) exists between the PE routers.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 211

Information About Implementing Multipoint Layer 2 Services

Implementing Multipoint Layer 2 Services

Information About Implementing Multipoint Layer 2 Services
To implement Multipoint Layer 2 Services, you should understand these concepts:
Multipoint Layer 2 Services Overview
Multipoint Layer 2 Services enable geographically separated local-area network (LAN) segments to be interconnected as a single bridged domain over an MPLS network. The full functions of the traditional LAN such as MAC address learning, aging, and switching are emulated across all the remotely connected LAN segments that are part of a single bridged domain. Some of the components present in a Multipoint Layer 2 Services network are described in these sections.
Note Multipoint Layer 2 services are also called as Virtual Private LAN Services.
Bridge Domain
The native bridge domain refers to a Layer 2 broadcast domain consisting of a set of physical or virtual ports (including VFI). Data frames are switched within a bridge domain based on the destination MAC address. Multicast, broadcast, and unknown destination unicast frames are flooded within the bridge domain. In addition, the source MAC address learning is performed on all incoming frames on a bridge domain. A learned address is aged out. Incoming frames are mapped to a bridge domain, based on either the ingress port or a combination of both an ingress port and a MAC header field. By default, split horizon is enabled for pseudowires under the same VFI. However, in the default configuration, split horizon is not enabled on the attachment circuits (interfaces or pseudowires).
Flood Optimization A Cisco ASR 9000 Series Router, while bridging traffic in a bridge domain, minimizes the amount of traffic that floods unnecessarily. The Flood Optimization feature accomplishes this functionality. However, in certain failure recovery scenarios, extra flooding is actually desirable in order to prevent traffic loss. Traffic loss occurs during a temporary interval when one of the bridge port links becomes inactive, and a standby link replaces it. In some configurations, optimizations to minimize traffic flooding is achieved at the expense of traffic loss during the short interval in which one of the bridge's links fails, and a standby link replaces it. Therefore, Flood Optimization can be configured in different modes to specify a particular flooding behavior suitable for your configuration. These flood optimization modes can be configured:
Bandwidth Optimization Mode Flooded traffic is sent only to the line cards on which a bridge port or pseudowire that is attached to the bridge domain resides. This is the default mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 212

Implementing Multipoint Layer 2 Services

Bridge Domain

Convergence Mode
Flooded traffic is sent to all line cards in the system. Traffic is flooded regardless of whether they have a bridge port or a pseudowire that is attached to the bridge domain. If there are multiple Equal Cost MPLS Paths (ECMPs) attached to that bridge domain, traffic is flooded to all ECMPs.
The purpose of Convergence Mode is to ensure that an absolute minimum amount of traffic is lost during the short interval of a bridge link change due to a failure.
TE FRR Optimized Mode
The Traffic Engineering Fast Reroute (TE FRR) Optimized Mode is similar to the Bandwidth Optimized Mode, except for the flooding behavior with respect to any TE FRR pseudowires attached to the bridge domain. In TE FRR Optimized Mode, traffic is flooded to both the primary and backup FRR interfaces. This mode is used to minimize traffic loss during an FRR failover, thus ensuring that the bridge traffic complies with the FRR recovery time constraints.
Dynamic ARP Inspection
Dynamic ARP Inspection (DAI) is a method of providing protection against address resolution protocol (ARP) spoofing attacks. It intercepts, logs, and discards ARP packets with invalid IP-to-MAC address bindings. This capability protects the network from certain man-in-the-middle attacks. The DAI feature is disabled by default.
ARP enables IP communication within a Layer 2 broadcast domain by mapping an IP address to a MAC address. Spoofing attacks occur because ARP allows a response from a host even when an ARP request is not actually received. After an attack occurs, all traffic, from the device under attack, first flows through the attacker's system, and then to the router, switch, or the host. An ARP spoofing attack affects the devices connected to your Layer 2 network by sending false information to the ARP caches of the devices connected to the subnet. The sending of false information to an ARP cache is known as ARP cache poisoning.
The Dynamic ARP Inspection feature ensures that only valid ARP requests and responses are relayed. There are two types of ARP inspection:
· Mandatory inspection--The sender's MAC address, IPv4 address, receiving bridge port XID and bridge are checked.
· Optional inspection--The following items are validated:
· Source MAC: The sender's and source MACs are checked. The check is performed on all ARP or RARP packets.
· Destination MAC: The target and destination MACs are checked. The check is performed on all Reply or Reply Reverse packets.
· IPv4 Address: For ARP requests, a check is performed to verify if the sender's IPv4 address is 0.0.0.0, a multicast address or a broadcast address. For ARP Reply and ARP Reply Reverse, a check is performed to verify if the target IPv4 address is 0.0.0.0, a multicast address or a broadcast address. This check is performed on Request, Reply and Reply Reverse packets.

Note The DAI feature is supported on attachment circuits and EFPs. Currently, the DAI feature is not supported on pseudowires.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 213

Pseudowires

Implementing Multipoint Layer 2 Services

IP Source Guard
IP source guard (IPSG) is a security feature that filters traffic based on the DHCP snooping binding database and on manually configured IP source bindings in order to restrict IP traffic on non-routed Layer 2 interfaces.
The IPSG feature provides source IP address filtering on a Layer 2 port, to prevent a malicious hosts from manipulating a legitimate host by assuming the legitimate host's IP address. This feature uses dynamic DHCP snooping and static IP source binding to match IP addresses to hosts.
Initially, all IP traffic, except for DHCP packets, on the EFP configured for IPSG is blocked. After a client receives an IP address from the DHCP server, or after static IP source binding is configured by the administrator, all traffic with that IP source address is permitted from that client. Traffic from other hosts is denied. This filtering limits a host's ability to attack the network by claiming a neighbor host's IP address.

Note The IPSG feature is supported on attachment circuits and EFPs. Currently, the IPSG feature is not supported on pseudowires.

Pseudowires

A pseudowire is a point-to-point connection between pairs of PE routers. Its primary function is to emulate services like Ethernet over an underlying core MPLS network through encapsulation into a common MPLS format. By encapsulating services into a common MPLS format, a pseudowire allows carriers to converge their services to an MPLS network.
The following scale enhancements are applicable to ASR 9000 Enhanced Ethernet line card:
· Support for 128000 pseudowires within VPWS and VPLS
· Support for 128000 pseudowires across VPLS and VPWS instances
· Support for upto 512 pseudowires in a bridge

Note This scale enhancement is supported in hardware configurations where RSP3 and ASR 9000 Enhanced Ethernet line cards are used. However, these enhancements are not applicable to the RSP2, ASR 9000 Ethernet Line Card and Cisco ASR 9000 Series SPA Interface Processor-700 line cards.
DHCP Snooping over Pseudowire The Cisco ASR 9000 Series Routers provide the ability to perform DHCP snooping, where the DHCP server is reachable on a pseudowire. The Pseudowire is considered as a trusted interface. The dhcp ipv4 snoop profile {dhcp-snooping-profile1} command is provided under the bridge domain to enable DHCP snooping on a bridge and to attach a DHCP snooping profile to the bridge.
Virtual Forwarding Instance
VPLS is based on the characteristic of virtual forwarding instance (VFI). A VFI is a virtual bridge port that is capable of performing native bridging functions, such as forwarding, based on the destination MAC address, source MAC address learning and aging, and so forth.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 214

Implementing Multipoint Layer 2 Services

VPLS for an MPLS-based Provider Core

A VFI is created on the PE router for each VPLS instance. The PE routers make packet-forwarding decisions by looking up the VFI of a particular VPLS instance. The VFI acts like a virtual bridge for a given VPLS instance. More than one attachment circuit belonging to a given VPLS are connected to the VFI. The PE router establishes emulated VCs to all the other PE routers in that VPLS instance and attaches these emulated VCs to the VFI. Packet forwarding decisions are based on the data structures maintained in the VFI.
VPLS for an MPLS-based Provider Core
VPLS is a multipoint Layer 2 VPN technology that connects two or more customer devices using bridging techniques. A bridge domain, which is the building block for multipoint bridging, is present on each of the PE routers. The access connections to the bridge domain on a PE router are called attachment circuits. The attachment circuits can be a set of physical ports, virtual ports, or both that are connected to the bridge at each PE device in the network.
After provisioning attachment circuits, neighbor relationships across the MPLS network for this specific instance are established through a set of manual commands identifying the end PEs. When the neighbor association is complete, a full mesh of pseudowires is established among the network-facing provider edge devices, which is a gateway between the MPLS core and the customer domain.
The MPLS/IP provider core simulates a virtual bridge that connects the multiple attachment circuits on each of the PE devices together to form a single broadcast domain. This also requires all of the PE routers that are participating in a VPLS instance to form emulated virtual circuits (VCs) among them.
Now, the service provider network starts switching the packets within the bridged domain specific to the customer by looking at destination MAC addresses. All traffic with unknown, broadcast, and multicast destination MAC addresses is flooded to all the connected customer edge devices, which connect to the service provider network. The network-facing provider edge devices learn the source MAC addresses as the packets are flooded. The traffic is unicasted to the customer edge device for all the learned MAC addresses.
In the MPLS provider core, the VPLS pseudowire traffic can be dynamically routed over any interface that supports LDP protocol.
VPLS Architecture
The basic or flat VPLS architecture allows for the end-to-end connection between the provider edge (PE) routers to provide multipoint ethernet services. Following figure shows a flat VPLS architecture illustrating the interconnection between the network provider edge (N-PE) nodes over an IP/MPLS network.
Figure 19: Basic VPLS Architecture

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 215

VPLS for Layer 2 Switching

Implementing Multipoint Layer 2 Services

The VPLS network requires the creation of a Bridge Domain (Layer 2 broadcast domain) on each of the PE routers. The VPLS provider edge device holds all the VPLS forwarding MAC tables and bridge domain information. In addition, it is responsible for all flooding broadcast frames and multicast replications.
The PEs in the VPLS architecture are connected with a full mesh of Pseudowires (PWs). A Virtual Forwarding Instance (VFI) is used to interconnect the mesh of pseudowires. A bridge domain is connected to a VFI to create a Virtual Switching Instance (VSI), that provides Ethernet multipoint bridging over a PW mesh. VPLS network links the VSIs using the MPLS pseudowires to create an emulated Ethernet Switch.
With VPLS, all customer equipment (CE) devices participating in a single VPLS instance appear to be on the same LAN and, therefore, can communicate directly with one another in a multipoint topology, without requiring a full mesh of point-to-point circuits at the CE device. A service provider can offer VPLS service to multiple customers over the MPLS network by defining different bridged domains for different customers. Packets from one bridged domain are never carried over or delivered to another bridged domain, thus ensuring the privacy of the LAN service.
VPLS transports Ethernet IEEE 802.3, VLAN IEEE 802.1q, and VLAN-in-VLAN (q-in-q) traffic across multiple sites that belong to the same Layer 2 broadcast domain. VPLS offers simple VLAN services that include flooding broadcast, multicast, and unknown unicast frames that are received on a bridge. The VPLS solution requires a full mesh of pseudowires that are established among PE routers. The VPLS implementation is based on Label Distribution Protocol (LDP)-based pseudowire signaling.
VPLS for Layer 2 Switching
VPLS technology includes the capability of configuring the Cisco ASR 9000 Series Routers to perform Layer 2 bridging. In this mode, the Cisco ASR 9000 Series Routers can be configured to operate like other Cisco switches.
These features are supported:
· Bridging IOS XR Trunk Interfaces
· Bridging on EFPs
Refer to the Configuration Examples for Multipoint Layer 2 Services section for examples on these bridging features.
VPLS Discovery and Signaling
VPLS is a Layer 2 multipoint service and it emulates LAN service across a WAN service. VPLS enables service providers to interconnect several LAN segments over a packet-switched network and make it behave as one single LAN. Service provider can provide a native Ethernet access connection to customers using VPLS.
The VPLS control plane consists of two important components, autodiscovery and signaling:
· VPLS Autodiscovery eliminates the need to manually provision VPLS neighbors. VPLS Autodiscovery enables each VPLS PE router to discover the other provider edge (PE) routers that are part of the same VPLS domain.
· Once the PEs are discovered, pseudowires (PWs) are signaled and established across each pair of PE routers forming a full mesh of PWs across PE routers in a VPLS domain

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 216

Implementing Multipoint Layer 2 Services Figure 20: VPLS Autodiscovery and Signaling

BGP-based VPLS Autodiscovery

BGP-based VPLS Autodiscovery
An important aspect of VPN technologies, including VPLS, is the ability of network devices to automatically signal to other devices about an association with a particular VPN. Autodiscovery requires this information to be distributed to all members of a VPN. VPLS is a multipoint mechanism for which BGP is well suited.
BGP-based VPLS autodiscovery eliminates the need to manually provision VPLS neighbors. VPLS autodiscovery enables each VPLS PE router to discover the other provider edge (PE) routers that are part of the same VPLS domain. VPLS Autodiscovery also tracks when PE routers are added to or removed from the VPLS domain. When the discovery process is complete, each PE router has the information required to setup VPLS pseudowires (PWs).
Even when BGP autodiscovery is enabled, pseudowires can be manually configured for VPLS PE routers that are not participating in the autodiscovery process.
BGP Auto Discovery With BGP Signaling
The implementation of VPLS in a network requires the establishment of a full mesh of PWs between the provider edge (PE) routers. The PWs can be signaled using BGP signaling.
Figure 21: Discovery and Signaling Attributes

The BGP signaling and autodiscovery scheme has the following components: · A means for a PE to learn which remote PEs are members of a given VPLS. This process is known as autodiscovery. · A means for a PE to learn the pseudowire label expected by a given remote PE for a given VPLS. This process is known as signaling.
The BGP Network Layer Reachability Information (NLRI) takes care of the above two components simultaneously. The NLRI generated by a given PE contains the necessary information required by any other PE. These components enable the automatic setting up of a full mesh of pseudowires for each VPLS without having to manually configure those pseudowires on each PE.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 217

BGP Auto Discovery With LDP Signaling

Implementing Multipoint Layer 2 Services

NLRI Format for VPLS with BGP AD and Signaling The following figure shows the NLRI format for VPLS with BGP AD and Signaling
Figure 22: NLRI Format

BGP Auto Discovery With LDP Signaling
Signaling of pseudowires requires exchange of information between two endpoints. Label Distribution Protocol (LDP) is better suited for point-to-point signaling. The signaling of pseudowires between provider edge devices, uses targeted LDP sessions to exchange label values and attributes and to configure the pseudowires.
Figure 23: Discovery and Signaling Attributes

A PE router advertises an identifier through BGP for each VPLS. This identifier is unique within the VPLS instance and acts like a VPLS ID. The identifier enables the PE router receiving the BGP advertisement to identify the VPLS associated with the advertisement and import it to the correct VPLS instance. In this manner, for each VPLS, a PE router learns the other PE routers that are members of the VPLS. The LDP protocol is used to configure a pseudowire to all the other PE routers. FEC 129 is used for the signaling. The information carried by FEC 129 includes the VPLS ID, the Target Attachment Individual Identifier (TAII) and the Source Attachment Individual Identifier (SAII). The LDP advertisement also contains the inner label or VPLS label that is expected for the incoming traffic over the pseudowire. This enables the LDP peer to identify the VPLS instance with which the pseudowire is to be associated and the label value that it is expected to use when sending traffic on that pseudowire.
NLRI and Extended Communities The following figure depicts Network Layer Reachability Information (NLRI) and extended communities (Ext Comms).
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 218

Implementing Multipoint Layer 2 Services Figure 24: NLRI and Extended Communities

Service Path Preference for L2VPN

Service Path Preference for L2VPN
Service Path Preference feature (SPP) helps control transport path for L2VPN services in traffic engineering (TE) tunnels. SPP feature provides a way for services to influence path selection while forwarding in Multiprotocol Label Switching (MPLS) networks. SPP is achieved by associating a control plane policy with a forward-class. SPP is supported for per-service path selection for VPLS with BGP AD, and EVI for PBB-EVPN and EVPN. SPP for L2VPN is implemented in two steps:
· Path selection - classify incoming traffic on a per service basis.
· Path setup - set up paths with forward-class service.
Refer to Service Path Preference for MPLS VPN Sessions module for more information on SPP.
Understanding How Service Path Preference Works
SPP allows services to select a path based on policies configured in the control plane. Consider a scenario where you have two Provider Edge (PE) routers in a setup. PE1 functions as ingress node and PE2 functions as egress node.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 219

L2VPN Route Policy Figure 25: Sample Service Path Preference scenario

Implementing Multipoint Layer 2 Services

The ingress PE (PE1) receives the routes from the customers. The local policies determine the attribute to be assigned to the customer. PE1 associates a forward-class to the prefix based on the local policies that are created based on the VFI or EVI service. The pre-configured tunnel with matching forward-class is selected for forwarding the traffic.
L2VPN Route Policy
L2VPN route-policy feature enables the export community configuration for L2VPN VPWS and L2VPN VPLS with BGP autodiscovery. BGP executes the route-policy. This functionality is similar to the route-policy support under BGP submode for L3VPN services. The following points explain the L2VPN route-policy functionality: 1. The RPL is used to set standard community as policy action for two new attachpoints that are L2VPN
export VPLS (VFI) and L2VPN export VPWS (MP2MP). 2. L2VPN configuration specifies which route-policy to use for a given bridge-domain configured with BGP
autodiscovery. 3. L2VPN sends the route-policy name to BGP along with the L2VPN context. 4. BGP process inserts standard community to the L2 NLRI.
Interoperability Between Cisco IOS XR and Cisco IOS on VPLS LDP Signaling
The Cisco IOS Software encodes the NLRI length in the fist byte in bits format in the BGP Update message. However, the Cisco IOS XR Software interprets the NLRI length in 2 bytes. Therefore, when the BGP neighbor with VPLS-VPWS address family is configured between the IOS and the IOS XR, NLRI mismatch can happen, leading to flapping between neighbors. To avoid this conflict, IOS supports prefix-length-size 2 command that needs to be enabled for IOS to work with IOS XR. When the prefix-length-size 2 command is configured in IOS, the NLRI length is encoded in bytes. This configuration is mandatory for IOS to work with IOS XR. This is a sample IOS configuration with the prefix-length-size 2 command:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 220

Implementing Multipoint Layer 2 Services

MAC Address-related Parameters

router bgp 1 address-family l2vpn vpls neighbor 5.5.5.2 activate neighbor 5.5.5.2 prefix-length-size 2 --------> NLRI length = 2 bytes exit-address-family
MAC Address-related Parameters
The MAC address table contains a list of the known MAC addresses and their forwarding information. In the current VPLS design, the MAC address table and its management are maintained on the route processor (RP) card. These topics provide information about the MAC address-related parameters:
Note After you modify the MAC limit or action at the bridge domain level, ensure that you shut and unshut the bridge domain for the action to take effect. If you modify the MAC limit or action on an attachment circuit (through which traffic is passing), the attachment circuit must be shut and unshut for the action to take effect.
MAC Address Flooding
Ethernet services require that frames that are sent to broadcast addresses and to unknown destination addresses be flooded to all ports. To obtain flooding within VPLS broadcast models, all unknown unicast, broadcast, and multicast frames are flooded over the corresponding pseudowires and to all attachment circuits. Therefore, a PE must replicate packets across both attachment circuits and pseudowires.
MAC Address-based Forwarding
To forward a frame, a PE must associate a destination MAC address with a pseudowire or attachment circuit. This type of association is provided through a static configuration on each PE or through dynamic learning, which is flooded to all bridge ports.
Note Split horizon forwarding applies in this case, for example, frames that are coming in on an attachment circuit or pseudowire are sent out of the same pseudowire. The pseudowire frames, which are received on one pseudowire, are not replicated on other pseudowires in the same virtual forwarding instance (VFI).
MAC Address Source-based Learning
When a frame arrives on a bridge port (for example, pseudowire or attachment circuit) and the source MAC address is unknown to the receiving PE router, the source MAC address is associated with the pseudowire or attachment circuit. Outbound frames to the MAC address are forwarded to the appropriate pseudowire or attachment circuit. MAC address source-based learning uses the MAC address information that is learned in the hardware forwarding path. The updated MAC tables are propagated and programs the hardware for the router.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 221

MAC Address Aging

Implementing Multipoint Layer 2 Services

Note Static MAC move is not supported from one port, interface, or AC to another port, interface, or AC. For example, if a static MAC is configured on AC1 (port 1) and then, if you send a packet with the same MAC as source MAC on AC2 (port 2), then you can't attach this MAC to AC2 as a dynamic MAC. Therefore, do not send any packet with a MAC as any of the static MAC addresses configured.
The number of learned MAC addresses is limited through configurable per-port and per-bridge domain MAC address limits.
MAC Address Aging
A MAC address in the MAC table is considered valid only for the duration of the MAC address aging time. When the time expires, the relevant MAC entries are repopulated. When the MAC aging time is configured only under a bridge domain, all the pseudowires and attachment circuits in the bridge domain use that configured MAC aging time. A bridge forwards, floods, or drops packets based on the bridge table. The bridge table maintains both static entries and dynamic entries. Static entries are entered by the network manager or by the bridge itself. Dynamic entries are entered by the bridge learning process. A dynamic entry is automatically removed after a specified length of time, known as aging time, from the time the entry was created or last updated. If hosts on a bridged network are likely to move, decrease the aging-time to enable the bridge to adapt to the change quickly. If hosts do not transmit continuously, increase the aging time to record the dynamic entries for a longer time, thus reducing the possibility of flooding when the hosts transmit again.
MAC Address Limit
The MAC address limit is used to limit the number of learned MAC addresses. The bridge domain level limit is always configured and cannot be disabled. The default value of the bridge domain level limit is 4000 and can be changed in the range of 1-512000.
Configure MAC Address Limit Configure the MAC address limit using the maximum command. The MAC address learning is restricted to the configured limit. When the number of learned MAC addresses reaches the configured limit, you can configure the bridge behavior by using the action command. You can configure the action to perform one of the following:
· flood: All the unknown unicast packets, with unknown destinations addresses, are flooded over the bridge.
· no-flood: All the unknown unicast packets, with unknown destination addresses, are dropped. · shutdown : All the packets are dropped.
When the MAC limit is exceeded, use the notification {both | none | trap} command to send notifications in one of the following forms:
· trap: Sends Simple Network Management Protocol (SNMP) trap notification. · both: Sends both syslog and trap notifications. · none: No notifications are sent.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 222

Implementing Multipoint Layer 2 Services

MAC Address Withdrawal

By default, syslog message is sent.
Configuration Example
In this example, MAC address limit is configured as 5000 and MAC limit action is set to flood the packets. As notification is not configured, syslog entries are sent when the MAC limit is exceeded.
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group bg-0 Router(config-l2vpn-bg)# bridge-domain bd-0 Router(config-l2vpn-bg-bd)# mac Router(config-l2vpn-bg-bd-mac)# limit Router(config-l2vpn-bg-bd-mac-limit)# maximum 5000 Router(config-l2vpn-bg-bd-mac-limit)# action flood
Verification
Use the show l2vpn bridge-domain command to view the MAC address limit configuration.
Router# show l2vpn bridge-domain bd-name bd-0 detail Legend: pp = Partially Programmed. Bridge group: bg-0, bridge-domain: bd-0, id: 25, state: up, ShgId: 0, MSTi: 0
Coupled state: disabled VINE state: EVPN Native MAC learning: enabled MAC withdraw: enabled
MAC withdraw for Access PW: enabled MAC withdraw sent on: bridge port up MAC withdraw relaying (access to access): disabled Flooding: Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 5000, Action: flood, Notification: syslog MAC limit reached: no, threshold: 80% MAC port down flush: enabled MAC Secure: disabled, Logging: disabled
MAC Address Withdrawal
For faster VPLS convergence, you can remove or unlearn the MAC addresses that are learned dynamically. The Label Distribution Protocol (LDP) Address Withdrawal message is sent with the list of MAC addresses, which need to be withdrawn to all other PEs that are participating in the corresponding VPLS service.
For the Cisco IOS XR VPLS implementation, a portion of the dynamically learned MAC addresses are cleared by using the MAC addresses aging mechanism by default. The MAC address withdrawal feature is added through the LDP Address Withdrawal message. To enable the MAC address withdrawal feature, use the withdrawal command in l2vpn bridge group bridge domain MAC configuration mode. To verify that the MAC address withdrawal is enabled, use the show l2vpn bridge-domain command with the detail keyword.
Note By default, the LDP MAC Withdrawal feature is enabled on Cisco IOS XR.
The LDP MAC Withdrawal feature is generated due to these events:
· Attachment circuit goes down. You can remove or add the attachment circuit through the CLI.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 223

MAC Address Security

Implementing Multipoint Layer 2 Services

· MAC withdrawal messages are received over a VFI pseudowire. RFC 4762 specifies that both wildcards (by means of an empty Type, Length and Value [TLV]) and a specific MAC address withdrawal. Cisco IOS XR software supports only a wildcard MAC address withdrawal.

MAC Address Security
You can configure MAC address security at the interfaces and at the bridge access ports (subinterfaces) levels. However, MAC security configured under an interface takes precedence to MAC security configured at the bridge domain level. When a MAC address is first learned, on an EFP that is configured with MAC security and then, the same MAC address is learned on another EFP, these events occur:
· the packet is dropped
· the second EFP is shutdown
· the packet is learned and the MAC from the original EFP is flushed

MAC Loop Prevention

Table 4: Feature History Table

Feature Name Release Information

MAC Loop Prevention

Release 7.5.2

Feature Description
This feature helps reduce network congestion and avoid traffic loss by shutting down a port after it reaches the configured number of MAC moves within the specified move interval. You can configure this feature at the bridge-domain level using the mac secure command.
This feature is now supported on routers that have Cisco NC57 line cards installed and operate in native and compatibility modes.

In case of network instability like an interface flap, a MAC address might be learned from a new interface. This is normal network convergence, and the mac-address-table is updated dynamically. A MAC move occurs when the same MAC address is learned on multiple interfaces. However, constant MAC moves often indicate network instability during an L2 loop. This feature lets you report MAC moves and take corrective actions such as shutting down an offending port.
The MAC Loop Prevention feature allows you to shut down the port after it exceeds the configured number of MAC moves within the specified move interval. You can configure this feature at the bridge-domain level using the mac secure command. The default number of MAC moves is five times for a move interval of 180 seconds. If the number of MAC moves exceeds the configured value, the MAC entry is marked as duplicate and the port is shut down. This feature helps you to reduce network congestion and avoid traffic loss. This feature is supported on physical and bundle AC, PW, and EVPN.
You can recover the shutdown port after a particular time by using the shutdown-recovery-timeout command after which the port automatically becomes active. If the recovery time is not configured, the shutdown port is recovered after three times of move interval. For example, if the move interval is 30 seconds, the shutdown port becomes active after 90 seconds.
Let's see how this feature works in the following scenarios:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 224

Implementing Multipoint Layer 2 Services

MAC Loop Prevention

· MAC learning within the node - When Leaf1 learns the same MAC address on both the interfaces, BE10 and BE12, the MAC is marked as duplicate and the port is shutdown after it exceeds the configured number of MAC moves within specified interval. For example, consider the MAC move count is configured as 5 for 180 seconds. If the traffic flows starts from BE10, and, the configured MAC move count ends at interface BE12, the port at the interface BE12 is shutdown.
· MAC learning between the nodes - When the same MAC address is learnt on BE10 and 20, the MAC is marked as duplicate and the port is shutdown after it exceeds the configured number of MAC moves within specified interval. For example, consider the MAC move count is configured as 5 for 180 seconds. If the traffic starts from BE10, the configured MAC move count ends at interface BE20, the port at the interface BE20 is shutdown.
Note When a Leaf that is enabled with this feature receives two MACs from the Leafs that are not enabled with this feature, this feature won't take effect.
Configuration Example Perfrom this task on a Leaf to configure MAC loop prevention.
/* MAC Loop Prevention for VPLS */ Router#configure Router(config)#l2vpn Router(config-l2vpn)#bridge-group BG1 Router(config-l2vpn-bg)#bridge-domain BD1 Router(config-l2vpn-bg-bd)#mac secure Router(config-l2vpn-bg-bd-mac-sec)#action shutdown Router(config-l2vpn-bg-bd-mac-sec)#threshold Router(config-l2vpn-bg-bd-mac-sec)#shutdown-recovery-timeout 300 Router(config-l2vpn-bg-bd-mac-sec)#exit
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 225

MAC Loop Prevention

Implementing Multipoint Layer 2 Services

Router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/0.1 Router(config-l2vpn-bg-bd-ac)#exit Router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/0.2 Router(config-l2vpn-bg-bd-ac)#commit
/* MAC Loop Prevention for PW */ Router#configure Router(config)#l2vpn Router(config-l2vpn)#bridge-group BG1 Router(config-l2vpn-bg)#bridge-domain BD1 Router(config-l2vpn-bg-bd)#mac secure Router(config-l2vpn-bg-bd-mac-sec)#action shutdown Router(config-l2vpn-bg-bd-mac-sec)#threshold Router(config-l2vpn-bg-bd-mac-sec)#shutdown-recovery-timeout 300 Router(config-l2vpn-bg-bd-mac-sec)#exit Router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/0.3 Router(config-l2vpn-bg-bd-ac)#exit Router(config-l2vpn-bg-bd)#vfi VFI1 Router(config-l2vpn-bg-bd-vfi)#neighbor 192.168.0.4 pw-id 3 Router(config-l2vpn-bg-bd-vfi-pw)#commit
/* MAC Loop Prevention for EVPN */ Router#configure Router(config)#l2vpn Router(config-l2vpn)#bridge-group BG1 Router(config-l2vpn-bg)#bridge-domain BD1 Router(config-l2vpn-bg-bd)#mac secure Router(config-l2vpn-bg-bd-mac-sec)#action shutdown Router(config-l2vpn-bg-bd-mac-sec)#threshold Router(config-l2vpn-bg-bd-mac-sec)#shutdown-recovery-timeout 300 Router(config-l2vpn-bg-bd-mac-sec)#exit Router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/0.3 Router(config-l2vpn-bg-bd-ac)#exit Router(config-l2vpn-bg-bd)#evi 100 Router(config-l2vpn-bg-bd-evi)#commit
/* Configure move count and move-interval */ Router#configure Router(config)#evpn Router(config-evpn)#mac secure Router(config-evpn-mac-secure)#move-count 7 Router(config-evpn-mac-secure)#move-interval 30 Router(config-evpn-mac-secure)#commit
Running Configuration
This section shows the MAC loop prevention running configuration.
/* MAC Loop Prevention for VPLS */ l2vpn
bridge group BG1 bridge-domain BD1 mac secure action shutdown threshold shutdown-recovery-timeout 300 ! interface GigabitEthernet0/2/0/0.1 interface GigabitEthernet0/2/0/0.2 !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 226

Implementing Multipoint Layer 2 Services

MAC Security Recovery

/* MAC Loop Prevention for PW */ l2vpn
bridge group BG1 bridge-domain BD1 mac secure action shutdown threshold shutdown-recovery-timeout 300 ! interface GigabitEthernet0/2/0/0.3 ! vfi VFI1 neighbor 192.168.0.4 pw-id 3
/* MAC Loop Prevention for EVPN */ l2vpn
bridge group BG1 bridge-domain BD1 mac secure action shutdown threshold shutdown-recovery-timeout 300 ! interface GigabitEthernet0/2/0/0.3 ! evi 100
! /* Configure move-count and move-interval */ evpn
mac secure move-count 7 move-interval 30
!
Verification
Verify that you have successfully configured the MAC Loop Prevention feature. The following show output displays the MAC security information:
Router# show l2vpn bridge-doamin detail Bridge group: bg1, bridge-domain: bd1, id: 0, state: up, ShgId: 0, MSTi: 0
MAC Secure: enabled, Logging: disabled, Action: shutdown, Threshold: enabled MAC Secure Shutdown recovery timer : 300 List of ACs:
AC: interface GigabitEthernet0/2/0/0.1, state is up AC: interface GigabitEthernet0/2/0/0.2, state is up
MAC Secure: enabled, Logging: disabled, Action: shutdown, Threshold: enabled MAC Secure Shutdown recovery timer: 300
MAC Security Recovery
MAC security recovery feature enables you to recover the bridge port or Ethernet flow point (EFP) that is shut down due to MAC security violation. The recovery is achieved by configuring a shutdown recovery timer, using the mac secure shutdown-recovery-timeout command. The bridge port or EFP that is shut down, is UP automatically after the timer expires. The MAC security recovery feature takes effect only when you have enabled shutdown to be the default action for violating MAC security policies.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 227

Configure MAC Security Recovery

Implementing Multipoint Layer 2 Services

Restrictions for MAC Security Recovery
· The MAC security recovery applies only for the EFP security.
· The shutdown recovery timer does not apply to MAC limits configured on a per-EFP level, per-bridge domain level, or both.
For more information on configuring MAC security recovery, see Configure MAC Security Recovery, on page 228section.
Configure MAC Security Recovery
Perform this task to configure MAC security recovery under the following:
· bridge domain
· bridge port or attachment circuit (AC)
· access pseudowire (PW)
/* Configure MAC security recovery under bridge domain */
Router(config)# l2vpn Router(config-l2vpn)# bridge group bg1 Router(config-l2vpn-bg)# bridge-domain bd-1-6 Router(config-l2vpn-bg-bd)# mac Router(config-l2vpn-bg-bd-mac)# aging Router(config-l2vpn-bg-bd-mac-aging)# time 900 Router(config-l2vpn-bg-bd-mac-aging)# secure Router(config-l2vpn-bg-bd-mac-secure)# action shutdown Router(config-l2vpn-bg-bd-mac-secure)# logging Router(config-l2vpn-bg-bd-mac-secure)# shutdown-recovery-timeout 100 Router(config-l2vpn-bg-bd-mac-secure)# !
/* Configure MAC security recovery under bridge port or attachment circuit (AC) */
Router(config-l2vpn-bg-bd-mac-secure)# interface GigabitEthernet 0/0/0/5.11 Router(config-l2vpn-bg-bd-ac)# mac Router(config-l2vpn-bg-bd-ac-mac)# secure Router(config-l2vpn-bg-bd-ac-mac-secure)# action shutdown Router(config-l2vpn-bg-bd-ac-mac-secure)# logging Router(config-l2vpn-bg-bd-ac-mac-secure)# shutdown-recovery-timeout 600 Router(config-l2vpn-bg-bd-ac-mac-secure)# !
/* Configure MAC security recovery over access pseudowire (PW) */
Router(config-l2vpn-bg-bd-ac-mac-secure)# neighbor 64.64.64.3 pw-id 2300001 Router(config-l2vpn-bg-bd-pw)# ! Router(config-l2vpn-bg-bd-pw)# neighbor 64.64.64.4 pw-id 2400001 Router(config-l2vpn-bg-bd-pw)# mac Router(config-l2vpn-bg-bd-pw-mac)# secure Router(config-l2vpn-bg-bd-pw-mac-secure)# action shutdown Router(config-l2vpn-bg-bd-pw-mac-secure)# logging Router(config-l2vpn-bg-bd-pw-mac-secure)# shutdown-recovery-timeout 600 Router(config-l2vpn-bg-bd-pw-mac-secure)# !
Running Configuration for MAC Security Recovery
This example shows how to configure MAC security recovery for L2VPN under bridge domain.
config l2vpn
bridge group bg1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 228

Implementing Multipoint Layer 2 Services

Verify MAC Security Recovery

bridge-domain bd-1-6 mac aging time 900
! secure action shutdown logging shutdown-recovery-timeout 30 ! !
This example shows how to configure MAC security recovery for L2VPN under attachment circuit (AC).
Interface GigabitEthernet 0/0/0/5.11 mac
secure action shutdown logging shutdown-recovery-timeout 600
This example shows how to configure MAC security recovery for L2VPN over access pseudowires.
neighbor 64.64.64.3 pw-id 2300001 ! neighbor 64.64.64.4 pw-id 2400001
mac secure action shutdown logging shutdown-recovery-timeout 600
Verify MAC Security Recovery
This sample output verifies that the MAC security recovery is enabled under bridge domain, and also displays the value that is set for Shutdown recovery timer.
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain bd-name bd-1-6 detail
Legend: pp = Partially Programmed. Bridge group: bg1, bridge-domain: bd-1-6, id: 5, state: up, ShgId: 0, MSTi: 0
Coupled state: disabled VINE state: Default MAC learning: enabled MAC withdraw: enabled
MAC withdraw for Access PW: enabled MAC withdraw sent on: bridge port up MAC withdraw relaying (access to access): disabled Flooding: Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 900 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog MAC limit reached: no, threshold: 75% MAC port down flush: enabled MAC Secure: enabled, Logging: enabled, Action: shutdown, Threshold: disabled MAC Secure Shutdown recovery timer : 30 sec Split Horizon Group: none
This sample output verifies that the MAC security recovery is enabled under an attachment circuit (AC), and also displays the value that is set for Shutdown recovery timer.
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain bd-name bd-1-6 detail
ACs: 1 (1 up), VFIs: 0, PWs: 2 (2 up), PBBs: 0 (0 up), VNIs: 0 (0 up) List of ACs:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 229

Verify MAC Security Recovery

Implementing Multipoint Layer 2 Services

AC: GigabitEthernet0/0/0/5.11, state is up Type VLAN; Num Ranges: 1 Outer Tag: 21 Rewrite Tags: [] VLAN ranges: [11, 11] MTU 1500; XC ID 0x1205e26; interworking none MAC learning: enabled Flooding: Broadcast & Multicast: e nabled Unknown unicast: enabled MAC aging time: 900 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog MAC limit reached: no, threshold: 75% MAC port down flush: enabled MAC Secure: enabled, Logging: enabled, Action: shutdown, Threshold: disabled MAC Secure Shutdown recovery timer : 600 sec Split Horizon Group: none E-Tree: Root
This sample output verifies that the MAC security recovery is enabled under access pseudowires, and also displays the value that is set for Shutdown recovery timer.
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain bd-name bd-1-6 detail

List of Access PWs:

PW: neighbor 64.64.64.3, PW ID 2300001, state is up ( established )

PW class not set, XC ID 0xa0000019

Encapsulation MPLS, protocol LDP

Source address 64.64.64.2

PW type Ethernet, control word disabled, interworking none

PW backup disable delay 0 sec

Sequencing not set

LSP : Up

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ ---------------------------

Label

60029

24013

Group ID

0x5

0x5

Interface Access PW

Access PW

MTU

1500

1500

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ ---------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 2684354585

Create time: 14/08/2018 11:51:56 (04:28:11 ago)

Last time status changed: 14/08/2018 11:51:57 (04:28:10 ago)

MAC aging time: 900 s, Type: inactivity

MAC limit: 4000, Action: none, Notification: syslog

MAC limit reached: no, threshold: 75%

MAC port down flush: enabled

MAC Secure: enabled, Logging: enabled, Action: shutdown, Threshold: disabled

MAC Secure Shutdown recovery timer: 30 sec

You can also use the Show l2vpn forwarding interface interface-name hardware ingress detail location location-id command to verify the values that are configured for the Shutdown recovery timer.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 230

Implementing Multipoint Layer 2 Services

MAC Address Move and Unicast Traffic Counters

Syslog Messages
When MAC secure logging is configured and security violation occurs, syslog messages are displayed.
A sample syslog message is shown as follows. It indicates that the MAC is initially learnt on pseudowires (PW). When the same MAC is learnt on AC GigabitEthernet0_0_0_5.11, MAC secure configured under AC detects security violation. Then, the action configured under PW, which is shutdown in this case, is imposed on AC. Therefore, AC is brought down. If recovery timer is configured under AC, the AC is down until recovery timer expires. After the timer expires, AC is brought up.
%L2-L2FIB-5-SECURITY_MAC_SECURE_VIOLATION_AC : MAC secure in AC GigabitEthernet0_0_0_5.11 detected violated packet that was previously learned in PW neighbor: 64.64.64.3,
ID: 2300001- source MAC: 0065.0600.0001, destination MAC: 0067.0600.0001; action: shutdown
MAC Address Move and Unicast Traffic Counters
MAC Address Move and Unicast Traffic counters are introduced on the VPLS bridge ports on the ASR9K platform. These counters essentially are L2VPN bridge port stats counters. MAC move and unicast traffic counters are introduced for troubleshooting. Cisco ASR 9000 High Density 100GE Ethernet Line Cards and Cisco ASR 9000 Enhanced Ethernet Line Cards support these counters.
For more information, on MAC Move and Unicast Traffic counters, use the show l2vpn bridge-domain command with the detail keyword on an AC Bridge, PW Bridge, PBB Edge, and VXLAN Bridge Ports.
Note If the bridge port traffic is forwarded, either completely or partially to ASR 9000 Ethernet line cards, MAC Address Move and Unicast Traffic counters may not be accurate.
LSP Ping over VPWS and VPLS
For Cisco IOS XR software, the existing support for the Label Switched Path (LSP) ping and traceroute verification mechanisms for point-to-point pseudowires (signaled using LDP FEC128) is extended to cover the pseudowires that are associated with the VFI (VPLS). Currently, the support for the LSP ping and traceroute for LDP signalled FEC128 pseudowires is limited to manually configured VPLS pseudowires. In addition, Cisco IOS XR software supports LSP ping for point-to-point single-segment pseudowires that are signalled using LDP FEC129 AII-type 2 applicable to VPWS or signalled using LDP FEC129 AII-type 1 applicable to VPLS. For information about Virtual Circuit Connection Verification (VCCV) support and the ping mpls pseudowire command, see the MPLS Command Reference for Cisco ASR 9000 Series Routers.
Split Horizon Groups
An IOS XR bridge domain aggregates attachment circuits (ACs) and pseudowires (PWs) in one of three groups called Split Horizon Groups. When applied to bridge domains, Split Horizon refers to the flooding and forwarding behavior between members of a Split Horizon group. The following table describes how frames received on one member of a split horizon group are treated and if the traffic is forwarded out to the other members of the same split horizon group.
Bridge Domain traffic is either unicast or multicast.
Flooding traffic consists of unknown unicast destination MAC address frames; frames sent to Ethernet multicast addresses (Spanning Tree BPDUs, etc.); Ethernet broadcast frames (MAC address FF-FF-FF-FF-FF-FF).

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 231

Layer 2 Security

Implementing Multipoint Layer 2 Services

Known Unicast traffic consists of frames sent to bridge ports that were learned from that port using MAC learning. Traffic flooding is performed for broadcast, multicast and unknown unicast destination address.
Table 5: Split Horizon Groups Supported in Cisco IOS-XR

Split Horizon Group 0
1 2

Who belongs to this Group?

Multicast within Group

Default--any member not

Yes

covered by groups 1 or 2.

Any PW configured under VFI. No

Any AC or PW configured with No split-horizon keyword.

Unicast within Group Yes No No

Important notes on Split Horizon Groups: · All bridge ports or PWs that are members of a bridge domain must belong to one of the three groups.

· By default, all bridge ports or PWs are members of group 0.

· The VFI configuration submode under a bridge domain configuration indicates that members under this domain are included in group 1.

· A PW that is configured in group 0 is called an Access Pseudowire. · The split-horizon group command is used to designate bridge ports or PWs as members of group 2.

· The ASR9000 only supports one VFI group.

Layer 2 Security
These topics describe the Layer 2 VPN extensions to support Layer 2 security:

Port Security

Use port security with dynamically learned and static MAC addresses to restrict a port's ingress traffic by limiting the MAC addresses that are allowed to send traffic into the port. When secure MAC addresses are assigned to a secure port, the port does not forward ingress traffic that has source addresses outside the group of defined addresses. If the number of secure MAC addresses is limited to one and assigned a single secure MAC address, the device attached to that port has the full bandwidth of the port. These port security features are supported:
· Limits the MAC table size on a bridge or a port.
· Facilitates actions and notifications for a MAC address.
· Enables the MAC aging time and mode for a bridge or a port.
· Filters static MAC addresses on a bridge or a port.
· Marks ports as either secure or nonsecure.
· Enables or disables flooding on a bridge or a port.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 232

Implementing Multipoint Layer 2 Services

Dynamic Host Configuration Protocol Snooping

After you have set the maximum number of secure MAC addresses on a port, you can configure port security to include the secure addresses in the address table in one of these ways:
· Statically configure all secure MAC addresses by using the static-address command.
· Allow the port to dynamically configure secure MAC addresses with the MAC addresses of connected devices.
· Statically configure a number of addresses and allow the rest to be dynamically configured.

Dynamic Host Configuration Protocol Snooping
Dynamic Host Configuration Protocol (DHCP) snooping is a security feature that acts like a firewall between untrusted hosts and trusted DHCP servers. The DHCP snooping feature performs these activities:
· Validates DHCP messages received from untrusted sources and filters out invalid messages.
· Rate-limits DHCP traffic from trusted and untrusted sources.
· Builds and maintains the binding database of DHCP snooping, which contains information about untrusted hosts with leased IP addresses.
· Utilizes the binding database of DHCP snooping to validate subsequent requests from untrusted hosts.
For additional information regarding DHCP, see the Cisco ASR 9000 Series Aggregation Services Router IP Addresses and Services Configuration Guide.

G.8032 Ethernet Ring Protection
Ethernet Ring Protection (ERP) protocol, defined in ITU-T G.8032, provides protection for Ethernet traffic in a ring topology, while ensuring that there are no loops within the ring at the Ethernet layer. The loops are prevented by blocking either a pre-determined link or a failed link.

Overview

Each Ethernet ring node is connected to adjacent Ethernet ring nodes participating in the Ethernet ring using two independent links. A ring link never allows formation of loops that affect the network. The Ethernet ring uses a specific link to protect the entire Ethernet ring. This specific link is called the ring protection link (RPL). A ring link is bound by two adjacent Ethernet ring nodes and a port for a ring link (also known as a ring port).

Note The minimum number of Ethernet ring nodes in an Ethernet ring is two.
The fundamentals of ring protection switching are: · the principle of loop avoidance · the utilization of learning, forwarding, and Filtering Database (FDB) mechanisms
Loop avoidance in an Ethernet ring is achieved by ensuring that, at any time, traffic flows on all but one of the ring links which is the RPL. Multiple nodes are used to form a ring:
· RPL owner--It is responsible for blocking traffic over the RPL so that no loops are formed in the Ethernet traffic. There can be only one RPL owner in a ring.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 233

Overview

Implementing Multipoint Layer 2 Services

· RPL neighbor node--The RPL neighbor node is an Ethernet ring node adjacent to the RPL. It is responsible for blocking its end of the RPL under normal conditions. This node type is optional and prevents RPL usage when protected.
· RPL next-neighbor node--The RPL next-neighbor node is an Ethernet ring node adjacent to RPL owner node or RPL neighbor node. It is mainly used for FDB flush optimization on the ring. This node is also optional.
The following figure illustrates the G.8032 Ethernet ring.
Figure 26: G.8032 Ethernet Ring

Nodes on the ring use control messages called RAPS to coordinate the activities of switching on or off the RPL link. Any failure along the ring triggers a RAPS signal fail (RAPS SF) message along both directions, from the nodes adjacent to the failed link, after the nodes have blocked the port facing the failed link. On obtaining this message, the RPL owner unblocks the RPL port.
Note A single link failure in the ring ensures a loop-free topology.
Line status and Connectivity Fault Management protocols are used to detect ring link and node failure. During the recovery phase, when the failed link is restored, the nodes adjacent to the restored link send RAPS no request (RAPS NR) messages. On obtaining this message, the RPL owner blocks the RPL port and sends RAPS no request, root blocked (RAPS NR, RB) messages. This causes all other nodes, other than the RPL owner in the ring, to unblock all blocked ports. The ERP protocol is robust enough to work for both unidirectional failure and multiple link failure scenarios in a ring topology. A G.8032 ring supports these basic operator administrative commands:
· Force switch (FS)--Allows operator to forcefully block a particular ring-port. · Effective even if there is an existing SF condition · Multiple FS commands for ring supported · May be used to allow immediate maintenance operations
· Manual switch (MS)--Allows operator to manually block a particular ring-port. · Ineffective in an existing FS or SF condition · Overridden by new FS or SF conditions
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 234

Implementing Multipoint Layer 2 Services

Overview

· Multiple MS commands cancel all MS commands
· Clear--Cancels an existing FS or MS command on the ring-port · Used (at RPL Owner) to clear non-revertive mode
A G.8032 ring can support multiple instances. An instance is a logical ring running over a physical ring. Such instances are used for various reasons, such as load balancing VLANs over a ring. For example, odd VLANs may go in one direction of the ring, and even VLANs may go in the other direction. Specific VLANs can be configured under only one instance. They cannot overlap multiple instances. Otherwise, data traffic or RAPS packet can cross logical rings, and that is not desirable. G.8032 ERP provides a new technology that relies on line status and Connectivity Fault Management (CFM) to detect link failure. By running CFM Continuity Check Messages (CCM) messages at an interval of 100ms, it is possible to achieve SONET-like switching time performance and loop free traffic. For more information about Ethernet Connectivity Fault Management (CFM) and Ethernet Fault Detection (EFD) configuration, refer to the Configuring Ethernet OAM on the Cisco ASR 9000 Series Router module in the Cisco ASR 9000 Series Aggregation Services Router Interface and Hardware Component Configuration Guide.
Timers G.8032 ERP specifies the use of different timers to avoid race conditions and unnecessary switching operations:
· Delay Timers--used by the RPL Owner to verify that the network has stabilized before blocking the RPL · After SF condition, Wait-to-Restore (WTR) timer is used to verify that SF is not intermittent. The WTR timer can be configured by the operator, and the default time interval is 5 minutes. The time interval ranges from 1 to 12 minutes. · After FS/MS command, Wait-to-Block timer is used to verify that no background condition exists.
Note Wait-to-Block timer may be shorter than the Wait-to-Restore timer
· Guard Timer--used by all nodes when changing state; it blocks latent outdated messages from causing unnecessary state changes. The Guard timer can be configured and the default time interval is 500 ms. The time interval ranges from 10 to 2000 ms.
· Hold-off timers--used by underlying Ethernet layer to filter out intermittent link faults. The hold-off timer can be configured and the default time interval is 0 seconds. The time interval ranges from 0 to 10 seconds. · Faults are reported to the ring protection mechanism, only if this timer expires.
Single Link Failure The following figure represents protection switching in case of a single link failure.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 235

Overview Figure 27: G.8032 Single Link Failure

Implementing Multipoint Layer 2 Services

The following figure represents an Ethernet ring composed of seven Ethernet ring nodes. The RPL is the ring link between Ethernet ring nodes A and G. In these scenarios, both ends of the RPL are blocked. Ethernet ring node G is the RPL owner node, and Ethernet ring node A is the RPL neighbor node. These symbols are used:
This sequence describes the steps in the single link failure, represented in Figure 8: 1. Link operates in the normal condition. 2. A failure occurs. 3. Ethernet ring nodes C and D detect a local Signal Failure condition and after the holdoff time interval,
block the failed ring port and perform the FDB flush. 4. Ethernet ring nodes C and D start sending RAPS (SF) messages periodically along with the (Node ID,
BPR) pair on both ring ports, while the SF condition persists. 5. All Ethernet ring nodes receiving an RAPS (SF) message perform FDB flush. When the RPL owner node
G and RPL neighbor node A receive an RAPS (SF) message, the Ethernet ring node unblocks it's end of the RPL and performs the FDB flush. 6. All Ethernet ring nodes receiving a second RAPS (SF) message perform the FDB flush again; this is because of the Node ID and BPR-based mechanism. 7. Stable SF condition--RAPS (SF) messages on the Ethernet Ring. Further RAPS (SF) messages trigger no further action. The following figure represents reversion in case of a single link failure.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 236

Implementing Multipoint Layer 2 Services Figure 28: Single link failure Recovery (Revertive operation)

Flow Aware Transport Pseudowire (FAT PW)

This sequence describes the steps in the single link failure recovery, as represented in Figure 9: 1. Link operates in the stable SF condition. 2. Recovery of link failure occurs. 3. Ethernet ring nodes C and D detect clearing of signal failure (SF) condition, start the guard timer and
initiate periodical transmission of RAPS (NR) messages on both ring ports. (The guard timer prevents the reception of RAPS messages). 4. When the Ethernet ring nodes receive an RAPS (NR) message, the Node ID and BPR pair of a receiving ring port is deleted and the RPL owner node starts the WTR timer. 5. When the guard timer expires on Ethernet ring nodes C and D, they may accept the new RAPS messages that they receive. Ethernet ring node D receives an RAPS (NR) message with higher Node ID from Ethernet ring node C, and unblocks its non-failed ring port. 6. When WTR timer expires, the RPL owner node blocks its end of the RPL, sends RAPS (NR, RB) message with the (Node ID, BPR) pair, and performs the FDB flush. 7. When Ethernet ring node C receives an RAPS (NR, RB) message, it removes the block on its blocked ring ports, and stops sending RAPS (NR) messages. On the other hand, when the RPL neighbor node A receives an RAPS (NR, RB) message, it blocks its end of the RPL. In addition to this, Ethernet ring nodes A to F perform the FDB flush when receiving an RAPS (NR, RB) message, due to the existence of the Node ID and BPR based mechanism.
Flow Aware Transport Pseudowire (FAT PW)
Routers typically loadbalance traffic based on the lower most label in the label stack which is the same label for all flows on a given pseudowire. This can lead to asymmetric loadbalancing. The flow, in this context, refers to a sequence of packets that have the same source and destination pair. The packets are transported from a source provider edge (PE) to a destination PE.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 237

Pseudowire Headend

Implementing Multipoint Layer 2 Services

Flow-Aware Transport Pseudowires (FAT PW) provide the capability to identify individual flows within a pseudowire and provide routers the ability to use these flows to loadbalance traffic. FAT PWs are used to loadbalance traffic in the core when equal cost multipaths (ECMP) are used. A flow label is created based on indivisible packet flows entering a pseudowire; and is inserted as the lower most label in the packet. Routers can use the flow label for loadbalancing which provides a better traffic distribution across ECMP paths or link-bundled paths in the core.
The following figure shows a FAT PW with two flows distributing over ECMPs and bundle links.
Figure 29: FAT PW with two flows distributing over ECMPs and Bundle-Links

An additional label is added to the stack, called the flow label, which contains the flow information of a virtual circuit (VC). A flow label is a unique identifier that distinguishes a flow within the PW, and is derived from source and destination MAC addresses, and source and destination IP addresses. The flow label contains the end of label stack (EOS) bit set and inserted after the VC label and before the control word (if any). The ingress PE calculates and forwards the flow label. The FAT PW configuration enables the flow label. The egress PE discards the flow label such that no decisions are made.
Core routers perform load balancing using the flow-label in the FAT PW with other information like MAC address and IP address. The flow-label adds greater entropy to improve traffic load balancing. Therefore, it's possible to distribute flows over ECMPs and link bundles.
You cannot send MPLS OAM ping traffic over a FAT PW, since there is no flow label support for MPLS OAM.

Pseudowire Headend

Table 6: Feature History Table

Feature Name

Release Information

PW Headend - GIL interface scale Release 7.3.1 enhancement from 8 to 32

Feature Description
This feature is now enhanced to support the maximum number of interfaces per generic interface list from 8 to 32 L3 physical interfaces.

Pseudowires (PWs) enable payloads to be transparently carried across IP/MPLS packet-switched networks (PSNs). PWs are regarded as simple and manageable lightweight tunnels for returning customer traffic into

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 238

Implementing Multipoint Layer 2 Services

Benefits of PWHE

core networks. Service providers are now extending PW connectivity into the access and aggregation regions of their networks. Pseudowire Headend (PWHE) is a technology that allows termination of access pseudowires (PWs) into a Layer 3 (VRF or global) domain or into a Layer 2 domain. PWs provide an easy and scalable mechanism for tunneling customer traffic into a common IP/MPLS network infrastructure. PWHE allows customers to provision features such as QOS access lists (ACL), L3VPN on a per PWHE interface basis, on a service Provider Edge (PE) router.
Note Encapsulation default is not supported by PWHE.
Consider the following network topology as an example.
Figure 30: Pseudowire Network

For PWHE x-connect configuration, interconnectivity between A-PE (Access Provider Edge) and S-PE is through BGP RFC3107 that distributes MPLS labels along with IP prefixes. The customer network can avoid using an IGP to provide connectivity to the S-PE device, which is outside the customer's autonomous system. For all practical purposes, the PWHE interface is treated like any other existing L3 interface. PWs operate in one of the following modes:
· Bridged interworking (VC type 5 or VC type 4) · IP interworking mode (VC type 11)
With VC type 4 and VC type 5, PWs carry customer Ethernet frames (tagged or untagged) with IP payload. Thus, an S-PE device must perform ARP resolution for customer IP addresses learned over the PWHE. With VC type 4 (VLAN tagged) and VC type 5 (Ethernet port/raw), PWHE acts as a broadcast interface. Whereas with VC type 11 (IP Interworking), PWHE acts as a point-to-point interface. Therefore there are two types of PWHE interface--PW-Ether (for VC type 4 and 5) and PW-IW (for VC type 11). These PWs can terminate into a VRF or the IP global table on S-PE.
Benefits of PWHE
Some of the benefits of implementing PWHE are: · dissociates the customer facing interface (CFI) of the service PE from the underlying physical transport media of the access or aggregation network · reduces capex in the access or aggregation network and service PE · distributes and scales the customer facing Layer 2 UNI interface set · implements a uniform method of OAM functionality · providers can extend or expand the Layer 3 service footprints · provides a method of terminating customer traffic into a next generation network (NGN)
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 239

Restrictions

Implementing Multipoint Layer 2 Services

Restrictions

· PWHE over 2nd level BGP Labeled Unicast (LU) recursion (BGP RFC3107) is supported only if there is a single BGP path to a destination. This includes not supporting BGP Prefix Independent Convergence (PIC) backup paths.

Generic Interface List
A generic interface list contains is a list of physical or bundle interfaces that is used in a PW-HE connection.
The generic interface list supports only main interfaces, and not sub-interfaces. The generic interface list is bi-directional and restricts both receive and transmit interfaces on access-facing line cards. The generic interface list has no impact on the core-facing side.
A generic interface list is used to limit the resources allocated for a PWHE interface to the set of interfaces specified in the list.
Only the S-PE is aware of the generic interface list and expects that the PWHE packets arrive on only line cards with generic interface list members on it. If packets arrive at the line card without generic interface list members on it, they are dropped.
Starting with Cisco IOS XR Software Release 7.3.1, the maximum number of interfaces per generic interface list is increased to 32 L3 physical interfaces. A maximum of eight L3 bundle interfaces is still supported. Furthermore, if there are more than eight interfaces under one of the generic interface lists, the supported number of generic interface list per IGP peer is reduced from eight to two.
Configure only those Layer 3 interfaces, either Bundle-Ether or physical, that are part of the generic interface list (GIL) through which PWHE connects access PE devices. PWHE does not support any Layer 2 interface or bundle member interfaces of the L3 interfaces list or L3VPN core-facing L3 interfaces.
However, the device still allows you to associate individual bundle member interfaces that are not part of the generic interface list (GIL). PWHE interfaces are up, and correspondingly all Xconnect configured on PWHE interfaces are up. But the traffic does not flow due to an undetected misconfiguration.
LFA over Pseudowire Headend
From Release 5.1.1, PW-HE is supported on loop free alternate (LFA) routes.
For LFA to be effective on a PW-HE interface, all the routing paths (protected and backup) must be included in the generic interface list of that PW-HE interface. If all the routing paths are not included in the generic interface list, then there may be loss of traffic even if LFA is enabled. This is because the LFA route could be the one that was not included in the generic interface list.
To configure LFA on PW-HE interface, do the following:
1. Configuring Generic Interface List
2. Configuring IP/LDP Fast Reroute
For more information about configuring the IP Fast Reroute Loop-free alternate, see Implementing IS-IS on Cisco IOS XR Software module of the Cisco ASR 9000 Series Aggregation Services Router Routing Configuration Guide.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 240

Implementing Multipoint Layer 2 Services

PW-HE Multicast

PW-HE Multicast
Multicast support for Pseudowire Head-end (PW-HE) interfaces is available only on the enhanced ethernet cards. For more information about PW-HE multicast feature, see the Implementing Layer 3 Multicast Routing chapter in the Cisco ASR 9000 Series Aggregation Services Router Multicast Configuration Guide, Release 5.1.x.
PW-HE over MPLS-TE Tunnels
The PW-HE over MPLS-TE Tunnels feature supports forwarding of pseudowire traffic (with pseudowire headend) over TE tunnels. For more information about PW-HE over MPLS TE Tunnels, see the Implementing MPLS Traffic Engineering chapter in the Cisco ASR 9000 Series Aggregation Services Router MPLS Configuration Guide, Release 5.1.x.
PWHE Load Balancing Support using FAT Label
The PWHE Load Balancing Support using FAT Label feature enables flow hashing based load balancing across egress interfaces defined in the generic interface list. This feature also enables Flow Aware Transport (FAT) label that can be utilized for load balancing by downstream P-routers.
For load balancing among the members of the generic interface list, a five-tuple hash that includes source IP address, source port, destination IP address, destination port, and Router ID is utilized to distribute traffic among the members of the generic interface list.
You can insert the FAT label after successful negotiation with the remote router, or after static configuration. The downstream router uses it to perform load balancing. In Cisco IOS Software Release 6.6.1, only targeted-LDP signaling is supported to negotiate flow label.
Restrictions · To implement the PWHE Load Balancing feature, use the Cisco ASR 9000 3rd generation line cards as your S-PE node ingress and egress line cards, because line card support is limited to only the 3rd generation.
· Flow labels are not supported when the incoming traffic is from an L2 transport PWHE interface (From Core to S-PE).
· Load balancing is not supported for MPLS-TE/TE preferred path.
· Enabling PWHE per-flow load balancing results in QoS behavior that is identical to multi-member bundles. A QoS policy instance is independently applied to each generic interface.
Until Cisco IOS XR Software Release 6.6.1, only PW label hashing was supported, and absolute rate egress shaping and QoS could be configured. From Release 6.6.1, you can do one of the following:
· Preserve the existing QoS accuracy without changing the load balancing mode.
· Configure flow-based load balancing to take advantage of ECMP links at the detriment of absolute rate egress shaping and QoS.
· Configuring the load-balancing flow src-dst-mac command has the same effect as configuring load-balancing flow src-dst-ip command.
· This feature is not supported on PW-IW (VC type 11) interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 241

Configure PWHE Load Balancing Support using FAT Label

Implementing Multipoint Layer 2 Services

· PWHE per-flow load-balancing is supported over L3 PW-Ethernet interfaces and sub-interfaces in L3, L3VPN and BNG deployment scenarios.
· PWHE per-flow load-balancing is not supported in EVPN, SR-TE and SR deployment scenarios.
Configure PWHE Load Balancing Support using FAT Label This section describes how to configure PWHE load balancing using FAT label.
Configuration Example Perfrom these tasks to configure PWHE load balancing using FAT label at both S-PE and A-PE. S-PE Configuration Perform these tasks at S-PE: · Configure PWHE Ethernet interface and attach the generic interface list with a PWHE Ethernet interface.
· Configure global L2VPN load balancing (optional)
· Configure flow label
· Configure PWHE cross-connect
/* S-PE Configuration */
/* Configure PWHE Ethernet interface and attach the generic interface list with a PWHE Ethernet interface */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# generic-interface-list gil1 RP/0/RSP0/CPU0:router(config-gen-if-list)# interface tenGigE 0/0/0/0/0 RP/0/RSP0/CPU0:router(config-gen-if-list)# interface tenGigE 0/1/0/1/0 RP/0/RSP0/CPU0:router(config-gen-if-list)# interface tenGigE 0/0/0/0/2 RP/0/RSP0/CPU0:router(config-gen-if-list)# exit RP/0/RSP0/CPU0:router(config)# interface pw-ether 100 RP/0/RSP0/CPU0:router(config-if)# ipv4 address 192.0.2.1/24 RP/0/RSP0/CPU0:router(config-if)# ipv6 address 2001:DB8::1/32 RP/0/RSP0/CPU0:router(config-if)# attach generic-interface-list gil1
/* Configure global L2VPN load balancing (Optional) */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# load-balancing flow src-dst-ip
/* This enables flow-based load balancing across generic interface list members. */
/* Configure flow label */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class flow_lb_both RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# load-balancing flow-label both
/* Configure PWHE cross-connect */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pwhe_fat

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 242

Implementing Multipoint Layer 2 Services

Running Configuration

RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p xc_main_interface RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface PW-Ether100 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 209.165.200.225 pw-id 100 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class flow_lb_both RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# commit
A-PE Configuration Perform these tasks at A-PE:
· Configure Ethernet L2 transport interface
· Configure flow label
· Configure PWHE cross-connect
/* A-PE Configuration */
/* Configure Ethernet L2 transport interface */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface tenGigE 0/7/0/9.100 l2transport RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 100 RP/0/RSP0/CPU0:router(config-subif)# rewrite ingress tag pop 1 symmetric
/* Configure flow label */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class flow_lb_both RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# load-balancing flow-label both
/* Configure PWHE cross-connect */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pwhe_fat RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p xc_main_intf RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface tenGigE 0/7/0/9.100 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 209.165.201.1 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class flow_lb_both RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# commit
Running Configuration This section shows PWHE load balancing using FAT label running configuration.
/* On S-PE */
/* Configure PWHE Ethernet interface and attach the generic interface list with a PWHE Ethernet interface */
generic-interface-list gil1 interface TenGigE0/0/0/0/0 interface TenGigE0/0/0/0/2 interface TenGigE0/1/0/1/0
!
interface PW-Ether100 ipv4 address 192.0.2.1 255.255.255.0 ipv6 address 2001:DB8::1/32

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 243

Verification

Implementing Multipoint Layer 2 Services

Verification

attach generic-interface-list gil1 !
/* Configure global L2VPN load balancing */
l2vpn load-balancing flow src-dst-ip
!
/* Configure flow label */
l2vpn pw-class flow_lb_both encapsulation mpls load-balancing flow-label both ! !
/* Configure PWHE cross-connect */
l2vpn xconnect group pwhe_fat p2p xc_main_interface interface PW-Ether100 neighbor ipv4 209.165.200.225 pw-id 100 pw-class flow_lb_both ! !
! -------------------------------------------------------------------------------------------------------------------------------------
/* On A-PE */
/* Configure Ethernet L2 transport interface */
interface TenGigE0/7/0/9.100 l2transport encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric !
/* Configure flow label */
l2vpn pw-class flow_lb_both encapsulation mpls load-balancing flow-label both !
/* Configure PWHE cross-connect */
l2vpn xconnect group pwhe_fat p2p xc_main_intf interface TenGigE0/7/0/9.100 neighbor ipv4 209.165.201.1 pw-id 100 pw-class flow_lb_both ! !
The show output given in the following section display the details of the configuration of PWHE Ethernet interface, PWHE cross-connect, flow label, load balancing and the status of their configuration .

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 244

Implementing Multipoint Layer 2 Services

Verification

RP/0/RSP0/CPU0:router#show l2vpn xconnect pw-id 100 detail

Group pwhe_fat, XC xc_main_interface, state is up; Interworking none AC: PW-Ether100, state is up Type PW-Ether Interface-list: gil1 Replicate status: Te0/0/0/0/0: success Te0/0/0/0/2: success Te0/1/0/1/0: success MTU 1500; interworking none Internal label: 232235 Statistics: packets: received 0, sent 0 bytes: received 0, sent 0 PW: neighbor 209.165.200.225, PW ID 100, state is up ( established ) PW class flow_lb_both, XC ID 0xa0000013 Encapsulation MPLS, protocol LDP Source address 209.165.201.1 PW type Ethernet, control word disabled, interworking none PW backup disable delay 0 sec Sequencing not set LSP : Up Load Balance Hashing: src-dst-ip Flow Label flags configured (Tx=1,Rx=1), negotiated (Tx=1,Rx=1)

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

28130

24114

Group ID

0x40406e0

0x12000300

Interface PW-Ether100

TenGigE0/7/0/9.100

MTU

1500

1500

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(RP/0/RSP0/CPU0:router alert label)

(RP/0/RSP0/CPU0:router

alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Outgoing Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 2684354579

Create time: 25/09/2018 15:02:44 (1d04h ago)

Last time status changed: 26/09/2018 18:07:25 (01:41:29 ago)

Last time PW went down: 26/09/2018 17:45:25 (02:03:28 ago)

Statistics:

packets: received 0, sent 0

bytes: received 0, sent 0

Related Topics · Flow Aware Transport Pseudowire (FAT PW) , on page 237 · Pseudowire Headend, on page 238

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 245

MVPN Profile 26 for Pseudowire Headend

Implementing Multipoint Layer 2 Services

Associated Commands · load-balancing flow
· xconnect group
· show l2vpn xconnect
MVPN Profile 26 for Pseudowire Headend
The MVPN Profile 26 for Pseudowire Headend feature adds support for multicast VPN (MVPN) profile 26 on pseudowire headend (PWHE) interface to provide multicast services. Profile 26 is a next-generation MVPN profile that carries multicast traffic encapsulated in MPLS packets. The traffic is forwarded with MPLS labels using Point-to-Multipoint (P2MP) MPLS Traffic Engineering (TE) as the core signaling protocol. BGP is used as the overlay signaling protocol for partitioned multicast distribution trees (MDTs). Profile 26 represents partitioned-P2MP-TE with BGP C-multicast routing. Some of the characteristics of this profile include:
· Dynamic P2MP-TE tunnels with BGP C-multicast routing
· All Upstream Multicast Hop (UMH) options are supported
· Default and data MDT are supported
· Customer traffic can be SM or source-specific multicast (SSM)
· RIB-Extranet, RPL-Extranet, Hub and Spoke are supported
· Inter-AS option A and C are supported
Consider a topology where PWHE interfaces reside on the S-PE facing the access interface and is configured with the customer VRF. Access Pseudowires (PWs) from the A-PE of the Layer 2 domain terminate on this PWHE on the S-PE in to Layer 3 MVPN Profile 26 MPLS network. Psesudowire connectivity is established between A-PE and S-PE through cross-connect. Routing is established end-to-end through IGP protocols. The nodes are connected through MPLS core. P2MP TE auto-tunnels are established dynamically when S-PE receives PIM Join message from the participating PE receivers. Multicast traffic from the access side towards the PWHE interface on the S-PE travels across the MPLS core as encapsulated MPLS packets through P2MP TE auto-tunnels to the tail-end PEs. Similary, for multicast traffic with the sources from the L3 domain, tunnels are established with S-PE as the tail-end PE. The traffic is decapsulated in to the L2 domain to the access PE receivers.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 246

Implementing Multipoint Layer 2 Services Figure 31: MVPN Profile 26 for Pseudowire Headend

Configure MVPN Profile 26 for Pseudowire Headend

Partitioned MDT with BGP C-multicast Signaling Partitioned MDT is an MDT between a subset of PE routers and an ingress PE router. Each egress PE router advertises itself by sending a Type 3 route. This BGP Type 3 route has wildcards, which indicates that it applies for any source and any group. The Type 3 route has the PTA indicating the core tree protocol to be used and the kind of tree. This type 3 route only indicates the possibility to become part of any partitioned MDT. No partitioned MDT is set up. When a PE receives a PIM Join for C-(S,G) , the PE performs a reverse path forwarding (RPF) lookup to find the BGP next-hop address. This PE joins the tree as indicated in the Type 3 route towards the root which is the BGP next-hop. The S-PE forwards the C-(S,G) traffic onto the tree. With P2MP TE as the core tree protocol, the P2MP TE label switched-path (LSP) must be set up by the head-end link-state routing (LSR). In this case it is the ingress PE router. Egress PE routers nofitify the ingress PE that they would be tail end routers of a new P2MP TE, which is the partitioned MDT. Egress PE routers send a BGP AD Route Type 4 targetted at ingress PE. Ingress PE learns that there are two tail end routers for the new P2MP TE LSP and initiates the signaling of the P2MP TE LSP with RSVP. Ingress sends out path messages towards tail end routers. Egress PEs send back received messgaes towards the ingress PE. When this signaling is successful, the partitioned MDT comprising of a P2MP TE LSP, is set up. To build up the partitioned MDT with P2MP TE, BGP-AD is used utilizing the address family IPv4 MVPN. This way each PE can become the MPLS TE head-end router of a P2MP MPLS TE tree or tunnel. Also, learn which routers are the tail-end routers, and proceed with the RSVP-TE signaling towards each of the tail-end routers. These tunnels are P2MP auto-tunnels that are provisioned automatically.
Configure MVPN Profile 26 for Pseudowire Headend
Perform the following tasks to configure MVPN Profile 26 for Pseudowire Headend feature: S-PE Configuration
· Configure Profile 26
· Configure generic interface list
· Configure PWHE Ethernet and interworking interfaces, attach the generic interface list with a PWHE Ethernet and interworking interfaces
· Configure PW class for Ethernet and interworking interfaces
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 247

Configure MVPN Profile 26 for Pseudowire Headend

Implementing Multipoint Layer 2 Services

· Configure cross-connect using PWHE Ether and PWIW interfaces
/* S-PE Configuration */
/* Configure Profile 26 */ Router#configure Router(config)#router pim Router(config-pim)#vrf one Router(config-pim-vrf1)#address-family ipv4 Router(config-pim-vrf1-ipv4)#rpf topology route-policy rpf-vrf-one Router(config-pim-vrf1-ipv4)#mdt c-multicast-routing bgp` Router(config-pim-vrf1-ipv4-md-cmcast)#exit Router(config-pim-vrf1)#address-family ipv6 Router(config-pim-vrf1-ipv6)#rpf topology route-policy rpf-vrf-one Router(config-pim-vrf1-ipv6)#mdt c-multicast-routing bgp Router(config-pim-vrf1-ipv6-md-cmcast)#commit
Router(config)#interface GigabitEthernet Router(config-if)#route-policy rpf-vrf-one Router(config-rpl)#set core-tree p2mp-te-partitioned Router(config-rpl)#end-policy
Router#configure Router(config)#multicast-routing Router(config-mcast)#vrf one Router(config-mcast-vrf1)#address-family ipv4 Router(config-mcast-vrf1-ipv4)#rate-per-route Router(config-mcast-vrf1-ipv4)#interface all enable` Router(config-mcast-vrf1-ipv4)#accounting per-prefix Router(config-mcast-vrf1-ipv4)#bgp auto-discovery p2mp-te Router(config-mcast-vrf1-ipv4-bgp-ad)#mdt source Loopback0 Router(config-mcast-vrf1-ipv4-bgp-ad)#mdt partitioned p2mp-te 100 Router(config-mcast-vrf1-ipv4-bgp-ad)#exit
Router(config-mcast-vrf1)#address-family ipv6 Router(config-mcast-vrf1-ipv6)#rate-per-route Router(config-mcast-vrf1-ipv6)#interface all enable` Router(config-mcast-vrf1-ipv6)#accounting per-prefix Router(config-mcast-vrf1-ipv6)#bgp auto-discovery p2mp-te Router(config-mcast-vrf1-ipv6-bgp-ad)#mdt source Loopback0 Router(config-mcast-vrf1-ipv6-bgp-ad)#mdt partitioned p2mp-te 100 Router(config-mcast-vrf1-ipv6-bgp-ad)#commit
/* Configure generic interface list for PWHE Ethernet interface */
Router# configure Router(config)# generic-interface-list pwhe-list-APE2-1 Router(config-gen-if-list)# interface Bundle-Ether200 Router(config-gen-if-list)# interface TenGigE0/0/0/0/4 Router(config-gen-if-list)# interface TenGigE0/0/0/0/5
/* Configure PWHE Ethernet interface and attach the generic interface list with a PWHE Ethernet interface */
Router# configure Router(config)# interface pw-ether 5001 Router(config-if)# ipv4 address 103.7.7.1 255.255.255.252 Router(config-if)# ipv6 address 103:107:1::1/126 Router(config-if)# attach generic-interface-list pwhe-list-APE2-1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 248

Implementing Multipoint Layer 2 Services

Configure MVPN Profile 26 for Pseudowire Headend

/* Configure generic interface list for PW interworking interface */
Router# configure Router(config)# generic-interface-list pwhe-list-APE-2 Router(config-gen-if-list)# interface Bundle-Ether201 Router(config-gen-if-list)# interface TenGigE0/0/0/0/6 Router(config-gen-if-list)# interface TenGigE0/0/0/0/7
/* Configure interworking interface and attach the generic interface list with an interworking interface */
Router# configure Router(config)# interface pw-iw 4001 Router(config-if)# ipv4 address 103.107.47.225 255.255.255.252 Router(config-if)# attach generic-interface-list pwhe-list-APE-2
/* Configure PW class for Ethernet interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class APE2-PE1-PORT Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# control-word Router(config-l2vpn-pwc-mpls)# transport-mode ethernet
/* Configure cross-connect for PW Ethernet interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group APE2-PE1-PORT Router(config-l2vpn-xc)# p2p APE2-PE1-5001 Router(config-l2vpn-xc-p2p)# interface PW-Ether5001 Router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 100.1.8.1 pw-id 5001 Router(config-l2vpn-xc-p2p-pw)# pw-class APE2-PE1-PORT
/* Configure PW class for interworking interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class APE-InetRI-PWIW-4001 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# control-word
/* Configure cross-connect for PW interworking interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group APE-InetRI-PWIW-4001 Router(config-l2vpn-xc)# p2p APE-InetRI-PWIW-4001 Router(config-l2vpn-xc-p2p)# interface PW-IW4001 Router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 100.1.9.1 pw-id 4001 Router(config-l2vpn-xc-p2p-pw)# pw-class APE-InetRI-PWIW-4001 Router(config-l2vpn-xc-p2p-pw)# interworking ipv4
A-PE Configuration
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 249

Configure MVPN Profile 26 for Pseudowire Headend

Implementing Multipoint Layer 2 Services

· Configure PWHE Ethernet and interworking interfaces, attach the generic interface list with a PWHE Ethernet and interworking interfaces
· Configure PW class for Ethernet and interworking interfaces · Configure cross-connect using PWHE Ether and PWIW interfaces
/* A-PE Configuration */
/* Configure PWHE Ethernet interface */
Router# configure Router(config)# interface TenGigE0/0/0/0 l2transport Router(config-subif)# encapsulation dot1q 1001 Router(config-subif)# rewrite ingress tag pop 1 symmetric
/* Configure interworking interface */
Router# configure Router(config)# interface Serial0/5/0/0/8 l2transport
/* Configure PW Class for Ethernet interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class APE2-PE1-PORT Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# control-word Router(config-l2vpn-pwc-mpls)# transport-mode ethernet
/* Configure Cross-connect for Ethernet interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group APE2-PE1-PORT Router(config-l2vpn-xc)# p2p APE2-PE1-5001 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/0/0 Router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 100.1.1.1 pw-id 5001 Router(config-l2vpn-xc-p2p-pw)# pw-class APE2-PE1-PORT
/* Configure PW Class for interworking interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class APE-InetRI-PWIW-4001 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# control-word
/* Configure Cross-connect for interworking interface */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group APE-InetRI-PWIW-4001 Router(config-l2vpn-xc)# p2p APE-InetRI-PWIW-4001 Router(config-l2vpn-xc-p2p)# interface Serial0/5/0/0/8

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 250

Implementing Multipoint Layer 2 Services

Running Configuration

Router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 100.1.1.1 pw-id 4001 Router(config-l2vpn-xc-p2p-pw)# pw-class APE-InetRI-PWIW-4001 Router(config-l2vpn-xc-p2p-pw)# interworking ipv4
Running Configuration
This section shows MVPN Profile 26 for Pseudowire Headend running configuration.
/* On S-PE */
/* Profile 26 */ vrf one
address-family ipv4 rpf topology route-policy rpf-vrf-one mdt c-multicast-routing bgp !
address-family ipv6 rpf topology route-policy rpf-vrf-one mdt c-multicast-routing bgp !
interface GigabitEthernet route-policy rpf-vrf-one set core-tree p2mp-te-partitioned
end-policy
multicast-routing vrf one address-family ipv4 rate-per-route interface all enable accounting per-prefix bgp auto-discovery p2mp-te mdt source Loopback0 mdt partitioned p2mp-te 100 ! ! address-family ipv6 rate-per-route interface all enable accounting per-prefix bgp auto-discovery p2mp-te mdt source Loopback0 mdt partitioned p2mp-te 100
/* Ethernet interface */
configure generic-interface-list pwhe-list-APE2-1 interface Bundle-Ether200 interface TenGigE0/0/0/0/4 interface TenGigE0/0/0/0/5 !
!
configure interface PW-Ether5001 ipv4 address 103.107.1.1 255.255.255.252 ipv6 address 103:107:1::1/126 attach generic-interface-list pwhe-list-APE2-1
!

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 251

Running Configuration

Implementing Multipoint Layer 2 Services

l2vpn pw-class APE2-PE1-PORT encapsulation mpls control-word transport-mode ethernet !
!
l2vpn xconnect group APE2-PE1-PORT p2p APE2-PE1-5001 interface PW-Ether5001 neighbor ipv4 100.1.8.1 pw-id 5001 pw-class APE2-PE1-PORT
/* Interworking interface */
configure generic-interface-list pwhe-list-APE-2 interface Bundle-Ether200 interface TenGigE0/0/0/0/6 interface TenGigE0/0/0/0/7 !
!
configure interface PW-IW4001 ipv4 address 103.107.47.225 255.255.255.252 attach generic-interface-list pwhe-APE-2
!
l2vpn pw-class APE-InetRI-PWIW-4001 encapsulation mpls control-word !
!
l2vpn xconnect group APE-InetRI-PWIW-4001 p2p APE-InetRI-PWIW-4001 interface PW-IW4001 neighbor ipv4 100.1.9.1 pw-id 4001 pw-class APE-InetRI-PWIW-4001 ! interworking ipv4 ! !
!
-------------------------------------------------------------------------------------------------------------------------------------
/* On A-PE */
/* Ethernet interface */
configure interface TenGigE0/0/0/0 l2transport

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 252

Implementing Multipoint Layer 2 Services

Verification

Verification

encapsulation dot1q 1001 rewrite ingress tag pop 1 symmetric !
l2vpn pw-class APE2-PE1-PORT encapsulation mpls control-word transport-mode ethernet !
!
l2vpn xconnect group APE2-PE1-PORT p2p APE2-PE1-5001 interface TenGigE0/0/0/0 neighbor ipv4 100.1.1.1 pw-id 5001 pw-class APE2-PE1-PORT !
!
/* Interworking interface */
configure interface Serial0/5/0/0/8 l2transport !
!
l2vpn pw-class APE-InetRI-PWIW-4001 encapsulation mpls control-word !
!
l2vpn xconnect group APE-InetRI-PWIW-4001 p2p APE-InetRI-PWIW-4001 interface Serial0/5/0/0/8 neighbor ipv4 100.1.1.1 pw-id 4001 pw-class APE-InetRI-PWIW-4001 ! interworking ipv4 ! !
The show outputs given in the following section display the details of the configuration of PW Ethernet interface and cross-connect, and the status of their configuration on S-PE and A-PE.
/* S-PE Configuration */
Router-S-PE# show l2vpn xconnect interface pw-ether 5001 detail Group APE2-PE1-PORT, XC APE2-PE1-5001, state is up; Interworking none
AC: PW-Ether5001, state is up Type PW-Ether Interface-list: pwhe-list-APE2-1 Replicate status: BE616: success

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 253

Verification

Implementing Multipoint Layer 2 Services

BE617: success MTU 8986; interworking none Internal label: 25002 Statistics:
packets: received 96860, sent 101636 bytes: received 7285334, sent 8703696 PW: neighbor 100.1.8.1, PW ID 5001, state is up ( established ) PW class APE2-PE1-PORT, XC ID 0xfffe07d0 Encapsulation MPLS, protocol LDP Source address 100.1.1.1 PW type Ethernet, control word disabled, interworking none PW backup disable delay 0 sec Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

29012

24001

Group ID

0x4607d3c

0x40000c0

Interface PW-Ether5001

TenGigE0/0/0/0

MTU

8986

8986

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Outgoing Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 4294838224

Create time: 26/09/2017 11:08:57 (18:23:34 ago)

Last time status changed: 26/09/2017 11:28:59 (18:03:32 ago)

Statistics:

packets: received 96860, sent 101636

bytes: received 7285334, sent 8703696

-------------------------------------------------------------------------------------------------------------------------------------

/* A-PE configuration details */

Router-A-PE# show l2vpn xconnect interface te0/0/0/0 detail Group APE2-PE1-PORT, XC APE2-PE1-5001, state is up; Interworking none
AC: TenGigE0/0/0/0, state is up Type Ethernet MTU 8986; XC ID 0x1084455; interworking none Statistics: packets: received 399484457, sent 1073874787256 bytes: received 42812068782, sent 81549786107821
PW: neighbor 100.1.1.1, PW ID 5001, state is up ( established ) PW class APE2-PE1-PORT, XC ID 0xc0000fa1 Encapsulation MPLS, protocol LDP Source address 100.1.8.1 PW type Ethernet, control word disabled, interworking none PW backup disable delay 0 sec Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 254

Implementing Multipoint Layer 2 Services

Verification

Label

24001

29012

Group ID

0x40000c0

0x4607d3c

Interface TenGigE0/0/0/0

PW-Ether5001

MTU

8986

8986

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Outgoing Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 3221229473

Create time: 04/09/2017 17:48:35 (3w1d ago)

Last time status changed: 26/09/2017 23:37:11 (18:01:16 ago)

Last time PW went down: 26/09/2017 23:21:53 (18:16:34 ago)

Statistics:

packets: received 1073874787256, sent 399484457

bytes: received 81549786107821, sent 42812068782

The show outputs given in the following section display the details of the configuration of PW interworking interface and cross-connect, and the status of their configuration on S-PE and A-PE.

/* S-PE Configuration */

Router-S-PE# show l2vpn xconnect interface pw-iw 4001 detail Group APE-InetRI-PWIW-4001, XC APE-InetRI-PWIW-4001, state is up; Interworking IPv4
AC: PW-IW4001, state is up Type PW-IW Interface-list: pwhe-APE-2 Replicate status: BE616: success MTU 4470; interworking IPv4 Internal label: 35423 Statistics: packets: received 185986, sent 185985 bytes: received 134084287, sent 134654943
PW: neighbor 100.1.9.1, PW ID 4001, state is up ( established ) PW class APE-InetRI-PWIW-4001, XC ID 0xfffe1058 Encapsulation MPLS, protocol LDP Source address 100.1.1.1 PW type IP, control word enabled, interworking IPv4 PW backup disable delay 0 sec Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

152284

24018

Group ID

0x84003ed4

0xe004040

Interface PW-IW4001

Serial0/5/0/0/8

MTU

4470

4470

Control word enabled

enabled

PW type

IP

IP

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x7

0x7

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 255

Verification

Implementing Multipoint Layer 2 Services

(control word)

(control word)

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -----------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

Outgoing Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 4294840408

Create time: 04/10/2017 09:55:04 (00:21:36 ago)

Last time status changed: 04/10/2017 10:02:45 (00:13:56 ago)

Statistics:

packets: received 185986, sent 185985

bytes: received 134084287, sent 134654943

-------------------------------------------------------------------------------------------------------------------------------------

/* A-PE configuration details */

Router-A-PE# show interface pw-iw 4001 PW-IW4001 is up, line protocol is up
Interface state transitions: 1 Hardware is PWHE VC11 IP Interworking Interface Internet address is 103.107.47.225/30 MTU 4470 bytes, BW 10000 Kbit (Max: 10000 Kbit)
reliability 255/255, txload 7/255, rxload 7/255 Encapsulation PW-IW, loopback not set, Last link flapped 00:14:44
L2Overhead: 0 Generic-Interface-List: pwhe-APE-2 Last input 00:11:04, output 00:11:04 Last clearing of "show interface" counters never 5 minute input rate 277000 bits/sec, 48 packets/sec 5 minute output rate 293000 bits/sec, 51 packets/sec
185986 packets input, 134084287 bytes, 0 total input drops 0 drops for unrecognized upper-level protocol Received 0 broadcast packets, 0 multicast packets 185985 packets output, 134654943 bytes, 0 total output drops Output 0 broadcast packets, 0 multicast packets

The show output given in the following section display the details of the configuration of PWHE subinterface.
Router# show interface pw-ether 5001.1001 PW-Ether5001.1001 is up, line protocol is up
Interface state transitions: 1 Hardware is VLAN sub-interface(s), address is ac19.7200.0001 Internet address is 105.1.1.1/30 MTU 9004 bytes, BW 10000 Kbit (Max: 10000 Kbit)
reliability 255/255, txload 0/255, rxload 0/255 Encapsulation 802.1Q Virtual LAN, VLAN Id 1001, loopback not set, Last link flapped 00:14:56 ARP type ARPA, ARP timeout 04:00:00 Last input 00:00:00, output 00:00:00 Last clearing of "show interface" counters never 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 1000 bits/sec, 0 packets/sec
196 packets input, 15554 bytes, 1282 total input drops 0 drops for unrecognized upper-level protocol Received 0 broadcast packets, 0 multicast packets 1416 packets output, 923195 bytes, 3 total output drops Output 0 broadcast packets, 15 multicast packets

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 256

Implementing Multipoint Layer 2 Services

DHCP on PWHE Interfaces

DHCP on PWHE Interfaces
The DHCP on PWHE interfaces feature enables you to configure the DHCP functionality, such as DHCP server, relay, or proxy on the PWHE interface.
This feature allows you to offer LAN IP gateway services, such as, DHCP and DNS to your customers connected through PWHE interface. This feature removes the need for an extra layer 3 router at your branch site. Instead, use S-PE to centralize the DHCP-server functionality to lower the cost and simplify on-premise solution. This feature minimizes the equipment needed on-premise at the end-customer premises. Centralizing DHCP on the S-PE allows you to offer faster time-to-market because you do not have to ship layer 3 devices to your customer site. This feature significantly simplifies the connectivity of enterprise branch sites requiring LAN DHCP services from their service provider.
This feature is supported only on 64-bit IOS XR operating system.
Consider a topology where an NCS 5500 router is facing the access side, and an ASR 9000 router is facing the core side. Create a PWHE tunnel between these routers. The PWHE tunnel originates at L2 on the NCS 5500 router and terminates at L3 on the ASR 9000 router. Configure EVPN-VPWS cross-connect between the NCS 5500 router and the ASR 9000 router.
You can configure the ASR 9000 router as a DHCP server, relay, or proxy on the PWHE main interface or sub-interface.
The AC carries the traffic in its native form; that is, Ethernet frames with or without VLAN tagging, depending on whether you are creating a VLAN-based pseudowire or an Ethernet-based pseudowire.
Figure 32: DHCP Functionality for PWHE Interfaces

If you configure the ASR 9000 router as a DHCP server on the PWHE interface, it processes the request received from the DHCP client. The DHCP server accepts address assignment requests and renewals, and assigns the IP addresses from predefined groups of addresses contained within Distributed Address Pools (DAPS). You can also configure the DHCP server to provide additional information to the requesting client, such as subnet mask, domain-name, the IP address of the DNS server, the default router, and other configuration parameters. If you configure the ASR 9000 router as a DHCP relay or proxy on the PWHE interface, it forwards the request received from the DHCP client to the remote server. The remote server processes the request and provides information back to the DHCP relay or proxy. This feature supports both DHCP IPv4 and IPv6 addresses.
Configure DHCP on Pseudowire Headend
To configure DHCP on Pseudowire Headend feature, perform the following tasks: · Configure PWHE on S-PE and A-PE · Configure DHCP on S-PE
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 257

Running Configuration

Implementing Multipoint Layer 2 Services

Configure PWHE on both S-PE and A-PE
This section describes how you can configure pseudowire headend on both S-PE and A-PE.
S-PE Configuration
/* S-PE Configuration */
Router# configure Router(config)# generic-interface-list pwhe-list-pwhe2 Router(config-gen-if-list)# interface pw-ether 2 Router(config-gen-if-list)# exit Router# configure Router(config)# interface pw-ether 2 Router(config-if)# ipv4 address 10.0.0.1 255.0.0.0 Router(config-if)# attach generic-interface-list pwhe-list-pwhe2 Router(config-if)# exit Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p vpws_1 Router(config-l2vpn-xc-p2p)# PW-Ether2 Router(config-l2vpn-xc-p2p-pw)# neighbor evpn evi 25 target 200 source 100 Router(config-l2vpn-xc-p2p-pw)# exit Router(config)# generic-interface-list pwhe2 Router(config-gen-if-list)# interface TenGigE0/1/0/1
A-PE Configuration
/* A-PE Configuration */
Router# configure Router(config)# interface TenGigE0/0/0/0 l2transport Router(config-subif)# encapsulation dot1q 1001 Router(config-subif)# rewrite ingress tag pop 1 symmetric Router(config-subif)# exit Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p vpws_1 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/0/21 Router(config-l2vpn-xc-p2p-pw)# neighbor evpn evi 25 target 100 source 200
Running Configuration
This section shows pseudowire headend running configuration.
/* On S-PE */
configure generic-interface-list pwhe-list-pwhe2 interface pw-ether 2
!
interface pw-ether 2 ipv4 address 10.0.0.1 255.0.0.0 attach generic-interface-list pwhe-list-pwhe2
!
l2vpn xconnect group evpn_vpws

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 258

Implementing Multipoint Layer 2 Services

Verification

Verification

p2p vpws_1 interface PW-Ether2 neighbor evpn evi 25 target 200 source 100 !
generic-interface-list pwhe2 interface TenGigE0/1/0/1
-------------------------------------------------------------------------------------------------------------------------------------
/* On A-PE */
configure interface TenGigE0/0/0/0 l2transport encapsulation dot1q 1001 rewrite ingress tag pop 1 symmetric
! ! l2vpn
xconnect group evpn_vpws p2p vpws_1 interface TenGigE0/0/0/21 neighbor evpn evi 25 target 100 source 200 !
!

The show command outputs given in this section display the details of the configuration of PW Ethernet interface and cross-connect, and the status of their configuration.

Router# show l2vpn xconnect

Legend: ST = State, UP = Up, DN = Down, AD = Admin Down, UR = Unresolved, SB = Standby, SR = Standby Ready, (PP) = Partially Programmed

XConnect

Group

Name

ST

------------------------

evpn_vpws vpws_1

UP

Segment 1

Description

ST

-----------------------------

PE2

UP

Segment 2

Description

ST

-----------------------------

EVPN 25,172.16.0.1 UP

-------------------------------------------------------------------------------------------------------------------------------------

Configure DHCP on S-PE You can configure the ASR 9000 series router as DHCP server, relay, or proxy on the PWHE main interface or sub-interface.
Configure DHCP Server Perform these tasks to configure DHCP server on PWHE interface.
Router# configure Router(config)# dhcp ipv4 Router(config-dhcpv4)# profile svr1 server Router(config-dhcpv4-server-profile)# lease lease 0 1 0 Router(config-dhcpv4-server-profile)# pool pool_1 Router(config-dhcpv4-server-profile)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 259

Verification

Implementing Multipoint Layer 2 Services

Router(config-dhcpv4)# profile svr2 server Router(config-dhcpv4-server-profile)# lease lease 0 1 0 Router(config-dhcpv4-server-profile)# pool pool_2 Router(config-dhcpv4-server-profile)# exit Router(config-dhcpv4)#interface PW-Ether2.101 server profile SVR1 Router(config-dhcpv4)#interface PW-Ether2.102 server profile SVR2 Router(config-dhcpv4)#exit Router(config)# pool vrf default ipv4 pool_1 Router(config-pool-ipv4)# address-range 10.0.0.1 10.255.255.254 Router(config-pool-ipv4)# exit Router(config)# pool vrf default ipv4 pool_2 Router(config-pool-ipv4)# address-range 192.168.0.1 192.168.255.254 Router(config-pool-ipv4)# exit
Running Configuration
This section shows DHCP server running configuration.

configure dhcp ipv4 profile SVR1 server lease 0 1 0 pool pool_1 ! profile SVR2 server lease 0 1 0 pool pool_2 !
! interface PW-Ether2.101 server profile SVR1 interface PW-Ether2.102 server profile SVR2
Verification
Verify the DHCP server configuration.

Router#show dhcp ipv4 server binding Wed Nov 20 13:09:11.579 IST

Lease

MAC Address

IP Address

State Remaining

Interface

VRF

Sublabel

-------------- -------------- --------- --------- ------------------- ---------

----------

0010.9400.c02a 10.0.0.22

BOUND

3099

PE2.102

default 0x0

0010.9400.c02b 10.0.0.23

BOUND

3099

PE2.102

default 0x0

0010.9400.c02c 10.0.0.24

BOUND

3099

PE2.102

default 0x0

0010.9400.c02d 10.0.0.25

BOUND

3099

PE2.102

default 0x0

0010.9400.c02e 10.0.0.26

BOUND

3099

PE2.102

default 0x0

0010.9400.c02f 10.0.0.27

BOUND

3099

PE2.102

default 0x0

0010.9400.c030 10.0.0.28

BOUND

3099

PE2.102

default 0x0

0010.9400.c031 10.0.0.29

BOUND

3099

PE2.102

default 0x0

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 260

Implementing Multipoint Layer 2 Services

Verification

0010.9400.c032 10.0.0.30 0010.9400.c033 10.0.0.11 0010.9400.c020 10.0.0.45 0010.9400.c021 10.0.0.46 0010.9400.c022 10.0.0.47 0010.9400.c023 10.0.0.48 0010.9400.c024 10.0.0.49 0010.9400.c025 10.0.0.50 0010.9400.c026 10.0.0.51 0010.9400.c027 10.0.0.52 0010.9400.c028 10.0.0.53 0010.9400.c029 10.0.0.54

BOUND BOUND BOUND BOUND BOUND BOUND BOUND BOUND BOUND BOUND BOUND BOUND

3099 3099 3201 3201 3201 3201 3201 3201 3201 3201 3201 3201

PE2.102 PE2.102 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101 PE2.101

Configure DHCP Proxy Perform these tasks to configure DHCP proxy on PWHE interface.

default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0 default 0x0

Router# configure Router(config)# dhcp ipv4 Router(config-dhcpv4)# profile prox1 proxy Router(config-dhcpv4-proxy-profile)# helper-address vrf default 10.0.0.1 giaddr 0.0.0.0 Router(config-dhcpv4-proxy-profile)# relay information check Router(config-dhcpv4-proxy-profile)# relay information option Router(config-dhcpv4-proxy-profile)# relay information option allow-untrusted Router(config-dhcpv4-proxy-profile)# exit Router(config-dhcpv4)#interface PW-Ether2.201 proxy profile prox Router(config-dhcpv4)#interface PW-Ether2.202 proxy profile prox Router(config-dhcpv4)#commit
Running Configuration
This section shows DHCP proxy running configuration.

configure dhcp ipv4 profile prox1 proxy helper-address vrf default 10.0.0.1 giaddr 0.0.0.0 relay information check relay information option relay information option allow-untrusted ! !
interface PW-Ether2.101 proxy profile prox interface PW-Ether2.102 proxy profile prox
Verification
Verify DHCP proxy configuration.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 261

Verification

Implementing Multipoint Layer 2 Services

Router#show dhcp ipv4 proxy binding summary Wed Jun 5 08:07:22.537 IST

Total number of clients: 3724

STATE

|

COUNT

|

------------------------------------

INIT

|

0|

INIT_DPM_WAITING

|

0|

SELECTING

|

0|

OFFER_SENT

|

0|

REQUESTING

|

0|

REQUEST_INIT_DPM_WAITING|

0|

ACK_DPM_WAITING

|

0|

BOUND

|

3724 |

RENEWING

|

0|

INFORMING

|

0|

REAUTHORIZE

|

0|

DISCONNECT_DPM_WAIT

|

0|

ADDR_CHANGE_DPM_WAIT |

0|

DELETING

|

0|

DISCONNECTED

|

0|

RESTARTING

|

0|

Configure DHCP Relay Perform these tasks to configure DHCP relay on PWHE interface.

Router# configure Router(config)# dhcp ipv4 Router(config-dhcpv4)# profile relay1 relay Router(config-dhcpv4-proxy-profile)# helper-address vrf default 10.0.0.1 giaddr 0.0.0.0 Router(config-dhcpv4-proxy-profile)# relay information option vpn Router(config-dhcpv4-proxy-profile)# relay information check Router(config-dhcpv4-proxy-profile)# relay information option Router(config-dhcpv4-relay-profile)# relay information option vpn-mode rfc Router(config-dhcpv4-proxy-profile)# relay information option allow-untrusted Router(config-dhcpv4-proxy-profile)# exit Router(config-dhcpv4)#interface PW-Ether2.201 proxy profile prox Router(config-dhcpv4)#interface PW-Ether2.202 proxy profile prox Router(config-dhcpv4)#commit

Running Configuration This section shows DHCP relay running configuration.

configure dhcp ipv4 profile relay1 relay helper-address vrf default 10.0.0.1 giaddr 0.0.0.0 relay information option vpn relay information check relay information option relay information option vpn-mode rfc relay information option allow-untrusted ! !
interface PW-Ether2.101 relay profile relay1 interface PW-Ether2.102 relay profile relay1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 262

Implementing Multipoint Layer 2 Services

L2VPN over GRE

Verification Verify DHCP Relay configuration.
Router# show dhcp ivp4 relay profile name relay1 Profile: relay1 relay Helper Addresses: 10.0.0.1, vrf default, giaddr 0.0.0.0 Remote-Id Format : [ascii | hex] Remote-Id value : cisco Information Option: Enabled Information Option Allow Untrusted: Enabled Information Option VPN: Enabled Information Option VPN Mode: RFC Information Option Policy: Replace
Related Topics · DHCP on PWHE Interfaces, on page 257
Associated Commands · show l2vpn xconnect
· show dhcp ipv4 server binding
· show dhcp ipv4 proxy binding summary
· show dhcp ipv4 relay profile name
L2VPN over GRE
To transport an IP packet over a generic routing encapsulation (GRE) tunnel, the system first encapsulates the original IP packet with a GRE header. The encapsulated GRE packet is encapsulated once again by an outer transport header that is used to forward the packet to it's destination. The following figure captures how GRE encapsulation over an IP transport network takes place.
Figure 33: GRE Encapsulation

Note In the new IP packet, new payload is similar to the original IP packet. Additionally, the new IP header (New IP Hdr) is similar to the tunnel IP header which in turn is similar to the transport header.
When a GRE tunnel endpoint decapsulates a GRE packet, it further forwards the packet based on the payload type. For example, if the payload is a labeled packet then the packet is forwarded based on the virtual circuit (VC) label or the VPN label for L2VPN and L3VPN respectively.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 263

L2VPN over GRE Restrictions

Implementing Multipoint Layer 2 Services

L2VPN over GRE Restrictions
Some of the restrictions that you must consider while configuring L2VPN over GRE: · GRE over BVI is not supported. · For VPLS flow-based load balancing scenario, the GRE tunnel is pinned down to outgoing path based on tunnel source or destination cyclic redundancy check (CRC). Unicast and flood traffic always takes the same physical path for a given GRE tunnel. · Ingress attachment circuit must be an ASR 9000 Enhanced Ethernet Line Card for L2VPN over GRE. Additionally, GRE tunnel destination should be reachable only on an ASR 9000 Enhanced Ethernet Line Card. · The L2VPN over GRE feature is not supported on the ASR 9000 Ethernet Line Card or Cisco ASR 9000 Series SPA Interface Processor-700 line cards as the ingress attachment circuit and GRE destination is reachable over GRE. · Pseudowire over TE over GRE scenario is not supported. · Preferred Path Limitations: · When you configure GRE as a preferred path, egress features are not supported under the GRE tunnel (Egress ACL). · VCCV ping or traceroute are not supported for preferred path. · Preferred path is supported only for pseudowires configured in a provider egde (PE) to PE topology.
GRE Deployment Scenarios
In an L2VPN network, you can deploy GRE in the following scenarios: · Configuring GRE tunnel between provider edge (PE) to PE routers · Configuring GRE tunnel between P to P routers · Configuring GRE tunnel between P to PE routers
The following diagrams depict the various scenarios:
Figure 34: GRE tunnel configured between PE to PE routers

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 264

Implementing Multipoint Layer 2 Services Figure 35: GRE tunnel configured between P to P routers

GRE Tunnel as Preferred Path

Figure 36: GRE tunnel configured between P to PE routers

Note These deployment scenarios are applicable to VPWS and VPLS.
GRE Tunnel as Preferred Path
Preferred tunnel path feature allows you to map pseudowires to specific GRE tunnels. Attachment circuits are cross-connected to GRE tunnel interfaces instead of remote PE router IP addresses (reachable using IGP or LDP). Using preferred tunnel path, it is always assumed that the GRE tunnel that transports the L2 traffic runs between the two PE routers (that is, its head starts at the imposition PE router and terminates on the disposition PE router).
How to Implement Multipoint Layer 2 Services
This section describes the tasks that are required to implement Multipoint Layer 2 Services:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 265

Configuring a Bridge Domain

Implementing Multipoint Layer 2 Services

Configuring a Bridge Domain
These topics describe how to configure a bridge domain:

Creating a Bridge Domain
Perform this task to create a bridge domain .

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group that can contain bridge domains, and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 266

Implementing Multipoint Layer 2 Services

Configuring a Pseudowire

commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring a Pseudowire
Perform this task to configure a pseudowire under a bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi { vfi-name } 6. exit 7. neighbor { A.B.C.D } { pw-id value } 8. dhcp ipv4 snoop profile { dhcp_snoop_profile_name } 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 267

Configuring a Pseudowire

Implementing Multipoint Layer 2 Services

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9

Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures the virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode.
· Use the vfi-name argument to configure the name of the specified virtual forwarding interface. exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Exits the current configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#
Adds an access pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
dhcp ipv4 snoop profile { dhcp_snoop_profile_name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#dhcp ipv4 snoop profile profile1
Enables DHCP snooping on the bridge, and attaches a DHCP snooping profile. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 268

Implementing Multipoint Layer 2 Services

Associating Members with a Bridge Domain

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Associating Members with a Bridge Domain
After a bridge domain is created, perform this task to assign interfaces to the bridge domain. These types of bridge ports are associated with a bridge domain:
· Ethernet and VLAN
· VFI

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. interface type interface-path-id 6. (Optional) static-mac-address { MAC-address } 7. routed interface BVI-id 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 269

Associating Members with a Bridge Domain

Implementing Multipoint Layer 2 Services

Step 4 Step 5 Step 6 Step 7 Step 8

bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/4/0/0 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#
Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. (Optional) static-mac-address { MAC-address } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# static-mac-address 1.1.1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Configures the static MAC address to associate a remote MAC address with a pseudowire or any other bridge interface. routed interface BVI-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# routed interface BVI100 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#
Perform this step if you need the VPLS pseudowire traffic routed over an Integrated Routing and Bridging (IRB). This command enters bridge-group virtual interface configuration mode and adds a bridge-group virtual interface (BVI) to the bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. This step is essential to bring the BVI's status up. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 270

Implementing Multipoint Layer 2 Services

Configuring Bridge Domain Parameters

Configuring Bridge Domain Parameters
To configure bridge domain parameters, associate these parameters with a bridge domain: · Maximum transmission unit (MTU)--Specifies that all members of a bridge domain have the same MTU. The bridge domain member with a different MTU size is not used by the bridge domain even though it is still associated with a bridge domain.
· Flooding--Flooding is enabled always.
· Dynamic ARP Inspection (DAI)--Ensures only valid ARP requests and responses are relayed.
· IP SourceGuard (IPSG)--Enables source IP address filtering on a Layer 2 port.

Note To verify if the DAI and IPSG features are working correctly, look up the packets dropped statistics for DAI and IPSG violation. The packet drops statistics can be viewed in the output of the show l2vpn bridge-domain bd-name <> detail command.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. flooding disable 6. mtu bytes 7. dynamic-arp-inspection { address-validation | disable | logging } 8. ip-source-guard logging 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the l2vpn configuration mode. bridge group bridge-group-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 271

Configuring Bridge Domain Parameters

Implementing Multipoint Layer 2 Services

Step 4 Step 5 Step 6 Step 7 Step 8

Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#

Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#

Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode. flooding disable Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# flooding disable RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#

Disables flooding. mtu bytes Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mtu 1000

Adjusts the maximum packet size or maximum transmission unit (MTU) size for the bridge domain. · Use the bytes argument to specify the MTU size, in bytes. The range is from 64 to 65535.

dynamic-arp-inspection { address-validation | disable | logging } Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# dynamic-arp-inspection

Enters the dynamic ARP inspection configuration submode. Ensures only valid ARP requests and responses are relayed.

Note

You can configure dynamic ARP inspection under the bridge domain or the bridge port.

ip-source-guard logging Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# ip-source-guard logging

Enters the IP source guard configuration submode and enables source IP address filtering on a Layer 2 port.
You can enable IP source guard under the bridge domain or the bridge port. By default, bridge ports under a bridge inherit the IP source guard configuration from the parent bridge.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 272

Implementing Multipoint Layer 2 Services

Disabling a Bridge Domain

Step 9

By default, IP source guard is disabled on the bridges. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Disabling a Bridge Domain
Perform this task to disable a bridge domain. When a bridge domain is disabled, all VFIs that are associated with the bridge domain are disabled. You are still able to attach or detach members to the bridge domain and the VFIs that are associated with the bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. shutdown 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge group name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 273

Blocking Unknown Unicast Flooding

Implementing Multipoint Layer 2 Services

Step 4 Step 5 Step 6

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode. shutdown Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# shutdown
Shuts down a bridge domain to bring the bridge and all attachment circuits and pseudowires under it to admin down state. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Blocking Unknown Unicast Flooding
Perform this task to disable flooding of unknown unicast traffic at the bridge domain level.
You can disable flooding of unknown unicast traffic at the bridge domain, bridge port or access pseudowire levels. By default, unknown unicast traffic is flooded to all ports in the bridge domain.

Note If you disable flooding of unknown unicast traffic on the bridge domain, all ports within the bridge domain inherit this configuration. You can configure the bridge ports to override the bridge domain configuration.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. flooding unknown-unicast disable

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 274

Implementing Multipoint Layer 2 Services

Blocking Unknown Unicast Flooding

DETAILED STEPS

6. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode.
bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain.
bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode.
flooding unknown-unicast disable Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# flooding unknown-unicast disable
Disables flooding of unknown unicast traffic at the bridge domain level.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 275

Changing the Flood Optimization Mode

Implementing Multipoint Layer 2 Services

Changing the Flood Optimization Mode
Perform this task to change the flood optimization mode under the bridge domain:

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. flood mode convergence-optimized 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode. flood mode convergence-optimized Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# flood mode convergence-optimized

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 276

Implementing Multipoint Layer 2 Services

Configuring Layer 2 Security

Step 6

Changes the default flood optimization mode from Bandwidth Optimization Mode to Convergence Mode. When you configure flood mode convergence-optimized, you must remove and reconfigure the bridge domain when you add, modify, or remove the pseudowire configuration of a specific bridge domain.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Layer 2 Security
These topics describe how to configure Layer 2 security:
Enabling Layer 2 Security
Perform this task to enable Layer 2 port security on a bridge.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge domain bridge-domain-name 5. security 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 277

Attaching a Dynamic Host Configuration Protocol Profile

Implementing Multipoint Layer 2 Services

Step 3 Step 4 Step 5 Step 6

Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Assigns each network interface to a bridge group and enters L2VPN bridge group configuration mode. bridge domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. security Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# security
Enables Layer 2 port security on a bridge. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Attaching a Dynamic Host Configuration Protocol Profile
Perform this task to enable DHCP snooping on a bridge and to attach a DHCP snooping profile to a bridge.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. dhcp ipv4 snoop { profile profile-name } 6. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 278

Implementing Multipoint Layer 2 Services

Attaching a Dynamic Host Configuration Protocol Profile

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Assigns each network interface to a bridge group and enters L2VPN bridge group configuration mode. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. dhcp ipv4 snoop { profile profile-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# dhcp ipv4 snoop profile attach
Enables DHCP snooping on a bridge and attaches DHCP snooping profile to the bridge. · Use the profile keyword to attach a DHCP profile. The profile-name argument is the profile name for DHCPv4 snooping.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 279

Configuring a Layer 2 Virtual Forwarding Instance

Implementing Multipoint Layer 2 Services

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring a Layer 2 Virtual Forwarding Instance
These topics describe how to configure a Layer 2 virtual forwarding instance (VFI):
Creating the Virtual Forwarding Instance
Perform this task to create a Layer 2 Virtual Forwarding Instance (VFI) on all provider edge devices under the bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi {vfi-name} 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 280

Implementing Multipoint Layer 2 Services

Associating Pseudowires with the Virtual Forwarding Instance

Step 5 Step 6

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode.
vfi {vfi-name} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Associating Pseudowires with the Virtual Forwarding Instance
After a VFI is created, perform this task to associate one or more pseudowires with the VFI.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. vfi { vfi name } 6. neighbor { A.B.C.D } { pw-id value } 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 281

Associating Pseudowires with the Virtual Forwarding Instance

Implementing Multipoint Layer 2 Services

Step 3 Step 4 Step 5 Step 6
Step 7

RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)#
Adds a pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 282

Implementing Multipoint Layer 2 Services

Associating a Virtual Forwarding Instance to a Bridge Domain

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Associating a Virtual Forwarding Instance to a Bridge Domain
Perform this task to associate a VFI to be a member of a bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi { vfi name } 6. neighbor { A.B.C.D } { pw-id value } 7. static-mac-address { MAC-address } 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 283

Attaching Pseudowire Classes to Pseudowires

Implementing Multipoint Layer 2 Services

Step 5 Step 6
Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)#
Adds a pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
static-mac-address { MAC-address } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)# static-mac-address 1.1.1
Configures the static MAC address to associate a remote MAC address with a pseudowire or any other bridge interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Attaching Pseudowire Classes to Pseudowires
Perform this task to attach a pseudowire class to a pseudowire.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 284

Implementing Multipoint Layer 2 Services

Attaching Pseudowire Classes to Pseudowires

DETAILED STEPS

4. bridge-domain bridge-domain name 5. vfi { vfi-name } 6. neighbor { A.B.C.D } { pw-id value } 7. pw-class { class-name } 8. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 285

Configuring Pseudowires Using Static Labels

Implementing Multipoint Layer 2 Services

Step 6 Step 7 Step 8

neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)#
Adds a pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
pw-class { class-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)# pw-class canada
Configures the pseudowire class template name to use for the pseudowire. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Pseudowires Using Static Labels
Perform this task to configure the Any Transport over Multiprotocol (AToM) pseudowires by using the static labels. A pseudowire becomes a static AToM pseudowire by setting the MPLS static labels to local and remote.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. vfi { vfi-name } 6. neighbor { A.B.C.D } { pw-id value } 7. mpls static label { local value } { remote value } 8. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 286

Implementing Multipoint Layer 2 Services

Configuring Pseudowires Using Static Labels

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)#
Adds a pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
mpls static label { local value } { remote value } Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 287

Disabling a Virtual Forwarding Instance

Implementing Multipoint Layer 2 Services

Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)# mpls static label local 800 remote 500
Configures the MPLS static labels and the static labels for the pseudowire configuration. You can set the local and remote pseudowire labels.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Disabling a Virtual Forwarding Instance
Perform this task to disable a VFI. When a VFI is disabled, all the previously established pseudowires that are associated with the VFI are disconnected. LDP advertisements are sent to withdraw the MAC addresses that are associated with the VFI. However, you can still attach or detach attachment circuits with a VFI after a shutdown.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi { vfi-name } 6. shutdown 7. Use the commit or end command. 8. show l2vpn bridge-domain [ detail ]

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 288

Implementing Multipoint Layer 2 Services

Disabling a Virtual Forwarding Instance

Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode. shutdown Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# shutdown
Disables the virtual forwarding interface (VFI). Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show l2vpn bridge-domain [ detail ] Example:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Displays the state of the VFI. For example, if you shut down the VFI, the VFI is shown as shut down under the bridge domain.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 289

Configuring the MAC Address-related Parameters

Implementing Multipoint Layer 2 Services

Configuring the MAC Address-related Parameters
These topics describe how to configure the MAC address-related parameters: The MAC table attributes are set for the bridge domains.

Configuring the MAC Address Source-based Learning
Perform this task to configure the MAC address source-based learning.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domainname 5. mac 6. learning disable 7. Use the commit or end command. 8. show l2vpn bridge-domain [ detail ]

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domainname Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 290

Implementing Multipoint Layer 2 Services

Enabling the MAC Address Withdrawal

Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. mac Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)#
Enters L2VPN bridge group bridge domain MAC configuration mode. learning disable Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# learning disable
Disables MAC learning at the bridge domain level. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show l2vpn bridge-domain [ detail ] Example:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Displays the details that the MAC address source-based learning is disabled on the bridge.

Enabling the MAC Address Withdrawal
Perform this task to enable the MAC address withdrawal for a specified bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. mac

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 291

Enabling the MAC Address Withdrawal

Implementing Multipoint Layer 2 Services

DETAILED STEPS

6. withdrawal 7. Use the commit or end command. 8. show l2vpn bridge-domain [detail]

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN l2vpn bridge group bridge domain configuration mode. mac Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)#
Enters L2VPN l2vpn bridge group bridge domain MAC configuration mode. withdrawal Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 292

Implementing Multipoint Layer 2 Services

Configuring the MAC Address Limit

Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# withdrawal
Enables the MAC address withdrawal for a specified bridge domain. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show l2vpn bridge-domain [detail] Example:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Displays detailed sample output to specify that the MAC address withdrawal is enabled. In addition, the sample output displays the number of MAC withdrawal messages that are sent over or received from the pseudowire.

Configuring the MAC Address Limit
Perform this task to configure the parameters for the MAC address limit.

Note MAC Address Limit action is supported only on the ACs and not on the core pseudowires.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. (Optional) interface type interface_id 6. mac 7. limit 8. maximum { value } 9. action { flood | no-flood | shutdown } 10. notification { both | none | trap } 11. mac limit threshold 80 12. Use the commit or end command. 13. show l2vpn bridge-domain [ detail ]

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 293

Configuring the MAC Address Limit

Implementing Multipoint Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. l2vpn Example:

RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#

Enters the L2VPN configuration mode. bridge group bridge group name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#

Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#

Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. (Optional) interface type interface_id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface gigabitEthernet 0/2/0/1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#

Enters the interface configuration mode of the specified interface and adds this interface as the bridge domain member interface.

Note

Run this step if you want to configure the MAC address limit only for a specific interface. The further

steps show the router prompt displayed when you have skipped this step to configure the MAC address

limit at the bridge domain level.

mac Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 294

Implementing Multipoint Layer 2 Services

Configuring the MAC Address Limit

Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)#
Enters L2VPN bridge group bridge domain MAC configuration mode. limit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# limit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-limit)#
Sets the MAC address limit for action, maximum, and notification and enters L2VPN bridge group bridge domain MAC limit configuration mode. maximum { value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-limit)# maximum 5000
Configures the specified action when the number of MAC addresses learned on a bridge is reached. action { flood | no-flood | shutdown } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-limit)# action flood
Configures the bridge behavior when the number of learned MAC addresses exceed the MAC limit configured. notification { both | none | trap } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-limit)# notification both
Specifies the type of notification that is sent when the number of learned MAC addresses exceeds the configured limit. mac limit threshold 80 Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# mac limit threshold 80
Configures the MAC limit threshold. The default is 75% of MAC address limit configured in step 8. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 295

Configuring the MAC Address Aging

Implementing Multipoint Layer 2 Services

Step 13

· No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes. show l2vpn bridge-domain [ detail ] Example:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Displays the details about the MAC address limit.

Configuring the MAC Address Aging
Perform this task to configure the parameters for MAC address aging.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. mac 6. aging 7. time { seconds } 8. Use the commit or end command. 9. show l2vpn bridge-domain [ detail ]

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters the L2VPN configuration mode. bridge group bridge-group-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 296

Implementing Multipoint Layer 2 Services

Configuring the MAC Address Aging

Step 4 Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. mac Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)#
Enters L2VPN bridge group bridge domain MAC configuration mode. aging Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# aging RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-aging)#
Enters the MAC aging configuration submode to set the aging parameters such as time and type. The maximum MAC age for ASR 9000 Ethernet and ASR 9000 Enhanced Ethernet line cards is two hours. time { seconds } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac-aging)# time 300
Configures the maximum aging time. · Use the seconds argument to specify the maximum age of the MAC address table entry. The range is from 300 to 30000 seconds. Aging time is counted from the last time that the switch saw the MAC address. The default value is 300 seconds.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 297

Disabling MAC Flush at the Bridge Port Level

Implementing Multipoint Layer 2 Services

Step 9

show l2vpn bridge-domain [ detail ] Example:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Displays the details about the aging fields.

Disabling MAC Flush at the Bridge Port Level
Perform this task to disable the MAC flush at the bridge domain level.
You can disable the MAC flush at the bridge domain or bridge port level. By default, the MACs learned on a specific port are immediately flushed, when that port becomes nonfunctional.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. mac 6. port-down flush disable 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 298

Implementing Multipoint Layer 2 Services

Configuring MAC Address Security

Step 4 Step 5 Step 6 Step 7

bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode.
mac Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)#
Enters l2vpn bridge group bridge domain MAC configuration mode.
port-down flush disable Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# port-down flush disable
Disables MAC flush when the bridge port becomes nonfunctional.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring MAC Address Security
Perform this task to configure MAC address security.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge groupbridge-group-name 4. bridge-domainbridge-domain-name 5. neighbor { A.B.C.D } { pw-id value } 6. mac 7. secure [action | disable | logging] 8. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 299

Configuring MAC Address Security

Implementing Multipoint Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#
Enters L2VPN configuration mode. bridge groupbridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domainbridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters L2VPN l2vpn bridge group bridge domain configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#
Adds an access pseudowire port to a bridge domain, or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
mac Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)# mac

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 300

Implementing Multipoint Layer 2 Services

Configuring an Attachment Circuit to the AC Split Horizon Group

Step 7 Step 8

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw-mac)#

Enters L2VPN l2vpn bridge group bridge domain MAC configuration mode. secure [action | disable | logging] Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw-mac)# secure RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw-macsecure)#

Enters MAC secure configuration mode.

By default, bridge ports (interfaces and access pseudowires) under a bridge inherit the security configuration from the parent bridge.

Note

Once a bridge port goes down, a clear command must be issued to bring the bridge port up.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring an Attachment Circuit to the AC Split Horizon Group
These steps show how to add an interface to the split horizon group for attachment circuits (ACs) under a bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. interface type instance 6. split-horizon group 7. commit 8. end 9. show l2vpn bridge-domain detail

DETAILED STEPS

Step 1 configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 301

Configuring an Attachment Circuit to the AC Split Horizon Group

Implementing Multipoint Layer 2 Services

Step 2 Step 3 Step 4 Step 5 Step 6

Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group metroA
Enters configuration mode for the named bridge group. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain east
Enters configuration mode for the named bridge domain. interface type instance Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/1/0/6
Enters configuration mode for the named interface. split-horizon group Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# split-horizon group

Step 7 Step 8

Enters configuration mode for the named interface. commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# commit
Saves configuration changes end Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# end

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 302

Implementing Multipoint Layer 2 Services

Adding an Access Pseudowire to the AC Split Horizon Group

Step 9

Returns to EXEC mode. show l2vpn bridge-domain detail Example:
RP/0/RSP0/CPU0:router show l2vpn bridge-domain detail
Displays information about bridges, including whether each AC is in the AC split horizon group or not.

Adding an Access Pseudowire to the AC Split Horizon Group
These steps show how to add an access pseudowire as a member to the split horizon group for attachment circuits (ACs) under a bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. neighbor A.B.C.D pw-id pseudowire-id 6. split-horizon group 7. commit 8. end 9. show l2vpn bridge-domain detail

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group metroA

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 303

Configuring VPLS with BGP Autodiscovery and Signaling

Implementing Multipoint Layer 2 Services

Step 4 Step 5 Step 6
Step 7 Step 8 Step 9

Enters configuration mode for the named bridge group.
bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain east

Enters configuration mode for the named bridge domain.
neighbor A.B.C.D pw-id pseudowire-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 10.2.2.2 pw-id 2000

Configures the pseudowire segment.
split-horizon group Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# split-horizon group

Adds this interface to the split horizon group for ACs. Only one split horizon group for ACs

Note

Only one split horizon group for ACs and access pseudowires per bridge domain is supported

.

commit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw) commit

Saves configuration changes
end Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# end

Returns to EXEC mode.
show l2vpn bridge-domain detail Example:
RP/0/RSP0/CPU0:router # show l2vpn bridge-domain detail

Displays information about bridges, including whether each AC is in the AC split horizon group or not.

Configuring VPLS with BGP Autodiscovery and Signaling
Perform this task to configure BGP-based autodiscovery and signaling.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 304

Implementing Multipoint Layer 2 Services

Configuring VPLS with BGP Autodiscovery and Signaling

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi { vfi-name } 6. vpn-id vpn-id 7. autodiscovery bgp 8. rd { as-number:nn | ip-address:nn | auto } 9. route-target { as-number:nn | ip-address:nn | export | import } 10. route-target import { as-number:nn | ip-address:nn } 11. route-target export { as-number:nn | ip-address:nn } 12. signaling-protocol bgp 13. ve-id { number} 14. ve-range { number } 15. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group metroA
Enters configuration mode for the named bridge group. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain east
Enters configuration mode for the named bridge domain.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 305

Configuring VPLS with BGP Autodiscovery and Signaling

Implementing Multipoint Layer 2 Services

Step 5 Step 6 Step 7 Step 8 Step 9
Step 10

vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi vfi-east
Enters virtual forwarding instance (VFI) configuration mode. vpn-id vpn-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# vpn-id 100
Specifies the identifier for the VPLS service. The VPN ID has to be globally unique within a PE router. i.e., the same VPN ID cannot exist in multiple VFIs on the same PE router. In addition, a VFI can have only one VPN ID. autodiscovery bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# autodiscovery bgp
Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured. This command is not provisioned to BGP until at least the VPN ID and the signaling protocol is configured. rd { as-number:nn | ip-address:nn | auto } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# rd auto
Specifies the route distinguisher (RD) under the VFI. The RD is used in the BGP NLRI to identify VFI. Only one RD can be configured per VFI, and except for rd auto the same RD cannot be configured in multiple VFIs on the same PE. When rd auto is configured, the RD value is as follows: {BGP Router ID}:{16 bits auto-generated unique index}. route-target { as-number:nn | ip-address:nn | export | import } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target 500:99
Specifies the route target (RT) for the VFI. At least one import and one export route targets (or just one route target with both roles) need to be configured in each PE in order to establish BGP autodiscovery between PEs. If no export or import keyword is specified, it means that the RT is both import and export. A VFI can have multiple export or import RTs. However, the same RT is not allowed in multiple VFIs in the same PE. route-target import { as-number:nn | ip-address:nn } Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 306

Implementing Multipoint Layer 2 Services

Configuring VPLS with BGP Autodiscovery and Signaling

Step 11 Step 12 Step 13 Step 14 Step 15

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target import 200:20
Specifies the import route target for the VFI. Import route target is what the PE compares with the RT in the received NLRI: the RT in the received NLRI must match the import RT to determine that the RTs belong to the same VPLS service. route-target export { as-number:nn | ip-address:nn } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target export 100:10
Specifies the export route target for the VFI. Export route target is the RT that is going to be in the NLRI advertised to other PEs. signaling-protocol bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# signaling-protocol bgp
Enables BGP signaling, and enters the BGP signaling configuration submode where BGP signaling parameters are configured. This command is not provisioned to BGP until VE ID and VE ID range is configured. ve-id { number} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad-sig)# ve-id 10
Specifies the local PE identifier for the VFI for VPLS configuration. The VE ID identifies a VFI within a VPLS service. This means that VFIs in the same VPLS service cannot share the same VE ID. The scope of the VE ID is only within a bridge domain. Therefore, VFIs in different bridge domains within a PE can use the same VE ID. ve-range { number } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad-sig)# ve-range 40
Overrides the minimum size of VPLS edge (VE) blocks. The default minimum size is 10. Any configured VE range must be higher than 10. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 307

Configuring VPLS with BGP Autodiscovery and LDP Signaling

Implementing Multipoint Layer 2 Services

· No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring VPLS with BGP Autodiscovery and LDP Signaling
Perform this task to configure BGP-based Autodiscovery and signaling:

SUMMARY STEPS

1. configure 2. l2vpn 3. router-id ip-address 4. bridge group bridge-group-name 5. bridge-domain bridge-domain-name 6. transport-mode vlan passthrough 7. vfi {vfi-name} 8. autodiscovery bgp 9. vpn-id vpn-id 10. rd {as-number:nn | ip-address:nn | auto} 11. route-target {as-number:nn | ip-address:nn | export | import } 12. route-target import {as-number:nn | ip-address:nn} 13. route-target export {as-number:nn | ip-address:nn} 14. signaling-protocol ldp 15. vpls-id {as-number:nn | ip-address:nn} 16. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. router-id ip-address Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 308

Implementing Multipoint Layer 2 Services

Configuring VPLS with BGP Autodiscovery and LDP Signaling

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9

RP/0/RSP0/CPU0:router(config-l2vpn)# router-id 10.0.0.1

Specifies a unique Layer 2 (L2) router ID for the provider edge (PE) router.

The router ID must be configured for LDP signaling, and is used as the L2 router ID in the BGP NLRI, SAII (local L2 Router ID) and TAII (remote L2 Router ID). Any arbitrary value in the IPv4 address format is acceptable.

Note

Each PE must have a unique L2 router ID. This CLI is optional, as a PE automatically generates a L2 router

ID using the LDP router ID.

bridge group bridge-group-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group metroA

Enters configuration mode for the named bridge group. bridge-domain bridge-domain-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain east

Enters configuration mode for the named bridge domain. transport-mode vlan passthrough Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# transport-mode vlan passthrough

Enables VC type 4 for BGP autodiscovery. vfi {vfi-name} Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi vfi-east

Enters virtual forwarding instance (VFI) configuration mode. autodiscovery bgp Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# autodiscovery bgp

Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured. This command is not provisioned to BGP until at least the VPN ID and the signaling protocol is configured. vpn-id vpn-id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 309

Configuring VPLS with BGP Autodiscovery and LDP Signaling

Implementing Multipoint Layer 2 Services

Step 10 Step 11 Step 12 Step 13 Step 14

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# vpn-id 100
Specifies the identifier for the VPLS service. The VPN ID has to be globally unique within a PE router. i.e., the same VPN ID cannot exist in multiple VFIs on the same PE router. In addition, a VFI can have only one VPN ID. rd {as-number:nn | ip-address:nn | auto} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# rd auto
Specifies the route distinguisher (RD) under the VFI. The RD is used in the BGP NLRI to identify VFI. Only one RD can be configured per VFI, and except for rd auto the same RD cannot be configured in multiple VFIs on the same PE. When rd autois configured, the RD value is as follows: {BGP Router ID}:{16 bits auto-generated unique index}. route-target {as-number:nn | ip-address:nn | export | import } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target 500:99
Specifies the route target (RT) for the VFI. At least one import and one export route targets (or just one route target with both roles) need to be configured in each PE in order to establish BGP autodiscovery between PEs. If no export or import keyword is specified, it means that the RT is both import and export. A VFI can have multiple export or import RTs. However, the same RT is not allowed in multiple VFIs in the same PE. route-target import {as-number:nn | ip-address:nn} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target import 200:20
Specifies the import route target for the VFI. Import route target is what the PE compares with the RT in the received NLRI: the RT in the received NLRI must match the import RT to determine that the RTs belong to the same VPLS service. route-target export {as-number:nn | ip-address:nn} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-target export 100:10
Specifies the export route target for the VFI. Export route target is the RT that is going to be in the NLRI advertised to other PEs. signaling-protocol ldp Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 310

Implementing Multipoint Layer 2 Services

Configuring Service Path Preference

Step 15 Step 16

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# signaling-protocol ldp
Enables LDP signaling.
vpls-id {as-number:nn | ip-address:nn} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad-sig)# vpls-id 10:20
Specifies VPLS ID which identifies the VPLS domain during signaling. This command is optional in all PEs that are in the same Autonomous System (share the same ASN) because a default VPLS ID is automatically generated using BGP's ASN and the configured VPN ID (i.e., the default VPLS ID equals ASN:VPN-ID). If an ASN of 4 bytes is used, the lower two bytes of the ASN are used to build the VPLS ID. In case of InterAS, the VPLS ID must be explicitly configured. Only one VPLS ID can be configured per VFI, and the same VPLS ID cannot be used for multiple VFIs.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Service Path Preference
Perform these tasks to configure Service Path Preference:
Setting a Forward Class in a Route Policy
The following configuration shows how to set a forward-class in a route-policy:
route-policy fwd1 set forward-class 1
end-policy ! route-policy fwd2
set forward-class 2 end-policy !
Attaching a Route Policy at Table Policy Attach Point
The following configuration shows how to attach a route-policy to a table-policy attach point for VPLS bridge-domain VFI:
config

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 311

Associating a TE Tunnel with Forward Class Index

Implementing Multipoint Layer 2 Services

l2vpn bridge group bg1 bridge-domain bd1 vfi v1 autodiscovery bgp table-policy fwd1
!
The following configuration shows how to attach a route-policy to a table-policy attach point for EVPN EVI:
config l2vpn bridge group pbb bridge-domain core1 pbb core evi 1
! bridge group edge bridge-domain edge1 pbb edge i-sid 256 core-bridge core1
! evpn evi 1 bgp table-policy fwd2
!
Associating a TE Tunnel with Forward Class Index
The following configuration shows how to associate a TE tunnel with forward-class index:
config interface tunnel-te1 ipv4 unnumbered Loopback0 autoroute announce destination 10.10.10.10 forward-class 1 path-option 10 explicit name PATH1
!

Enabling Route Policy for L2VPN VPLS with BGP Autodiscovery
Perform this task to enable route-policy for L2VPN VPLS with BGP autodiscovery configuration. Only route-policy export is supported.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. vfi { vfi-name } 6. autodiscovery bgp 7. route-policy export policy-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 312

Implementing Multipoint Layer 2 Services

Enabling Route Policy for L2VPN VPLS with BGP Autodiscovery

DETAILED STEPS

8. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1
Enters configuration mode for the named bridge group. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1
Enters configuration mode for the named bridge domain. vfi { vfi-name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi vfi-east
Enters virtual forwarding instance (VFI) configuration mode. autodiscovery bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# autodiscovery bgp
Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured. This command is not provisioned to BGP until at least the VPN ID and the signaling protocol is configured.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 313

Enabling Route Policy for L2VPN VPWS with BGP Autodiscovery

Implementing Multipoint Layer 2 Services

Step 7 Step 8

route-policy export policy-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# route-policy export RPL_1
Attaches the route-policy at route-policy export attach point. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Example

Enabling Route Policy for L2VPN VPWS with BGP Autodiscovery
Perform this task to enable route-policy for L2VPN VPWS with BGP autodiscovery configuration. Only route-policy export is supported.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group xconnect group name 4. mp2mp mp2mp instance name 5. autodiscovery bgp 6. route-policy export policy-name 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 314

Implementing Multipoint Layer 2 Services

Enabling Route Policy for L2VPN VPWS with BGP Autodiscovery

Step 3 Step 4 Step 5 Step 6 Step 7

RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. xconnect group xconnect group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group xg1
Enters configuration mode for the named cross-connect group. mp2mp mp2mp instance name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# mp2mp mp1
Creates named mp2mp instance. autodiscovery bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-mp2mp)# autodiscovery bgp
Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured. This command is not provisioned to BGP until at least the VPN ID and the signaling protocol is configured. route-policy export policy-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-mp2mp-ad)# route-policy export RPL_2
Attaches the route-policy at route-policy export attach point. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 315

Configuring G.8032 Ethernet Ring Protection

Implementing Multipoint Layer 2 Services

Example
Configuring G.8032 Ethernet Ring Protection
To configure the G.8032 operation, separately configure: · An ERP instance to indicate: · which (sub)interface is used as the APS channel · which (sub)interface is monitored by CFM · whether the interface is an RPL link, and, if it is, the RPL node type
· CFM with EFD to monitor the ring links

Note MEP for each monitor link needs to be configured with different Maintenance Association.

· The bridge domains to create the Layer 2 topology. The RAPS channel is configured in a dedicated management bridge domain separated from the data bridge domains.
· Behavior characteristics, that apply to ERP instance, if different from default values. This is optional.
This section provides information on:
Configuring ERP Profile
Perform this task to configure Ethernet ring protection (ERP) profile.

SUMMARY STEPS

1. configure 2. Ethernet ring g8032 profile profile-name 3. timer { wtr | guard | hold-off } seconds 4. non-revertive 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. Ethernet ring g8032 profile profile-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 316

Implementing Multipoint Layer 2 Services

Configuring CFM MEP

Step 3 Step 4 Step 5

Example:
RP/0/RSP0/CPU0:router(config)# Ethernet ring g8032 profile p1
Enables G.8032 ring mode, and enters G.8032 configuration submode. timer { wtr | guard | hold-off } seconds Example:
RP/0/RSP0/CPU0:router(config-g8032-ring-profile)# timer hold-off 5
Specifies time interval (in seconds) for the guard, hold-off and wait-to-restore timers. non-revertive Example:
RP/0/RSP0/CPU0:router(config-g8032-ring-profile)# non-revertive
Specifies a non-revertive ring instance. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring CFM MEP
For more information about Ethernet Connectivity Fault Management (CFM), refer to the Configuring Ethernet OAM on the Cisco ASR 9000 Series Router module in the Cisco ASR 9000 Series Aggregation Services Router Interface and Hardware Component Configuration Guide.

Configuring an ERP Instance
Perform this task to configure an ERP instance.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. interface type port0-interface-path-id.subinterface 6. interface type port1-interface-path-id.subinterface 7. bridge-domain domain-name 8. interface type interface-path-id.subinterface 9. ethernet ring g8032 ring-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 317

Configuring an ERP Instance

Implementing Multipoint Layer 2 Services

DETAILED STEPS

10. instance number 11. description string 12. profile profile-name 13. rpl { port0 | port1 } { owner | neighbor | next-neighbor } 14. inclusion-list vlan-ids vlan-id 15. aps-channel 16. level number 17. port0 interface type path-id 18. port1 { interface type interface-path-id | bridge-domain bridge-domain-name | xconnect
xconnect-name | none } 19. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group that can contain bridge domains, and then assigns network interfaces to the bridge domain. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain for R-APS channels, and enters L2VPN bridge group bridge domain configuration mode. interface type port0-interface-path-id.subinterface Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 318

Implementing Multipoint Layer 2 Services

Configuring an ERP Instance

Step 6 Step 7 Step 8 Step 9 Step 10 Step 11

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/0/0/0.1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#
Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. interface type port1-interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/0/0/1.1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#
Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd2 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain for data traffic, and enters L2VPN bridge group bridge domain configuration mode. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/0/0/0.10 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#
Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. ethernet ring g8032 ring-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# ethernet ring g8032 r1
Enables G.8032 ring mode, and enters G.8032 configuration submode. instance number Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp)# instance 1
Enters the Ethernet ring G.8032 instance configuration submode. description string Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 319

Configuring an ERP Instance

Implementing Multipoint Layer 2 Services

Step 12 Step 13 Step 14 Step 15 Step 16 Step 17 Step 18

RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance)# description test
Specifies a string that serves as description for that instance. profile profile-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance)#profile p1
Specifies associated Ethernet ring G.8032 profile. rpl { port0 | port1 } { owner | neighbor | next-neighbor } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance)#rpl port0 neighbor
Specifies one ring port on local node as RPL owner, neighbor or next-neighbor. inclusion-list vlan-ids vlan-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance)# inclusion-list vlan-ids e-g
Associates a set of VLAN IDs with the current instance. aps-channel Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance)# aps-channel
Enters the Ethernet ring G.8032 instance aps-channel configuration submode. level number Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance-aps)# level 5
Specifies the APS message level. The range is from 0 to 7. port0 interface type path-id Example:
RP/0/RSP0/CPU0:router(configl2vpn-erp-instance-aps)# port0 interface GigabitEthernet 0/0/0/0.1
Associates G.8032 APS channel interface to port0. port1 { interface type interface-path-id | bridge-domain bridge-domain-name | xconnect xconnect-name | none }

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 320

Implementing Multipoint Layer 2 Services

Configuring ERP Parameters

Step 19

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-instance-aps)# port1 interface GigabitEthernet 0/0/0/1.1
Associates G.8032 APS channel interface to port1. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring ERP Parameters
Perform this task to configure ERP parameters.

SUMMARY STEPS

1. configure 2. l2vpn 3. ethernet ring g8032 ring-name 4. port0 interface type interface-path-id 5. monitor port0 interface type interface-path-id 6. exit 7. port1 { interface type interface-path-id | virtual | none} 8. monitor port1 interface type interface-path-id 9. exit 10. exclusion-list vlan-ids vlan-id 11. open-ring 12. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 321

Configuring ERP Parameters

Implementing Multipoint Layer 2 Services

Step 3 Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11

ethernet ring g8032 ring-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# ethernet ring g8032 r1
Enables G.8032 ring mode, and enters G.8032 configuration submode.
port0 interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp)# port0 interface GigabitEthernet 0/1/0/6
Enables G.8032 ERP for the specified port (ring port).
monitor port0 interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-port0)# monitor port0 interface 0/1/0/2
Specifies the port that is monitored to detect ring link failure per ring port. The monitored interface must be a sub-interface of the main interface.
exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-port0)# exit
Exits port0 configuration submode.
port1 { interface type interface-path-id | virtual | none} Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp)# port1 interface GigabitEthernet 0/1/0/8
Enables G.8032 ERP for the specified port (ring port).
monitor port1 interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-port1)# monitor port1 interface 0/1/0/3
Specifies the port that is monitored to detect ring link failure per ring port. The monitored interface must be a sub-interface of the main interface.
exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp-port1)# exit
Exits port1 configuration submode.
exclusion-list vlan-ids vlan-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-erp)# exclusion-list vlan-ids a-d
Specifies a set of VLAN IDs that is not protected by Ethernet ring protection mechanism.
open-ring Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 322

Implementing Multipoint Layer 2 Services

Configuring TCN Propagation

Step 12

RP/0/RSP0/CPU0:router(config-l2vpn-erp)# open-ring
Specifies Ethernet ring G.8032 as open ring.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring TCN Propagation
Perform this task to configure topology change notification (TCN) propagation.

SUMMARY STEPS

1. configure 2. l2vpn 3. tcn-propagation 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. tcn-propagation Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# tcn-propagation
Allows TCN propagation from minor ring to major ring and from MSTP to G.8032. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 323

Configuring Flow Aware Transport Pseudowire

Implementing Multipoint Layer 2 Services

commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Flow Aware Transport Pseudowire
This section provides information on
Enabling Load Balancing with ECMP and FAT PW for VPWS
Perform this task to enable load balancing with ECMP and FAT PW for VPWS. Creating a PW-Class in L2VPN configuration leads to load-balancing.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class { name } 4. encapsulation mpls 5. load-balancing flow-label { both | code | receive | transmit } [ static ] 6. exit 7. exit 8. xconnect group group-name 9. p2p xconnect-name 10. interface type interface-path-id 11. neighbor A.B.C.D pw-id pseudowire-id 12. pw-class class-name 13. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 324

Implementing Multipoint Layer 2 Services

Enabling Load Balancing with ECMP and FAT PW for VPWS

Step 3 Step 4 Step 5 Step 6 Step 7 Step 8 Step 9

Enters L2VPN configuration mode. pw-class { name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class path1

Configures the pseudowire class template name to use for the pseudowire. encapsulation mpls Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls

Configures the pseudowire encapsulation to MPLS. load-balancing flow-label { both | code | receive | transmit } [ static ] Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# load-balancing flow-label both

Enables load-balancing on ECMPs. Also, enables the imposition and disposition of flow labels for the pseudowire.

Note

If the static keyword is not specified, end to end negotiation of the FAT PW is enabled.

exit Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)#exit RP/0/RSP0/CPU0:router(config-l2vpn-pwc)#

Exits the pseudowire encapsulation submode and returns the router to the parent configuration mode. exit Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc)#exit RP/0/RSP0/CPU0:router(config-l2vpn)#
Exits the pseudowire submode and returns the router to the l2vpn configuration mode.
xconnect group group-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group grp1 RP/0/RSP0/CPU0:router(config-l2vpn-xc)#

Specifies the name of the cross-connect group. p2p xconnect-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 325

Enabling Load Balancing with ECMP and FAT PW for VPLS

Implementing Multipoint Layer 2 Services

Step 10 Step 11
Step 12 Step 13

Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p vlan1 RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)#

Specifies the name of the point-to-point cross-connect. interface type interface-path-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface TenGigE 0/0/0/0.1

Specifies the interface type and instance. neighbor A.B.C.D pw-id pseudowire-id Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.2.2.2 pw-id 2000

Configures the pseudowire segment for the cross-connect.

Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix.

pw-class class-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class path1

Associates the pseudowire class with this pseudowire.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Enabling Load Balancing with ECMP and FAT PW for VPLS
Perform this task to enable load balancing with ECMP and FAT PW for VPLS.

SUMMARY STEPS

1. configure 2. l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 326

Implementing Multipoint Layer 2 Services

Enabling Load Balancing with ECMP and FAT PW for VPLS

DETAILED STEPS

3. load-balancing flow {src-dst-mac | src-dst-ip} 4. pw-class { class - name } 5. encapsulation mpls 6. load-balancing flow-label { both | code | receive | transmit } [ static ] 7. exit 8. bridge group bridge-group-name 9. bridge-domain bridge-domain-name 10. vfi { vfi-name } 11. autodiscovery bgp 12. signaling-protocol bgp 13. load-balancing flow-label { both | code | receive | transmit } [ static ] 14. Use the commit or end command.

Step 1 Step 2 Step 3
Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. l2vpn Example:

RP/0/RSP0/CPU0:router(config)# l2vpn

Enters L2VPN configuration mode. load-balancing flow {src-dst-mac | src-dst-ip} Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# load-balancing flow src-dst-ip

Enables flow based load balancing. · src-dst-mac--Uses source and destination MAC addresses for hashing. · src-dst-ip--Uses source and destination IP addresses for hashing.

Note

It is recommended to use the load-balancing flow command with the src-dst-ip keyword.

pw-class { class - name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class class1

Associates the pseudowire class with this pseudowire.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 327

Enabling Load Balancing with ECMP and FAT PW for VPLS

Implementing Multipoint Layer 2 Services

Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11

encapsulation mpls Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls

Configures the pseudowire encapsulation to MPLS. load-balancing flow-label { both | code | receive | transmit } [ static ] Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# load-balancing flow-label both

Enables load-balancing on ECMPs. Also, enables the imposition and disposition of flow labels for the pseudowire.

Note

If the static keyword is not specified, end to end negotiation of the FAT PW is enabled.

exit Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# exit

Exits the pseudowire encapsulation submode and returns the router to the parent configuration mode. bridge group bridge-group-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group group1

Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain domain1

Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. vfi { vfi-name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi my_vfi

Enters virtual forwarding instance (VFI) configuration mode. autodiscovery bgp Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# autodiscovery bgp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 328

Implementing Multipoint Layer 2 Services

Configuring Pseudowire Headend

Step 12 Step 13 Step 14

Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured. signaling-protocol bgp Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad)# signaling-protocol bgp
Enables BGP signaling, and enters the BGP signaling configuration submode where BGP signaling parameters are configured. load-balancing flow-label { both | code | receive | transmit } [ static ] Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-ad-sig)# load-balancing flow-label both static
Enables load-balancing on ECMPs. Also, enables the imposition and disposition of flow labels for the pseudowire. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Pseudowire Headend
The Pseudowire Headend (PWHE) is created by configuring the pw-ether main interface, pw-ether subinterface, or pw-iw interface. The available PWHE types are pw-ether main interfaces, subinterfaces, and pw-iw interfaces. Unless specified otherwise, the term interface is applicable for pw-ether main interfaces, subinterfaces, and pw-iw interfaces.
Note The PWHE-Ethernet subinterfaces and interworking interfaces are supported from Release 5.1.1 onwards.
For the PWHE to be functional, the crossconnect has to be configured completely. Configuring other Layer 3 (L3) parameters, such as VRF and IP addresses, are optional for the PWHE to be functional. However, the L3 features are required for the Layer 3 services to be operational; that is, for PW L3 termination. PWHE supports both IPv4 and IPv6 addresses. This section describes these topics:
PWHE Configuration Restrictions
These configuration restrictions are applicable for PWHE: 1. The generic interface list members must be the superset of the ECMP path list to the A-PE.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 329

Configuring Generic Interface List

Implementing Multipoint Layer 2 Services

2. Only eight generic interface lists are supported per A-PE neighbor address. 3. Eight Layer 3 links per generic interface list are supported. 4. Only PW-Ether interfaces can be configured as PWHE L2 or L3 subinterfaces. 5. Cross-connects that contain PW-Ether main interfaces can be configured as either VC-type 5 or VC-type
4. By default, the cross-connects are configured as VC-type 5; else by using the command--pw-class transport-mode ethernet. To configure the cross-connects as VC-type 4, use the p2p neighbor tag-impose vlan id and the pw-class transport-mode vlan commands. 6. Cross-connects that contain PW-Ether main interfaces that have L3 PW-Ether subinterfaces associated with them, are supported with only VC-type 5. 7. Cross-connects that contain PW-IW interfaces are only supported with IPv4 and VC-type 11. PW-IW interfaces are the L3 virtual interfaces used for IP interworking. To configure the cross-connect as VC-type 11, use the interworking ipv4 command. 8. PW-Ether interfaces and subinterfaces can be configured with both IPv4 and IPv6. 9. PW-IW interfaces can be configured only with IPv4. 10. Pseudowire redundancy, preferred path, local switching or L2TP are not supported for crossconnects configured with PWHE. 11. Applications such as TE and LDP have checks for interface type and therefore do not allow PWHE to be configured. 12. Address family, CDP and MPLS configurations are not allowed on PWHE interfaces. 13. For PWHE, eBGP, static routes, OSPF, and ISIS are supported with both IPv4 and IPv6. RIP is only supported with IPv4 and not with IPv6. 14. MAC address is not supported for a pw-iw interface. 15. PW-Ether interfaces with different remote neighbors need to be attached with a different generic interface list. Hence, you must create a separate and dedicated generic interface list for each remote neighbor or peer whose remote neighbors are different routers or devices. For example, in Figure 30: Pseudowire Network, for each A-PE that the S-PE peers with, a unique generic interface list needs to be configured. The generic interface list may have the same set of the outgoing interface(s). 16. Refer PWHE Load Balancing Support using FAT Label topic for the feature's restrictions.
Configuring Generic Interface List
Perform this task to configure a generic interface list.

Note Only eight generic interface lists are supported per A-PE neighbor address. Eight Layer 3 links per generic interface list are supported. Repeat Step 3 or Step 4 to add the interfaces to the generic interface list.

SUMMARY STEPS

1. configure 2. generic-interface-list list-name 3. interface type interface-path-id 4. interface type interface-path-id 5. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 330

Implementing Multipoint Layer 2 Services

Configuring PWHE Interfaces

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. generic-interface-list list-name Example:
RP/0/RSP0/CPU0:router(config)# generic-interface-list list1
Configures a generic interface list. To remove the generic interface list, use the no form of the command, that is, no generic-interface-list list-name. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-if-list)# interface Bundle-Ether 100
Configures the specified interface. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-if-list)# interface Bundle-Ether 200
Configures the specified interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PWHE Interfaces
Perform this task to configure PWHE Ethernet and interworking interfaces, that is, to attach the generic interface list with a PWHE Ethernet and interworking interfaces.

SUMMARY STEPS

1. configure 2. interface pw-ether id or interface pw-iw id 3. attach generic-interface-list interface_list_name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 331

Configuring PWHE Crossconnect

Implementing Multipoint Layer 2 Services

DETAILED STEPS

4. Use the commit or end command.

Step 1 Step 2
Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.
interface pw-ether id or interface pw-iw id Example:
RP/0/RSP0/CPU0:router(config)# interface pw-ether <id> or RP/0/RSP0/CPU0:router(config)# interface pw-iw <id>
(interface pw-ether id) Configures the PWHE pseudowire main or subinterface and enters the interface configuration mode. (interface pw-iw id) Configures the PWHE pseudowire interworking interface and enters the interface configuration mode.
attach generic-interface-list interface_list_name Example:
RP/0/RSP0/CPU0:router(config-if)# attach generic-interface-list interfacelist1
Attaches the generic interface list to the PW-Ether or PW-IW interface . To remove the generic interface list from the PW-Ether or PW-IW interface, use the no form of the command, that is, no generic-interface-list list-name
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PWHE Crossconnect
Perform this task to configure PWHE crossconnects.

SUMMARY STEPS

1. configure 2. l2vpn 3. xconnect group group-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 332

Implementing Multipoint Layer 2 Services

Configuring PWHE Crossconnect

DETAILED STEPS

4. p2p xconnect-name 5. interface pw-ether id or interface pw-iw id 6. neighbor ip-address pw-id value 7. pw-class class-name 8. (Only PW-IW) interworking ipv4 9. Use the commit or end command.

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group pw-he1

Step 4

Configures a cross-connect group name using a free-format 32-character string.
p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p pw-hexconnect

Step 5 Step 6

Enters P2P configuration submode.
interface pw-ether id or interface pw-iw id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface pw-ether 100 or RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p )# interface pw-iw 100
Configures the PWHE interface.
neighbor ip-address pw-id value Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 333

Configuring the Source Address

Implementing Multipoint Layer 2 Services

Step 7

RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor 10.165.200.25 pw-id 100

Configures a pseudowire for a cross-connect. The IP address is that of the corresponding PE node. The pw-id must match the pw-id of the PE node.
pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# pw-class dynamic_mpls

Enters pseudowire class submode, allowing you to define a pseudowire class template.

Note

The pseudowire class should be defined under l2vpn for VC4 and VC5 as follows:

pw-class vc_type_4 encapsulation mpls transport-mode vlan ! ! pw-class vc_type_5 encapsulation mpls transport-mode ethernet ! !

Step 8 Step 9

(Only PW-IW) interworking ipv4 Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# interworking ipv4
Configures the cross-connect p2p entity to use VC-type 11 or the IP interworking mode in the establishment of the pseudowire.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring the Source Address
Perform this task to configure the local source address
Note Only IPv4 is supported as pw-class source address.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 334

Implementing Multipoint Layer 2 Services

Configuring the Source Address

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class class-name 4. encapsulation mpls 5. ipv4 source source-address 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters Layer 2 VPN configuration mode. pw-class class-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class class1
Enters pseudowire class submode, allowing you to define a pseudowire class template. encapsulation mpls Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls
Configures the pseudowire encapsulation to MPLS. ipv4 source source-address Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pwc-mpls)# ipv4 source 10.1.1.1
Sets the local source IPv4 address. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 335

Configuring PWHE Interface Parameters

Implementing Multipoint Layer 2 Services

end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PWHE Interface Parameters
Perform this task to configure PWHE interface parameters.

SUMMARY STEPS

1. configure 2. interface pw-ether id (or) interface pw-iw id 3. ipv4 address ip-address subnet-mask (or) (Only PW-Ether) ipv6 address ipv6-prefix/prefix-length 4. attach generic-interface-list interface_list_name 5. l2overhead bytes 6. load-interval seconds 7. dampening decay-life 8. logging events link-status 9. (Only PW-Ether main interfaces) mac-address MAC address 10. mtu interface_MTU 11. bandwidth kbps 12. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface pw-ether id (or) interface pw-iw id Example:
RP/0/RSP0/CPU0:router(config)# interface pw-ether <id> or RP/0/RSP0/CPU0:router(config)# interface pw-iw <id>
(interface pw-ether id) Configures the PWHE interface and enters the interface configuration mode. (interface pw-iw id) Configures the PWHE interface and enters the interface configuration mode. ipv4 address ip-address subnet-mask (or) (Only PW-Ether) ipv6 address ipv6-prefix/prefix-length Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 336

Implementing Multipoint Layer 2 Services

Configuring PWHE Interface Parameters

Step 4 Step 5 Step 6
Step 7 Step 8 Step 9 Step 10

RP/0/RSP0/CPU0:router(config-if)# ipv4 address 40.1.1.2 255.255.255.0
Sets the IPv4 or IPv6 address of the interface. attach generic-interface-list interface_list_name Example:
RP/0/RSP0/CPU0:router(config-if)# attach generic-interface-list interfacelist1
Attaches the generic interface list to the PW-Ether or PW-IW interface. l2overhead bytes Example:
RP/0/RSP0/CPU0:router(config-if)# l2overhead 20
Sets layer 2 overhead size. load-interval seconds Example:
RP/0/RSP0/CPU0:router(config-if)# load-interval 90
Specifies interval, in seconds, for load calculation for an interface. The interval:
· Can be set to 0 [0 disables load calculation] · If not 0, must be specified in multiples of 30 between 30 and 600.
dampening decay-life Example:
RP/0/RSP0/CPU0:router(config-if)# dampening 10
Configures state dampening on the given interface (in minutes). logging events link-status Example:
RP/0/RSP0/CPU0:router(config-if)# logging events link-status
Configures per interface logging. (Only PW-Ether main interfaces) mac-address MAC address Example:
RP/0/RSP0/CPU0:router(config-if)# mac-address aaaa.bbbb.cccc
Sets the MAC address (xxxx.xxxx.xxxx) on an interface. mtu interface_MTU Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 337

Configuring PWHE Layer 2 Subinterfaces and Adding it to the Bridge-domain

Implementing Multipoint Layer 2 Services

Step 11 Step 12

RP/0/RSP0/CPU0:router(config-if)# mtu 128
Sets the MTU on an interface. bandwidth kbps Example:
RP/0/RSP0/CPU0:router(config-if)# bandwidth 200
Configures the bandwidth. The range is from 0 to 4294967295. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PWHE Layer 2 Subinterfaces and Adding it to the Bridge-domain
Perform this task to configure PWHE layer 2 subinterfaces and add it to the bridge-domain.

Note A Layer 2 subinterface does not contain an IP address and must be configured to operate in the Layer 2 transport mode.

SUMMARY STEPS

1. configure 2. interface pw-ether id 3. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length 4. attach generic-interface-list interface_list_name 5. interface pw-ether id.subintfid l2transport 6. encapsulation dot1q value 7. l2vpn 8. xconnect group group-name 9. p2p xconnect-name 10. interface pw-ether id 11. neighbor ipv4 ip-address pw-id value 12. bridge group bridge-group-name 13. bridge-domain bridge-domain-name 14. interface pw-ether id.subintfid 15. interface type interface-path-id 16. neighbor ip-address pw-id value 17. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 338

Implementing Multipoint Layer 2 Services

Configuring PWHE Layer 2 Subinterfaces and Adding it to the Bridge-domain

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface pw-ether id Example:
RP/0/RSP0/CPU0:router(config)# interface PW-Ether1
Configures the PWHE interface and enters the interface configuration mode. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 40.1.1.2 255.255.255.0
Sets the IPv4 or IPv6 address of the main interface. attach generic-interface-list interface_list_name Example:
RP/0/RSP0/CPU0:router(config-if)# attach generic-interface-list pw_he
Attaches the generic interface list to the interface. interface pw-ether id.subintfid l2transport Example:
RP/0/RSP0/CPU0:router(config-if)# interface PW-Ether1.1 l2transport
Configures the PWHE sub-interface and enters the sub-interface configuration mode. encapsulation dot1q value Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 1
Defines the matching criteria to map 802.1Q frames ingress on an interface to the appropriate service instance. l2vpn Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 339

Configuring PWHE Layer 2 Subinterfaces and Adding it to the Bridge-domain

Implementing Multipoint Layer 2 Services

Step 8 Step 9 Step 10 Step 11
Step 12 Step 13

RP/0/RSP0/CPU0:router(config-subif)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group xg
Configures a cross-connect group name using a free-format 32-character string. p2p xconnect-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p1
Enters P2P configuration submode. interface pw-ether id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface PW-Ether1
Configures the PWHE interface. neighbor ipv4 ip-address pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv4 1.1.1.1 pw-id 1
Configures a pseudowire for a cross-connect. The IP address is that of the corresponding A-PE node. The pw-id must match the pw-id of the A-PE node. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p-pw)# bridge group bg
Creates a bridge group that can contain bridge domains, and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 340

Implementing Multipoint Layer 2 Services

Configuring PWHE Layer 3 Subinterfaces

Step 14 Step 15 Step 16 Step 17

Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. interface pw-ether id.subintfid Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface PW-Ether1.1
Adds the subinterface to the bridge domain. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# interface GigabitEthernet0/1/1/11.1
Enters interface configuration mode and adds a subinterface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. neighbor ip-address pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# neighbor 3.3.3.3 pw-id 101
Configures a pseudowire for a bridge-domain. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PWHE Layer 3 Subinterfaces
Perform this task to configure PWHE layer 3 subinterfaces.

Note A layer 3 subinterface must have an IPv4 or IPv6 address and cannot be configured in the layer 2 transport mode.

SUMMARY STEPS

1. configure 2. interface pw-ether id 3. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length 4. attach generic-interface-list interface_list_name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 341

Configuring PWHE Layer 3 Subinterfaces

Implementing Multipoint Layer 2 Services

DETAILED STEPS

5. interface pw-ether id.subintfid 6. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length 7. encapsulation dot1q value 8. l2vpn 9. xconnect group group-name 10. p2p group-name 11. interface pw-ether id 12. neighbor ipv4 ip-address pw-id value

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface pw-ether id Example:
RP/0/RSP0/CPU0:router(config)# interface PW-Ether1
Configures the PWHE interface and enters the interface configuration mode. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 40.1.1.2 255.255.255.0
Sets the IPv4 or the IPv6 address of the main interface. attach generic-interface-list interface_list_name Example:
RP/0/RSP0/CPU0:router(config-if)# attach generic-interface-list pw_he
Attaches the generic interface list to the interface. interface pw-ether id.subintfid Example:
RP/0/RSP0/CPU0:router(config-if)# interface PW-Ether1.1
Configures the PWHE sub-interface and enters the sub-interface configuration mode. ipv4 address ip-address subnet-mask (or) ipv6 address ipv6-prefix/prefix-length

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 342

Implementing Multipoint Layer 2 Services

Configuring PWHE Layer 3 Subinterfaces

Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 40.1.1.2 255.255.255.0
Sets the IPv4 or the IPv6 address of the subinterface. encapsulation dot1q value Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 1
Defines the matching criteria to map 802.1Q frames ingress on an interface to the appropriate service instance. l2vpn Example:
RP/0/RSP0/CPU0:router(config-subif)# l2vpn
Enters Layer 2 VPN configuration mode. xconnect group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# xconnect group xg
Configures a cross-connect group name using a free-format 32-character string. p2p group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc)# p2p 1
Enters P2P configuration submode. interface pw-ether id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# interface PW-Ether1
Configures the PWHE interface. neighbor ipv4 ip-address pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-xc-p2p)# neighbor ipv4 1.1.1.1 pw-id 1
Configures a pseudowire for a cross-connect. The IP address is that of the corresponding A-PE node.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 343

Configuring L2VPN over GRE

The pw-id must match the pw-id of the A-PE node.

Configuring L2VPN over GRE
Perform these tasks to configure L2VPN over GRE.

SUMMARY STEPS

1. configure 2. interface type interface-path-id 3. l2transport 4. exit 5. interface loopback instance 6. ipv4 address ip-address 7. exit 8. interface loopback instance 9. ipv4 address ip-address 10. router ospf process-name 11. area area-id 12. interface loopback instance 13. interface tunnel-ip number 14. exit 15. interface tunnel-ip number 16. ipv4 address ipv4-address subnet-mask 17. tunnel source type path-id 18. tunnel destination ip-address 19. end 20. l2vpn 21. bridge group bridge-group-name 22. bridge-domain bridge-domain-name 23. interface type interface-path-id 24. neighbor { A.B.C.D } { pw-id value } 25. mpls ldp 26. router-id { router-id } 27. interface tunnel-ip number 28. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

Implementing Multipoint Layer 2 Services

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 344

Implementing Multipoint Layer 2 Services

Configuring L2VPN over GRE

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router# interface TenGigE0/1/0/12
Enters interface configuration mode and configures an interface. l2transport Example:
RP/0/RSP0/CPU0:router# l2transport
Enables Layer 2 transport on the selected interface. exit Example:
RP/0/RSP0/CPU0:router# exit
Exits the current configuration mode. interface loopback instance Example:
RP/0/RSP0/CPU0:router# interface Loopback0
Enters interface configuration mode and names the new loopback interface. ipv4 address ip-address Example:
RP/0/RSP0/CPU0:router# ipv4 address 100.100.100.100 255.255.255.255
Assigns an IP address and subnet mask to the virtual loopback interface. exit Example:
RP/0/RSP0/CPU0:router# exit
Exits the current configuration mode. interface loopback instance

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 345

Configuring L2VPN over GRE

Implementing Multipoint Layer 2 Services

Step 9 Step 10 Step 11 Step 12 Step 13 Step 14

Example:
RP/0/RSP0/CPU0:router# interface Loopback1
Enters interface configuration mode and names the new loopback interface. ipv4 address ip-address Example:
RP/0/RSP0/CPU0:router# ipv4 address 10.0.1.1 255.255.255.255
Assigns an IP address and subnet mask to the virtual loopback interface. router ospf process-name Example:
RP/0/RSP0/CPU0:router# router ospf 1
Enables OSPF routing for the specified routing process and places the router in router configuration mode. area area-id Example:
RP/0/RSP0/CPU0:router# area 0
Enters area configuration mode and configures an area for the OSPF process. interface loopback instance Example:
RP/0/RSP0/CPU0:router# interface Loopback0
Enters interface configuration mode and names the new loopback interface. interface tunnel-ip number Example:
RP/0/RSP0/CPU0:router# interface tunnel-ip1
Enters tunnel interface configuration mode. exit Example:
RP/0/RSP0/CPU0:router# exit
Exits the current configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 346

Implementing Multipoint Layer 2 Services

Configuring L2VPN over GRE

Step 15 Step 16
Step 17 Step 18 Step 19

interface tunnel-ip number Example:
RP/0/RSP0/CPU0:router(config)# interface tunnel-ip1
Enters tunnel interface configuration mode. · number is the number associated with the tunnel interface.
ipv4 address ipv4-address subnet-mask Example:
RP/0/RSP0/CPU0:router(config-if)# ipv4 address 12.0.0.1 255.255.255.0
Specifies the IPv4 address and subnet mask for the interface. · ipv4-address specifies the IP address of the interface. · subnet-mask specifies the subnet mask of the interface.
tunnel source type path-id Example:
RP/0/RSP0/CPU0:router(config-if)# tunnel source Loopback1
Specifies the source of the tunnel interface. tunnel destination ip-address Example:
RP/0/RSP0/CPU0:router(config-if)# tunnel destination 100.100.100.20
Defines the tunnel destination. end Example:
RP/0/RSP0/CPU0:router(config-if)# end
Saves configuration changes. · When you issue the end command, the system prompts you to commit changes:
Uncommitted changes found, commit them before exiting(yes/no/cancel)?[cancel]:
· Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.
· Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 347

Configuring L2VPN over GRE

Implementing Multipoint Layer 2 Services

Step 20 Step 21 Step 22 Step 23 Step 24
Step 25

· Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.

l2vpn Example:

RP/0/RSP0/CPU0:router# l2vpn

Enters L2VPN configuration mode. bridge group bridge-group-name Example:

RP/0/RSP0/CPU0:router# bridge group access-pw

Creates a bridge group that can contain bridge domains, and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:

RP/0/RSP0/CPU0:router# bridge-domain test

Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. interface type interface-path-id Example:

RP/0/RSP0/CPU0:router# interface TenGigE0/1/0/12

Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain.
neighbor { A.B.C.D } { pw-id value } Example:

RP/0/RSP0/CPU0:router# neighbor 125.125.125.125 pw-id 100

Adds an access pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI).

· Use the A.B.C.D argument to specify the IP address of the cross-connect peer

Note

A.B.C.D can be a recursive or non-recursive prefix.

· Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.

mpls ldp Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 348

Implementing Multipoint Layer 2 Services

Configuring a GRE Tunnel as Preferred Path for Pseudowire

Step 26 Step 27 Step 28

RP/0/RSP0/CPU0:router# mpls ldp

Enables MPLS LDP configuration mode. router-id { router-id } Example:

RP/0/RSP0/CPU0:router# router-id 100.100.100.100

Configures a router ID for the OSPF process.

Note

We recommend using a stable IP address as the router ID.

interface tunnel-ip number Example:

RP/0/RSP0/CPU0:router# interface tunnel-ip1

Enters tunnel interface configuration mode.

Note

The number argument refers to the number associated with the tunnel interface

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring a GRE Tunnel as Preferred Path for Pseudowire
Perform this task to configure a GRE tunnel as the preferred path for pseudowires.

SUMMARY STEPS

1. configure 2. l2vpn 3. pw-class { name } 4. encapsulation mpls 5. preferred-path { interface } { tunnel-ip value | tunnel-te value | tunnel-tp value } [ fallback disable
] 6. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 349

Configuring a GRE Tunnel as Preferred Path for Pseudowire

Implementing Multipoint Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6

configure Example:

RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. l2vpn Example:

RP/0/RSP0/CPU0:router(config)# l2vpn

Enters L2VPN configuration mode. pw-class { name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class gre

Configures the pseudowire class name. encapsulation mpls Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls

Configures the pseudowire encapsulation to MPLS. preferred-path { interface } { tunnel-ip value | tunnel-te value | tunnel-tp value } [ fallback disable ] Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-encapmpls)# preferred-path interface tunnel-ip 1 fallback disable

Configures preferred path tunnel settings. If the fallback disable configuration is used and once the TE/TP tunnel is configured as the preferred path goes down, the corresponding pseudowire can also go down.

Note

Ensure that fallback is supported.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 350

Implementing Multipoint Layer 2 Services

Configuration Examples for Multipoint Layer 2 Services

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuration Examples for Multipoint Layer 2 Services
This section includes these configuration examples:
Multipoint Layer 2 Services Configuration for Provider Edge-to-Provider Edge: Example
These configuration examples show how to create a Layer 2 VFI with a full-mesh of participating Multipoint Layer 2 Services provider edge (PE) nodes.
This configuration example shows how to configure PE 1:
configure l2vpn bridge group 1 bridge-domain PE1-VPLS-A interface TenGigE0/0/0/0 vfi 1 neighbor 172.16.0.1 pw-id 1 neighbor 192.168.0.1 pw-id 1 ! ! interface loopback 0 ipv4 address 10.0.0.1 255.0.0.0
This configuration example shows how to configure PE 2:
configure l2vpn bridge group 1 bridge-domain PE2-VPLS-A interface TenGigE0/0/0/1
vfi 1 neighbor 10.0.0.1 pw-id 1 neighbor 192.168.0.1 pw-id 1 !
! interface loopback 0
ipv4 address 172.16.0.1 255.240.0.0
This configuration example shows how to configure PE 3:
configure l2vpn bridge group 1 bridge-domain PE3-VPLS-A interface TenGigE0/0/0/2 vfi 1 neighbor 10.0.0.1 pw-id 1 neighbor 172.16.0.1 pw-id 1 ! ! interface loopback 0 ipv4 address 192.168.0.1 255.255.0.0

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 351

Multipoint Layer 2 Services Configuration for Provider Edge-to-Customer Edge: Example

Implementing Multipoint Layer 2 Services

Multipoint Layer 2 Services Configuration for Provider Edge-to-Customer Edge: Example
This configuration shows how to configure Multipoint Layer 2 Services for a PE-to-CE nodes:
configure interface TenGigE0/0/0/0 l2transport---AC interface
no ipv4 address no ipv4 directed-broadcast negotiation auto no cdp enable
Displaying MAC Address Withdrawal Fields: Example
This sample output shows the MAC address withdrawal fields:
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain detail
Legend: pp = Partially Programmed. Bridge group: 222, bridge-domain: 222, id: 0, state: up, ShgId: 0, MSTi: 0
Coupled state: disabled MAC learning: enabled MAC withdraw: enabled
MAC withdraw sent on: bridge port up MAC withdraw relaying (access to access): disabled Flooding: Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog MAC limit reached: no MAC port down flush: enabled MAC Secure: disabled, Logging: disabled Split Horizon Group: none Dynamic ARP Inspection: disabled, Logging: disabled IP Source Guard: disabled, Logging: disabled DHCPv4 snooping: disabled IGMP Snooping: enabled IGMP Snooping profile: none MLD Snooping profile: none Storm Control: disabled Bridge MTU: 1500 MIB cvplsConfigIndex: 1 Filter MAC addresses: P2MP PW: disabled Create time: 01/03/2017 11:01:11 (00:21:33 ago) No status change since creation ACs: 1 (1 up), VFIs: 1, PWs: 1 (1 up), PBBs: 0 (0 up) List of ACs: AC: TenGigE0/2/0/1.7, state is up
Type VLAN; Num Ranges: 1 Outer Tag: 21 VLAN ranges: [22, 22] MTU 1508; XC ID 0x208000b; interworking none MAC learning: enabled Flooding:
Broadcast & Multicast: enabled

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 352

Implementing Multipoint Layer 2 Services

Displaying MAC Address Withdrawal Fields: Example

Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog MAC limit reached: no MAC port down flush: enabled MAC Secure: disabled, Logging: disabled Split Horizon Group: none Dynamic ARP Inspection: disabled, Logging: disabled IP Source Guard: disabled, Logging: disabled DHCPv4 snooping: disabled IGMP Snooping: enabled IGMP Snooping profile: none MLD Snooping profile: none Storm Control: bridge-domain policer Static MAC addresses: Statistics:
packets: received 714472608 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 97708776
bytes: received 88594603392 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 12115888224
MAC move: 0 Storm control drop counters:
packets: broadcast 0, multicast 0, unknown unicast 0 bytes: broadcast 0, multicast 0, unknown unicast 0 Dynamic ARP inspection drop counters: packets: 0, bytes: 0 IP source guard drop counters: packets: 0, bytes: 0 List of VFIs: VFI 222 (up) PW: neighbor 10.0.0.1, PW ID 222, state is up ( established ) PW class not set, XC ID 0xc000000a Encapsulation MPLS, protocol LDP Source address 21.21.21.21 PW type Ethernet, control word disabled, interworking none Sequencing not set

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -------------------------

Label

24017

24010

Group ID

0x0

0x0

Interface 222

222

MTU

1500

1500

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 3221225482

Create time: 01/03/2017 11:01:11 (00:21:33 ago)

Last time status changed: 01/03/2017 11:21:01 (00:01:43 ago)

Last time PW went down: 01/03/2017 11:15:21 (00:07:23 ago)

MAC withdraw messages: sent 0, received 0

Forward-class: 0

Static MAC addresses:

Statistics:

packets: received 95320440 (unicast 0), sent 425092569

bytes: received 11819734560 (unicast 0), sent 52711478556

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 353

Split Horizon Group: Example

Implementing Multipoint Layer 2 Services

MAC move: 0 Storm control drop counters:
packets: broadcast 0, multicast 0, unknown unicast 0 bytes: broadcast 0, multicast 0, unknown unicast 0 DHCPv4 snooping: disabled IGMP Snooping profile: none MLD Snooping profile: none VFI Statistics: drops: illegal VLAN 0, illegal length 0
Split Horizon Group: Example
This example configures interfaces for Layer 2 transport, adds them to a bridge domain, and assigns them to split horizon groups.
RP/0/RSP0/CPU0:router(config)#l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#bridge group examples RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain all_three RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet 0/0/0/0.99 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet 0/0/0/0.101 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#split-horizon group RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#neighbor 192.168.99.1 pw-id 1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#neighbor 192.168.99.9 pw-id 1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#split-horizon group RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#vfi abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#neighbor 192.168.99.17 pw-id 1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#show Mon Oct 18 13:51:05.831 EDT l2vpn
bridge group examples bridge-domain all_three interface GigabitEthernet0/0/0/0.99 ! interface GigabitEthernet0/0/0/0.101 split-horizon group ! neighbor 192.168.99.1 pw-id 1 ! neighbor 192.168.99.9 pw-id 1 split-horizon group ! vfi abc neighbor 192.168.99.17 pw-id 1 ! ! !
! !
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
According to this example, the Split Horizon group assignments for bridge domain all_three are:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 354

Implementing Multipoint Layer 2 Services

Blocking Unknown Unicast Flooding: Example

Bridge Port/Pseudowire bridge port: gig0/0/0/0.99 bridge port: gig0/0/0/0.101 PW: 192.168.99.1 pw-id 1 PW: 192.168.99.9 pw-id 1 PW: 192.168.99.17 pw-id 1

Split Horizon Group 0 2 0 2 1

Blocking Unknown Unicast Flooding: Example
Unknown-unicast flooding can be blocked at these levels:
· bridge domain · bridge port (attachment circuit (AC)) · access pseudowire (PW)
This example shows how to block unknown-unicast flooding at the bridge domain level:
configure l2vpn bridge-group group1 bridge-domain domain1 flooding unknown-unicast disable end
This example shows how to block unknown-unicast flooding at the bridge port level:
configure l2vpn bridge-group group1 bridge-domain domain1 interface GigabitEthernet 0/1/0/1 flooding unknown-unicast disable end
This example shows how to block unknown-unicast flooding at the access pseudowire level:
configure l2vpn bridge-group group1 bridge-domain domain1 neighbor 10.1.1.1 pw-id 1000 flooding unknown-unicast disable end

Disabling MAC Flush: Examples
You can disable the MAC flush at these levels: · bridge domain · bridge port (attachment circuit (AC))

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 355

Bridging on IOS XR Trunk Interfaces: Example

Implementing Multipoint Layer 2 Services

· access pseudowire (PW) The following example shows how to disable the MAC flush at the bridge domain level:
configure l2vpn bridge-group group1 bridge-domain domain1 mac port-down flush disable end
The following example shows how to disable the MAC flush at the bridge port level:
configure l2vpn bridge-group group1 bridge-domain domain1 interface TenGigE 0/0/0/0 mac port-down flush disable end
Bridging on IOS XR Trunk Interfaces: Example
This example shows how to configure a as a simple L2 switch. Important notes: Create a bridge domain that has four attachment circuits (AC). Each AC is an IOS XR trunk interface (i.e. not a subinterface/EFP).
· This example assumes that the running config is empty, and that all the components are created.
· This example provides all the necessary steps to configure the to perform switching between the interfaces. However, the commands to prepare the interfaces such as no shut, negotiation auto, etc., have been excluded.
· The bridge domain is in a no shut state, immediately after being created.
· Only trunk (i.e. main) interfaces are used in this example.
· The trunk interfaces are capable of handling tagged (i.e. IEEE 802.1Q) or untagged (i.e. no VLAN header) frames.
· The bridge domain learns, floods, and forwards based on MAC address. This functionality works for frames regardless of tag configuration.
· The bridge domain entity spans the entire system. It is not necessary to place all the bridge domain ACs on a single LC. This applies to any bridge domain configuration.
· The show bundle and the show l2vpn bridge-domain commands are used to verify that the router was configured as expected, and that the commands show the status of the new configurations.
· The ACs in this example use interfaces that are in the admin down state.
Configuration Example
RP/0/RSP0/CPU0:router#config RP/0/RSP0/CPU0:router(config)#interface Bundle-ether10

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 356

Implementing Multipoint Layer 2 Services

Bridging on IOS XR Trunk Interfaces: Example

RP/0/RSP0/CPU0:router(config-if)#l2transport RP/0/RSP0/CPU0:router(config-if-l2)#interface GigabitEthernet0/2/0/5 RP/0/RSP0/CPU0:router(config-if)#bundle id 10 mode active RP/0/RSP0/CPU0:router(config-if)#interface GigabitEthernet0/2/0/6 RP/0/RSP0/CPU0:router(config-if)#bundle id 10 mode active RP/0/RSP0/CPU0:router(config-if)#interface GigabitEthernet0/2/0/0 RP/0/RSP0/CPU0:router(config-if)#l2transport RP/0/RSP0/CPU0:router(config-if-l2)#interface GigabitEthernet0/2/0/1 RP/0/RSP0/CPU0:router(config-if)#l2transport RP/0/RSP0/CPU0:router(config-if-l2)#interface TenGigE0/1/0/2 RP/0/RSP0/CPU0:router(config-if)#l2transport RP/0/RSP0/CPU0:router(config-if-l2)#l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#bridge group examples RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain test-switch RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface Bundle-ether10 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/0 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet0/2/0/1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface TenGigE0/1/0/2 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#commit RP/0/RSP0/CPU0:Jul 26 10:48:21.320 EDT: config[65751]: %MGBL-CONFIG-6-DB_COMMIT : Configuration committed by user 'lab'. Use 'show configuration commit changes 1000000973' to view the changes. RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#end RP/0/RSP0/CPU0:Jul 26 10:48:21.342 EDT: config[65751]: %MGBL-SYS-5-CONFIG_I : Configured from console by lab RP/0/RSP0/CPU0:router#show bundle Bundle-ether10

Bundle-Ether10 Status: Local links <active/standby/configured>: Local bandwidth <effective/available>: MAC address (source): Minimum active links / bandwidth: Maximum active links: Wait while timer: LACP: Flap suppression timer: mLACP: IPv4 BFD:

Down 0/0/2 0 (0) kbps 0024.f71e.22eb (Chassis pool) 1 / 1 kbps 64 2000 ms Operational Off Not configured Not configured

Port -------------------Gi0/2/0/5
Link is down Gi0/2/0/6
Link is down

Device --------------Local
Local

State ----------Configured
Configured

Port ID -------------0x8000, 0x0001
0x8000, 0x0002

B/W, kbps ----------
1000000
1000000

RP/0/RSP0/CPU0:router# RP/0/RSP0/CPU0:router#show l2vpn bridge-domain group examples Bridge group: examples, bridge-domain: test-switch, id: 2000, state: up, ShgId: 0, MSTi: 0
Aging: 300 s, MAC limit: 4000, Action: none, Notification: syslog Filter MAC addresses: 0 ACs: 4 (1 up), VFIs: 0, PWs: 0 (0 up), PBBs: 0 (0 up) List of ACs:
BE10, state: down, Static MAC addresses: 0 Gi0/2/0/0, state: up, Static MAC addresses: 0 Gi0/2/0/1, state: down, Static MAC addresses: 0 Te0/5/0/1, state: down, Static MAC addresses: 0 List of VFIs: RP/0/RSP0/CPU0:router#

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 357

Bridging on IOS XR Trunk Interfaces: Example

Implementing Multipoint Layer 2 Services

This table lists the configuration steps (actions) and the corresponding purpose for this example:

SUMMARY STEPS

1. configure 2. interface Bundle-ether10 3. l2transport 4. interface GigabitEthernet0/2/0/5 5. bundle id 10 mode active 6. interface GigabitEthernet0/2/0/6 7. bundle id 10 mode active 8. interface GigabitEthernet0/2/0/0 9. l2transport 10. interface GigabitEthernet0/2/0/1 11. l2transport 12. interface TenGigE0/1/0/2 13. l2transport 14. l2vpn 15. bridge group examples 16. bridge-domain test-switch 17. interface Bundle-ether10 18. exit 19. interface GigabitEthernet0/2/0/0 20. exit 21. interface GigabitEthernet0/2/0/1 22. exit 23. interface TenGigE0/1/0/2 24. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Enters global configuration mode. interface Bundle-ether10 Creates a new bundle trunk interface. l2transport Changes Bundle-ether10 from an L3 interface to an L2 interface. interface GigabitEthernet0/2/0/5 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/2/0/5. bundle id 10 mode active Establishes GigabitEthernet0/2/0/5 as a member of Bundle-ether10. The mode active keywords specify LACP protocol.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 358

Implementing Multipoint Layer 2 Services

Bridging on IOS XR Trunk Interfaces: Example

Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12 Step 13 Step 14 Step 15 Step 16 Step 17 Step 18 Step 19 Step 20 Step 21

interface GigabitEthernet0/2/0/6 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/2/0/6. bundle id 10 mode active Establishes GigabitEthernet0/2/0/6 as a member of Bundle-ether10. The mode active keywords specify LACP protocol. interface GigabitEthernet0/2/0/0 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/2/0/0. l2transport Change GigabitEthernet0/2/0/0 from an L3 interface to an L2 interface. interface GigabitEthernet0/2/0/1 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/2/0/1. l2transport Change GigabitEthernet0/2/0/1 from an L3 interface to an L2 interface. interface TenGigE0/1/0/2 Enters interface configuration mode. Changes configuration mode to act on TenGigE0/1/0/2. l2transport Changes TenGigE0/1/0/2 from an L3 interface to an L2 interface. l2vpn Enters L2VPN configuration mode. bridge group examples Creates the bridge group examples. bridge-domain test-switch Creates the bridge domain test-switch, that is a member of bridge group examples. interface Bundle-ether10 Establishes Bundle-ether10 as an AC of bridge domain test-switch. exit Exits bridge domain AC configuration submode, allowing next AC to be configured. interface GigabitEthernet0/2/0/0 Establishes GigabitEthernet0/2/0/0 as an AC of bridge domain test-switch. exit Exits bridge domain AC configuration submode, allowing next AC to be configured. interface GigabitEthernet0/2/0/1 Establishes GigabitEthernet0/2/0/1 as an AC of bridge domain test-switch.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 359

Bridging on Ethernet Flow Points: Example

Implementing Multipoint Layer 2 Services

Step 22 Step 23 Step 24

exit Exits bridge domain AC configuration submode, allowing next AC to be configured. interface TenGigE0/1/0/2 Establishes interface TenGigE0/1/0/2 as an AC of bridge domain test-switch. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Bridging on Ethernet Flow Points: Example
This example shows how to configure a to perform Layer 2 switching on traffic that passes through Ethernet Flow Points (EFPs). EFP traffic typically has one or more VLAN headers. Although both IOS XR trunks and IOS XR EFPs can be combined as attachment circuits in bridge domains, this example uses EFPs exclusively.
Important notes:
· An EFP is a Layer 2 subinterface. It is always created under a trunk interface. The trunk interface must exist before the EFP is created.
· In an empty configuration, the bundle interface trunk does not exist, but the physical trunk interfaces are automatically configured. Therefore, only the bundle trunk is created.
· In this example the subinterface number and the VLAN IDs are identical, but this is out of convenience, and is not a necessity. They do not need to be the same values.
· The bridge domain test-efp has three attachment circuits (ACs). All the ACs are EFPs.
· Only frames with a VLAN ID of 999 enter the EFPs. This ensures that all the traffic in this bridge domain has the same VLAN encapsulation.
· The ACs in this example use interfaces that are in the admin down state (unresolved state). Bridge domains that use nonexistent interfaces as ACs are legal, and the commit for such configurations does not fail. In this case, the status of the bridge domain shows unresolved until you configure the missing interface.
Configuration Example
RP/0/RSP1/CPU0:router#configure RP/0/RSP1/CPU0:router(config)#interface Bundle-ether10 RP/0/RSP1/CPU0:router(config-if)#interface Bundle-ether10.999 l2transport RP/0/RSP1/CPU0:router(config-subif)#encapsulation dot1q 999 RP/0/RSP1/CPU0:router(config-subif)#interface GigabitEthernet0/6/0/5 RP/0/RSP1/CPU0:router(config-if)#bundle id 10 mode active RP/0/RSP1/CPU0:router(config-if)#interface GigabitEthernet0/6/0/6

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 360

Implementing Multipoint Layer 2 Services

Bridging on Ethernet Flow Points: Example

RP/0/RSP1/CPU0:router(config-if)#bundle id 10 mode active RP/0/RSP1/CPU0:router(config-if)#interface GigabitEthernet0/6/0/7.999 l2transport RP/0/RSP1/CPU0:router(config-subif)#encapsulation dot1q 999 RP/0/RSP1/CPU0:router(config-subif)#interface TenGigE0/1/0/2.999 l2transport RP/0/RSP1/CPU0:router(config-subif)#encapsulation dot1q 999 RP/0/RSP1/CPU0:router(config-subif)#l2vpn RP/0/RSP1/CPU0:router(config-l2vpn)#bridge group examples RP/0/RSP1/CPU0:router(config-l2vpn-bg)#bridge-domain test-efp RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd)#interface Bundle-ether10.999 RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet0/6/0/7.999 RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd-ac)#exit RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd)#interface TenGigE0/1/0/2.999 RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd-ac)#commit RP/0/RSP1/CPU0:router(config-l2vpn-bg-bd-ac)#end RP/0/RSP1/CPU0:router# RP/0/RSP1/CPU0:router#show l2vpn bridge group examples Fri Jul 23 21:56:34.473 UTC Bridge group: examples, bridge-domain: test-efp, id: 0, state:
up, ShgId: 0, MSTi: 0 Aging: 300 s, MAC limit: 4000, Action: none, Notification: syslog
Filter MAC addresses: 0 ACs: 3 (0 up), VFIs: 0, PWs: 0 (0 up), PBBs: 0 (0 up) List of ACs:
BE10.999, state: down, Static MAC addresses: 0 Gi0/6/0/7.999, state: unresolved, Static MAC addresses: 0 Te0/1/0/2.999, state: down, Static MAC addresses: 0 List of VFIs: RP/0/RSP1/CPU0:router#

This table lists the configuration steps (actions) and the corresponding purpose for this example:

SUMMARY STEPS

1. configure 2. interface Bundle-ether10 3. interface Bundle-ether10.999 l2transport 4. encapsulation dot1q 999 5. interface GigabitEthernet0/6/0/5 6. bundle id 10 mode active 7. interface GigabitEthernet0/6/0/6 8. bundle id 10 mode active 9. interface GigabitEthernet0/6/0/7.999 l2transport 10. encapsulation dot1q 999 11. interface TenGigE0/1/0/2.999 l2transport 12. encapsulation dot1q 999 13. l2vpn 14. bridge group examples 15. bridge-domain test-efp 16. interface Bundle-ether10.999 17. exit 18. interface GigabitEthernet0/6/0/7.999 19. exit 20. interface TenGigE0/1/0/2.999 21. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 361

Bridging on Ethernet Flow Points: Example

Implementing Multipoint Layer 2 Services

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12 Step 13 Step 14 Step 15

configure Enters global configuration mode. interface Bundle-ether10 Creates a new bundle trunk interface. interface Bundle-ether10.999 l2transport Creates an EFP under the new bundle trunk. encapsulation dot1q 999 Assigns VLAN ID of 999 to this EFP. interface GigabitEthernet0/6/0/5 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/6/0/5. bundle id 10 mode active Establishes GigabitEthernet0/6/0/5 as a member of Bundle-ether10. The mode active keywords specify LACP protocol. interface GigabitEthernet0/6/0/6 Enters interface configuration mode. Changes configuration mode to act on GigabitEthernet0/6/0/6. bundle id 10 mode active Establishes GigabitEthernet0/6/0/6 as a member of Bundle-ether10. The mode active keywords specify LACP protocol. interface GigabitEthernet0/6/0/7.999 l2transport Creates an EFP under GigabitEthernet0/6/0/7. encapsulation dot1q 999 Assigns VLAN ID of 999 to this EFP. interface TenGigE0/1/0/2.999 l2transport Creates an EFP under TenGigE0/1/0/2. encapsulation dot1q 999 Assigns VLAN ID of 999 to this EFP. l2vpn Enters L2VPN configuration mode. bridge group examples Creates the bridge group named examples. bridge-domain test-efp Creates the bridge domain named test-efp, that is a member of bridge group examples.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 362

Implementing Multipoint Layer 2 Services

Changing the Flood Optimization Mode

Step 16 Step 17 Step 18 Step 19 Step 20 Step 21

interface Bundle-ether10.999 Establishes Bundle-ether10.999 as an AC of the bridge domain named test-efp. exit Exits bridge domain AC configuration submode, allowing next AC to be configured. interface GigabitEthernet0/6/0/7.999 Establishes GigabitEthernet0/6/0/7.999 as an AC of the bridge domain named test-efp. exit Exits bridge domain AC configuration submode, allowing next AC to be configured. interface TenGigE0/1/0/2.999 Establishes interface TenGigE0/1/0/2.999 as an AC of bridge domain named test-efp. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Changing the Flood Optimization Mode
Perform this task to change the flood optimization mode under the bridge domain:

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. flood mode convergence-optimized 6. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 363

Configuring VPLS with BGP Autodiscovery and Signaling: Example

Implementing Multipoint Layer 2 Services

Step 2 Step 3 Step 4 Step 5 Step 6

l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group csco RP/0/RSP0/CPU0:router(config-l2vpn-bg)#
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain abc RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#
Establishes a bridge domain and enters l2vpn bridge group bridge domain configuration mode. flood mode convergence-optimized Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# flood mode convergence-optimized
Changes the default flood optimization mode from Bandwidth Optimization Mode to Convergence Mode. When you configure flood mode convergence-optimized, you must remove and reconfigure the bridge domain when you add, modify, or remove the pseudowire configuration of a specific bridge domain. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring VPLS with BGP Autodiscovery and Signaling: Example
This section contains these configuration examples for configuring the BGP autodiscovery and signaling feature:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 364

Implementing Multipoint Layer 2 Services

LDP and BGP Configuration

LDP and BGP Configuration
The following figure illustrates an example of LDP and BGP configuration.
Figure 37: LDP and BGP Configuration

Configuration at PE1:
interface Loopback0 ipv4 address 10.0.0.100 255.0.0.0
! interface Loopback1
ipv4 address 10.0.0.1 255.0.0.0 ! mpls ldp
router-id 10.0.0.10 interface GigabitEthernt0/1/0/0 ! router bgp 120 address-family l2vpn vpls-vpws ! neighbor 172.16.0.1 remote-as 120 update-source Loopback1 address-family l2vpn vpls-vpws signaling bgp disable
Configuration at PE2:
interface Loopback0 ipv4 address 172.16.0.10 255.255.255.255
! interface Loopback1
ipv4 address 172.16.0.1 255.255.255.255 ! mpls ldp
router-id 172.16.0.100 interface GigabitEthernt0/1/0/0 ! router bgp 120 address-family l2vpn vpls-vpws ! neighbor 10.0.0.11 remote-as 120 update-source Loopback1 address-family l2vpn vpls-vpws
Minimum L2VPN Configuration for BGP Autodiscovery with BGP Signaling
This example illustrates the minimum L2VPN configuration required for BGP Autodiscovery with BGP Signaling, where any parameter that has a default value is not configured.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 365

VPLS with BGP Autodiscovery and BGP Signaling

Implementing Multipoint Layer 2 Services

(config)# l2vpn (config-l2vpn)# bridge group {bridge group name} (config-l2vpn-bg)# bridge-domain {bridge domain name} (config-l2vpn-bg-bd)# vfi {vfi name} (config-l2vpn-bg-bd-vfi)# autodiscovery bgp (config-l2vpn-bg-bd-vfi-ad)# vpn-id 10 (config-l2vpn-bg-bd-vfi-ad)# rd auto (config-l2vpn-bg-bd-vfi-ad)# route-target 10.0.0.1:100 (config-l2vpn-bg-bd-vfi-ad-sig)# signaling-protocol bgp (config-l2vpn-bg-bd-vfi-ad-sig)# ve-id 1 (config-l2vpn-bg-bd-vfi-ad-sig)# commit
VPLS with BGP Autodiscovery and BGP Signaling
The following figure illustrates an example of configuring VPLS with BGP autodiscovery (AD) and BGP Signaling.
Figure 38: VPLS with BGP autodiscovery and BGP signaling

Configuration at PE1:
l2vpn bridge group gr1 bridge-domain bd1 interface GigabitEthernet0/1/0/1.1 vfi vf1 ! AD independent VFI attributes vpn-id 100 ! Auto-discovery attributes autodiscovery bgp rd auto route-target 2.2.2.2:100 ! Signaling attributes signaling-protocol bgp ve-id 3
Configuration at PE2:
l2vpn bridge group gr1 bridge-domain bd1 interface GigabitEthernet0/1/0/2.1 vfi vf1 ! AD independent VFI attributes vpn-id 100 ! Auto-discovery attributes autodiscovery bgp rd auto route-target 2.2.2.2:100 ! Signaling attributes signaling-protocol bgp ve-id 5
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 366

Implementing Multipoint Layer 2 Services

Minimum Configuration for BGP Autodiscovery with LDP Signaling

This is an example of NLRI for VPLS with BGP AD and signaling:

Discovery Attributes
NLRI sent at PE1:
Length = 19 Router Distinguisher = 3.3.3.3:32770 VE ID = 3 VE Block Offset = 1 VE Block Size = 10 Label Base = 16015
NLRI sent at PE2:
Length = 19 Router Distinguisher = 1.1.1.1:32775 VE ID = 5 VE Block Offset = 1 VE Block Size = 10 Label Base = 16120
Minimum Configuration for BGP Autodiscovery with LDP Signaling
This example illustrates the minimum L2VPN configuration required for BGP Autodiscovery with LDP Signaling, where any parameter that has a default value is not configured.
(config)# l2vpn (config-l2vpn)# bridge group {bridge group name} (config-l2vpn-bg)# bridge-domain {bridge domain name} (config-l2vpn-bg-bd)# vfi {vfi name} (config-l2vpn-bg-bd-vfi)# autodiscovery bgp (config-l2vpn-bg-bd-vfi-ad)# vpn-id 10 (config-l2vpn-bg-bd-vfi-ad)# rd auto (config-l2vpn-bg-bd-vfi-ad)# route-target 1.1.1.1:100 (config-l2vpn-bg-bd-vfi-ad)# commit
VPLS with BGP Autodiscovery and LDP Signaling
The following figure illustrates an example of configuring VPLS with BGP autodiscovery (AD) and LDP Signaling.
Figure 39: VPLS with BGP autodiscovery and LDP signaling

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 367

VPLS with BGP Autodiscovery and LDP Signaling
Configuration at PE1:
l2vpn router-id 10.10.10.10 bridge group bg1 bridge-domain bd1 vfi vf1 vpn-id 100 autodiscovery bgp rd 1:100 router-target 12:12
Configuration at PE2:
l2vpn router-id 20.20.20.20 bridge group bg1 bridge-domain bd1 vfi vf1 vpn-id 100 autodiscovery bgp rd 2:200 router-target 12:12 signaling-protocol ldp vpls-id 120:100
Discovery and Signaling Attributes

Implementing Multipoint Layer 2 Services

Configuration at PE1:
LDP Router ID - 10.0.0.1 BGP Router ID - 10.0.0.100 Peer Address - 10.0.0.10 L2VPN Router ID - 10.10.10.10 Route Distinguisher - 1:100
Common Configuration between PE1 and PE2:
ASN - 120 VPN ID - 100 VPLS ID - 120:100 Route Target - 12:12
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 368

Implementing Multipoint Layer 2 Services

VPLS with both BGP Autodiscovery and Manual Provisioning of VPLS Peers

Configuration at PE2:
LDP Router ID - 172.16.0.1 BGP Router ID - 172.16.0.100 Peer Address - 172.16.0.10 L2VPN Router ID - 192.168.0.1 Route Distinguisher - 2:200
Discovery Attributes
NLRI sent at PE1:
Source Address - 10.0.0.10 Destination Address - 172.16.0.10 Length - 14 Route Distinguisher - 1:100 L2VPN Router ID - 10.10.10.10 VPLS ID - 120:100 Route Target - 12:12
NLRI sent at PE2:
Source Address - 172.16.0.10 Destination Address - 10.0.0.10 Length - 14 Route Distinguisher - 2:200 L2VPN Router ID - 192.168.0.1 VPLS ID - 120:100 Route Target - 12:12
Enabling VC type 4 for BGP Autodiscovery
This example shows how to configure virtual connection type 4 in VPLS with BGP autodiscovery:
l2vpn bridge group bg1
bridge-domain bd1 transport-mode vlan passthrough interface GigabitEthernet0/0/0/1.1 ! neighbor 172.16.0.1 pw-id 1 ! vfi vf1 vpn-id 100 autodiscovery bgp rd auto route-target 1:1 signalining-protocol ldp ! !
! !
VPLS with both BGP Autodiscovery and Manual Provisioning of VPLS Peers
This example shows VPLS configuration with BGP autodiscovery as well as manual provisioning of VPLS peers that are not participating in the BGP autodiscovery process.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 369

Configuring Dynamic ARP Inspection: Example

Implementing Multipoint Layer 2 Services

! l2vpn
bridge group bg1 bridge-domain bd1 ! vfi vfi1 vpn-id 500 autodiscovery bgp rd auto route-target 65533:12345678 signaling-protocol ldp vpls-id 65533:12345678 ! Manually provisioned peers neighbor 10.10.10.2 pw-id 102
!
Configuring Dynamic ARP Inspection: Example
This example shows how to configure basic dynamic ARP inspection under a bridge domain:
config l2vpn
bridge group MyGroup bridge-domain MyDomain dynamic-arp-inspection logging
This example shows how to configure basic dynamic ARP inspection under a bridge port:
config l2vpn
bridge group MyGroup bridge-domain MyDomain
interface gigabitEthernet 0/1/0/0.1 dynamic-arp-inspection logging
This example shows how to configure optional dynamic ARP inspection under a bridge domain:
l2vpn bridge group SECURE bridge-domain SECURE-DAI dynamic-arp-inspection logging address-validation src-mac dst-mac ipv4
This example shows how to configure optional dynamic ARP inspection under a bridge port:
l2vpn bridge group SECURE bridge-domain SECURE-DAI interface GigabitEthernet0/0/0/1.10 dynamic-arp-inspection logging address-validation src-mac dst-mac ipv4
This example shows the output of the show l2vpn bridge-domain bd-name SECURE-DAI detail command:
#show l2vpn bridge-domain bd-name SECURE-DAI detail Bridge group: SECURE, bridge-domain: SECURE-DAI, id: 2, state: up, ...

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 370

Implementing Multipoint Layer 2 Services

Configuring IP Source Guard: Example

Dynamic ARP Inspection: enabled, Logging: enabled Dynamic ARP Inspection Address Validation:
IPv4 verification: enabled Source MAC verification: enabled
Destination MAC verification: enabled ... List of ACs:
AC: GigabitEthernet0/0/0/1.10, state is up ...
Dynamic ARP Inspection: enabled, Logging: enabled Dynamic ARP Inspection Address Validation:
IPv4 verification: enabled Source MAC verification: enabled Destination MAC verification: enabled IP Source Guard: enabled, Logging: enabled
... Dynamic ARP inspection drop counters: packets: 1000, bytes: 64000
This example shows the output of the show l2vpn forwarding interface interface-name detail location location-name command:
#show l2vpn forwarding interface g0/0/0/1.10 det location 0/0/CPU0 Local interface: GigabitEthernet0/0/0/1.10, Xconnect id: 0x40001, Status: up
... Dynamic ARP Inspection: enabled, Logging: enabled Dynamic ARP Inspection Address Validation: IPv4 verification: enabled Source MAC verification: enabled Destination MAC verification: enabled IP Source Guard: enabled, Logging: enabled
This example shows the logging display:
LC/0/0/CPU0:Jun 16 13:28:28.697 : l2fib[188]: %L2-L2FIB-5-SECURITY_DAI_VIOLATION_AC : Dynamic ARP inspection in AC GigabitEthernet0_0_0_7.1000 detected violated packet - source MAC:
0000.0000.0065, destination MAC: 0000.0040.0000, sender MAC: 0000.0000.0064, target MAC: 0000.0000.0000, sender IP: 5.6.6.6, target IP: 130.10.3.2
LC/0/5/CPU0:Jun 16 13:28:38.716 : l2fib[188]: %L2-L2FIB-5-SECURITY_DAI_VIOLATION_AC : Dynamic ARP inspection in AC Bundle-Ether100.103 detected violated packet - source MAC:
0000.0000.0067, destination MAC: 0000.2300.0000, sender MAC: 0000.7800.0034, target MAC: 0000.0000.0000, sender IP: 130.2.5.1, target IP: 50.5.1.25
Configuring IP Source Guard: Example
This example shows how to configure basic IP source guard under a bridge domain:
config l2vpn
bridge group MyGroup bridge-domain MyDomain ip-source-guard logging
This example shows how to configure basic IP source guard under a bridge port:
config l2vpn
bridge group MyGroup bridge-domain MyDomain

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 371

Configuring IP Source Guard: Example

Implementing Multipoint Layer 2 Services

interface gigabitEthernet 0/1/0/0.1 ip-source-guard logging
This example shows how to configure optional IP source guard under a bridge domain:
l2vpn bridge group SECURE bridge-domain SECURE-IPSG ip-source-guard logging
This example shows how to configure optional IP source guard under a bridge port:
l2vpn bridge group SECURE bridge-domain SECURE-IPSG interface GigabitEthernet0/0/0/1.10 ip-source-guard logging
This example shows the output of the show l2vpn bridge-domain bd-name ipsg-name detail command:
# show l2vpn bridge-domain bd-name SECURE-IPSG detail Bridge group: SECURE, bridge-domain: SECURE-IPSG, id: 2, state: up, ...
IP Source Guard: enabled, Logging: enabled ... List of ACs:
AC: GigabitEthernet0/0/0/1.10, state is up ...
IP Source Guard: enabled, Logging: enabled ...
IP source guard drop counters: packets: 1000, bytes: 64000
This example shows the output of the show l2vpn forwarding interface interface-name detail location location-name command:
# show l2vpn forwarding interface g0/0/0/1.10 detail location 0/0/CPU0 Local interface: GigabitEthernet0/0/0/1.10, Xconnect id: 0x40001, Status: up
... IP Source Guard: enabled, Logging: enabled
This example shows the logging display:
LC/0/0/CPU0:Jun 16 13:32:25.334 : l2fib[188]: %L2-L2FIB-5-SECURITY_IPSG_VIOLATION_AC : IP source guard in AC GigabitEthernet0_0_0_7.1001 detected violated packet - source MAC: 0000.0000.0200, destination MAC: 0000.0003.0000, source IP: 130.0.0.1, destination IP: 125.34.2.5
LC/0/5/CPU0:Jun 16 13:33:25.530 : l2fib[188]: %L2-L2FIB-5-SECURITY_IPSG_VIOLATION_AC : IP source guard in AC Bundle-Ether100.100 detected violated packet - source MAC: 0000.0000.0064,
destination MAC: 0000.0040.0000, source IP: 14.5.1.3, destination IP: 45.1.1.10

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 372

Implementing Multipoint Layer 2 Services

Configuring G.8032 Ethernet Ring Protection: Example

Configuring G.8032 Ethernet Ring Protection: Example
This sample configuration illustrates the elements that a complete G.8032 configuration includes:
# Configure the ERP profile characteristics if ERP instance behaviors are non-default. ethernet ring g8032 profile ERP-profile
timer wtr 60 timer guard 100 timer hold-off 1 non-revertive
# Configure CFM MEPs and configure to monitor the ring links. ethernet cfm
domain domain1 service link1 down-meps
continuity-check interval 100ms efd
mep crosscheck mep-id 2 domain domain2
service link2 down-meps continuity-check interval 100ms
efd protection-switching mep crosscheck mep id 2
Interface Gig 0/0/0/0 ethernet cfm mep domain domain1 service link1 mep-id 1
Interface Gig 1/1/0/0 ethernet cfm mep domain domain2 service link2 mep-id 1
# Configure the ERP instance under L2VPN l2vpn
ethernet ring g8032 RingA port0 interface g0/0/0/0 port1 interface g0/1/0/0 instance 1 description BD2-ring profile ERP-profile rpl port0 owner vlan-ids 10-100 aps channel level 3 port0 interface g0/0/0/0.1 port1 interface g1/1/0/0.1
# Set up the bridge domains bridge group ABC
bridge-domain BD2 interface Gig 0/0/0/0.2 interface Gig 0/1/0/0.2 interface Gig 0/2/0/0.2
bridge-domain BD2-APS interface Gig 0/0/0/0.1 interface Gig 1/1/0/0.1
# EFPs configuration interface Gig 0/0/0/0.1 l2transport
encapsulation dot1q 5
interface Gig 1/1/0/0.1 l2transport encapsulation dot1q 5

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 373

Configuring Interconnection Node: Example

Implementing Multipoint Layer 2 Services

interface g 0/0/0/0.2 l2transport encapsulation dot1q 10-100
interface g 0/1/0/0.2 l2transport encapsulation dot1q 10-100
interface g 0/2/0/0.2 l2transport encapsulation dot1q 10-100
Configuring Interconnection Node: Example
This example shows you how to configure an interconnection node. The following figure illustrates an open ring scenario.
Figure 40: Open Ring Scenario - interconnection node

The minimum configuration required for configuring G.8032 at Router C (Open ring ­ Router C):
interface <ifname1.1> l2transport encapsulation dot1q X1
interface <ifname1.10> l2transport encapsulation dot1q Y1
interface <ifname2.10> l2transport encapsulation dot1q Y1
interface <ifname3.10> l2transport encapsulation dot1q Y1
l2vpn ethernet ring g8032 <ring-name>
port0 interface <main port ifname1> port1 interface none #? This router is connected to an interconnection node open-ring #? Mandatory when a router is part of an open-ring instance <1-2>
inclusion-list vlan-ids X1-Y1 aps-channel
Port0 interface <ifname1.1> Port1 none #? This router is connected to an interconnection node bridge group bg1 bridge-domain bd-aps#? APS-channel has its own bridge domain <ifname1.1> #? There is only one APS-channel at the interconnection node bridge-domain bd-traffic #? Data traffic has its own bridge domain <ifname1.10> <ifname2.10> <ifname3.10>
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 374

Implementing Multipoint Layer 2 Services

Configuring the Node of an Open Ring: Example

Configuring the Node of an Open Ring: Example
This example shows you how to configure the node part of an open ring. The following figure illustrates an open ring scenario.
Figure 41: Open Ring Scenario

The minimum configuration required for configuring G.8032 at the node of the open ring (node part of the open ring at router F):
interface <ifname1.1> l2transport encapsulation dot1q X1
interface <ifname2.1> l2transport encapsulation dot1q X1
interface <ifname1.10> l2transport encapsulation dot1q Y1
interface <ifname2.10> l2transport encapsulation dot1q Y1
l2vpn ethernet ring g8032 <ring-name> port0 interface <main port ifname1> port1 interface <main port ifname2> open-ring #? Mandatory when a router is part of an open-ring instance <1-2> inclusion-list vlan-ids X1-Y1 rpl port1 owner #? This node is RPL owner and <main port ifname2> is blocked aps-channel port0 interface <ifname1.1> port1 interface <ifname2.1>
bridge group bg1 bridge-domain bd-aps#? APS-channel has its own bridge domain <ifname1.1> <ifname2.1> bridge-domain bd-traffic #? Data traffic has its own bridge domain <ifname1.10> <ifname2.10>
Configuring Flow Aware Transport Pseudowire: Example
This sample configuration shows how to enable load balancing with FAT PW for VPWS.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 375

Configuring Pseudowire Headend: Example

Implementing Multipoint Layer 2 Services

l2vpn pw-class class1
encapsulation mpls load-balancing flow-label transmit
! ! pw-class class2
encapsulation mpls load-balancing flow-label both
!
xconnect group group1 p2p p1 interface TenGigE 0/0/0/0.1 neighbor 1.1.1.1 pw-id 1 pw-class class1 ! !
!
This sample configuration shows how to enable load balancing with FAT PW for VPLS.
Note For VPLS, the configuration at the bridge-domain level is applied to all PWs (access and VFI PWs). Pseudowire classes are defined to override the configuration for manual PWs.
l2vpn pw-class class1
encapsulation mpls load-balancing flow-label both
bridge group group1 bridge-domain domain1 vfi vfi2-auto-bgp autodiscovery bgp signaling-protocol bgp load-balancing flow-label both static ! ! ! ! bridge-domain domain2 vfi vfi2-auto-ldp autodiscovery bgp signaling-protocol ldp load-balancing flow-label both static ! ! ! !
!
Configuring Pseudowire Headend: Example
This example shows how to configure pseudowire headend.
Consider the topology in the following figure.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 376

Implementing Multipoint Layer 2 Services Figure 42: Pseudowire Headend Example

Configuring Pseudowire Headend: Example

There are multiple CEs connected to A-PE (each CE is connected by one link). There are two P routers between A-PE an S-PE in the access network. The S-PE is connected using two links to P1. These links L1 and L2 (on two different line cards on P1 and S-PE), e.g. Gig0/1/0/0 and Gig0/2/0/0 respectively. The S-PE is connected by two links to P2, links L3 and L4 (on two different line cards on P2 and S-PE), e.g. Gig0/1/0/1 and Gig0/2/0/1 respectively. For each CE-APE link, a xconnect (AC-PW) is configured on the A-PE. A-PE uses router-id 100.100.100.100 for routing and PW signaling. Two router-ids on S-PE used for PW signaling, e.g. 111.111.111.111 and 112.112.112.112 (for rx pin-down), 110.110.110.110 is the router-id for routing.
CE Configuration Consider two CEs that are connected through Ge0/3/0/0 (CE1 and A-PE) and Ge0/3/0/1 (CE2 and A-PE). CE1
interface Gig0/3/0/0 ipv4 address 10.0.0.1/8
router static address-family ipv4 unicast 110.110.110.110 Gig0/3/0/0 A.B.C.D/N 110.110.110.110
CE2
interface Gig0/3/0/1 ipv4 address 10.1.2.1/24
router static address-family ipv4 unicast 110.110.110.110 Gig0/3/0/1 A.B.C.D/N 110.110.110.110
A-PE Configuration At A-PE we have 1 xconnect for each CE connection. Here we give the configuration for the 2 CE connections above: both connections are L2 links which are in xconnects. Each xconnect has a PW destined to S-PE but we use a different neighbor address depending of where we want to pin-down the PW: [L1, L4] or [L2, L3]
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 377

Configuring Pseudowire Headend: Example

Implementing Multipoint Layer 2 Services

interface Gig0/3/0/0 l2transport
interface Gig0/3/0/1 l2transport
l2vpn xconnect group pwhe p2p pwhe_spe_1 interface Gig0/3/0/0 neighbor 111.111.111.111 pw-id 1 p2p pwhe_spe_2 interface Gig0/3/0/1 neighbor 112.112.112.112 pw-id 2
P Router Configuration We need static routes on P routers for rx pindown on S-PE, i.e. to force PWs destined to a specific address to be transported over certain links. P1
router static address-family ipv4 unicast 111.111.111.111 Gig0/1/0/0 112.112.112.112 Gig0/2/0/0
P2
router static address-family ipv4 unicast 111.111.111.111 Gig0/2/0/1 112.112.112.112 Gig0/1/0/1
S-PE Configuration At S-PE we have 2 PW-HE interfaces (1 for each PW) and each uses a different interface list for tx pin-down (has to match the static config at P routers for rx pin-down). Each PW-HE has its PW going to A-PE (pw-id has to match what's at A-PE).
generic-interface-list il1 interface gig0/1/0/0 interface gig0/2/0/0
generic-interface-list il2 interface gig0/1/0/1 interface gig0/2/0/1
interface pw-ether1 ipv4 address 10.1.1.2/24 attach generic-interface-list il1
interface pw-ether2 ipv4 address 10.1.2.2/24 attach generic-interface-list il2
l2vpn xconnect group pwhe p2p pwhe1 interface pw-ether1
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 378

Implementing Multipoint Layer 2 Services

Configuring L2VPN over GRE: Example

neighbor 100.100.100.100 pw-id 1 p2p pwhe2
interface pw-ether2 neighbor 100.100.100.100 pw-id 2

Configuring L2VPN over GRE: Example
Configure the PW core interfaces under IGP and ensure that the loopback is reachable. Configure the tunnel source such that the tunnel is the current loopback as well as destination of the peer PE loopback. Now, configure the GRE tunnel in IGP (OSPF or ISIS), and also under mpls ldp and ensure that the LDP neighbor is established between the PEs for the PW. This ensures that the PW is Up through the tunnel.
Configuration on PE1:
router ospf 1 router-id 1.1.1.1
area 0 interface Loopback0 interface TenGigE0/0/0/1
router ospf 2 router-id 200.200.200.200 area 0 interface Loopback1000 interface tunnel-ip1
mpls ldp router-id 200.200.200.200 interface tunnel-ip1
Configuration on PE2:
router ospf 1 router-id 3.3.3.3 area 0 interface Loopback0
interface TenGigE0/2/0/3 router ospf 2
router-id 201.201.201.201 area 0
interface Loopback1000 interface tunnel-ip1
! mpls ldp
router-id 201.201.201.201 interface tunnel-ip1
Configuring a GRE Tunnel as the Preferred Path for Pseudowire: Example
This example shows how to configure a GRE tunnel as the preferred path for a pseudowire.
l2vpn pw-class gre encapsulation mpls preferred-path interface tunnel-ip 1 fallback disable
Configuring a GRE Tunnel as Preferred Path for Pseudowire
Perform this task to configure a GRE tunnel as the preferred path for pseudowires.

SUMMARY STEPS

1. configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 379

Configuring a GRE Tunnel as Preferred Path for Pseudowire

Implementing Multipoint Layer 2 Services

DETAILED STEPS

2. l2vpn 3. pw-class { name } 4. encapsulation mpls 5. preferred-path { interface } { tunnel-ip value | tunnel-te value | tunnel-tp value } [ fallback disable
] 6. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:

RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. l2vpn Example:

RP/0/RSP0/CPU0:router(config)# l2vpn

Enters L2VPN configuration mode. pw-class { name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn)# pw-class gre

Configures the pseudowire class name. encapsulation mpls Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc)# encapsulation mpls

Configures the pseudowire encapsulation to MPLS. preferred-path { interface } { tunnel-ip value | tunnel-te value | tunnel-tp value } [ fallback disable ] Example:

RP/0/RSP0/CPU0:router(config-l2vpn-pwc-encapmpls)# preferred-path interface tunnel-ip 1 fallback disable

Configures preferred path tunnel settings. If the fallback disable configuration is used and once the TE/TP tunnel is configured as the preferred path goes down, the corresponding pseudowire can also go down.

Note

Ensure that fallback is supported.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 380

Implementing Multipoint Layer 2 Services

Configuring a GRE Tunnel as Preferred Path for Pseudowire

Step 6

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 381

Configuring a GRE Tunnel as Preferred Path for Pseudowire

Implementing Multipoint Layer 2 Services

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 382

7 C H A P T E R

Implementing IEEE 802.1ah Provider Backbone Bridge

This module provides conceptual and configuration information for IEEE 802.1ah Provider Backbone Bridge on Cisco ASR 9000 Series Routers. The IEEE 802.1ah standard (Ref [4]) provides a means for interconnecting multiple provider bridged networks to build a large scale end-to-end Layer 2 provider bridged network.
The Cisco ASR 9000 Series Aggregation Services Routers now supports a scenario when the provider backbone bridge is a VPLS network. You can now configure pseudowires in the PBB edge bridge domain and core bridge domain. In either type of bridge domain, the pseudowire functionality remains the same as in the native bridge domain.
Feature History for Implementing IEEE 802.1ah Provider Backbone Bridge

Release

Modification

Release 3.9.1

This feature was introduced on Cisco ASR 9000 Series Routers

Release 4.3.0

Support was added for these features: · Provider Backbone Bridge VPLS
· Multiple I-SID Registration Protocol Lite (MIRP Lite)

Release 4.3.2 Release 5.1.2
Release 6.3.2

Support was added for PBB-EVPN feature.
Support was added for MMRP for PBB VPLS Flood Optimization feature.
Support for PBB-EVPN on nV Satellite access interface bundle over ICL (Inter Chassis Link) bundle.

Note PBB EVPN is supported only on Cisco ASR 9000 2nd generation Ethernet line cards and Cisco ASR 9000 3rd generation Ethernet line cards.
PBB EVPN is not supported on Cisco ASR 9000 4th generation Ethernet line cards and Cisco ASR 9000 5th generation Ethernet line cards.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 383

Prerequisites for Implementing 802.1ah Provider Backbone Bridge

Implementing IEEE 802.1ah Provider Backbone Bridge

· Prerequisites for Implementing 802.1ah Provider Backbone Bridge, on page 384 · Information About Implementing 802.1ah Provider Backbone Bridge, on page 384 · How to Implement 802.1ah Provider Backbone Bridge, on page 398 · PBB EVPN Flow Label, on page 426 · Configuration Examples for Implementing 802.1ah Provider Backbone Bridge, on page 428 · Configuring PBB-EVPN: Example, on page 431
Prerequisites for Implementing 802.1ah Provider Backbone Bridge
This prerequisite applies to implementing 802.1ah Provider Backbone Bridge:
· You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
· You must be familiar with the multipoint bridging concepts. Refer to the Implementing Multipoint Layer 2 Services module.
Information About Implementing 802.1ah Provider Backbone Bridge
To implement 802.1ah, you must understand these concepts:
Benefits of IEEE 802.1ah standard
The benefits of IEEE 802.1ah provider backbone bridges are as follows:
· Increased service instance scalability--Enables a service provider to scale the number of services (service VLANs or service instances) in a Provider Bridged Network (PBN).
· MAC address scalability--Encapsulates the customer packet, including MAC addresses, into a new ethernet frame with new MAC addresses (the backbone bridge MAC addresses). This eliminates the need for backbone core bridges to learn all MAC addresses of every customer and also eases the load on backbone edge bridges.
· VPLS pseudowire reduction and mesh scalability--The number of pseudowires in an IP/MPLS core can be significantly reduced. This is because a single VPLS service can now transport several customer service instances thereby allowing a fewer number of pseudowires in the IP/MPLS core to transport a large number of customer services.
· Layer 2 backbone traffic engineering--Enables explicit controls for Layer 2 traffic engineering by separating service discrimination function and moving it to the I-tags thereby leaving the backbone VLAN to be available for Layer 2 traffic engineering functions.
· Point-to-point service scalability and optimization-enables point-to-point service implementation that includes multiple options for service multiplexing as well as end point discovery.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 384

Implementing IEEE 802.1ah Provider Backbone Bridge

IEEE 802.1ah Standard for Provider Backbone Bridging Overview

· Backbone flood traffic reduction--Since there are fewer MAC addresses in the core of the network, the amount of flood traffic in the core network is reduced as there are fewer MAC addresses to be relearnt when MAC tables get flushed due to topology changes.
IEEE 802.1ah Standard for Provider Backbone Bridging Overview
The IEEE 802.1ah Provider Backbone Bridge feature encapsulates or decapsulates end-user traffic on a Backbone Edge Bridge (BEB) at the edge of the Provider Backbone Bridged Network (PBBN). A Backbone Core Bridge (BCB) based network provides internal transport of the IEEE 802.1ah encapsulated frames within the PBBN. The following figure shows a typical 802.1ah PBB network.
Figure 43: IEEE 802.1ah Provider Backbone Bridge

The following figure shows a typical provider backbone network topology.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 385

Backbone Edge Bridges Figure 44: Provider Back Bone Network Topology

Implementing IEEE 802.1ah Provider Backbone Bridge

Backbone Edge Bridges
Backbone edge bridges (BEBs) can contain either an I-Component or a B-Component. The I-Component maps service VLAN identifiers (S-VIDs) to service instance identifiers (I-SIDs) and adds a provider backbone bridge (PBB) header without a backbone VLAN tag (B-Tag). The B-Component maps I-SIDs to backbone VIDs (B-VIDs) and adds a PBB header with a B-Tag. The IEEE 802.1ah standard specifies these three types of BEBs:
· The B-BEB contains the B-Component of the MAC-in-MAC bridge. It validates the I-SIDs and maps the frames onto the backbone VLAN (B-VLAN). It also switches traffic based on the B-VLANS within the core bridge.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 386

Implementing IEEE 802.1ah Provider Backbone Bridge

IB-BEB

· The I-BEB contains the I-Component of the MAC-in-MAC bridge. It performs B-MAC encapsulation and inserts the I-SIDs based on the provider VLAN tags (S-tags), customer VLAN tags (C-tags), or S-tag/C-tag pairs.
· The IB-BEB contains one or more I-Components and a single B-Component interconnected through a LAN segment.

IB-BEB

Note Only IB-BEBs are supported on Cisco ASR 9000 Series Routers. Cisco IOS XR supports IB-BEB bridge type at the Edge node.
The IB-BEB contains both the I-Component and the B-Component. The bridge selects the B-MAC and inserts the I-SID based on the provider VLAN tag (S-tag), the customer VLAN tag (C-tag), or both the S-tag and the C-tag. It validates the I-SIDs and it transmits and receives frames on the B-VLAN. The IEEE 802.1ah on Provider Backbone Bridges feature supports all services mandated by the IEEE 802.1ah standard and extends the services to provides these additional functionalities:
· S-Tagged Service: · In multiplexed environments each S-tag maps to an I-SID and may be retained or removed. · In bundled environments multiple S-tags map to the same I-SID and the S-tags must be retained.
· C-Tagged Service: · In multiplexed environments each C-tag maps to an I-SID and may be retained or removed. · In bundled environments multiple C-tags map to the same I-SID and the C-tags must be retained.
· S/C-Tagged Service: · In multiplexed environments each S-tag/C-tag pair maps to an I-SID. The S-tag or the S-tag/C-tag pair may be retained or removed. · In bundled environments multiple S-tag/C-tags pairs map to the same I-SID and the S-tag/C-tag pair must be retained.
· Port-based Service · A port-based service interface is delivered on a Customer Network Port (CNP). A port-based service interface may attach to a C-VLAN Bridge, 802.1d bridge, router or end-station. The service provided by this interface forwards all frames without an S-Tag over the backbone on a single backbone service instance. A port-based interface discards all frames with an S-Tag that have non-null VLAN IDs. This example shows how to configure a port-based service:
interface GigabitEthernet0/0/0/10.100 l2transport encapsulation untagged
--> Creates an EFP for untagged frames.
interface GigabitEthernet0/0/0/10.101 l2transport encapsulation dot1ad priority-tagged

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 387

Multiple I-SID Registration Protocol Lite

Implementing IEEE 802.1ah Provider Backbone Bridge

--> Creates an EFP for null S-tagged frames.
interface GigabitEthernet0/0/0/10.102 l2transport encapsulation dot1q priority-tagged
--> Creates an EFP for null C-tagged frames:
interface GigabitEthernet0/0/0/10.103 l2transport encapsulation dot1q any
--> Creates an EFP for C-tagged frames:
Note To configure a port-based service, all the above EFPs must be added to the same edge bridge domain.
The following figure shows the PBB bridge component topology on the Cisco ASR 9000 Series Routers.
Figure 45: PBB Bridge Component Topology on Cisco ASR 9000 Series Routers

Multiple I-SID Registration Protocol Lite
The 802.1Qbe--Multiple I-SID Registration Protocol (MIRP) standard provides the ability to flush learned MAC address registration entries held in the filtering database of an I-component on a per I-SID basis. The backbone service instance identifier (I-SID) is a field in the backbone service instance tag which identifies the backbone service instance of a frame. MIRP defines mechanisms for I-SID flushing, and has the required capabilities to handle topology changes that occur in networks attached to a provider backbone bridged
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 388

Implementing IEEE 802.1ah Provider Backbone Bridge

Multiple I-SID Registration Protocol Lite

network. A backbone edge bridge (BEB) signals to other potentially affected BEBs, the need to alter certain learned associations between customer MAC addresses and backbone MAC addresses. In the absence of MIRP, customer connections across a provider backbone network can take several minutes to restore connectivity after a topology change in an access network.
In prior releases, PBB traffic was dropped for a MAC aging cycle when bridge forwarding topology changes occurred (due to unavailable ports or spanning tree topology changes) in a PBB edge bridge domain. This resulted in severe limitations for the use of PBB bridges.
Cisco ASR 9000 Series Aggregation Services Routers now support a simplified implementation of the MIRP protocol known as the Multiple I-SID Registration Protocol Lite (MIRP-Lite). The MIRP-Lite feature enables detection of a topology change at a site. A specially defined packet is flooded to all remote edge sites of the PBB network when a site detects a topology change. At the sender site, I-SID of the I-component is placed in the I-TAG of the frame header to specify the I-SID that needs a MAC flush. At the receiver site, each PBB edge switch performs I-SID checking. If the I-SID matches one of the I-components, the MAC in the I-component is flushed.
The use of MIRP in 802.1ah networks is illustrated in the following figure.
Figure 46: MIRP in 802.1ah Networks

Device DHD1 is dual-homed to two 802.1ah backbone edge bridges (BEB1 and BEB2). Assume that initially the primary path is through BEB1. In this configuration BEB3 learns that the host behind DHD1 (with MAC address CM1) is reachable via the destination B-MAC M1. If the link between DHD1 and BEB1 fails and the host behind DHD1 remains inactive, the MAC cache tables on BEB3 still refer to the BEB1 MAC address even though the new path is now via BEB2 with B-MAC address M2. Any bridged traffic destined from the host behind DHD2 to the host behind DHD1 is wrongly encapsulated with B-MAC M1 and sent over the MAC tunnel to BEB1, where the traffic drops.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 389

Multiple I-SID Registration Protocol Lite

Implementing IEEE 802.1ah Provider Backbone Bridge

To circumvent the dropping of traffic when the link between DHD1 and BEB1 fails, BEB2 performs two tasks:
· Flushes it's own MAC address table for the service or services. · Requests the remote PE that receives the MIRP packet to clear it's own MAC table. The MIRP message
is transparent to the backbone core bridges (BCBs). The MIRP message is processed on a BEB because only BCBs learn and forward, based on B-MAC addresses and they are transparent to C-MAC addresses.
Note MIRP triggers C-MAC address flushing for both native 802.1ah and PBB over VPLS.
The following figure shows the operation of the MIRP.
Figure 47: MIRP Operation

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 390

Implementing IEEE 802.1ah Provider Backbone Bridge

Provider Backbone Bridging Ethernet VPN

Provider Backbone Bridging Ethernet VPN
The Provider Backbone Bridging Ethernet VPN (PBB-EVPN) is a next generation L2VPN solution that addresses resiliency and forwarding policy requirements. This feature also introduces advanced multihoming options, support for multipath and user-defined BGP policy capabilities to Ethernet L2VPNs. PBB-EVPN uses BGP for MAC address distribution and learning over the packet-switched network (PSN). PBB-EVPN is a combination of the capabilities of PBB and Ethernet VPN that addresses these Carrier Ethernet and data center interconnect requirements:
· All-active Redundancy and Load Balancing · Simplified Provisioning and Operation · Optimal Forwarding · Fast Convergence · MAC Address Scalability

Ethernet VPN

Ethernet Virtual Private Network (EVPN) is a solution for secure and private connectivity of multiple sites within an organization. The EVPN service extends the benefits of Ethernet technology to the Wide Area Network (WAN). This service is delivered over MPLS networks.
EVPN allows you to manage routing over a virtual private network, providing complete control and security. EVPN introduces a solution for multipoint L2VPN services, with advanced multi-homing capabilities, using BGP for distributing customer or client MAC address reachability information over the MPLS/IP network. EVPN advertises each customer MAC address as BGP routes, therefore allowing BGP policy control over MAC addresses.
Figure 48: MAC Distribution in BGP (EVPN)

In the above figure, the provider edge (PE) routers run multi-protocol BGP to advertise and learn MAC addresses over MPLS. The customer MAC addresses are learnt in the data plane over attachment circuits
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 391

PBB-EVPN Overview

Implementing IEEE 802.1ah Provider Backbone Bridge

(links connecting customer devices to the PEs). Then, the MAC addresses are distributed over MPLS using BGP with an MPLS label identifying the EVPN instance.
PBB-EVPN Overview
The PBB-EVPN solution combines Ethernet Provider Backbone Bridging (PBB - IEEE 802.1ah) with Ethernet VPN where, PEs perform as PBB Backbone Edge Bridge (BEB). The PEs receive 802.1Q Ethernet frames from their attachment circuits. These frames are encapsulated in the PBB header and forwarded over the IP/MPLS core. On the egress side (EVPN PE), the PBB header is removed after MPLS disposition, and the original 802.1Q Ethernet frame is delivered to the customer equipment.
Figure 49: PBB-EVPN Network

The PE routers perform these functions: · Learns customer or client MAC addresses (C-MACs) over the attachment circuits in the data-plane, per normal bridge operation. · Learns remote C-MAC to backbone MAC (B-MAC) bindings in the data-plane from traffic ingress from the core. · Advertises local B-MAC address reachability information in BGP to all other PE nodes in the same set of service instances. Note that every PE has a set of local B-MAC addresses that uniquely identify the device. · Builds a forwarding table from the received remote BGP advertisements, associating remote B-MAC addresses with remote PE IP addresses.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 392

Implementing IEEE 802.1ah Provider Backbone Bridge

PBB-EVPN Overview

PBB-EVPN scales well for large network with millions of customer MAC addresses by constraining customer MAC address in access. Only B-MAC addresses are advertised in core, making the number of BGP routes exchanged manageable.
For PBB EVPN, the B-MAC flush is per B-MAC per Ethernet VPN Instance (EVI).

EVPN Instance E-VPN Instance (EVI) identifies a VPN in the MPLS/IP network. There can only be one EVI per core bridge.

Ethernet Segment Ethernet Segment is a site connected to one or more PEs. The Ethernet Segment could be a single device (i.e. Customer Edge (CE)) or an entire network, such as:
· Single-Homed Device (SHD) · Multi-Homed Device (MHD) using Ethernet Multi-chassis Link Aggregation Group · Single-Homed Network (SHN) · Multi-Homed Network (MHN)

The Ethernet segment is uniquely identified by a 10-byte global Ethernet Segment Identifier (ESI).
The ESI format is RFC 7432 complaint. The ESI value depends on the ESI type. Currently, only ESI type 0 and 1 are supported. The following table shows the ESI format based on the ESI type.

ESI Type

Explanation

ESI Format

Type 0

Arbitrary ESI value based on configuration

1 octet ESI Type 0x00 9 octet ESI value

Type 1

Auto-generated ESI value based on 1 octet ESI Type 0x01

LACP

6 octet CE LACP MAC address

2 octet CE LACP Port Key

1 octet value of 0x00

The following figure illustrates an example of Ethernet segment and ESI.
Figure 50: Ethernet Segment

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 393

PBB-EVPN Overview

Implementing IEEE 802.1ah Provider Backbone Bridge

PBB-EVPN BGP Routes PBB-EVPN defines a single new BGP network layer reachability information (NLRI) used to advertise different types of routes along with new attributes.
Designated Forwarder Election The Designated Forwarder (DF) election mechanism is used to determine a designated forwarder in dual-homed or multi-homed devices or networks. The election is performed on a per service basis. The DF filtering function for MHN differs from that for MHD in:
· Directionality--DF filtering for MHN is applied for traffic both ingress and egress on the access-facing Ethernet interfaces; whereas, DF filtering for MHD is applied only to traffic that egress the access-facing interfaces.
· Traffic Type--DF filtering for MHN impacts both unicast as well as flooded multi-destination traffic; whereas, DF filtering for MHD only applies to flooded multi-destination traffic.
The following figure shows the various DF filtering rules for MHN and MHD.
Figure 51: DF Filtering Comparison for MHN/MHD

Access Auto-Sensing PEs connected to a multi-homed or dual-homed device may support active-active per flow also known as flow-based load balancing. PE services CEs via physical or bundle ports. An Ethernet segment identifier is assigned per port. This value is calculated from the connected CE using information such as, CE system priority, CE system ID and CE port key. The PE must auto-detect the access topology to determine the type of load balancing. The load balancing could be active-active per flow load-balancing, per service load-balancing or simply no load balancing.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 394

Implementing IEEE 802.1ah Provider Backbone Bridge

MMRP for PBB VPLS Flood Optimization

MMRP for PBB VPLS Flood Optimization
In a PBB network, traffic (unknown unicast, multicast, or broadcast) is flooded to all the PE devices in the network even if the devices do not host the service instance to which the traffic is destined.
The Multiple MAC Registration Protocol (MMRP) for PBB VPLS Flood Optimization feature optimizes the impact of the flooded traffic on PE devices by sending the traffic only to the PE devices interested in a particular service instance.
In a PBB over VPLS network, traffic between the PE devices flows over MPLS pseudo-wires that connect all the PE devices in a full mesh network topology.
Provider Back Bone Network Topology figure illustrates a typical 802.1ah PBB network.
For every I-SID (Service Instance VLAN ID) there is a corresponding multicast MAC address called the group B-MAC address, which is derived based on the I-SID. The group B-MAC address is used as the destination address in the outer MAC header when propagating flooded traffic across the provider backbone.
The MMRP is used by the PE devices to inform each other about the set of group B-MAC addresses corresponding to the I-SIDs of the service instances they host. This enables each device to determine which set of pseudo-wires flooded traffic should be forwarded on, that is, those pseudo-wires on which an MMRP registration has been received for the group B-MAC address corresponding to the I-SID.

Note The PBB-VPLS flood optimization feature is enabled only on PBB-VPLS network and not on PBB over Ethernet network.

Configuring PBB-VPLS Flood Optimization
To configure the PBB-VPLS flood optimization feature, do the following:
Enabling PBB-VPLS Flood Optimization on PBB Core Bridge
Perform this task to enable PBB-VPLS flood optimization on PBB core bridge.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. pbb core 6. mmrp-flood-optimization 7. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 395

Enabling PBB-VPLS Flood Optimization on PBB Core Bridge

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 2 Step 3 Step 4 Step 5
Step 6 Step 7

RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-core
Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists. pbb core Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb core
Configures the bridge domain as PBB core and enters the PBB core configuration submode. This command also creates an internal port known as Customer bridge port (CBP). All the interfaces (bridge ports) under this bridge domain are treated as the provider network ports (PNP). mmrp-flood-optimization Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-core)# mmrp-flood-optimization
Enables the flood optimization for PBB over VPLS feature on the core bridge. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 396

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Generic MRP Protocol Parameters

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Generic MRP Protocol Parameters
Perform this task to configure the generic MRP protocol parameters for PBB-VPLS flood optimization.

SUMMARY STEPS

1. configure 2. mmrp-flood-optimization 3. (Optional) periodic transmit interval seconds 4. (Optional) join-time milliseconds 5. (Optional) leaveall-time seconds 6. (Optional) leave-time seconds 7. (Optional) flood-time seconds 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. mmrp-flood-optimization Example:
RP/0/RSP0/CPU0:router(config)# mmrp-flood-optimization
Enables the flood optimization for PBB over VPLS feature on the core bridge. (Optional) periodic transmit interval seconds Example:
RP/0/RSP0/CPU0:router(config-mmrp-flood-opt)# periodic transmit interval 3
Enables periodic Multiple MAC Registration Protocol Data Units (MMRPDUs). (Optional) join-time milliseconds Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 397

How to Implement 802.1ah Provider Backbone Bridge

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config-mmrp-flood-opt)# join time interval 300
Sets the join time for all active ports. (Optional) leaveall-time seconds Example:
RP/0/RSP0/CPU0:router(config-mmrp-flood-opt)# leaveall-time 10
Sets the leave all time for all active ports. (Optional) leave-time seconds Example:
RP/0/RSP0/CPU0:router(config-mmrp-flood-opt)# leave-time 40
Sets the leave time for all active ports. (Optional) flood-time seconds Example:
RP/0/RSP0/CPU0:router(config-mmrp-flood-opt)# flood-time 1000
Enables flooding of traffic to the entire core bridge when the PBB-VPLS Flood Optimization feature is enabled on the core bridge. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

How to Implement 802.1ah Provider Backbone Bridge
This section contains these procedures:
Restrictions for Implementing 802.1ah Provider Backbone Bridge
The following features are not supported: · Cross-connect based point to point services over MAC-in-MAC · One Edge bridge to multiple Core bridge mapping · I type backbone edge bridge (I-BEB) and B type backbone edge bridge (B-BEB)
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 398

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Ethernet Flow Points on CNP and PNP Ports

· IEEE 802.1ah over VPLS · Multiple source B-MAC addresses per chassis · Direct encapsulation of 802.1ah formatted packets natively over an MPLS LSP encapsulation · To use the sub-interface configurations encapsulation dot1ad (or encapsulation dot1q) and
encapsulation dot1ad second-dot1q any (or encapsulation dot1q second-dot1q any) together on the same physical interface, use the exact keyword as shown below. Else, it results in traffic loss.
Router(config)# interface hundredGigE 0/0/0/0.0 Router(config-subif)# encapsulation dot1ad 200 exact
Router(config)# interface hundredGigE 0/0/0/0.1 Router(config-subif)# encapsulation dot1ad 200 dot1q any Router(config-subif)# commit

The following additional restriction applies when implementing Provider Backbone Bridge Ethernet VPN (PBB-EVPN):
· The Provider Edge and Route Reflector routers must run software supporting the same IETF draft version of L2VPN Ethernet VPN (EVPN). Due to the differences in BGP Network Layer Reachability Information (NLRI) encoding, later draft versions are not backward compatible with earlier ones. The following table shows the supported draft for various Cisco IOS XR software releases.

Cisco IOS XR software release
5.1.1 and older releases 5.2.0 5.1.2 and later releases except 5.2.0

Supported L2VPN EVPN draft version

draft-ietf-l2vpn-evpn-04

draft-ietf-l2vpn-evpn-06



--



--

--



Configuring Ethernet Flow Points on CNP and PNP Ports
Perform this task to configure an Ethernet flow point (EFP) on the customer network port (CNP) or the provider network port (PNP).

SUMMARY STEPS

1. configure 2. interface type interface-path-id.subinterface l2transport 3. encapsulation dot1q vlan-id or encapsulation dot1ad vlan-id or encapsulation dot1ad vlan-id dot1q
vlan-id 4. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 399

Configuring PBB Edge Bridge Domain and Service Instance ID

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 2 Step 3 Step 4

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface type interface-path-id.subinterface l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet0/0/0/10.100 l2transport
Configures an interface for L2 switching. encapsulation dot1q vlan-id or encapsulation dot1ad vlan-id or encapsulation dot1ad vlan-id dot1q vlan-id Example:
RP/0/RSP0/CPU0:router(config-subif)# encapsulation dot1q 100 or encapsulation dot1ad 100 or encapsulation dot1ad 100 dot1q 101
Assigns the matching VLAN ID and Ethertype to the interface Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PBB Edge Bridge Domain and Service Instance ID
Perform this task to configure a PBB edge domain and the service ID.

Note To configure the PBB feature, login with admin user privileges and issue the hw-module profile feature l2 command to select an ASR 9000 Ethernet line card ucode version that supports the PBB feature. The PBB feature will not be supported on the ASR 9000 Ethernet line card unless you make this configuration. For more information on configuring the feature profile, refer to the Cisco ASR 9000 Series Aggregation Services Router System Management Configuration Guide.

SUMMARY STEPS

1. configure 2. l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 400

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring PBB Edge Bridge Domain and Service Instance ID

DETAILED STEPS

3. bridge group bridge-group-name 4. bridge-domain domain-name 5. interface type interface-path-id.subinterface 6. pbb edge i-sid service-id core-bridge core-bridge-name 7. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-edge
Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain, if it already exists. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20
Assigns the matching VLAN ID and Ethertype to the interface. This EFP is considered as the CNP for the Edge bridge. pbb edge i-sid service-id core-bridge core-bridge-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 401

Configuring the PBB Core Bridge Domain

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 7

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb edge i-sid 1000 core-bridge pbb-core
Configures the bridge domain as PBB edge with the service identifier and the assigned core bridge domain, and enters the PBB edge configuration submode. This command also creates the Virtual instance port (VIP) that associates the PBB Edge bridge domain to the specified Core bridge domain. All the interfaces (bridge ports) under this bridge domain are treated as the customer network ports (CNP).
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring the PBB Core Bridge Domain
Perform this task to configure the PBB core bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group group-name 4. bridge-domain domain-name 5. interface type interface-path-id.subinterface 6. pbb core 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 402

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Backbone VLAN Tag under the PBB Core Bridge Domain

Step 3 Step 4 Step 5 Step 6 Step 7

Enters L2VPN configuration mode. bridge group group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group, if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-core
Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20
Assigns the matching VLAN ID and Ethertype to the interface. pbb core Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb core
Configures the bridge domain as PBB core and enters the PBB core configuration submode. This command also creates an internal port known as Customer bridge port (CBP). All the interfaces (bridge ports) under this bridge domain are treated as the provider network ports (PNP). Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Backbone VLAN Tag under the PBB Core Bridge Domain
Perform this task to configure the backbone VLAN tag under the PBB core bridge domain.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 403

Configuring Backbone VLAN Tag under the PBB Core Bridge Domain

Implementing IEEE 802.1ah Provider Backbone Bridge

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. interface type interface-path-id.subinterface 6. interface type interface-path-id. subinterface 7. pbb core 8. rewrite ingress tag push dot1ad vlan-id symmetric 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-core
Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists. interface type interface-path-id.subinterface Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 404

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Backbone Source MAC Address

Step 6 Step 7 Step 8 Step 9

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20

Assigns the matching VLAN ID and Ethertype to the interface. interface type interface-path-id. subinterface Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# interface GigabitEthernet0/5/0/1.15

Adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. The interface now becomes an attachment circuit on this bridge domain.
pbb core Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb core

Configures the bridge domain as PBB core and enters the PBB core configuration submode. This command also creates an internal port known as Customer bridge port (CBP). All the interfaces (bridge ports) under this bridge domain are treated as the provider network ports (PNP). rewrite ingress tag push dot1ad vlan-id symmetric Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-core)# end

Configures the backbone VLAN tag in the Mac-in-MAC frame and also, sets the tag rewriting policy.

Note

All PNPs in a Core bridge domain use the same backbone VLAN.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Backbone Source MAC Address
The backbone source MAC address (B-SA) is a unique address for a backbone network. Each Cisco ASR 9000 Series Router has one backbone source MAC address. If B-SA is not configured, then the largest MAC in the EEPROM is used as the PBB B-SA.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 405

Configuring Backbone Source MAC Address

Implementing IEEE 802.1ah Provider Backbone Bridge

Note The backbone source MAC address configuration is optional. If you do not configure the backbone source MAC address, the Cisco ASR 9000 Series Routers allocate a default backbone source MAC address from the chassis backplane MAC pool.
Perform this task to configure the backbone source MAC address.

SUMMARY STEPS

1. configure 2. l2vpn 3. pbb 4. backbone-source-address mac-address 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. pbb Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# pbb
Enters PBB configuration mode. backbone-source-address mac-address Example:
RP/0/RSP0/CPU0:router(config-l2vpn-pbb)# backbone-source-address 0045.1200.04
Configures the backbone source MAC address. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 406

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Unknown Unicast Backbone MAC under PBB Edge Bridge Domain

commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Unknown Unicast Backbone MAC under PBB Edge Bridge Domain
Perform this task to configure the unknown unicast backbone MAC under the PBB edge bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. interface type interface-path-id.subinterface 6. pbb edge i-sid service-id core-bridge core-bridge-name 7. unknown-unicast-bmac mac-address 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RRP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 407

Configuring Unknown Unicast Backbone MAC under PBB Edge Bridge Domain

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 4 Step 5 Step 6
Step 7 Step 8

bridge-domain domain-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-edge

Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists.
interface type interface-path-id.subinterface Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20

Assigns the matching VLAN ID and Ethertype to the interface. pbb edge i-sid service-id core-bridge core-bridge-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb edge i-sid 1000 core-bridge pbb-core

Configures the bridge domain as PBB edge with the service identifier and the assigned core bridge domain and enters the PBB edge configuration submode. This command also creates the Virtual instance port (VIP) that associates the PBB Edge bridge domain to the specified Core bridge domain. All the interfaces (bridge ports) under this bridge domain are treated as the customer network ports (CNP).
unknown-unicast-bmac mac-address Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-edge)# unknown-unicast-bmac 1.1.1

Configures unknown unicast backbone MAC address.

Note

On Trident line cards, once you configure the unknown unicast BMAC, the BMAC is used to forward

customer traffic with multicast, broadcast and unknown unicast destination MAC address.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 408

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Static MAC addresses under PBB Edge Bridge Domain

Configuring Static MAC addresses under PBB Edge Bridge Domain
Perform this task to configure the static MAC addresses under the PBB edge bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. interface type interface-path-id.subinterface 6. interface type interface-path-id.subinterface 7. pbb edge i-sid service-id core-bridge core-bridge-name 8. static-mac-address cda-mac-address bmac bda-mac-address 9. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)#bridge group pbb
Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain pbb-edge
Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 409

Configuring Static MAC addresses under PBB Edge Bridge Domain

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6 Step 7
Step 8

interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface GigabitEthernet0/5/0/0.20
Assigns the matching VLAN ID and Ethertype to the interface. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#interface GigabitEthernet0/5/0/1.15
Adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. The interface now becomes an attachment circuit on this bridge domain. pbb edge i-sid service-id core-bridge core-bridge-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#pbb edge i-sid 1000 core-bridge pbb-core
Configures the bridge domain as PBB edge with the service identifier and the assigned core bridge domain and enters the PBB edge configuration submode. This command also creates the Virtual instance port (VIP) that associates the PBB Edge bridge domain to the specified Core bridge domain. All the interfaces (bridge ports) under this bridge domain are treated as the customer network ports (CNP). static-mac-address cda-mac-address bmac bda-mac-address Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-edge)#static-mac-address 0033.3333.3333 bmac 0044.4444.4444

Step 9

Configures the static CMAC to BMAC mapping under the PBB Edge submode.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 410

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring PBB VPLS

Configuring PBB VPLS
Perform these tasks to configure PBB VPLS:
Configuring Access Pseudowire in I-Component
Perform this task to configure the static MAC addresses under the PBB edge bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. mac withdraw state-down 6. exit 7. interface type interface-path-id.subinterface 8. interface type interface-path-id.subinterface 9. neighbor { A.B.C.D } pw-id value 10. exit 11. pbb edge i-sid service-id core-bridge core-bridge-name 12. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group pbb
Enters bridge group configuration mode. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains. bridge-domain domain-name Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 411

Configuring Access Pseudowire in I-Component

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6 Step 7 Step 8 Step 9
Step 10

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain pbb-edge

Enters bridge domain configuration mode. This command creates a new bridge domain or modifies the existing bridge domain if it already exists.
mac withdraw state-down Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# mac withdraw state-down

(Optional) Enables MAC withdrawal. exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-mac)# exit

Exits the current configuration mode. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/5/0/0.20

Assigns the matching VLAN ID and Ethertype to the interface. interface type interface-path-id.subinterface Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# interface GigabitEthernet0/5/0/1.15

Adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. The interface now becomes an attachment circuit on this bridge domain.
neighbor { A.B.C.D } pw-id value Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#

Adds an access pseudowire port to a bridge domain.

· Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix.

· Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.

exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)# exit

Exits the current configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 412

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Core Pseudowire in B-Component

Step 11 Step 12

pbb edge i-sid service-id core-bridge core-bridge-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb edge i-sid 1000 core-bridge pbb-core
Configures the bridge domain as PBB edge with the service identifier and the assigned core bridge domain and enters the PBB edge configuration submode. All the interfaces (bridge ports) under this bridge domain are treated as the customer network ports (CNP).
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Core Pseudowire in B-Component
Perform this task to configure the static MAC addresses under the PBB edge bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain domain-name 5. vfi { vfi-name } 6. neighbor { A.B.C.D } { pw-id value } 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 413

Configuring Core Pseudowire in B-Component

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 3 Step 4 Step 5 Step 6
Step 7

Enters L2VPN configuration mode. bridge group bridge-group-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn)#bridge group pbb

Enters configuration mode for the named bridge group. This command creates a new bridge group or modifies the existing bridge group if it already exists. A bridge group organizes bridge domains.
bridge-domain domain-name Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain pbb-core

Enters configuration mode for the named bridge domain. This command creates a new bridge domain or modifies the existing bridge domain if it already exists.
vfi { vfi-name } Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi PBB-core-vfi

Configures the virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode.
· Use the vfi-name argument to configure the name of the specified virtual forwarding interface.
neighbor { A.B.C.D } { pw-id value } Example:

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 10.1.1.2 pw-id 1000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pw)#

Adds an access pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI).

· Use the A.B.C.D argument to specify the IP address of the cross-connect peer.

Note

A.B.C.D can be a recursive or non-recursive prefix.

· Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 414

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring PBB-EVPN

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PBB-EVPN
This section provides information on:
Configuring PBB Core Bridge Domains
Perform this task to create the PBB Core bridge domain and assign it's corresponding EVPN EVI ID.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group group_name 4. bridge-domain bridge_domain_name 5. pbb core 6. evpn evi evi_id 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters L2VPN configuration mode. bridge group group_name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group group1
Enters bridge group configuration mode. This command creates a new bridge group. A bridge group organizes bridge domains. bridge-domain bridge_domain_name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 415

Configuring PBB Edge Bridge Domains

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6 Step 7

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain sample-pbb-core#
Enters bridge group domain configuration mode. This command creates a new bridge domain. pbb core Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# pbb core
Configures the bridge domain as PBB core and enters the PBB core configuration submode. This command also creates an internal port known as Customer bridge port (CBP). All the interfaces (bridge ports) under this bridge domain are treated as the provider network ports (PNP). evpn evi evi_id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-core)# evpn evi 100
Enters EVPN configuration mode and configures the Ethernet VPN ID. The EVI ID range is from 1 to 65534. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring PBB Edge Bridge Domains
As a pre-requisite, a PBB-EVPN provider edge (PE) must be configured with PBB Edge Bridge Domains which in one side are associated to ethernet flow points matching traffic from access interfaces and on the other side are linked to PBB Core Bridge Domains for traffic forwarding through the core.
For more information on configuring Edge Bridge Domains, see Configuring PBB Edge Bridge Domain and Service Instance ID.
Configuring EVPN Ethernet Segment
Explicit configuration of Ethernet Segment parameters such as ESI and service carving behaviors (manual or dynamic) is required only for Dual Homed scenarios with Active/Active per Service load-balancing.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 416

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring EVPN Ethernet Segment

Note By default, Dual Homed scenarios with Active/Active per Flow load-balancing auto-sense ESI values from CE's LACP information.

Note PBB-EVPN configuration allows to create only 24 ICCP-groups. Perform this task to configure the EVPN Ethernet segment.

SUMMARY STEPS

1. configure 2. evpn 3. interface type interface-path-id 4. ethernet-segment 5. backbone-source-mac mac_address 6. force single-homed 7. identifier type esi-type esi-identifier 8. bgp route-target ipv4/v6-address 9. load-balancing-mode per-service 10. service-carving manual primary {isid} secondary {isid} 11. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface gigabitEthernet 0/1/0/4

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 417

Configuring EVPN Ethernet Segment

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10

Enters the physical port interface or the bundle interface configuration mode. ethernet-segment Example:

RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment

Enters the EVPN ethernet-segment configuration mode. backbone-source-mac mac_address Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# backbone-source-mac 0045.1200.04

Configures the backbone source MAC address. force single-homed Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# force single-homed

Specifies forced attributes for this Ethernet Segment. identifier type esi-type esi-identifier Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# identifier type 0 ce.01.ce.01.ce.01.ce.01.01

Configures the Ethernet segment identifier (ESI) of an interface. bgp route-target ipv4/v6-address Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# bgp route-target ce01.ce01.ce01

Configures the BGP Import Route-Target for the Ethernet-Segment.

Note

This command configuration is mandatory for ESI type 0.

load-balancing-mode per-service Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# load-balancing-mode per-service

Specifies the load balancing mode. service-carving manual primary {isid} secondary {isid} Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 418

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring BGP Route Target

Step 11

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# service-carving manual primary 100 secondary 200
Specifies a list of service identifiers (isid) as active and standby services. The isid range is from 256 to 16777216.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring BGP Route Target
By default, these parameters are auto-derived from the PE's configuration: · Route Distinguisher (RD) for global Ethernet Segment table
Default: Auto-generated RD based on loopback IP address · EVI's BGP Route Distinguisher (RD)
Default: Auto-generated RD based on loopback IP address · EVI's BGP Route Target. Default: Auto-generated RT based on EVI ID
Perform this task to overwrite the auto-generated BGP RD/RT values.

SUMMARY STEPS

1. configure 2. evpn 3. bgp 4. rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 5. exit 6. evpn 7. evi evi_id 8. bgp 9. route-target [ import | export ] { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn
} 10. rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 11. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 419

Configuring BGP Route Target

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode. bgp Example:
RP/0/RSP0/CPU0:router(config-evpn)# bgp
Enters EVPN BGP configuration mode and configures static BGP settings for the Ethernet Segment ES:GLOBAL EVI, which is used for handling ES routes. rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-bgp)# rd 200:50
Configures the route distinguisher. exit Example:
RP/0/RSP0/CPU0:router(config-evpn-bgp)# exit
Returns to the global configuration mode. evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode. evi evi_id Example:
RP/0/RSP0/CPU0:router(config-evpn)# evi 100
Configures Ethernet VPN ID. The EVI ID range is from 1 to 65534.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 420

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring Global EVPN Timers

Step 8 Step 9 Step 10 Step 11

bgp Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp
Enters the BGP configuration mode for the specific EVI. route-target [ import | export ] { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target 10:20
Creates a route-target extended community. · The import keyword imports routing information from the target VPN extended community. · The export keyword exports routing information to the target VPN extended community.
rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# rd 25:30
Configures the route distinguisher. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Global EVPN Timers
Perform this task to configure global EVPN timers.

SUMMARY STEPS

1. configure 2. evpn 3. timers [flushagain | peering | programming | recovery] 4. Use the commit or end command.

DETAILED STEPS

Step 1 configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 421

Configuring Global EVPN Timers

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 2 Step 3
Step 4

Example:

RP/0/RSP0/CPU0:router# configure

Enters the Global Configuration mode. evpn Example:

RP/0/RSP0/CPU0:router evpn

Enters EVPN configuration mode. timers [flushagain | peering | programming | recovery] Example:

RP/0/RSP0/CPU0:router(config-evpn)# timers flushagain 40

Configures global EVPN timers. · Flush-again timer (for AApS only): When a MAC flush is sent, usually at the end of the programming timer expiration, a flush-again timer is started for the flush-again timer value. When it expires, another MAC flush message (MVRP or STP-TCN) is sent to the CE. This timer can be configured per segment-interface. Range: 0 to 120 seconds, 0 means disabled Default: 60 seconds
· Peering timer: Once all conditions are met to advertise to BGP, the PE waits for the peering timer value before advertising its RT, ESI and, Local MAC if it is Single-Home. Range: 0 to 300 seconds, 0 means disabled Default: 45 seconds
· Programming timer: Indicated time required by the HW to apply the carving results. At the end of the programming timer expiration, the next Ethernet Segment route object will be processed. Range: 0 to 100000 microseconds Default: 1500 microseconds
· Recovery timer (for AApS only): Once the interface is up, the PE waits for the recovery timer value in order to allow the CE running STP protocol to converge. This timer can be configured per segment-interface. Range: 20 to 3600 seconds Default: 20 seconds

Note

Changing timers is only useful for scale configurations.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 422

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring EVPN Timers Per Ethernet Segment and CE flushing mechanism

· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring EVPN Timers Per Ethernet Segment and CE flushing mechanism
Perform this task to configure per Ethernet segment timers.

SUMMARY STEPS

1. configure 2. evpn 3. interface type interface-path-id 4. ethernet-segment 5. mac-flush mvrp 6. timers [flushagain | recovery] 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface gigabitEthernet 0/1/0/4
Enters the physical port interface or the bundle interface configuration mode. ethernet-segment Example:
RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment
Enters the EVPN ethernet-segment configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 423

Configuring Multichassis Link Aggregation

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6
Step 7

mac-flush mvrp Example:
RP/0/RSP0/CPU0:router(config-evpn-ac)#

Specifies MAC flush mode for this Ethernet Segment.
timers [flushagain | recovery] Example:
RP/0/RSP0/CPU0:router(config-evpn-ac)# timers flushagain 40
Configures per Ethernet segment timers. · Flush-again timer (for AApS only): When a MAC flush is sent, usually at the end of the programming timer expiration, a flush-again timer is started for the flush-again timer value. When it expires, another MAC flush message (MVRP or STP-TCN) is sent to the CE. This timer can be configured per segment-interface. Range: 0 to 120 seconds, 0 means disabled Default: 60 seconds
· Recovery timer (for AApS only): Once the interface is up, the PE waits for the recovery timer value in order to allow the CE running STP protocol to converge. This timer can be configured per segment-interface. Range: 20 to 3600 seconds Default: 20 seconds

Note

Changing timers is only useful for scale configurations.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Multichassis Link Aggregation
Multichassis Link Aggregation (MCLAG) is used in scenarios involving Multi Homed Devices. You must create an ICCP redundancy group in order to specify relevant MLACP parameters, such as, mlacp system mac, mlacp system priority, mlacp node id and backbone interfaces.
Note Even though the redundancy group is created under the redundancy-iccp-group sub-mode, the solution does not rely on an actual ICCP session between PEs connected to the same site. The mode singleton command has been introduced to alert ICCP module.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 424

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring BGP Routing Process

For more information on configuring MCLAG, refer to the Configuring Link Bundling on the Cisco ASR 9000 Series Router module in the Cisco ASR 9000 Series Aggregation Services Router Interface and Hardware Component Configuration Guide.
Configuring BGP Routing Process
A prerequisite of PBB-EVPN involves enabling the new EVPN address family under the BGP routing process and under BGP neighbor submode. For more information on BGP, refer to the Implementing BGP module in the Cisco ASR 9000 Series Aggregation Services Router Routing Configuration Guide.
Perform this task to enable EVPN address family under BGP routing process and BGP neighbor submode.

SUMMARY STEPS

1. configure 2. router bgp asn_id 3. address-family l2vpn evp 4. exit 5. neighbor peer_ip_add 6. address-family l2vpn evpn 7. address-family l2vpn evpn 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. router bgp asn_id Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Specifies the BGP AS number and enters the BGP configuration mode, allowing you to configure the BGP routing process. address-family l2vpn evp Example:
RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn evpn
Enables EVPN address family under BGP routing process and enters EVPN address family configuration submode. exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 425

PBB EVPN Flow Label

Implementing IEEE 802.1ah Provider Backbone Bridge

Step 5 Step 6 Step 7 Step 8

Example:
RP/0/RSP0/CPU0:router(config-bgp)# exit
Exits the current configuration mode. neighbor peer_ip_add Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.1.1.1
Places the router in neighbor configuration mode for BGP routing and configures the neighbor IP address as a BGP peer. address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp)# exit
Enables EVPN address family under BGP routing process and enters EVPN address family configuration submode. address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-family l2vpn evpn
Enables EVPN address family under BGP routing process and enters EVPN address family configuration submode. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

PBB EVPN Flow Label
The PBB EVPN Flow Label feature enables provider (P) routers to use flow-based load balancing to forward traffic between the provider edge (PE) devices. A flow label is created based on indivisible packet flows entering an imposition PE, and it is inserted as the lower most label in the packet. P routers use flow label for load balancing to provide better traffic distribution across ECMP paths or link-bundled paths in the core. A flow is identified either by the source and destination IP address and layer 4 source and destination ports of the traffic, or the source and destination MAC address of the traffic.
Consider the following topology where PBB EVPN imposition router, PE1, adds a flow label in the EVPN traffic. The PBB EVPN disposition router, PE2, allows mixed types of traffic; some have flow label, others

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 426

Implementing IEEE 802.1ah Provider Backbone Bridge

Configure PBB EVPN Flow Label

do not. The P router use flow label to load balance the traffic between the PEs . PE2 ignores flow label in traffic, and uses one EVPN label for all unicast traffic.
Figure 52: PBB EVPN Flow Label

Configure PBB EVPN Flow Label
Perform these tasks to configure PBB EVPN Flow Label feature.
RP/0/RSP0/CPU0:router#configure RP/0/RSP0/CPU0:router(config)#l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)#bridge group PBB RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain EDGE RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#interface Bundle-Ether1.10 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)#pbb edge i-sid 1010 core-bridge CORE RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac-pbb-edge)#exit ! RP/0/RSP0/CPU0:router(config-l2vpn-bg)#bridge-domain CORE RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)#pbb-core RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-pbb-core)#evpn evi 10 ! RP/0/RSP0/CPU0:router(config)#evpn RP/0/RSP0/CPU0:router(config-evpn)#evi 10 RP/0/RSP0/CPU0:router(config-evpn-instance)#load-balancing RP/0/RSP0/CPU0:router(config-evpn-instance-lb)#flow-label static !
RP/0/RSP0/CPU0:router(config)#router bgp 20 RP/0/RSP0/CPU0:router(config-bgp)#address-family l2vpn evpn RP/0/RSP0/CPU0:router(config-bgp-af)#commit
Running Configuration This section shows PBB EVPN Flow Label running configuration.
l2vpn bridge group PBB bridge-domain EDGE interface Bundle-Ether1.10 pbb edge i-sid 1010 core-bridge CORE
bridge-domain CORE pbb-core evpn evi 10
evpn evi 10 load-balancing flow-label static
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 427

Configuration Examples for Implementing 802.1ah Provider Backbone Bridge

Implementing IEEE 802.1ah Provider Backbone Bridge

router bgp 20 address-family l2vpn evpn
Verification Verify PBB EVPN Flow Label configuration.

RP/0/RSP0/CPU0:router#show evpn evi vpn-id 10 detail

EVI

Bridge Domain

Type

---------- ---------------------------- -------

10

EVPN

PBB

Unicast Label : 24001

Multicast Label: 24002

Flow Label: Y

RD Config: none

RD Auto : (auto) 1.1.1.1:10

RT Auto : 1:10

Route Targets in Use

Type

------------------------------ -------

1:10

Import

1:10

Export

Configuration Examples for Implementing 802.1ah Provider Backbone Bridge
This section provides these configuration examples:
Configuring Ethernet Flow Points: Example
This example shows how to configure Ethernet flow points:
config interface GigabitEthernet0/0/0/10.100 l2transport
encapsulation dot1q 100 or
encapsulation dot1ad 100 or
encapsulation dot1ad 100 dot1q 101
Configuring PBB Edge Bridge Domain and Service Instance ID: Example
This example shows how to configure the PBB edge bridge domain:
config l2vpn
bridge group PBB bridge-domain PBB-EDGE interface GigabitEthernet0/0/0/38.100 ! interface GigabitEthernet0/2/0/30.150 ! pbb edge i-sid 1000 core-bridge PBB-CORE !
! !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 428

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring PBB Core Bridge Domain: Example

Configuring PBB Core Bridge Domain: Example
This example shows how to configure the PBB core bridge domain:
config l2vpn
bridge group PBB bridge-domain PBB-CORE interface G0/5/0/10.100 ! interface G0/2/0/20.200 ! pbb core !
! !
Configuring Backbone VLAN Tag: Example
This example shows how to configure the backbone VLAN tag:
config l2vpn
bridge group PBB bridge-domain PBB-CORE interface G0/5/0/10.100 ! interface G0/2/0/20.200 ! pbb core rewrite ingress tag push dot1ad 100 symmetric !
! !
Configuring Backbone Source MAC Address: Example
This example shows how to configure the backbone source MAC address:
config l2vpn
pbb backbone-source-mac 0045.1200.04
! !
Configuring Static Mapping and Unknown Unicast MAC Address under the PBB Edge Bridge Domain
This example shows how to configure static mapping and unknown unicast MAC address under the PBB edge bridge domain:
config l2vpn
bridge group PBB bridge-domain PBB-EDGE interface GigabitEthernet0/0/0/38.100 !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 429

Configuring PBB-VPLS: Example

Implementing IEEE 802.1ah Provider Backbone Bridge

interface GigabitEthernet0/2/0/30.150 ! pbb edge i-sid 1000 core-bridge PBB-CORE
static-mac-address 0033.3333.3333 bmac 0044.4444.4444 unknown-unicast-bmac 0123.8888.8888 ! ! !
Configuring PBB-VPLS: Example
This example shows you how to configure PBB VPLS.
Configuring Access Pseudowire in I-component
l2vpn bridge group PBB bridge-domain PBB-EDGE mac withdraw state-down ------ can be used with MIRP, optional interface GigabitEthernet0/0/0/38.100 interface GigabitEthernet0/2/0/30.150 neighbor 10.10.10.1 pw-id 1010 ------- configures access PW ! pbb edge i-sid 1200 core-bridge PBB-CORE !
! !
Configuring Core Pseudowire in B-component
l2vpn bridge group PBB bridge-domain PBB-CORE interface G0/5/0/10.100 ! vfi PBB-CORE-vfi neighbor 1.1.1.1 pw-id 1004 ------- configures core PW !
! !
Configuring MIRP Lite: Example
The MIRP feature is enabled by default. However, MIRP packets are sent when the attachment circuit is not functional and you have configured mac withdraw state-down as shown:
l2vpn bridge group PBB bridge-domain PBB-EDGE
mac withdraw state-down
However, if you have not configured mac withdraw state-down, then MIRP packets are sent when the attachment circuit is functional.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 430

Implementing IEEE 802.1ah Provider Backbone Bridge

Configuring PBB-EVPN: Example

Configuring PBB-EVPN: Example
This section provides examples for:
PBB-EVPN on Single Homed Device/Single Homed Network
This example covers: · PBB-EVPN service between two PEs in the same AS with single homed CEs · Dual attached CE using a bundle interface connected to PE1. · Single attached CE connected to PE2 · EVI carrying traffic from single I-SID · PBB source MAC customized via configuration on both PEs for easier tracking · BGP RD/RT auto-derived from BGP ASN and EVI ID
Figure 53: PBB-EVPN on Single Homed Device/Single Homed Network

Configuration on PE1:
interface Bundle-Ether1.1 l2transport encapsulation dot1q 1 200
l2vpn pbb backbone-source-mac 00aa.00bb.00cc bridge group gr1 bridge-domain bd1 interface Bundle-Ether1.1 pbb edge i-sid 300 core-bridge core_bd1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.1 address-family l2vpn evpn ! neighbor 1.1.1.3
remote-as 100 address-family l2vpn evpn
Configuration on PE3:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 431

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Flow load-balancing
interface GigabitEthernet 0/1/0/2.1 l2transport encapsulation dot1q 200
l2vpn pbb backbone-source-mac 00bb.00cc.00dd bridge group gr1 bridge-domain bd1 interface GigabitEthernet0/1/0/2.1 pbb edge i-sid 300 core-bridge core_b1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.3 address-family l2vpn evpn ! neighbor 1.1.1.1
remote-as 100 address-family l2vpn evpn
PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Flow load-balancing
This examples covers: · PBB-EVPN service among three PEs in the same AS with a dual homed CE (behind PE1 and PE2) and a single homed CE (behind PE3) · PE1/PE2 configured to perform active/active per Flow loadbalancing allowing ingress traffic from the same I-SID to be handled by both PEs · Example shows EVI carrying traffic from a single I-SID · PBB I-SID values must match among PEs connected to a common dual homed site · ICCP must be configured in PE1, PE2 using a new mode (mode singleton); where no ICCP neighbor is configured. Note that MLACP parameters such as system MAC/priority must be identical while MLACP node ID must be unique on PE1/PE2 · ESI must be identical on PEs connected to a common dual homed site. Example shows default behavior where ESI value is auto-derived from CE's LACP information · PBB source MAC must be the same on PEs connected to a dual homed site operating on active/active per flow load-balancing. Example shows default behavior where PBB source MAC value is auto-derived from CE's LACP information · CE must be configured with one bundle interface that includes all member interfaces connecting to both PEs · BGP RD/RT auto-derived from BGP ASN and EVI ID
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 432

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Flow load-balancing
Figure 54: PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Flow load-balancing
Configuration on PE1: redundancy
iccp group 1 mlacp node 1 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2 mode singleton
interface bundle-Ether1 mlacp iccp-group 1 interface bundle-Ether1.1 l2transport
encapsulation dot1q 10 l2vpn
bridge group gr1 bridge-domain bd1 interface bundle-ether1.1 pbb edge i-sid 600 core-bridge core_bd1 bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.1 address-family l2vpn evpn ! neighbor 1.1.1.100
remote-as 100 address-family l2vpn evpn Configuration on PE2: redundancy iccp group 1
mlacp node 2 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 433

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Dynamic Service Carving
mode singleton
interface bundle-Ether1 mlacp iccp-group 1
interface bundle-Ether1.1 l2transport encapsulation dot1q 10
l2vpn bridge group gr1 bridge-domain bd1 interface bundle-Ether1.1 pbb edge i-sid 600 core-bridge core_b1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.2 address-family l2vpn evpn ! neighbor 1.1.1.100
remote-as 100 address-family l2vpn evpn
PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Dynamic Service Carving
This example covers: · PBB-EVPN service among three PEs in the same AS with a dual homed CE (behind PE1 and PE2) and a single homed CE (behind PE3) · PE1/PE2 configured to perform active/active per service (i.e. per-ISID) loadbalancing with dynamic service carving/DF election allowing traffic from some I-SIDs to be handled by PE1 while the rest to be handled by PE2 · EVI carrying traffic from two I-SIDs · PBB I-SID values must match among PEs connected to a common dual homed site · ICCP must be configured in PE1, PE2 using a new mode (mode singleton); where no ICCP neighbor is configured. ICCP configuration required to handle core isolation failures. Example uses same MLACP system mac/priority and unique MLACP node values on PE1/PE2 · ESI must be identical between PEs for a dual homed site. User configuration must be entered to guarantee that · PBB source MAC must be different on each PE connected to a dual homed site. By default, PE uses system-wide PBB source MAC · CE must be configured with two bundle interfaces. One for each set of member interfaces leading to a different PE · BGP RD/RT auto-derived from BGP ASN and EVI ID
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 434

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Dynamic Service Carving
Figure 55: PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Dynamic Service Carving
Configuration on PE1: redundancy
iccp group 66 mlacp node 1 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2 mode singleton
interface Bundle-Ether1 mlacp iccp-group 66
interface bundle-Ether1.1 l2transport encapsulation dot1q 10
interface bundle-Ether1.20 l2transport encapsulation dot1q 20
evpn interface bundle-Ether1 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode per-service
l2vpn bridge group gr1 bridge-domain bd1 interface bundle-ether1.1 pbb edge i-sid 300 core-bridge core_bd1 bridge-domain bd20 interface bundle-ether1.20 pbb edge i-sid 320 core-bridge core_bd1 bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.1 address-family l2vpn evpn !
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 435

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving
neighbor 1.1.1.100 remote-as 100 address-family l2vpn evpn
Configuration on PE2:
redundancy iccp group 66 mlacp node 2 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2 mode singleton
interface Bundle-Ether2 mlacp iccp-group 66
interface bundle-Ether2.1 l2transport encapsulation dot1q 10
interface bundle-Ether2.20 l2transport encapsulation dot1q 20
evpn interface bundle-Ether2 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode per-service
l2vpn bridge group gr1 bridge-domain bd1 interface bundle-Ether2.1 pbb edge i-sid 300 core-bridge core_bd1
bridge-domain bd20 interface bundle-Ether2.20 pbb edge i-sid 320 core-bridge core_bd1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.2 address-family l2vpn evpn ! neighbor 1.1.1.100
remote-as 100 address-family l2vpn evpn
PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving
This example covers: · PBB-EVPN service among three PEs in the same AS with a dual homed CE (behind PE1 and PE2) and a single homed CE (behind PE3)
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 436

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving
· PE1/PE2 configured to perform active/active per service (i.e. per-ISID) load balancing with manual service carving/DF election
· PE1 configured to forward traffic from I-SID range 256-276 and backup for I-SID 277-286. PE2 configured to behave in the opposite manner of PE1
· EVI carrying traffic from two I-SIDs · PBB I-SID values must match among PEs connected to a common dual homed site · ICCP must be configured in PE1, PE2 using a new mode (mode singleton); where no ICCP neighbor is
configured. ICCP configuration required to handle core isolation failures. Example uses same MLACP system mac/priority and unique MLACP node values on PE1/PE2 · ESI must be identical between PEs for a dual homed site. User configuration must be entered to guarantee that · PBB source MAC must be different on each PE connected to a dual homed site. Example below customizes PBB source MAC value via configuration for easier tracking · CE must be configured with two bundle interfaces. One for each set of member interfaces leading to a different PE · BGP RD/RT auto-derived from BGP ASN and EVI ID
Figure 56: PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving
Configuration on PE1: redundancy
iccp group 66 mlacp node 1 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2 mode singleton
interface Bundle-Ether1 mlacp iccp-group 66
interface bundle-Ether1.1 l2transport encapsulation dot1q 10
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 437

Implementing IEEE 802.1ah Provider Backbone Bridge PBB EVPN on Dual Homed Device/Multi Homed Device with Active/Active per Service load-balancing and Manual Service Carving
interface bundle-Ether1.20 l2transport encapsulation dot1q 20
evpn interface bundle-Ether1 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode per-service service-carving manual primary isid 256-276 secondary isid 277-286
l2vpn pbb backbone-source-mac 00aa.00bb.00cc bridge group gr1 bridge-domain bd_256 interface bundle-ether1.1 pbb edge i-sid 260 core-bridge core_bd1
bridge-domain bd_286 interface bundle-ether1.20 pbb edge i-sid 280 core-bridge core_bd1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
! router bgp 100
bgp router-id 1.1.1.1 address-family l2vpn evpn ! neighbor 1.1.1.100
remote-as 100 address-family l2vpn evpn
Configuration on PE2:
redundancy iccp group 66 mlacp node 2 mlacp system mac 0aaa.0bbb.0ccc mlacp system priority 1 backbone interface GigabitEthernet0/1/0/2 mode singleton
interface Bundle-Ether2 mlacp iccp-group 66
interface bundle-Ether2.1 l2transport encapsulation dot1q 10
interface bundle-Ether2.20 l2transport encapsulation dot1q 20
evpn interface bundle-Ether2 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode per-service service-carving manual primary 277-286 secondary 256-276
l2vpn pbb
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 438

Implementing IEEE 802.1ah Provider Backbone Bridge

PBB-EVPN Multi Homed Network

backbone-source-mac 00cc.00dd.00ee bridge group gr1
bridge-domain bd1 interface bundle-Ether2.1 pbb edge i-sid 260 core-bridge core_b1
bridge-domain bd30
Interface bundle-Ether2.20 pbb edge i-sid 280 core-bridge core_b1 bridge group gr2 bridge-domain core_bd1 pbb core
evpn evi 1000 ! router bgp 100
bgp router-id 1.1.1.2 address-family l2vpn evpn ! neighbor 1.1.1.100
remote-as 100 address-family l2vpn evpn
PBB-EVPN Multi Homed Network
This example shows how to configure PBB-EVPN on a Multi Homed Network with Active-Active per service load balancing:
Figure 57: PBB-EVPN Multi Homed Network

Configuration on PE1:
interface bundle-Ether1.1 l2transport encapsulation dot1q 1
evpn interface bundle-Ether1 ethernet-segment load-balancing-mode per-service
l2vpn pbb backbone-source-mac 00aa.00bb.00cc bridge group gr1 bridge-domain bd1 interface bundle-ether1.1 pbb edge i-sid 400 core-bridge core_bd1
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 439

PBB-EVPN Multi Homed Network

Implementing IEEE 802.1ah Provider Backbone Bridge

bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000
Configuration on PE2:
interface bundle-Ether1.1 l2transport encapsulation dot1q 1
evpn interface bundle-Ether1 ethernet-segment load-balancing-mode per-service
l2vpn pbb backbone-source-mac 00cc.00dd.00ee bridge group gr1 bridge-domain bd1 interface bundle-Ether1.1 pbb edge i-sid 400 core-bridge core_bd1
bridge group gr2 bridge-domain core_bd1 pbb core evpn evi 1000

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 440

8 C H A P T E R

Implementing Multiple Spanning Tree Protocol

This module provides conceptual and configuration information for Multiple Spanning Tree Protocol on Cisco ASR 9000 Series Routers. Multiple Spanning Tree Protocol (MSTP) is a spanning-tree protocol used to prevent loops in bridge configurations. Unlike other types of STPs, MSTP can block ports selectively by VLAN.

Release Release 3.7.3
Release 3.9.1 Release 4.0.1 Release 4.1.0 Release 4.3.0 Release 5.1.0

Modification This feature was introduced on Cisco ASR 9000 Series Routers Support for MSTP over Bundles feature was added. Support for PVST+ and PVSTAG features was added. Support for MSTAG Edge Mode feature was added. Support for PVSTAG was added on Bundle interfaces. Support for PVRST was added.

· Prerequisites for Implementing Multiple Spanning Tree Protocol, on page 441 · Information About Implementing Multiple Spanning Tree Protocol, on page 442 · How to Implement Multiple Spanning Tree Protocol, on page 455 · Configuration Examples for Implementing MSTP, on page 481

Prerequisites for Implementing Multiple Spanning Tree Protocol
This prerequisite applies to implementing MSTP:
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 441

Information About Implementing Multiple Spanning Tree Protocol

Implementing Multiple Spanning Tree Protocol

Information About Implementing Multiple Spanning Tree Protocol
To implement Ethernet services access lists, you must understand these concepts:
Spanning Tree Protocol Overview
Ethernet is no longer just a link-layer technology used to interconnect network vehicles and hosts. Its low cost and wide spectrum of bandwidth capabilities coupled with a simple plug and play provisioning philosophy have transformed Ethernet into a legitimate technique for building networks, particularly in the access and aggregation regions of service provider networks.
Ethernet networks lacking a TTL field in the Layer 2 (L2) header and, encouraging or requiring multicast traffic network-wide, are susceptible to broadcast storms if loops are introduced. However, loops are a desirable property as they provide redundant paths. Spanning tree protocols (STP) are used to provide a loop free topology within Ethernet networks, allowing redundancy within the network to deal with link failures.
There are many variants of STP; however, they work on the same basic principle. Within a network that may contain loops, a sufficient number of interfaces are disabled by STP so as to ensure that there is a loop-free spanning tree, that is, there is exactly one path between any two devices in the network. If there is a fault in the network that affects one of the active links, the protocol recalculates the spanning tree so as to ensure that all devices continue to be reachable. STP is transparent to end stations which cannot detect whether they are connected to a single LAN segment or to a switched LAN containing multiple segments and using STP to ensure there are no loops.
STP Protocol Operation
All variants of STP operate in a similar fashion: STP frames (known as bridge protocol data units (BPDUs)) are exchanged at regular intervals over Layer 2 LAN segments, between network devices participating in STP. Such network devices do not forward these frames, but use the information to construct a loop free spanning tree.
The spanning tree is constructed by first selecting a device which is the root of the spanning tree (known as the root bridge), and then by determining a loop free path from the root bridge to every other device in the network. Redundant paths are disabled by setting the appropriate ports into a blocked state, where STP frames can still be exchanged but data traffic is never forwarded. If a network segment fails and a redundant path exists, the STP protocol recalculates the spanning tree topology and activates the redundant path, by unblocking the appropriate ports.
The selection of the root bridge within a STP network is determined by the lowest Bridge ID which is a combination of configured bridge priority and embedded mac address of each device. The device with the lowest priority, or with equal lowest priority but the lowest MAC address is selected as the root bridge.
The selection of the active path among a set of redundant paths is determined primarily by the port path cost. The port path cost represents the cost of transiting between that port and the root bridge - the further the port is from the root bridge, the higher the cost. The cost is incremented for each link in the path, by an amount that is (by default) dependent on the media speed. Where two paths from a given LAN segment have an equal cost, the selection is further determined by the lowest bridge ID of the attached devices, and in the case of two attachments to the same device, by the configured port priority and port ID of the neighboring attached ports.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 442

Implementing Multiple Spanning Tree Protocol

Topology Changes

Once the active paths have been selected, any ports that do not form part of the active topology are moved to the blocking state.
Topology Changes
Network devices in a switched LAN perform MAC learning; that is, they use received data traffic to associate unicast MAC addresses with the interface out of which frames destined for that MAC address should be sent. If STP is used, then a recalculation of the spanning tree (for example, following a failure in the network) can invalidate this learned information. The protocol therefore includes a mechanism to notify topology changes around the network, so that the stale information can be removed (flushed) and new information can be learned based on the new topology.
A Topology Change notification is sent whenever STP moves a port from the blocking state to the forwarding state. When it is received, the receiving device flushes the MAC learning entries for all ports that are not blocked other than the one where the notification was received, and also sends its own topology change notification out of those ports. In this way, it is guaranteed that stale information is removed from all the devices in the network.
Variants of STP
There are many variants of the Spanning Tree Protocol:
· Legacy STP (STP)--The original STP protocol was defined in IEEE 802.1D-1998. This creates a single spanning tree which is used for all VLANs and most of the convergence is timer-based.
· Rapid STP (RSTP)--This is an enhancement defined in IEEE 802.1D-2004 to provide more event-based, and hence faster, convergence. However, it still creates a single spanning tree for all VLANs.
· Multiple STP (MSTP)--A further enhancement was defined in IEEE 802.1Q-2005. This allows multiple spanning tree instances to be created over the same physical topology. By assigning different VLANs to the different spanning tree instances, data traffic can be load-balanced over different physical links. The number of different spanning tree instances that can be created is restricted to a much smaller number than the number of possible VLANs; however, multiple VLANs can be assigned to the same spanning tree instance. The BPDUs used to exchange MSTP information are always sent untagged; the VLAN and spanning tree instance data is encoded inside the BPDU.
· Per-Vlan STP (PVST)--This is an alternative mechanism for creating multiple spanning trees; it was developed by Cisco before the standardization of MSTP. Using PVST, a separate spanning tree is created for each VLAN. There are two variants: PVST+ (based on legacy STP), and PVRST (based on RSTP). At a packet level, the separation of the spanning trees is achieved by sending standard STP or RSTP BPDUs, tagged with the appropriate VLAN tag.
· Per-Vlan Rapid Spanning Tree (PVRST)-- This feature is the IEEE 802.1w (RSTP) standard implemented per VLAN, and is also known as Rapid PVST or PVST+. A single instance of STP runs on each configured VLAN (if you do not manually disable STP). Each Rapid PVST+ instance on a VLAN has a single root switch. You can enable and disable STP on a per-VLAN basis when you are running Rapid PVST+.
· PVRST uses point-to-point wiring to provide rapid convergence of the spanning tree. The spanning tree reconfiguration can occur in less than one second with PVRST (in contrast to 50 seconds with the default settings in the 802.1D STP).
· REP (Cisco-proprietary ring-redundancy protocol)-- This is a Cisco-proprietary protocol for providing resiliency in rings. It is included for completeness, as it provides MSTP compatibility mode, using which, it interoperates with an MSTP peer.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 443

Multiple Spanning Tree Protocol Overview

Implementing Multiple Spanning Tree Protocol

Multiple Spanning Tree Protocol Overview
The Multiple Spanning Tree Protocol (MSTP) is an STP variant that allows multiple and independent spanning trees to be created over the same physical network. The parameters for each spanning tree can be configured separately, so as to cause a different network devices to be selected as the root bridge or different paths to be selected to form the loop-free topology. Consequently, a given physical interface can be blocked for some of the spanning trees and unblocked for others.
Having set up multiple spanning tree instances, the set of VLANs in use can be partitioned among them; for example, VLANs 1 - 100 can be assigned to spanning tree instance 1, VLANs 101 - 200 can be assigned to spanning tree instance 2, VLANs 201 - 300 can be assigned to spanning tree instance 3, and so on. Since each spanning tree has a different active topology with different active links, this has the effect of dividing the data traffic among the available redundant links based on the VLAN--a form of load balancing.
MSTP Regions
Along with supporting multiple spanning trees, MSTP also introduces the concept of regions. A region is a group of devices under the same administrative control and have similar configuration. In particular, the configuration for the region name, revision, and the mapping of VLANs to spanning tree instances must be identical on all the network devices in the region. A digest of this information is included in the BPDUs sent by each device, so as to allow other devices to verify whether they are in the same region.
The following figure shows the operation of MST regions when bridges running MSTP are connected to bridges running legacy STP or RSTP. In this example, switches SW1, SW2, SW3, SW4 support MSTP, while switches SW5 and SW6 do not.
Figure 58: MST Interaction with Non-MST Regions

To handle this situation, an Internal Spanning Tree (IST) is used. This is always spanning tree instance 0 (zero). When communicating with non-MSTP-aware devices, the entire MSTP region is represented as a single switch. The logical IST topology in this case is shown in the following figure.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 444

Implementing Multiple Spanning Tree Protocol Figure 59: Logical Topology in MST Region Interacting with Non-MST Bridges

MSTP Port Fast

The same mechanism is used when communicating with MSTP devices in a different region. For example, SW5 in the above figure could represent a number of MSTP devices, all in a different region compared to SW1, SW2, SW3 and SW4.
MSTP Port Fast
MSTP includes a Port Fast feature for handling ports at the edge of the switched Ethernet network. For devices that only have one link to the switched network (typically host devices), there is no need to run MSTP, as there is only one available path. Furthermore, it is undesirable to trigger topology changes (and resultant MAC flushes) when the single link fails or is restored, as there is no alternative path.
By default, MSTP monitors ports where no BPDUs are received, and after a timeout, places them into edge mode whereby they do not participate in MSTP. However, this process can be speeded up (and convergence of the whole network thereby improved) by explicitly configuring edge ports as port fast.

Note

· You must disable and re-enable the port for Port Fast configuration to take effect. Use shutdown and

no shutdown command (in interface configuration mode) to disable and re-enable the port.

· Port Fast is implemented as a Cisco-proprietary extension in Cisco implementations of legacy STP. However, it is encompassed in the standards for RSTP and MSTP, where it is known as Edge Port.

MSTP Root Guard
In networks with shared administrative control, it may be desirable for the network administrator to enforce aspects of the network topology and in particular, the location of the root bridge. By default, any device can become the root bridge for a spanning tree, if it has a lower priority or bridge ID. However, a more optimal forwarding topology can be achieved by placing the root bridge at a specific location in the centre of the network.

Note The administrator can set the root bridge priority to 0 in an effort to secure the root bridge position; however, this is no guarantee against another bridge which also has a priority of 0 and has a lower bridge ID.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 445

MSTP Topology Change Guard

Implementing Multiple Spanning Tree Protocol

The root guard feature provides a mechanism that allows the administrator to enforce the location of the root bridge. When root guard is configured on an interface, it prevents that interface from becoming a root port (that is, a port via which the root can be reached). If superior information is received via BPDUs on the interface that would normally cause it to become a root port, it instead becomes a backup or alternate port. In this case, it is placed in the blocking state and no data traffic is forwarded. The root bridge itself has no root ports. Thus, by configuring root guard on every interface on a device, the administrator forces the device to become the root, and interfaces receiving conflicting information are blocked.
Note Root Guard is implemented as a Cisco-proprietary extension in Cisco implementations of legacy STP and RSTP. However, it is encompassed in the standard for MSTP, where it is known as Restricted Role.
MSTP Topology Change Guard
In certain situations, it may be desirable to prevent topology changes originating at or received at a given port from being propagated to the rest of the network. This may be the case, for example, when the network is not under a single administrative control and it is desirable to prevent devices external to the core of the network from causing MAC address flushing in the core. This behavior can be enabled by configuring Topology Change Guard on the port.
Note Topology Change Guard is known as Restricted TCN in the MSTP standard.
MSTP Supported Features
Cisco ASR 9000 Series Routers support MSTP, as defined in IEEE 802.1Q-2005, on physical Ethernet interfaces and Ethernet Bundle interfaces. Note that this includes the Port Fast, Backbone Fast, Uplink Fast and Root Guard features found in Cisco implementations of legacy STP, RSTP and PVST, as these are encompassed by the standard MSTP protocol. Cisco ASR 9000 Series Routers can operate in either standard 802.1Q mode, or in Provide Edge (802.1ad) mode. In provider edge mode, a different MAC address is used for BPDUs, and any BPDUs received with the 802.1Q MAC address are forwarded transparently. In addition, these additional Cisco features are supported:
· BPDU Guard--This Cisco feature protects against misconfiguration of edge ports. · Flush Containment--This Cisco feature helps prevent unnecessary MAC flushes that would otherwise
occur following a topology change. · Bringup Delay--This Cisco feature prevents an interface from being added to the active topology before
it is ready to forward traffic.
Note Interoperation with RSTP is supported, as described in the 802.1Q standard; however, interoperation with legacy STP is not supported.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 446

Implementing Multiple Spanning Tree Protocol

BPDU Guard

BPDU Guard

BPDU Guard is a Cisco feature that protects against misconfiguration of edge ports. It is an enhancement to the MSTP port fast feature. When port fast is configured on an interface, MSTP considers that interface to be an edge port and removes it from consideration when calculating the spanning tree. When BPDU Guard is configured, MSTP additionally shuts down the interface using error-disable if an MSTP BPDU is received.

Flush Containment
Flush containment is a Cisco feature that helps prevent unnecessary MAC flushes due to unrelated topology changes in other areas of a network. This is best illustrated by example. The following figure shows a network containing four devices. Two VLANs are in use: VLAN 1 is only used on device D, while VLAN 2 spans devices A, B and C. The two VLANs are in the same spanning tree instance, but do not share any links.
Figure 60: Flush Containment

If the link AB goes down, then in normal operation, as C brings up its blocked port, it sends out a topology change notification on all other interfaces, including towards D. This causes a MAC flush to occur for VLAN 1, even though the topology change which has taken place only affects VLAN 2.
Flush containment helps deal with this problem by preventing topology change notifications from being sent on interfaces on which no VLANs are configured for the MSTI in question. In the example network this would mean no topology change notifications would be sent from C to D, and the MAC flushes which take place would be confined to the right hand side of the network.

Note Flush containment is enabled by default, but can be disabled by configuration, thus restoring the behavior described in the IEEE 802.1Q standard.

Bringup Delay

Bringup delay is a Cisco feature that stops MSTP from considering an interface when calculating the spanning tree, if the interface is not yet ready to forward traffic. This is useful when a line card first boots up, as the system may declare that the interfaces on that card are Up before the dataplane is fully ready to forward traffic. According to the standard, MSTP considers the interfaces as soon as they are declared Up, and this may cause it to move other interfaces into the blocking state if the new interfaces are selected instead.
Bringup delay solves this problem by adding a configurable delay period which occurs as interfaces that are configured with MSTP first come into existence. Until this delay period ends, the interfaces remain in blocking state, and are not considered when calculating the spanning tree.
Bringup delay only takes place when interfaces which are already configured with MSTP are created, for example, on a card reload. No delay takes place if an interface which already exists is later configured with MSTP.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 447

Restrictions for configuring MSTP

Implementing Multiple Spanning Tree Protocol

Restrictions for configuring MSTP
These restrictions apply when using MSTP:
· MSTP must only be enabled on interfaces where the interface itself (if it is in L2 mode) or all of the subinterfaces have a simple encapsulation configured. These encapsulation matching criteria are considered simple:
· Single-tagged 802.1Q frames · Double-tagged Q-in-Q frames (only the outermost tag is examined) · 802.1ad frames (if MSTP is operating in Provider Bridge mode) · Ranges or lists of tags (any of the above)
· If an L2 interface or subinterface is configured with an encapsulation that matches multiple VLANs, then all of those VLANs must be mapped to the same spanning tree instance. There is therefore a single spanning tree instance associated with each L2 interface or subinterface.
· All the interfaces or subinterfaces in a given bridge domain must be associated with the same spanning tree instance.
· Multiple subinterfaces on the same interface must not be associated with the same spanning tree instance, unless those subinterfaces are in the same split horizon group. In other words, hair-pinning is not possible.
· Across the network, L2 interfaces or subinterfaces must be configured on all redundant paths for all the VLANs mapped to each spanning tree instance. This is to avoid inadvertent loss of connectivity due to STP blocking of a port.
Caution A subinterface with a default or untagged encapsulation will lead to an MSTP state machine failure.
Access Gateway
One common deployment scenario for router is as an nPE gateway device situated between a network of uPE access devices and a core or aggregation network. Each gateway device may provide connectivity for many access networks, as shown in following figure. The access networks (typically rings) have redundant links to the core or aggregation network, and therefore must use some variant of STP or a similar protocol to ensure the network remains loopfree.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 448

Implementing Multiple Spanning Tree Protocol Figure 61: Core or Aggregation Network

Overview of Access Gateway

It is possible for the gateway devices to also participate in the STP protocol. However, since each gateway device may be connected to many access networks, this would result in one of two solutions:
· A single topology is maintained covering all of the access networks. This is undesirable as it means topology changes in one access network could impact all the other access networks.
· The gateway devices runs multiple instances of the STP protocol, one for each access network. This means a separate protocol database and separate protocol state machines are maintained for each access network, which is undesirable due to the memory and CPU resource that would be required on the gateway device.
It can be seen that both of these options have significant disadvantages.
Another alternative is for the gateway devices to tunnel protocol BPDUs between the legs of each access network, but not to participate in the protocol themselves. While this results in correct loopfree topologies, it also has significant downsides:
· Since there is no direct connection between the legs of the access ring, a failure in one of the leg links is not immediately detected by the access device connected to the other leg. Therefore, recovery from the failure must wait for protocol timeouts, which leads to a traffic loss of at least six seconds.
· As the gateway devices do not participate in the protocol, they are not aware of any topology changes in the access network. The aggregation network may therefore direct traffic destined for the access network over the wrong leg, following a topology change. This can lead to traffic loss on the order of the MAC learning timeout (5 minutes by default).
Access gateway is a Cisco feature intended to address this deployment scenario, without incurring the disadvantages of the solutions described above.
Overview of Access Gateway
Access gateway is based on two assumptions:
· Both gateway devices provide connectivity to the core or aggregation network at all times. Generally, resiliency mechanisms used within the core or aggregation network are sufficient to ensure this is the case. In many deployments, VPLS is used in the core or aggregation network to provide this resiliency.
· The desired root of all of the spanning trees for each access network is one of the gateway devices. This will be the case if (as is typical) the majority of the traffic is between an access device and the core or aggregation network, and there is little if any traffic between the access devices.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 449

Overview of Access Gateway

Implementing Multiple Spanning Tree Protocol

With these assumptions, an STP topology can be envisaged where for every spanning tree, there is a virtual root bridge behind (that is, on the core side of) the gateway devices, and both gateway devices have a zero cost path to the virtual root bridge. In this case, the ports that connect the gateway devices to the access network would never be blocked by the spanning tree protocol, but would always be in the forwarding state. This is illustrated in the following figure.
Figure 62: Access Network

With this topology, it can be observed that the BPDUs sent by the gateway devices are constant: since the root bridge never changes (as we assume the aggregation or core network always provides connectivity) and the ports are always forwarding, the information sent in the BPDUs never changes. Access gateway makes use of this by removing the need to run the full STP protocol and associated state machines on the gateway devices, and instead just sends statically configured BPDUs towards the access network. The BPDUs are configured so as to mimic the behavior above, so that they contain the same information that would be sent if the full protocol was running. To the access devices, it appears that the gateway devices are fully participating in the protocol; however, since in fact the gateway devices are just sending static BPDUs, very little memory or CPU resource is needed on the gateway devices, and many access networks can be supported simultaneously. For the most part, the gateway devices can ignore any BPDUs received from the access network; however, one exception is when the access network signals a topology change. The gateway devices can act on this appropriately, for example by triggering an LDP MAC withdrawal in the case where the core or aggregation network uses VPLS. In many cases, it is not necessary to have direct connectivity between the gateway devices; since the gateway devices statically send configured BPDUs over the access links, they can each be configured independently (so long as the configuration on each is consistent). This also means that different access networks can use different pairs of gateway devices, as shown in the following figure.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 450

Implementing Multiple Spanning Tree Protocol Figure 63: Access Networks

Topology Change Propagation

Note Although the above figure shows access rings, in general there are no restrictions on the access network topology or the number or location of links to the gateway devices.
Access gateway ensures loop-free connectivity in the event of these failure cases: · Failure of a link in the access network. · Failure of a link between the access network and the gateway device. · Failure of an access device. · Failure of a gateway device.
Topology Change Propagation
There is one case where the two gateway devices need to exchange BPDUs between each other, and this is to handle topology changes in the access network. If a failure in the access network results in a topology change that causes a previously blocked port to move to forwarding, the access device sends a topology change notification out on that port, so as to notify the rest of the network about the change and trigger the necessary MAC learning flushes. Typically, the topology change notification is sent towards the root bridge, in the case of access gateway, that means it is sent to one of the gateway devices. As described above, this causes the gateway device itself to take any necessary action; however, if the failure caused the access network to become partitioned, it may also be necessary to propagate the topology change notification to the rest of the access network, that is, the portion connected to the other gateway device. This can be achieved by ensuring there is connectivity between the gateway devices, so that each gateway device can propagate any topology change notifications it receives from the access network to the other device. When a gateway device receives a BPDU from the other gateway device that indicates a topology change, it signals this in the static BPDUs (that it is sending towards the access network). Topology Change Propagation is only necessary when these two conditions are met:
· The access network contains three or more access devices. If there are fewer than three devices, then any possible failure must be detected by all the devices.
· The access devices send traffic to each other, and not just to or from the core or aggregation network. If all the traffic is to or from the core or aggregation network, then all the access devices must either already
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 451

Preempt Delay

Implementing Multiple Spanning Tree Protocol

be sending traffic in the right direction, or will learn about the topology change from the access device that originates it.

Preempt Delay
One of the assumptions underpinning access gateway is that the gateway devices are always available to provide connectivity to the core or aggregation network. However, there is one situation where this assumption may not hold, which is at bringup time. At bringup, it may be the case that the access facing interface is available before all of the necessary signaling and convergence has completed that means traffic can successfully be forwarded into the core or aggregation network. Since access gateway starts sending BPDUs as soon as the interface comes up, this could result in the access devices sending traffic to the gateway device before it is ready to receive it. To avoid this problem, the preempt delay feature is used.
The preempt delay feature causes access gateway to send out inferior BPDUs for some period of time after the interface comes up, before reverting to the normal values. These inferior BPDUs can be configured such that the access network directs all traffic to the other gateway device, unless the other gateway device is also down. If the other gateway device is unavailable, it is desirable for the traffic to be sent to this device, even if it is only partially available, rather than being dropped completely. For this reason, inferior BPDUs are sent during the preempt delay time, rather than sending no BPDUs at all.

Supported Access Gateway Protocols
Access Gateway is supported on routers when the following protocols are used in the access network
Table 7: Protocols

Access Network Protocol MSTP REP PVST+ PVRST

Access Gateway Variant MST Access Gateway (MSTAG) REP Access gateway (REPAG)1 PVST+ Access Gateway (PVSTAG) 2 PVRST Access Gateway (PVRSTAG) 3

1. REP Access Gateway is supported when the access device interfaces that connect to the gateway devices are configured with REP MSTP Compatibility mode.
2. Topology Change Propagation is not supported for PVSTAG.
3. Topology Change Propagation is not supported for PVRSTAG.

MSTAG Edge Mode
An access gateway is used in a Layer 2 (L2) environment to ensure that for each Multiple Spanning Tree Instance (MSTI), each access device has one path to the core or aggregation network. The core or aggregation network provides L2 (Ethernet) connectivity between two gateway devices. Therefore, when there are no failures, there must be at least one blocked port in the access network for each MSTI. In the case of an access ring, there should be one blocked port in the access ring. For each MSTI ­ this is typically one of the uplink ports that connects to one of the gateway devices. This is achieved by configuring MSTAG in such a way that the gateway devices appear to have the best path to the best possible Multiple Spanning Tree Protocol (MSTP) root node. Thus, the access devices always use the gateway devices to reach the root, and the ports on the gateway devices are always in the designated forwarding state.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 452

Implementing Multiple Spanning Tree Protocol

MSTAG Edge Mode

In a mixed Layer 2-Layer 3 environment, the L2 access network is used to provide a Layer 2 service on certain VLANs and a Layer 3 (L3) service on other VLANs. In the access network, a different MSTI is used for the L2 service and the L3 service. For the L2 VLANs, the core or aggregation network provides L2 connectivity between the gateway devices. However, for the L3 service, the gateway devices terminate the L2 network and perform L3 routing. Typically, an L3 redundancy mechanism such as HSRP or VRRP is used to allow the end hosts to route to the correct gateway.
In this scenario, the use of MSTAG alone does not achieve the desired behavior for the L3 MSTI. This is because it results in one of the ports in the access network being blocked, even though there is actually no loop. (This, in turn, is because there is no L2 connectivity between the gateway devices for the L3 VLANs.) In fact, because the gateway devices terminate the L2 network for the L3 VLANs, the desirable behavior is for the MSTP root to be located in the access network, and for the gateway devices to appear as leaf nodes with a single connection. This can be achieved by reversing the MSTAG configuration; that is, setting the gateway devices to advertise the worst possible path to the worst possible root. This forces the access devices to elect one of the access devices as the root, and therefore, no ports are blocked. In this case, the ports on the gateway devices are always in root forwarding state. The MSTAG Edge mode feature enables this scenario by changing the role advertised by the gateway devices from designated to root. The following figure illustrates this scenario.
Figure 64: MSTAG Edge Mode scenario

· D - Designated port (forwarding) · R - Root port (forwarding) · A - Alternate port (blocked) For normal MSTAG, and for the L2 MSTIs, topology change notifications are propagated from one gateway device to the other, and re-advertised into the access network. However, for the L3 MSTI, this is not desirable. As there is no block for the L3 MSTI in the access network, the topology change notification could loop
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 453

PVSTAG on Bundle Interfaces

Implementing Multiple Spanning Tree Protocol

forever. To avoid that situation, MSTAG Edge mode completely disables handling of topology change notifications in the gateway devices.
PVSTAG on Bundle Interfaces
Per-VLAN Spanning Tree Access Gateway (PVSTAG) support has been extended on bundle interfaces, along with physical interfaces, to cater to an increasing number of customers that support PVST access networks.
For physical interfaces, bridge protocol data units (BDPUs) are sent from the line card that hosts the interfaces. However, for bundle interfaces BPDUs are sent from the route processor (RP). When an RP failover occurs, the data traffic flowing over the bundle interface is not affected; as a result, no BPDUs are sent until the failover is complete and the newly active RP takes over. If there is a delay, the peer device times out the BPDU information. This leads to a forwarding loop, which results in disruption in Ethernet networks. It is therefore important to ensure that, upon RP failover, the peer device does not time out the BPDU information.
Per-VLAN Rapid Spanning Tree
Per-VLAN Rapid Spanning Tree (PVRST) or Rapid PVST or PVST+ is the IEEE 802.1w (RSTP) standard implemented per VLAN. A single instance of STP runs on each configured VLAN (if you do not manually disable STP). Each Rapid PVST+ instance on a VLAN has a single root switch. You can enable and disable STP on a per-VLAN basis when you are running Rapid PVST+.
PVRST uses point-to-point wiring to provide rapid convergence of the spanning tree. The spanning tree reconfiguration can occur in less than 1 second with PVRST (in contrast to 50 seconds with the default settings in the 802.1D STP).
Note PVRST supports one STP instance for each VLAN.
Using PVRST, STP convergence occurs rapidly. Each designated or root port in the STP sends out a BPDU every 2 seconds by default. On a designated or root port in the topology, if hello messages are missed three consecutive times, or if the maximum age expires, the port immediately flushes all protocol information in the table. A port considers that it loses connectivity to its direct neighbor root or designated port if it misses three BPDUs or if the maximum age expires. This rapid aging of the protocol information allows quick failure detection.
PVRST achieves rapid transition to the forwarding state only on edge ports and point-to-point links. Although the link type is configurable, the system automatically derives the link type information from the duplex setting of the port. Full-duplex ports are assumed to be point-to-point ports, while half-duplex ports are assumed to be shared ports.
Disadvantages
· Increased load in terms of increased packet rate. · Greater CPU and memory utilization due to one STP instance for every LAN.
Implementation of PVRST in IOS-XR
The implementation of PVRST in IOS-XR has the following characteristics:
· Configuration of the Forward Delay and Max Age timers is only supported globally and not per VLAN. · Configuration of the Hello timer is supported per port and not per VLAN. The Hello timer configured
on a port applies to all VLANs on that specific port. · The cost of a spanning tree bundle port is always 10000. It is not affected by any of the following:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 454

Implementing Multiple Spanning Tree Protocol

Multiple VLAN Registration Protocol

· Number or speed of the bundle members · Logical or administrative operational status of the bundle member ports · Addition or deletion of bundle members
· Receiving BPDU on an interface configured with the BPDU Guard error-disables the physical interface as well as any layer-2 or layer-3 sub-interfaces configured on the physical interface.
· Only Ethernet Flow-points (EFPs) that are untagged or have a single VLAN tag can be protected by PVRST.
· If any one EFP in a bridge-domain is protected by PVRST, then all EFPs in that bridge domain must belong to the same VLAN.
· If any one EFP on a port is protected by PVRST, then all EFPs on that port must be protected by PVRST. · PVRST supports up to 8000 Port Tree Instances (PTIs) per line card and 16000 PTIs per system. PTI
refers to the product of the number of ports and VLANs. PVRST supports 1000 VLANs.
Multiple VLAN Registration Protocol
The Multiple VLAN Registration Protocol is defined in IEEE 802.1ak and is used in MSTP based networks to optimize the propagation of multicast and broadcast frames.
By default, multicast and broadcast frames are propagated to every point in the network, according to the spanning tree, and hence to every edge (host) device that is attached to the network. However, for a given VLAN, it may be the case that only certain hosts are interested in receiving the traffic for that VLAN. Furthermore, it may be the case that a given network device, or even an entire segment of the network, has no attached hosts that are interested in receiving traffic for that VLAN. In this case, an optimization is possible by avoiding propagating traffic for that VLAN to those devices that have no stake in it. MVRP provides the necessary protocol signaling that allows each host and device to indicate to its attached peers which VLANs it is interested in.
MVRP-enabled devices can operate in two modes:
· Static mode--In this mode, the device initiates MVRP messages declaring interest in a statically configured set of VLANs. Note that the protocol is still dynamic with respect to the MSTP topology; it is the set of VLANs that is static.
· Dynamic mode--In this mode, the device processes MVRP messages received on different ports, and aggregates them dynamically to determine the set of VLANs it is interested in. It sends MVRP messages declaring interest in this set. In dynamic mode, the device also uses the received MVRP messages to prune the traffic sent out of each port so that traffic is only sent for the VLANs that the attached device has indicated it is interested in.
The router supports operating in static mode. This is known as MVRP-lite.
How to Implement Multiple Spanning Tree Protocol
This section contains these procedures:
Configuring MSTP
This section describes the procedure for configuring MSTP:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 455

Enabling MSTP

Implementing Multiple Spanning Tree Protocol

Note This section does not describe how to configure data switching. Refer to the Implementing Multipoint Layer 2 Services module for more information.
Enabling MSTP
By default, STP is disabled on all interfaces. MSTP should be explicitly enabled by configuration on each physical or Ethernet Bundle interface. When MSTP is configured on an interface, all the subinterfaces of that interface are automatically MSTP-enabled.
Configuring MSTP parameters
The MSTP Standard defines a number of configurable parameters. The global parameters are: · Region Name and Revision · Bringup Delay · Forward Delay · Max Age or Hops · Transmit Hold Count · Provider Bridge mode · Flush Containment · VLAN IDs (per spanning-tree instance) · Bridge Priority (per spanning-tree instance)
The per-interface parameters are: · External port path cost · Hello Time · Link Type · Port Fast and BPDU Guard · Root Guard and Topology Change Guard · Port priority (per spanning-tree instance) · Internal port path cost (per spanning-tree instance)
Per-interface configuration takes place in an interface submode within the MST configuration submode.
Note The configuration steps listed in the following sections show all of the configurable parameters. However, in general, most of these can be retained with the default value.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 456

Implementing Multiple Spanning Tree Protocol

Configuring MSTP parameters

SUMMARY STEPS

1. configure 2. spanning-tree mst protocol instance identifier 3. bringup delay for interval { minutes | seconds } 4. flush containment disable 5. name name 6. revision revision -number 7. forward-delay seconds 8. maximum { age seconds | hops hops } 9. transmit hold-count count 10. provider-bridge 11. instance id 12. priority priority 13. vlan-id vlan-range [,vlan-range ][,vlan-range ] [,vlan-range ] 14. interface { Bundle-Ether | GigabitEthernet | TenGigE | FastEthernet } instance 15. instance id port-priority priority 16. instance id cost cost 17. external-cost cost 18. link-type { point-to-point | multipoint } 19. hello-time seconds 20. portfast [ bpdu-guard ] 21. guard root 22. guard topology-change 23. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. spanning-tree mst protocol instance identifier Example:
RP/0/RSP0/CPU0:router(config)# spanning-tree mst a RP/0/RSP0/CPU0:router(config-mstp)#
Enters the MSTP configuration submode. bringup delay for interval { minutes | seconds } Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 457

Configuring MSTP parameters

Implementing Multiple Spanning Tree Protocol

Step 4 Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config-mstp)#bringup delay for 10 minutes
Configures the time interval to delay bringup for. flush containment disable Example:
RP/0/RSP0/CPU0:router(config-mstp)#flush containment disable
Disable flush containment. This command performs MAC flush on all instances regardless of the their state. name name Example:
RP/0/RSP0/CPU0:router(config-mstp)# name m1
Sets the name of the MSTP region. The default value is the MAC address of the switch, formatted as a text string by means of the hexadecimal representation specified in IEEE Std 802. revision revision -number Example:
RP/0/RSP0/CPU0:router(config-mstp)# revision 10
Sets the revision level of the MSTP region. Allowed values are from 0 through 65535. forward-delay seconds Example:
RP/0/RSP0/CPU0:router(config-mstp)# forward-delay 20
Sets the forward-delay parameter for the bridge. Allowed values for bridge forward-delay time in seconds are from 4 through 30. maximum { age seconds | hops hops } Example:
RP/0/RSP0/CPU0:router(config-mstp)# max age 40 RP/0/RSP0/CPU0:router(config-mstp)# max hops 30
Sets the maximum age and maximum hops performance parameters for the bridge. Allowed values for maximum age time for the bridge in seconds are from 6 through 40.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 458

Implementing Multiple Spanning Tree Protocol

Configuring MSTP parameters

Step 9 Step 10 Step 11 Step 12 Step 13 Step 14

Allowed values for maximum number of hops for the bridge in seconds are from 6 through 40. transmit hold-count count Example:

RP/0/RSP0/CPU0:router(config-mstp)# transmit hold-count 8

Sets the transmit hold count performance parameter. Allowed values are from 1 through 10. provider-bridge Example:

RP/0/RSP0/CPU0:router(config-mstp)# provider-bridge

Places the current instance of the protocol in 802.1ad mode. instance id Example:

RP/0/RSP0/CPU0:router(config-mstp)# instance 101 RP/0/RSP0/CPU0:router(config-mstp-inst)#

Enters the MSTI configuration submode. Allowed values for the MSTI ID are from 0 through 4094. priority priority Example:

RP/0/RSP0/CPU0:router(config-mstp-inst)# priority 8192

Sets the bridge priority for the current MSTI. Allowed values are from 0 through 61440 in multiples of 4096. vlan-id vlan-range [,vlan-range ][,vlan-range ] [,vlan-range ] Example:

RP/0/RSP0/CPU0:router(config-mstp-inst)# vlan-id 2-1005

Associates a set of VLAN IDs with the current MSTI.

List of VLAN ranges in the form a-b, c, d, e-f, g, and so on.

Note

Repeat steps 11 to 13 for each MSTI.

interface { Bundle-Ether | GigabitEthernet | TenGigE | FastEthernet } instance Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 459

Configuring MSTP parameters

Implementing Multiple Spanning Tree Protocol

Step 15 Step 16
Step 17 Step 18 Step 19

RP/0/RSP0/CPU0:router(config-mstp)# interface FastEthernet 0/0/0/1 RP/0/RSP0/CPU0:router(config-mstp-if)#
Enters the MSTP interface configuration submode, and enables STP for the specified port. Forward interface in Rack/Slot/Instance/Port format. instance id port-priority priority Example:
RP/0/RSP0/CPU0:router(config-mstp-if)# instance 101 port-priority 160
Sets the port priority performance parameter for the MSTI. Allowed values for the MSTI ID are from 0 through 4094. Allowed values for port priority are from 0 through 240 in multiples of 16. instance id cost cost Example:
RP/0/RSP0/CPU0:router(config-mstp-if)# instance 101 cost 10000
Sets the internal path cost for a given instance on the current port. Allowed values for the MSTI ID are from 0 through 4094. Allowed values for port cost are from 1 through 200000000. Repeat steps 15 and 16 for each MSTI for each interface. external-cost cost Example:
RP/0/RSP0/CPU0:router(config-mstp-if)# external-cost 10000
Sets the external path cost on the current port. Allowed values for port cost are from 1 through 200000000. link-type { point-to-point | multipoint } Example:
RP/0/RSP0/CPU0:router(config-mstp-if)# link-type point-to-point
Sets the link type of the port to point-to-point or multipoint. hello-time seconds Example:
RP/0/RSP0/CPU0:router(config-mstp-if)# hello-time 1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 460

Implementing Multiple Spanning Tree Protocol

Verifying MSTP

Step 20 Step 21 Step 22 Step 23

Sets the port hello time in seconds. Allowed values are 1 and 2. portfast [ bpdu-guard ] Example:

RP/0/RSP0/CPU0:router(config-mstp-if)# portfast RP/0/RSP0/CPU0:router(config-mstp-if)# portfast bpduguard

Enables PortFast on the port, and optionally enables BPDU guard. guard root Example:

RP/0/RSP0/CPU0:router(config-mstp-if)# guard root

Enables RootGuard on the port. guard topology-change Example:

RP/0/RSP0/CPU0:router(config-mstp-if)# guard topology-change

Enables TopologyChangeGuard on the port.

Note

Repeat steps 14 to 22 for each interface.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Verifying MSTP
These show commands allow you to verify the operation of MSTP: · show spanning-tree mst mst-name · show spanning-tree mst mst-name interface interface-name · show spanning-tree mst mst-name errors · show spanning-tree mst mst-name configuration · show spanning-tree mst mst-name bpdu interface interface-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 461

Configuring MSTAG or REPAG

Implementing Multiple Spanning Tree Protocol

· show spanning-tree mst mst-name topology-change flushes
Configuring MSTAG or REPAG
This section describes the procedures for configuring MSTAG:
Note The procedures for configuring REPAG are identical. This section does not describe how to configure data switching. Refer to the Implementing Multipoint Layer 2 Services module for more information.
Configuring an untagged subinterface
In order to enable MSTAG on a physical or Bundle Ethernet interface, an L2 subinterface must first be configured which matches untagged packets, using the encapsulation untagged command. Refer to The Cisco ASR 9000 Series Routers Carrier Ethernet Model module for more information about configuring L2 subinterfaces.
Enabling MSTAG
MSTAG is enabled on a physical or Bundle Ethernet interface by explicitly configuring it on the corresponding untagged subinterface. When MSTAG is configured on the untagged subinterface, it is automatically enabled on the physical or Bundle Ethernet interface and on all other subinterfaces on that physical or Bundle Ethernet subinterface.
Configuring MSTAG parameters
MSTAG parameters are configured separately on each interface, and MSTAG runs completely independently on each interface. There is no interaction between the MSTAG parameters on different interfaces (unless they are connected to the same access network). These parameters are configurable for each interface:
· Region Name and Revision · Bridge ID · Port ID · External port path cost · Max Age · Provide Bridge mode · Hello Time
The following MSTAG parameters are configurable for each interface, for each spanning tree instance: · VLAN IDs · Root Bridge Priority and ID

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 462

Implementing Multiple Spanning Tree Protocol

Configuring MSTAG parameters

· Bridge Priority · Port Priority · Internal Port Path Cost
To ensure consistent operation across the access network, these guidelines should be used when configuring: · Both gateway devices should be configured with a Root Bridge Priority and ID (for each spanning tree instance) that is better (lower) than the Bridge Priority and Bridge ID of any device in the access network. It is recommended to set the Root Bridge Priority and ID to 0 on the gateway devices.
Note To avoid an STP dispute being detected by the access devices, the same root priority and ID should be configured on both gateway devices.
· Both gateway devices should be configured with a Port Path Cost of 0. · For each spanning tree instance, one gateway device should be configured with the bridge priority and
ID that is higher than the root bridge priority and ID, but lower than the bridge priority and ID of any other device in the network (including the other gateway device). It is recommended to set the bridge priority to 0. · For each spanning tree instance, the second gateway device should be configured with a bridge priority and ID that is higher than the root bridge priority and ID and the first gateway device bridge priority and ID, but lower than the bridge priority and ID of any device in the access network. It is recommended to set the bridge priority to 4096 (this is the lowest allowable value greater than 0). · All of the access devices should be configured with a higher bridge priority than the gateway devices. It is recommended to use values of 8192 or higher. · For each spanning tree instance, the port path cost and other parameters may be configured on the access devices so as to ensure the desired port is put into the blocked state when all links are up.
Caution There are no checks on MSTAG configuration--misconfiguration may result in incorrect operation of the MSTP protocol in the access devices (for example, an STP dispute being detected).
The guidelines above are illustrated in the following figure.
Note These guidelines do not apply to REPAG, as in that case the access devices ignore the information received from the gateway devices apart from when a topology change is signalled.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 463

Configuring MSTAG parameters Figure 65: MSTAG Guidelines

Implementing Multiple Spanning Tree Protocol

Note The configuration steps listed in the following sections show all of the configurable parameters. However, in general, most of these can be retained with the default values.

SUMMARY STEPS

1. configure 2. spanning-tree mstag protocol instance identifier 3. preempt delay for interval{ seconds | minutes | hours } 4. interface { Bundle-Ether | GigabitEthernet | TenGigE | FastEthernet } instance.subinterface 5. name name 6. revision revision -number 7. max age seconds 8. provider-bridge 9. bridge-id id 10. port-id id 11. external-cost cost 12. hello-time seconds 13. instance id 14. edge mode 15. vlan-id vlan-range [, vlan-range ] [,vlan-range ] [,vlan-range ] 16. priority priority 17. port-priority priority 18. cost cost 19. root-bridge id 20. root-priority priority 21. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 464

Implementing Multiple Spanning Tree Protocol

Configuring MSTAG parameters

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. spanning-tree mstag protocol instance identifier Example:
RP/0/RSP0/CPU0:router(config)# spanning-tree mstag a RP/0/RSP0/CPU0:router(config-mstag)#
Enters the MSTAG configuration submode. preempt delay for interval{ seconds | minutes | hours } Example:
RP/0/RSP0/CPU0:router(config-mstag)# preempt delay for 10 seconds
Specifies the delay period during which startup BPDUs should be sent, before preempting. interface { Bundle-Ether | GigabitEthernet | TenGigE | FastEthernet } instance.subinterface Example:
RP/0/RSP0/CPU0:router(config-mstag)# interface GigabitEthernet0/2/0/30.1 RP/0/RSP0/CPU0:router(config-mstag-if)#
Enters the MSTAG interface configuration submode, and enables MSTAG for the specified port. name name Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# name leo
Sets the name of the MSTP region. The default value is the MAC address of the switch, formatted as a text string using the hexadecimal representation specified in IEEE Standard 802. revision revision -number Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# revision 1
Sets the revision level of the MSTP region.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 465

Configuring MSTAG parameters

Implementing Multiple Spanning Tree Protocol

Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

Allowed values are from 0 through 65535. max age seconds Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# max age 20
Sets the maximum age performance parameters for the bridge. Allowed values for the maximum age time for the bridge in seconds are from 6 through 40. provider-bridge Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# provider-bridge
Places the current instance of the protocol in 802.1ad mode. bridge-id id Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# bridge-id 001c.0000.0011
Sets the bridge ID for the current switch. port-id id Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# port-id 111
Sets the port ID for the current switch. external-cost cost Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# external-cost 10000
Sets the external path cost on the current port. Allowed values for port cost are from 1 through 200000000. hello-time seconds Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# hello-time 1
Sets the port hello time in seconds. Allowed values are from 1 through 2.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 466

Implementing Multiple Spanning Tree Protocol

Configuring MSTAG parameters

Step 13 Step 14 Step 15 Step 16 Step 17 Step 18

instance id Example:
RP/0/RSP0/CPU0:router(config-mstag-if)# instance 1
Enters the MSTI configuration submode. Allowed values for the MSTI ID are from 0 through 4094. edge mode Example:
RP/0/RSP0/CPU0:router(config-mstag-if-inst)# edge mode
Enables access gateway edge mode for this MSTI. vlan-id vlan-range [, vlan-range ] [,vlan-range ] [,vlan-range ] Example:
RP/0/RSP0/CPU0:router(config-mstag-if-inst)# vlan-id 2-1005
Associates a set of VLAN IDs with the current MSTI. List of VLAN ranges in the form a-b, c, d, e-f, g, and so on. priority priority Example:
RP/0/RSP0/CPU0:router(config-mstag-if-inst)# priority 4096
Sets the bridge priority for the current MSTI. Allowed values are from 0 through 61440 in multiples of 4096. port-priority priority Example:
RP/0/RSP0/CPU0:router(config-mstag-if-inst)# port-priority 160
Sets the port priority performance parameter for the MSTI. Allowed values for port priority are from 0 through 240 in multiples of 16. cost cost Example:
RP/0/RSP0/CPU0:router(config-mstag-if-inst)# cost 10000
Sets the internal path cost for a given instance on the current port. Allowed values for port cost are from 1 through 200000000.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 467

Configuring MSTAG Topology Change Propagation

Implementing Multiple Spanning Tree Protocol

Step 19 Step 20 Step 21

root-bridge id Example:

RP/0/RSP0/CPU0:router(config-mstag-if-inst)# root-id 001c.0000.0011

Sets the root bridge ID for the BPDUs sent from the current port. root-priority priority Example:

RP/0/RSP0/CPU0:router(config-mstag-if-inst)# root-priority 4096

Sets the root bridge priority for the BPDUs sent from this port.

Note

Repeat steps 4 to 19 to configure each interface, and repeat steps 13 to 19 to configure each MSTI for each

interface.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring MSTAG Topology Change Propagation
MSTAG Topology Change Propagation is configured simply by configuring connectivity between the MSTAG-enabled interfaces on the two gateway devices: 1. Configure MSTAG as described above. Take note of the untagged subinterface that is used.
2. Configure connectivity between the gateway devices. This may be via an MPLS Pseudowire, or may be a VLAN subinterface if there is a direct physical link.
3. Configure a point-to-point (P2P) cross-connect on each gateway device that contains the untagged subinterface and the link (PW or subinterface) to the other gateway device.
Once the untagged subinterface that is configured for MSTAG is added to the P2P cross-connect, MSTAG Topology Change Propagation is automatically enabled. MSTAG forwards BDPUs via the cross-connect to the other gateway device, so as to signal when a topology change has been detected. For more information on configuring MPLS pseudowire or P2P cross-connects, refer to the Implementing Point to Point Layer 2 Services module.
Verifying MSTAG
These show commands allow you to verify the operation of MSTAG: · show spanning-tree mstag mst-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 468

Implementing Multiple Spanning Tree Protocol

MSTAG Uplink Tracking

· show spanning-tree mstag mst-name bpdu interface interface-name
· show spanning-tree mstag mst-name topology-change flushes
Analogous commands are available for REPAG.
MSTAG Uplink Tracking
The MSTAG Uplink Tracking feature monitors the connectivity of an nPE gateway device to the core or aggregation network. This feature prevents traffic loss if there is a connectivity failure between a gateway router and the core network. This feature also ensures reduction in the frequency of traffic outages and reduced need for redundancy in connectivity from the gateway to the core network.
Multiple Spanning Tree Access Gateway (MSTAG) tracks the connectivity of interfaces that face the core. When an nPE device loses connectivity to the core, it sends start-up BPDUs indicating that all core-facing interfaces are down. This allows the access ring to switch the traffic to go through the other nPE device.
The core connectivity is based on a per-protocol instance. This is because each access ring corresponds to an access ring, and they may use different interfaces to forward traffic to the core. Therefore, it is possible for different protocol instances to have different core connectivity status.
In this topology there are two access rings. Each one is connected to the core through a pair of nPE devices in which MSTAG is configured. MSTAG allows each access ring to run the STP independently. When one of the nPE devices lose core connectivity, it starts sending start-up BPDUs indicating that traffic must flow through the other side of the access ring. Once core connectivity is available, the nPE device starts sending the standard BPDUs. If pre-empt delay is set, it continues to send the start-up BPDUs until the timer expires. For example, if pre-empt delay is configured as ten seconds, the nPE device sends startup BPDUs for the first ten seconds after core connectivity becomes available. After ten seconds, it starts sending standard BPDUs.
Figure 66: MSTAG Uplink Tracking

Core Connectivity Failure The following diagram illustrates how the nPE device sends start-up BPDUs when it loses core connectivity.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 469

Benefits

Figure 67: Core connectivity Failure

Implementing Multiple Spanning Tree Protocol

The device that loses core connectivity starts sending start-up BPDUs. The following diagram illustrates how traffic flows in the access network when an nPE device loses core connectivity.
Figure 68: Active Topology Change

Benefits

Start-up BPDUs are sent from the disconnected router to ensure that it is not used as a path to the core from the access ring. This changes the active topology in the access rings depending on the STP configuration.
The MSTAG Uplink Tracking feature has these benefits: · Reduction in the frequency of traffic outages · Reduced need for redundancy in connectivity from the gateway to the core network

Prerequisites

· Configure MSTAG

Restrictions

Only physical and bundle interfaces, and their sub interfaces can be tracked for core connectivity. Psuedowires themselves cannot be tracked, only the underlying interface carrying the psuedowire traffic can be tracked.

Configure MSTAG Uplink Tracking
Only physical and bundle interfaces, and their sub-interfaces can be tracked for core connectivity. Pseudowires themselves cannot be tracked, only the underlying interface carrying the pseudowire traffic can be tracked.
Perform this task to configure MSTAG Uplink Tracking feature.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 470

Implementing Multiple Spanning Tree Protocol

Running Configuration

/* Configure MSTAG for a protocol instance called `foo', with two interfaces facing the access ring and pre-empt delay of ten seconds */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# spanning-tree mstag foo RP/0/RSP0/CPU0:router(config-mstag)# preempt delay for 10 seconds RP/0/RSP0/CPU0:router(config-mstag)# interface GigabitEthernet0/0/0/0 RP/0/RSP0/CPU0:router(config-mstag-if)# exit RP/0/RSP0/CPU0:router(config-mstag)# interface GigabitEthernet0/0/0/1 RP/0/RSP0/CPU0:router(config-mstag-if)# commit RP/0/RSP0/CPU0:router(config-mstag-if)# root
/* Configure Uplink Tracking by adding core-facing interfaces under the `track' keyword */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# spanning-tree mstag foo RP/0/RSP0/CPU0:router(config-mstag)#track RP/0/RSP0/CPU0:router(config-mstag-track)# interface GigabitEthernet0/0/0/2 RP/0/RSP0/CPU0:router(config-mstag-track)# interface GigabitEthernet0/0/0/3 RP/0/RSP0/CPU0:router(config-mstag-track)# commit
/* When pre-empt timer is zero, traffic flows through interface GigabitEthernet0/0/0/3 as soon as this interface comes up.*/
/* In this configuration, pre-empt delay is set to 10 seconds. Traffic flows through interface GigabitEthernet0/0/0/3, ten seconds after this interface comes up. */

Running Configuration
configure spanning-tree mstag foo interface GigabitEthernet 0/0/0/0 ! interface GigabitEthernet 0/0/0/1 ! track interface GigabitEthernet 0/0/0/2 interface GigabitEthernet 0/0/0/3 ! pre-empt delay for 10 seconds !
!

Verification

Verify the core connectivity status. The following example shows the state of the interfaces that connect the core.

RP/0/0/CPU0:ios#show spanning-tree mstag foo tracked

Core Connectivity Available: True

Tracked Items:

1/2 up

Interface Name

State

-----------------------------------------------

GigabitEthernet0/0/0/3

Down

GigabitEthernet0/0/0/2

Up

-----------------------------------------------

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 471

Configuring PVSTAG or PVRSTAG

Implementing Multiple Spanning Tree Protocol

Configuring PVSTAG or PVRSTAG
This section describes the procedures for configuring PVSTAG: The procedures for configuring PVRSTAG are identical.
Note This section does not describe how to configure data switching. Refer to the Implementing Multipoint Layer 2 Services module for more information.
Enabling PVSTAG
PVSTAG is enabled for a particular VLAN, on a physical interface, by explicit configuration of that physical interface and VLAN for PVSTAG.
Configuring PVSTAG parameters
The configurable PVSTAG parameters for each interface on each VLAN are: · Root Priority and ID · Root cost · Bridge Priority and ID · Port priority and ID · Max Age · Hello Time
For correct operation, these guidelines must be followed when configuring PVSTAG. · Both gateway devices should be configured with a root bridge priority and ID that is better (lower) than the bridge priority and Bridge ID of any device in the access network. It is recommended that you set the root bridge priority and ID to 0 on the gateway devices. · Both gateway devices should be configured with a root cost of 0. · One gateway device should be configured with the bridge priority and ID that is higher than the root bridge priority and ID, but lower than the bridge priority and ID of any other device in the network (including the other gateway device). It is recommended that you set the bridge priority to 0. · The second gateway device should be configured with a bridge priority and ID that is higher than the root bridge priority and ID and the first gateway device bridge priority and ID, but lower than the bridge priority and ID of any device in the access network. It is recommended that you set the bridge priority to 1 for PVSTAG or 4096 for PVRSTAG. (For PVRSTAG, this is the lowest allowable value greater than 0.) · All access devices must be configured with a higher bridge priority than the gateway devices. It is recommended that you use values of 2 or higher for PVSTAG, or 8192 or higher for PVRSTAG. · For each spanning tree instance, the port path cost and other parameters may be configured on the access devices, so as to ensure the desired port is placed into the blocked state when all links are up.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 472

Implementing Multiple Spanning Tree Protocol

Configuring PVSTAG parameters

Caution There are no checks on PVSTAG configuration--misconfiguration may result in incorrect operation of the PVST protocol in the access devices (for example, an STP dispute being detected).
These guidelines are illustrated in the following figure:
Figure 69: PVSTAG Guidelines

Note The configuration steps listed in the following sections show all of the configurable parameters. However, in general, most of these can be retained with the default values.
PVSTAG Topology Restrictions These restrictions are applicable to PVSTAG topology:
· Only a single access device can be attached to the gateway devices.
· Topology change notifications on a single VLAN affect all VLANs and bridge domains on that physical interface.

SUMMARY STEPS

1. configure 2. spanning-tree mstag pvstag protocol instance identifier 3. preempt delay for interval { seconds | minutes | hours } 4. interface type interface-path-id or interface Bundle-Ether bundle-id 5. vlan vlan-id 6. root-priority priority 7. root-id id 8. root-cost cost 9. priority priority 10. bridge-id id 11. port-priority priority

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 473

Configuring PVSTAG parameters

Implementing Multiple Spanning Tree Protocol

DETAILED STEPS

12. port-id id 13. hello-time seconds 14. max age seconds 15. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4
Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. spanning-tree mstag pvstag protocol instance identifier Example:
RP/0/RSP0/CPU0:router(config)# spanning-tree pvstag a RP/0/RSP0/CPU0:router(config-pvstag)#
Enters the PVSTAG configuration submode. preempt delay for interval { seconds | minutes | hours } Example:
RP/0/RSP0/CPU0:router(config-pvstag)# preempt delay for 10 seconds
Specifies the delay period during which startup BPDUs should be sent, before preempting. interface type interface-path-id or interface Bundle-Ether bundle-id Example:
RP/0/RSP0/CPU0:router(config-pvstag)# interface GigabitEthernet0/2/0/30.1 RP/0/RSP0/CPU0:router(config-pvstag-if)# or RP/0/RSP0/CPU0:router(config-pvstag)# interface Bundle-Ether 100 RP/0/RSP0/CPU0:router(config-pvstag-if)#
Enters the PVSTAG interface configuration submode, and enables PVSTAG for the specified port. vlan vlan-id Example:
RP/0/RSP0/CPU0:router(config-pvstag-if)# vlan 200
Enables and configures a VLAN on this interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 474

Implementing Multiple Spanning Tree Protocol

Configuring PVSTAG parameters

Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

root-priority priority Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# root-priority 4096
Sets the root bridge priority for the BPDUs sent from this port. root-id id Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# root-id 0000.0000.0000
Sets the identifier of the root bridge for BPDUs sent from a port. root-cost cost Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# root-cost 10000
Set the root path cost to sent in BPDUs from this interface. priority priority Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# priority 4096
Sets the bridge priority for the current MSTI. For PVSTAG, allowed values are from are 0 through 65535; for PVRSTAG, the allowed values are from 0 through 61440 in multiples of 4096. bridge-id id Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# bridge-id 001c.0000.0011
Sets the bridge ID for the current switch. port-priority priority Example:
RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# port-priority 160
Sets the port priority performance parameter for the MSTI. For PVSTAG, allowed values for port priority are from 0 through 255; for PVRSTAG, the allowed values are from 0 through 240 in multiples of 16. port-id id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 475

Configuring Subinterfaces

Implementing Multiple Spanning Tree Protocol

Step 13 Step 14 Step 15

Example:

RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# port-id 111

Sets the port ID for the current switch. hello-time seconds Example:

RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# hello-time 1

Sets the port hello time in seconds. Allowed values are from 1 through 2. max age seconds Example:

RP/0/RSP0/CPU0:router(config-pvstag-if-vlan)# max age 20

Sets the maximum age performance parameters for the bridge.

Allowed values for the maximum age time for the bridge in seconds are from 6 through 40.

Note

Repeat steps 4 to 14 to configure each interface; repeat steps 5 to 14 to configure each VLAN on each

interface.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring Subinterfaces
For each VLAN that is enabled for PVSTAG on an interface, a corresponding subinterface that matches traffic for that VLAN must be configured. This is used both for data switching and for PVST BPDUs. Follow these guidelines when configuring subinterfaces:
· VLAN 1 is treated as the native VLAN in PVST. Therefore, for VLAN 1, a subinterface that matches untagged packets (encapsulation untagged) must be configured. It may also be necessary to configure a subinterface that matches packets tagged explicitly with VLAN 1 (encapsulation dot1q 1).
· Only dot1q packets are allowed in PVST; Q-in-Q and dot1ad packets are not supported by the protocol, and therefore subinterfaces configured with these encapsulation will not work correctly with PVSTAG.
· Subinterfaces that match a range of VLANs are supported by PVSTAG; it is not necessary to configure a separate subinterface for each VLAN, unless it is desirable for provisioning the data switching.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 476

Implementing Multiple Spanning Tree Protocol

Verifying PVSTAG

· PVSTAG does not support: · Physical interfaces configured in L2 mode · Subinterface configured with a default encapsulation (encapsulation default) · Subinterfaces configured to match any VLAN (encapsulation dot1q any)
For more information about configuring L2 subinterfaces, refer to the Implementing Point to Point Layer 2 Services module.
Verifying PVSTAG
These show commands allow you to verify the operation of PVSTAG or PVRSTAG: · show spanning-tree pvstag mst-name · show spanning-tree pvstag mst-name
In particular, these commands display the subinterface that is being used for each VLAN.
Configuring PVRST
Before you begin Ensure that:
· L2transport subinterfaces with VLAN encapsulation are defined. · L2VPN bridge domains under bridge group for every VLAN running spanning tree are configured, and
corresponding l2transport subinterfaces are configured in the bridge-domain.

SUMMARY STEPS

1. configure 2. spanning-tree pvrst protocol-instance-name 3. apply-group group_name group_name 4. forward-delay seconds 5. maximum age seconds 6. transmit hold-count count 7. vlan vlan_id 8. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:
RP/0/RSP0/CPU0:router# configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 477

Configuring PVRST

Implementing Multiple Spanning Tree Protocol

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

Enters the Global Configuration mode. spanning-tree pvrst protocol-instance-name Example:
RP/0/RSP0/CPU0:router(config)# spanning-tree pvrst stp
Enters the PVRST configuration submode. apply-group group_name group_name Example:
RP/0/RSP0/CPU0:router(config-pvrst)# apply-group groupA groupB
Allows you to apply configuration from one group to another. forward-delay seconds Example:
RP/0/RSP0/CPU0:router(config-pvrst)# forward-delay 10
Allows you to configure bridge forward delay time in seconds. The forward delay is the number of seconds a port waits before changing from its spanning-tree learning and listening states to the forwarding state. The delay time range is from 4 to 30. maximum age seconds Example:
RP/0/RSP0/CPU0:router(config-pvrst)# maximum age 10
Specifies maximum age for the bridge in seconds. The maximum-aging time is the number of seconds a switch waits without receiving spanning-tree configuration messages before attempting a reconfiguration. The maximum age range is from 6 to 40 seconds. transmit hold-count count Example:
RP/0/RSP0/CPU0:router(config-pvrst)# transmit hold-count 4
Allows you to configure bridge transmit hold count. The hold count range is from 1 to 10. vlan vlan_id Example:
RP/0/RSP0/CPU0:router(config-pvrst)#
Allows you to configure PVRST on a VLAN. The VLAN ID range is from 1 to 4094.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 478

Implementing Multiple Spanning Tree Protocol

Configuring MVRP-lite

Step 8

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring MVRP-lite
This section describes the procedure for configuring MVRP-lite:
Enabling MVRP-lite
When MVRP-lite is configured, it is automatically enabled on all interfaces where MSTP is enabled. MSTP must be configured before MVRP can be enabled. For more information on configuring MSTP, see Configuring MSTP.
Configuring MVRP-lite parameters
The configurable MVRP-lite parameters are: · Periodic Transmission · Join Time · Leave Time · Leave-all Time

SUMMARY STEPS

1. configure 2. spanning-tree mst protocol instance identifier 3. mvrp static 4. periodic transmit [ interval seconds ] 5. join-time milliseconds 6. leave-time seconds 7. leaveall-time seconds 8. Use the commit or end command.

DETAILED STEPS

Step 1

configure Example:
RP/0/RSP0/CPU0:router# configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 479

Configuring MVRP-lite parameters

Implementing Multiple Spanning Tree Protocol

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

Enters Global Configuration mode. spanning-tree mst protocol instance identifier Example:
RP/0/RSP0/CPU0:router(config)# spanning-tree mst aRP/0/RSP0/CPU0:router(config-mstp)#
Enters the MSTP configuration submode. mvrp static Example:
RP/0/RSP0/CPU0:router(config-mstp)#mvrp static
Configures MVRP to run over this MSTP protocol instance. periodic transmit [ interval seconds ] Example:
RP/0/RSP0/CPU0:router(config-mvrp)# periodic transmit
Sends periodic Multiple VLAN Registration Protocol Data Unit (MVRPDU) on all active ports. join-time milliseconds Example:
RP/0/RSP0/CPU0:router(config-mvrp)# hello-time 1
Sets the join time for all active ports. leave-time seconds Example:
RP/0/RSP0/CPU0:router(config-mvrp)# leave-time 20
Sets the leave time for all active ports. leaveall-time seconds Example:
RP/0/RSP0/CPU0:router(config-mvrp)# leaveall-time 20
Sets the leave all time for all active ports. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 480

Implementing Multiple Spanning Tree Protocol

Verifying MVRP-lite

end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.
Verifying MVRP-lite
These show commands allow you to verify the operation of MVRP-lite:
· show ethernet mvrp mad
· show ethernet mvrp status
· show ethernet mvrp statistics
Configuration Examples for Implementing MSTP
This section provides configuration examples for the following:
Configuring MSTP: Examples
This example shows MSTP configuration for a single spanning-tree instance with MSTP enabled on a single interface:
config spanning-tree mst example
name m1 revision 10 forward-delay 20 maximum hops 40 maximum age 40 transmit hold-count 8 provider-bridge bringup delay for 60 seconds flush containment disable instance 101
vlans-id 101-110 priority 8192 ! interface GigabitEthernet0/0/0/0 hello-time 1 external-cost 10000 link-type point-to-point portfast guard root guard topology-change instance 101 cost 10000 instance 101 port-priority 160 ! !
This example shows the output from the show spanning-tree mst command, which produces an overview of the spanning tree protocol state:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 481

Configuring MSTP: Examples

Implementing Multiple Spanning Tree Protocol

# show spanning-tree mst example
Role: ROOT=Root, DSGN=Designated, ALT=Alternate, BKP=Backup, MSTR=Master State: FWD=Forwarding, LRN=Learning, BLK=Blocked, DLY=Bringup Delayed
Operating in dot1q mode

MSTI 0 (CIST):

VLANS Mapped: 1-9,11-4094

CIST Root

Priority 4096

Address

6262.6262.6262

This bridge is the CIST root

Ext Cost 0

Root ID

Priority 4096

Address

6262.6262.6262

This bridge is the root

Int Cost 0

Max Age 20 sec, Forward Delay 15 sec

Bridge ID Priority 4096 (priority 4096 sys-id-ext 0)

Address

6262.6262.6262

Max Age 20 sec, Forward Delay 15 sec

Max Hops 20, Transmit Hold count 6

Interface Port ID

Role State Designated

Port ID

Pri.Nbr Cost

Bridge ID

Pri.Nbr

------------ ------- --------- ---- ----- -------------------- -------

Gi0/0/0/0 128.1 20000

DSGN FWD 4096 6262.6262.6262 128.1

Gi0/0/0/1 128.2 20000

DSGN FWD 4096 6262.6262.6262 128.2

Gi0/0/0/2 128.3 20000

DSGN FWD 4096 6262.6262.6262 128.3

Gi0/0/0/3 128.4 20000

---- BLK ----- -------------- -------

MSTI 1:

VLANS Mapped: 10

Root ID

Priority 4096

Address

6161.6161.6161

Int Cost 20000

Max Age 20 sec, Forward Delay 15 sec

Bridge ID

Priority 32768 (priority 32768 sys-id-ext 0)

Address

6262.6262.6262

Max Age 20 sec, Forward Delay 15 sec

Max Hops 20, Transmit Hold count 6

Interface Port ID

Role State Designated

Port ID

Pri.Nbr Cost

Bridge ID

Pri.Nbr

------------ ------- --------- ---- ----- -------------------- -------

Gi0/0/0/0 128.1 20000

ROOT FWD 4096 6161.6161.6161 128.1

Gi0/0/0/1 128.2 20000

ALT BLK 4096 6161.6161.6161 128.2

Gi0/0/0/2 128.3 20000

DSGN FWD 32768 6262.6262.6262 128.3

Gi0/0/0/3 128.4 20000

---- BLK ----- -------------- -------

=========================================================================
In the show spanning-tree mst example output, the first line indicates whether MSTP is operating in dot1q or the Provider Bridge mode, and this information is followed by details for each MSTI.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 482

Implementing Multiple Spanning Tree Protocol

Configuring MSTP: Examples

For each MSTI, the following information is displayed: · The list of VLANs for the MSTI. · For the CIST, the priority and bridge ID of the CIST root, and the external path cost to reach the CIST root. The output also indicates if this bridge is the CIST root. · The priority and bridge ID of the root bridge for this MSTI, and the internal path cost to reach the root. The output also indicates if this bridge is the root for the MSTI. · The max age and forward delay times received from the root bridge for the MSTI. · The priority and bridge ID of this bridge, for this MSTI. · The maximum age, forward delay, max hops and transmit hold-count for this bridge (which is the same for every MSTI). · A list of MSTP-enabled interfaces. For each interface, the following information is displayed: · The interface name · The port priority and port ID for this interface for this MSTI. · The port cost for this interface for this MSTI. · The current port role: · DSGN--Designated: This is the designated port on this LAN, for this MSTI · ROOT--Root: This is the root port for the bridge for this MSTI. · ALT--Alternate: This is an alternate port for this MSTI. · BKP--Backup: This is a backup port for this MSTI · MSTR--Master: This is a boundary port that is a root or alternate port for the CIST.
The interface is down, or the bringup delay timer is running and no role has been assigned yet. · The current port state:
· BLK--The port is blocked. · LRN--The port is learning. · FWD--The port is forwarding. · DLY--The bringup-delay timer is running.
· If the port is a boundary port, and not CIST and the port is not designated, then only the BOUNDARY PORT is displayed and the remaining information is not displayed.
· If the port is not up, or the bringup delay timer is running, no information is displayed for the remaining fields. Otherwise, the bridge priority and bridge ID of the designated bridge on the LAN that the interface connects to is displayed, followed by the port priority and port ID of the designated port on the LAN. If the port role is Designated, then the information for this bridge or port is displayed.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 483

Configuring MSTP: Examples

Implementing Multiple Spanning Tree Protocol

The following example shows the output from the show spanning-tree mst command, which produces more detailed information regarding interface state than the standard command as described above:
# show spanning-tree mst a interface GigabitEthernet0/1/2/1
GigabitEthernet0/1/2/1 Cost: 20000 link-type: point-to-point hello-time 1 Portfast: no BPDU Guard: no Guard root: no Guard topology change: no BPDUs sent 492, received 3
MST 3: Edge port: Boundary : internal Designated forwarding Vlans mapped to MST 3: 1-2,4-2999,4000-4094 Port info port id 128.193 cost 200000 Designated root address 0050.3e66.d000 priority 8193 cost 20004 Designated bridge address 0002.172c.f400 priority 49152 port id 128.193 Timers: message expires in 0 sec, forward delay 0, forward transitions 1 Transitions to reach this state: 12
The output includes interface information about the interface which applies to all MSTIs:
· Cost
· link-type
· hello-time
· portfast (including whether BPDU guard is enabled)
· guard root
· guard topology change
· BPDUs sent, received.

It also includes information specific to each MSTI: · Port ID, priority, cost · BPDU information from root (bridge ID, cost, and priority) · BPDU information being sent on this port (Bridge ID, cost, priority) · State transitions to reach this state. · Topology changes to reach this state. · Flush containment status for this MSTI.

This example shows the output of show spanning-tree mst errors, which produces information about interfaces that are configured for MSTP but where MSTP is not operational. Primarily this shows information about interfaces which do not exist:

# show spanning-tree mst a errors

Interface

Error

-------------------------------

GigabitEthernet1/2/3/4 Interface does not exist.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 484

Implementing Multiple Spanning Tree Protocol

Configuring MSTAG: Examples

This example shows the output of show spanning-tree mst configuration, which displays the VLAN ID to MSTI mapping table. It also displays the configuration digest which is included in the transmitted BPDUs--this must match the digest received from other bridges in the same MSTP region:

# show spanning-tree mst a configuration

Name

leo

Revision

2702

Config Digest 9D-14-5C-26-7D-BE-9F-B5-D8-93-44-1B-E3-BA-08-CE

Instance Vlans mapped

-------- -------------------------------

0

1-9,11-19,21-29,31-39,41-4094

1

10,20,30,40

------------------------------------------

This example shows the output of show spanning-tree mst, which produces details on the BPDUs being output and received on a given local interface:

Note Several received packets can be stored in case of MSTP operating on a shared LAN.

# show spanning-tree mst a bpdu interface GigabitEthernet0/1/2/2 direction transmit
MSTI 0 (CIST): Root ID : 0004.9b78.0800 Path Cost : 83 Bridge ID : 0004.9b78.0800 Port ID : 12 Hello Time : 2 ...
This example shows the output of show spanning-tree mst, which displays details about the topology changes that have occurred for each MSTI on each interface:
# show spanning-tree mst M topology-change flushes instance$
MSTI 1:

Interface

Last TC

Reason

Count

------------ -------------------- -------------------------------- -----

Te0/0/0/1

04:16:05 Mar 16 2010 Role change: DSGN to ----

10

#

#

# show spanning-tree mst M topology-change flushes instance$

MSTI 0 (CIST):

Interface -----------Te0/0/0/1 #

Last TC -------------------04:16:05 Mar 16 2010

Reason

Count

-------------------------------- -----

Role change: DSGN to ----

10

Configuring MSTAG: Examples
This example shows MSTAG configuration for a single spanning-tree instance on a single interface:
config interface GigabitEthernet0/0/0/0.1 l2transport
encapsulation untagged ! spanning-tree mstag example
preempt delay for 60 seconds

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 485

Configuring MSTAG: Examples

Implementing Multiple Spanning Tree Protocol

interface GigabitEthernet0/0/0/0.1 name m1 revision 10 external-cost 0 bridge-id 0.0.1 port-id 1 maximum age 40 provider-bridge hello-time 1 instance 101 edge-mode vlans-id 101-110 root-priority 0 root-id 0.0.0 cost 0 priority 0 port-priority 0 !
! !

This example shows additional configuration for MSTAG Topology Change Propagation:

l2vpn xconnect group example p2p mstag-example interface GigabitEthernet0/0/0/0.1 neighbor 123.123.123.1 pw-id 100 ! !
!

This example shows the output of show spanning-tree mstag:

# show spanning-tree mstag A

GigabitEthernet0/0/0/1

Preempt delay is disabled.

Name:

6161:6161:6161

Revision:

0

Max Age:

20

Provider Bridge: no

Bridge ID:

6161.6161.6161

Port ID:

1

External Cost: 0

Hello Time:

2

Active:

no

BPDUs sent:

0

MSTI 0 (CIST):

VLAN IDs:

1-9,32-39,41-4094

Role:

Designated

Bridge Priority: 32768

Port Priority: 128

Cost:

0

Root Bridge:

6161.6161.6161

Root Priority: 32768

Topology Changes: 123

MSTI 2

VLAN IDs:

10-31

Role:

Designated

Bridge Priority: 32768

Port Priority: 128

Cost:

0

Root Bridge:

6161.6161.6161

Root Priority: 32768

Topology Changes: 123

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 486

Implementing Multiple Spanning Tree Protocol

Configuring MSTAG: Examples

MSTI 10

VLAN IDs:

40

Role:

Root (Edge mode)

Bridge Priority: 32768

Port Priority: 128

Cost:

200000000

Root Bridge:

6161.6161.6161

Root Priority: 61440

Topology Changes: 0

This example shows the output of show spanning-tree mstag bpdu interface, which produces details on the BPDUs being output and received on a given local interface:

RP/0/RSP0/CPU0:router#show spanning-tree mstag foo bpdu interface GigabitEthernet 0/0/0/0

Transmitted:

MSTI 0 (CIST):

ProtocolIdentifier: 0

ProtocolVersionIdentifier: 3

BPDUType: 2

CISTFlags: Top Change Ack 0

Agreement

1

Forwarding

1

Learning

1

Role

3

Proposal

0

Topology Change 0

CISTRootIdentifier: priority 8, MSTI 0, address 6969.6969.6969

CISTExternalPathCost: 0

CISTRegionalRootIdentifier: priority 8, MSTI 0, address 6969.6969.6969

CISTPortIdentifierPriority: 8

CISTPortIdentifierId: 1

MessageAge: 0

MaxAge: 20

HelloTime: 2

ForwardDelay: 15

Version1Length: 0

Version3Length: 80

FormatSelector: 0

Name: 6969:6969:6969

Revision: 0

MD5Digest: ac36177f 50283cd4 b83821d8 ab26de62

CISTInternalRootPathCost: 0

CISTBridgeIdentifier: priority 8, MSTI 0, address 6969.6969.6969

CISTRemainingHops: 20

MSTI 1:

MSTIFlags: Master

0

Agreement

1

Forwarding

1

Learning

1

Role

3

Proposal

0

Topology Change 0

MSTIRegionalRootIdentifier: priority 8, MSTI 1, address 6969.6969.6969

MSTIInternalRootPathCost: 0

MSTIBridgePriority: 1

MSTIPortPriority: 8

MSTIRemainingHops: 20

This example shows the output of show spanning-tree mstag topology-change flushes, which displays details about the topology changes that have occurred for each interface:

#show spanning-tree mstag b topology-change flushes

MSTAG Protocol Instance b

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 487

Configuring PVSTAG: Examples

Implementing Multiple Spanning Tree Protocol

Interface -----------Gi0/0/0/1 Gi0/0/0/2

Last TC ------------------18:03:24 2009-07-14 21:05:04 2009-07-15

Reason

Count

-------------------------------- -----

Gi0/0/0/1.10 egress TCN

65535

Gi0/0/0/2.1234567890 ingress TCN

2

Configuring PVSTAG: Examples

This example shows PVSTAG configuration for a single VLAN on a single interface:

config spanning-tree pvstag example
preempt delay for 60 seconds interface GigabitEthernet0/0/0/0
vlan 10 root-priority 0 root-id 0.0.0 root-cost 0 priority 0 bridge-id 0.0.1 port-priority 0 port-id 1 max age 40 hello-time 1
! ! !

This example shows the output of show spanning-tree pvstag:

# show spanning-tree pvstag interface GigabitEthernet0/0/0/1

GigabitEthernet0/0/0/1

VLAN 10

Preempt delay is disabled.

Sub-interface: GigabitEthernet0/0/0/1.20 (Up)

Max Age:

20

Root Priority: 0

Root Bridge:

0000.0000.0000

Cost:

0

Bridge Priority: 32768

Bridge ID:

6161.6161.6161

Port Priority: 128

Port ID:

1

Hello Time:

2

Active:

no

BPDUs sent:

0

Topology Changes: 123

VLAN 20

Configuring PVSTAG on a Cluster with a Satellite: Example
This example shows application of PVSTAG in a cluster illustrated in the following network topology diagram, For higher scale fanout, the cluster has satellite switches. The cluster provides L3 termination through a routed interface (BVI). There is no VPLS in the core. PVSTAG is configured in this scenario with the single purpose of eliminating full spanning tree from the cluster.
To simplify this PVSTAG example, there is only one access switch in the network topology. In a real scenario, you can replace this with a ring of access switches.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 488

Implementing Multiple Spanning Tree Protocol Figure 70: PVSTAG on a Cluster with a Satellite

Configuring PVSTAG on a Cluster with a Satellite: Example

Cluster Configuration:
! spanning-tree pvstag inst4 interface GigabitEthernet101/0/0/23 vlan 4 root-priority 4096 root-id 0011.0011.0011 priority 8192 bridge-id 0011.0011.0011 port-priority 128 ! ! interface GigabitEthernet102/0/0/23 vlan 4 root-priority 4096 root-id 0011.0011.0011 priority 8192 bridge-id 0022.0022.0022 port-priority 128 ! ! ! interface Loopback100 ipv4 address 8.8.8.8 255.255.255.255 ! interface Loopback201 ipv4 address 9.9.9.9 255.255.255.255
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 489

Configuring PVSTAG on a Cluster with a Satellite: Example

Implementing Multiple Spanning Tree Protocol

! interface GigabitEthernet101/0/0/23 cdp ! interface GigabitEthernet102/0/0/23 cdp ! interface GigabitEthernet101/0/0/23.4 l2transport encapsulation dot1q 4 rewrite ingress tag pop 1 symmetric ! interface GigabitEthernet102/0/0/23.4 l2transport encapsulation dot1q 4 rewrite ingress tag pop 1 symmetric ! interface TenGigE0/0/0/0 ipv4 point-to-point ipv4 unnumbered Loopback100 nv satellite-fabric-link satellite 101 remote-ports GigabitEthernet 0/0/0-43 ! ! ! interface TenGigE0/0/2/0 nv edge interface ! ! ! interface TenGigE0/0/2/1 nv edge interface ! ! ! interface TenGigE1/0/0/0 ipv4 point-to-point ipv4 unnumbered Loopback201 nv satellite-fabric-link satellite 102 remote-ports GigabitEthernet 0/0/0-43 ! ! ! interface BVI5 ipv4 address 4.4.4.1 255.255.255.0 ! l2vpn bridge group bg1 bridge-domain bd1 interface GigabitEthernet101/0/0/23.4 ! interface GigabitEthernet102/0/0/23.4 ! routed interface BVI5 ! ! ! nv satellite 101 type asr9000v

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 490

Implementing Multiple Spanning Tree Protocol

Configuring PVRST: Example

serial-number CAT1641U0QV ipv4 address 10.22.1.2 ! satellite 102 type asr9000v serial-number CAT1635U14B ipv4 address 10.23.1.2 !
3750 Configuration:
! interface GigabitEthernet4/0/23 switchport trunk encapsulation dot1q switchport trunk allowed vlan 4 switchport mode trunk ! interface GigabitEthernet4/0/24 switchport trunk encapsulation dot1q switchport trunk allowed vlan 4 switchport mode trunk ! interface Vlan4 ip address 4.4.4.2 255.255.255.0 !
Configuring PVRST: Example
This example shows a sample PVRST configuration.
(config)# spanning-tree pvrst stp1 (config-pvrst)# forward-delay 6 (config-pvrst)# interface GigabitEthernet 0/1/1/2 hello-time 2 (config-pvrst)# maximum age 35 (config-pvrst)# transmit hold-count 9 (config-pvrst)# vlan 666 priority 4096 (config-pvrst)# commit
Configuring MVRP-Lite: Examples
This example shows MVRP-lite configuration:
config spanning-tree mst example
mvrp static periodic transmit join-time 200 leave-time 30 leaveall-time 10
! !
This example shows the output of show ethernet mvrp mad:
RP/0/RSP0/CPU0:router# show ethernet mvrp mad interface GigabitEthernet 0/1/0/1 GigabitEthernet0/1/0/1
Participant Type: Full; Point-to-Point: Yes Admin Control: Applicant Normal; Registrar Normal
LeaveAll Passive (next in 5.92s); periodic disabled

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 491

Configuring MVRP-Lite: Examples

Implementing Multiple Spanning Tree Protocol

Leave in 25.70s; Join not running Last peer 0293.6926.9585; failed registrations: 0

VID ----
1 283

Applicant --------------------Very Anxious Observer Quiet Passive

Registrar --------Leaving Empty

This example shows the output of show ethernet mvrp status:

RP/0/RSP0/CPU0:router# show ethernet mvrp status interface GigabitEthernet 0/1/0/1

GigabitEthernet0/1/0/1

Statically declared: 1-512,768,980-1034

Dynamically declared: 2048-3084

Registered:

1-512

This example shows the output of show ethernet mvrp statistics:

RP/0/RSP0/CPU0:router# show ethernet mvrp statistics interface GigabitEthernet 0/1/0/1

GigabitEthernet0/1/0/1

MVRPDUs TX: 1245

MVRPDUs RX:

7

Dropped TX:

0

Dropped RX:

42

Invalid RX:

12

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 492

9 C H A P T E R
Implementing of Layer 2 Access Lists
An Ethernet services access control list (ACL) consists of one or more access control entries (ACE) that collectively define the Layer 2 network traffic profile. This profile can then be referenced by Cisco IOS XR software features. Each Ethernet services ACL includes an action element (permit or deny) based on criteria such as source and destination address, Class of Service (CoS), or VLAN ID. This module describes tasks required to implement Ethernet services access lists on your Cisco ASR 9000 Series Aggregation Services Router.

Note For a complete description of the Ethernet services access list commands listed in this module, refer to the Ethernet Services (Layer 2) Access List Commands on Cisco ASR 9000 Series Routers module in the Cisco ASR 9000 Series Aggregation Services Router IP Addresses and Services Command Reference publication.

Feature History for Implementing Ethernet Services Access Lists on Cisco ASR 9000 Series Routers

Release

Modification

Release 3.7.2

This feature was introduced on Cisco ASR 9000 Series Routers.

· Prerequisites for Implementing Layer 2 Access Lists, on page 493 · Information About Implementing Layer 2 Access Lists, on page 494 · How to Implement Layer 2 Access Lists, on page 496 · Configuration Examples for Implementing Layer 2 Access Lists, on page 501

Prerequisites for Implementing Layer 2 Access Lists
This prerequisite applies to implement access lists and prefix lists:
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 493

Information About Implementing Layer 2 Access Lists

Implementing of Layer 2 Access Lists

Information About Implementing Layer 2 Access Lists
Ethernet Services Access Lists Feature Highlights
Ethernet services access lists have these feature highlights: · The ability to clear counters for an access list using a specific sequence number. · The ability to copy the contents of an existing access list to another access list. · Allows users to apply sequence numbers to permit or deny statements and to resequence, add, or remove such statements from a named access list. · Provides packet filtering on interfaces to forward packets. · Ethernet services ACLs can be applied on interfaces, VLAN subinterfaces, bundle-Ethernet interfaces, EFPs, and EFPs over bundle-Ethernet interfaces. Atomic replacement of Ethernet services ACLs is supported on these physical interfaces.
Purpose of Ethernet Services Access Lists
Using ACL-based forwarding (ABF), Ethernet services access lists perform packet filtering to control which packets move through the network and where. Such controls help to limit incoming and outgoing network traffic and restrict the access of users and devices to the network at the port level.
How an Ethernet Services Access List Works
An Ethernet services access list is a sequential list consisting of permit and deny statements that apply to Layer 2 configurations. The access list has a name by which it is referenced. An access list can be configured and named, but it is not in effect until the access list is referenced by a command that accepts an access list. Multiple commands can reference the same access list. An access list can control Layer 2 traffic arriving at the router or leaving the router, but not traffic originating at the router.
Ethernet Services Access List Process and Rules
Use this process and rules when configuring an Ethernet services access list: · The software tests the source or destination address of each packet being filtered against the conditions in the access list, one condition (permit or deny statement) at a time. · If a packet does not match an access list statement, the packet is then tested against the next statement in the list. · If a packet and an access list statement match, the remaining statements in the list are skipped and the packet is permitted or denied as specified in the matched statement. The first entry that the packet matches determines whether the software permits or denies the packet. That is, after the first match, no subsequent entries are considered. · If the access list denies the address or protocol, the software discards the packet.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 494

Implementing of Layer 2 Access Lists

Helpful Hints for Creating Ethernet Services Access Lists

· If no conditions match, the software drops the packet because each access list ends with an unwritten or implicit deny statement. That is, if the packet has not been permitted or denied by the time it was tested against each statement, it is denied.
· The access list should contain at least one permit statement or else all packets are denied.
· Because the software stops testing conditions after the first match, the order of the conditions is critical. The same permit or deny statements specified in a different order could result in a packet being passed under one circumstance and denied in another circumstance.
· Inbound access lists process packets arriving at the router. Incoming packets are processed before being routed to an outbound interface. An inbound access list is efficient because it saves the overhead of routing lookups if the packet is to be discarded because it is denied by the filtering tests. If the packet is permitted by the tests, it is then processed for routing. For inbound lists, permit means continue to process the packet after receiving it on an inbound interface; deny means discard the packet.
· Outbound access lists process packets before they leave the router. Incoming packets are routed to the outbound interface and then processed through the outbound access list. For outbound lists, permit means send it to the output buffer; deny means discard the packet.
· An access list can not be removed if that access list is being applied by an access group in use. To remove an access list, remove the access group that is referencing the access list and then remove the access list.
· An access list must exist before you can use the ethernet-services access-group command.
Helpful Hints for Creating Ethernet Services Access Lists
Consider these when creating an Ethernet services access list: · Create the access list before applying it to an interface.
· Organize your access list so that more specific references appear before more general ones.
Source and Destination Addresses
Source MAC address and destination MAC address are two of the most typical fields on which to base an access list. Specify source MAC addresses to control packets from certain networking devices or hosts. Specify destination MAC addresses to control packets being sent to certain networking devices or hosts.
Ethernet Services Access List Entry Sequence Numbering
The ability to apply sequence numbers to Ethernet services access-list entries simplifies access list changes. The access list entry sequence numbering feature allows you to add sequence numbers to access-list entries and resequence them. When you add a new entry, you choose the sequence number so that it is in a desired position in the access list. If necessary, entries currently in the access list can be resequenced to create room to insert the new entry.
Sequence Numbering Behavior
These details the sequence numbering behavior: · If entries with no sequence numbers are applied, the first entry is assigned a sequence number of 10, and successive entries are incremented by 10. The maximum sequence number is 2147483646. If the generated sequence number exceeds this maximum number, this message is displayed:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 495

How to Implement Layer 2 Access Lists

Implementing of Layer 2 Access Lists

Exceeded maximum sequence number.
· If you provide an entry without a sequence number, it is assigned a sequence number that is 10 greater than the last sequence number in that access list and is placed at the end of the list.
· ACL entries can be added without affecting traffic flow and hardware performance.
· Distributed support is provided so that the sequence numbers of entries in the route-switch processor (RSP) and interface card are synchronized at all times.

How to Implement Layer 2 Access Lists

Restrictions for Implementing Layer 2 Access Lists
These restrictions apply for implementing Ethernet services access lists: · Ethernet services access lists are not supported over management interfaces. · NetIO (software slow path) is not supported for Ethernet services access lists. · Match on inner VLAN 0 and outer VLAN 0 is not supported on Cisco ASR 9000 High Density 100GE Ethernet Line Card and ASR 9000 Enhanced Ethernet Line Card.

Configuring Ethernet Services Access Lists
This task configures an Ethernet services access list.

SUMMARY STEPS

1. configure 2. ethernet-service access-list name 3. [ sequence-number ] { permit | deny } { src-mac-address src-mac-mask | any | host } [ { ethertype-number
} | vlan min-vlan-ID [ max-vlan-ID ] ] [ cos cos-value ] [ dei ] [ inner-vlan min-vlan-ID [ max-vlan-ID] ] inner-cos cos-value ] [ inner-dei ] 4. Repeat Step 3 as necessary, adding statements by sequence number where you planned. Use the no sequence-number command to delete an entry. 5. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. ethernet-service access-list name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 496

Implementing of Layer 2 Access Lists

What to Do Next

Step 3
Step 4 Step 5

Example:
RP/0/RSP0/CPU0:router(config)# ethernet-service access-list L2ACL2
Enters Ethernet services access list configuration mode and configures access list L2ACL2.
[ sequence-number ] { permit | deny } { src-mac-address src-mac-mask | any | host } [ { ethertype-number } | vlan min-vlan-ID [ max-vlan-ID ] ] [ cos cos-value ] [ dei ] [ inner-vlan min-vlan-ID [ max-vlan-ID] ] inner-cos cos-value ] [ inner-dei ] Example:
RP/0/RSP0/CPU0:router(config-es-al)# 0 permit 1.2.3 3.2.1 or RP/0/RSP0/CPU0:router(config-es-al)# 30 deny any dei
Specifies one or more conditions allowed or denied, which determines whether the packet is passed or dropped.
Repeat Step 3 as necessary, adding statements by sequence number where you planned. Use the no sequence-number command to delete an entry. Allows you to revise an access list.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

What to Do Next
After creating an Ethernet services access list, you must apply it to an interface. See the Applying Ethernet Services Access Lists section for information about how to apply an access list.
Applying Ethernet Services Access Lists
After you create an access list, you must reference the access list to make it work. Access lists can be applied on either outbound or inbound interfaces. This section describes guidelines on how to accomplish this task for both terminal lines and network interfaces.
For inbound access lists, after receiving a packet, Cisco IOS XR software checks the source MAC address of the packet against the access list. If the access list permits the address, the software continues to process the packet. If the access list rejects the address, the software discards the packet.
For outbound access lists, after receiving and routing a packet to a controlled interface, the software checks the source MAC address of the packet against the access list. If the access list permits the address, the software sends the packet. If the access list rejects the address, the software discards the packet.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 497

Controlling Access to an Interface

Implementing of Layer 2 Access Lists

Note An empty access-list (containing no access control elements) cannot be applied on an interface.

Controlling Access to an Interface
This task applies an access list to an interface to restrict access to that interface. Access lists can be applied on either outbound or inbound interfaces.

SUMMARY STEPS

1. configure 2. interface type instance 3. ethernet-services access-group access-list-name { ingress | egress } 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. interface type instance Example:
RP/0/RSP0/CPU0:router(config)# interface gigabitethernet 0/2/0/
Configures an interface and enters interface configuration mode. · The type argument specifies an interface type. For more information on interface types, use the question mark (?) online help function. · The instance argument specifies either a physical interface instance or a virtual instance. · The naming notation for a physical interface instance is rack/slot/module/port. The slash (/) between values is required as part of the notation. · The number range for a virtual interface instance varies depending on the interface type.

Step 3

ethernet-services access-group access-list-name { ingress | egress } Example:
RP/0/RSP0/CPU0:router(config-if)# ethernet-services access-group p-in-filter ingress RP/0/RSP0/CPU0:router(config-if)# ethernet-services access-group p-out-filter egress

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 498

Implementing of Layer 2 Access Lists

Copying Ethernet Services Access Lists

Step 4

Controls access to an interface. · Use the access-list-name argument to specify a particular Ethernet services access list. · Use the ingress keyword to filter on inbound packets or the egress keyword to filter on outbound packets.
This example applies filters on packets inbound and outbound from GigabitEthernet interface 0/2/0/2.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Copying Ethernet Services Access Lists
This task copies an Ethernet services access list.

SUMMARY STEPS

1. copy access-list ethernet-service source-acl destination-acl 2. show access-lists ethernet-services [ access-list-name | maximum | standby | summary ]

DETAILED STEPS

Step 1

copy access-list ethernet-service source-acl destination-acl Example:
RP/0/RSP0/CPU0:router# copy access-list ethernet-service list-1 list-2
Creates a copy of an existing Ethernet services access list. · Use the source-acl argument to specify the name of the access list to be copied.
· Use the destination-acl argument to specify where to copy the contents of the source access list. · The destination-acl argument must be a unique name; if the destination-acl argument name exists for an access list, the access list is not copied.

Step 2

show access-lists ethernet-services [ access-list-name | maximum | standby | summary ] Example:
RP/0/RSP0/CPU0:router# show access-lists ethernet-services list-2
(Optional) Displays the contents of a named Ethernet services access list. For example, you can verify the output to see that the destination access list list-2 contains all the information from the source access list list-1.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 499

Resequencing Access-List Entries

Implementing of Layer 2 Access Lists

Resequencing Access-List Entries
This task shows how to reassign sequence numbers to entries in a named access list. Resequencing an access list is optional.

SUMMARY STEPS

1. resequence access-list ethernet-service access-list-name [ starting-sequence-number [ increment ] ] 2. Use the commit or end command. 3. show access-lists ethernet-services [ access-list-name | maximum | standby | summary ]

DETAILED STEPS

Step 1
Step 2 Step 3

resequence access-list ethernet-service access-list-name [ starting-sequence-number [ increment ] ] Example:

RP/0/RSP0/CPU0:router# resequence access-list ethernet-service L2ACL2 20 10

(Optional) Resequences the specified Ethernet services access list using the desired starting sequence number and the increment of sequence numbers.
· This example resequences an Ethernet services access list named L2ACL2. The starting sequence number is 20 and the increment is 10. If you do not select an increment, the default increment 10 is used.

Note

If during the resequencing process it is determined that the ending number will exceed the maximum sequence

number allowed, the configuration will not take effect and will be rejected. The sequence numbers will not

be changed.

Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.
show access-lists ethernet-services [ access-list-name | maximum | standby | summary ] Example:

RP/0/RSP0/CPU0:router# show access-lists ethernet-services L2ACL2

(Optional) Displays the contents of a named Ethernet services access list. · Review the output to see that the access list includes the updated information.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 500

Implementing of Layer 2 Access Lists

Configuration Examples for Implementing Layer 2 Access Lists

Configuration Examples for Implementing Layer 2 Access Lists
Resequencing Entries in an Access List: Example
This example shows access-list resequencing. The starting value in the resequenced access list is 1, and the increment value is 2. The subsequent entries are ordered based on the increment values that users provide, and the range is from 1 to 2147483646.
When an entry with no sequence number is entered, by default, it has a sequence number of 10 more than the last entry in the access list.
ethernet service access-list acl_1 10 permit 1.2.3 4.5.6 20 deny 2.3.4 5.4.3 30 permit 3.1.2 5.3.4 cos 5
resequence access-list ethernet service acl_1 10 20
show access-list ethernet-service acl1_1
ipv4 access-list acl_1 10 permit 1.2.3 4.5.6 30 deny 2.3.4 5.4.3 50 permit 3.1.2 5.3.4 cos 5
Adding Entries with Sequence Numbers: Example
In this example, a new entry is added to Ethernet services access list acl_5.
ethernet-service access-list acl_5 2 permit 1.2.3 5.4.3 5 permit 2.3.4. 6.5.4 cos 3 10 permit any dei 20 permit 6.5.4 1.3.5 VLAN vlan3
configure ethernet-service access-list acl_5 15 permit 1.5.7 7.5.1 end
ethernet-service access-list acl_5 2 permit 1.2.3 5.4.3 5 permit 2.3.4. 6.5.4 cos 3 10 permit any dei 15 permit 1.5.7 7.5.1 20 permit 6.5.4 1.3.5 VLAN vlan3

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 501

Adding Entries with Sequence Numbers: Example

Implementing of Layer 2 Access Lists

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 502

1 0 C H A P T E R

Implementing VXLAN

This module provides conceptual information for VXLAN in general and configuration information for layer 2 VXLAN on Cisco ASR 9000 Series Router. For configuration information of layer 3 VXLAN, see Implementing L3 VXLAN chapter in the Cisco ASR 9000 Series Aggregation Services Router MPLS Layer 3 VPN Configuration Guide. VXLAN provides the same Ethernet Layer 2 network services as VLAN, but with greater extensibility and flexibility.
Table 8: Feature History for VXLAN

Release Release 5.2.0
Release 5.3.1

Modification
This feature was introduced on Cisco ASR 9000 Series Router.
VXLAN Anycast Gateway feature was introduced

· Prerequisites for implementing VXLANs, on page 503 · Information about Implementing VXLAN, on page 503 · Configuring a Layer 2 VXLAN gateway, on page 506 · Configuration Example for Implementing Layer 2 VXLAN Gateway, on page 511

Prerequisites for implementing VXLANs
This prerequisite applies to implementing VXLANs:
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command.
If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

Information about Implementing VXLAN
To implement VXLAN, you must understand these concepts:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 503

VXLAN

Implementing VXLAN

VXLAN

VXLAN provides the same Ethernet Layer 2 network services as VLAN does today, but with greater extensibility and flexibility. It is a Layer 2 overlay scheme over a Layer 3 network. It uses MAC Address-in-User Datagram Protocol (MAC-in-UDP) encapsulation to provide a means to extend Layer 2 segments across the core network. VXLAN is a solution to support a flexible, large-scale multitenant environment over a shared common physical infrastructure. The transport protocol over the core network is IP plus UDP. Compared to VLAN, VXLAN offers the following benefits:
· Flexible placement of multitenant segments throughout the data center: It provides a solution to extend Layer 2 segments over the underlying shared network infrastructure so that tenant workload can be placed across physical pods in the data center.
· Higher scalability to address more Layer 2 segments: VLANs use a 12-bit VLAN ID to address Layer 2 segments, which results in limiting scalability of only 4094 VLANs. VXLAN uses a 24-bit segment ID known as the VXLAN network identifier (VNID), which enables up to 16 million VXLAN segments to co-exist in the same administrative domain.
· Better utilization of available network paths in the underlying infrastructure: VLAN uses the Spanning Tree Protocol for loop prevention, which ends up not using half of the network links in a network by blocking redundant paths. In contrast, VXLAN packets are transferred through the underlying network based on its Layer 3 header and can take complete advantage of Layer 3 routing, equal-cost multipath (ECMP) routing, and link aggregation protocols to use all available paths.

VXLAN Anycast Gateway
The VXLAN anycast gateway feature extends anycast functionality to VXLAN. It enables the use of anycast routing on a network for underlay multicast load-balancing and redundancy. The VXLAN anycast solution:
· Allows true active-active first hop gateways (active-active on a per flow basis).
· Does not involve any new control or management plane protocols or any form of external SDN controllers or NMS to co-ordinate and synchronize gateways.
The anycast gateway feature follows these basic concepts: · Creating a virtual Layer 3 gateway and a virtual VTEP across multiple VXLAN gateways. These gateways use an identical configuration of an overlay IP address, overlay MAC address, and underlay VTEP IP address.
· Creating a private multicast group between the gateways to use as a data plane mirror for certain types of overlay control packets.

Note The VXLAN anycast gateway feature is supported on only Cisco ASR 9000 High Density 100GE Ethernet line cards.
Recommendations These are the recommendations that users must consider before configuring VXLAN anycast gateway feature:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 504

Implementing VXLAN

VXLAN Packet Format

· BGP does not work with VXLAN anycast feature within a data center. · IGP works on the underlay network within a data center. · BGP and IGP should be used on the WAN side. · Data center top-of-rack (TOR) switches to use static routes between router customer IP to the anycast
gateway.
Requirement to deploy VxLAN Anycast Gateway Since the multicast group is used for mirroring the control frames, in case of IPv6 neighbor advertisements, the duplicate address detection (DAD) protocol will bring down the service because the same addresses are detected between two routers (or interface). Hence you must disable IPv6 DAD on the BVI interface and enable unsolicited node detection (ND) responses.
VXLAN Packet Format
VXLAN defines a MAC-in-UDP encapsulation scheme where the original Layer 2 frame has a VXLAN header added and is then placed in a UDP-IP packet. With this MAC-in-UDP encapsulation, VXLAN tunnels Layer 2 network over Layer 3 network. The VXLAN packet format is shown in the following figure.
Figure 71: VXLAN Packet Format

As shown in the above figure, VXLAN introduces an 8-byte VXLAN header that consists of a 24-bit VNID and a few reserved bits. The VXLAN header together with the original Ethernet frame goes in the UDP payload. The 24-bit VNID is used to identify Layer 2 segments and to maintain Layer 2 isolation between the segments. With all 24 bits in VNID, VXLAN can support approx 16 million LAN segments.
VXLAN Tunnel Endpoint
VXLAN uses VXLAN tunnel endpoint (VTEP) devices to map tenants' end devices to VXLAN segments and to perform VXLAN encapsulation and de-encapsulation. Each VTEP function has two interfaces: One is a switch interface on the local LAN segment to support local endpoint communication through bridging, and the other is an IP interface to the transport IP network.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 505

Configuring a Layer 2 VXLAN gateway

Implementing VXLAN

The IP interface has a unique IP address that identifies the VTEP device on the transport IP network known as the infrastructure VLAN. The VTEP device uses this IP address to encapsulate Ethernet frames and transmits the encapsulated packets to the transport network through the IP interface. A VTEP device also discovers the remote VTEPs for its VXLAN segments and learns remote MAC Address-to-VTEP mappings through its IP interface. The functional components of VTEPs and the logical topology that is created for Layer 2 connectivity across the transport IP network is shown in the following figure.
Figure 72: VTEP

The VXLAN segments are independent of the underlying network topology; conversely, the underlying IP network between VTEPs is independent of the VXLAN overlay. It routes the encapsulated packets based on the outer IP address header, which has the initiating VTEP as the source IP address and the terminating VTEP as the destination IP address.
Configuring a Layer 2 VXLAN gateway
A Layer 2 VXLAN gateway bridges traffic between VXLAN and non-VXLAN segments (such as VLAN or VPLS) within the same layer 2 network. The operation of a VXLAN Layer 2 gateway is based on the data plane MAC address learning and flooding of multi-destination traffic such as unknown unicast, multicast, or broadcast frames, using IP multicast. The following sections show how to configure an ASR 9000 series router as a Layer 2 VXLAN gateway between a VLAN and a VXLAN segment in the same L2 domain.
Prerequisites
The following are the prerequisites to configuring a Cisco ASR 9000 series router as a VXLAN Layer 2 gateway:
· Configure a loopback interface. It serves as a source interface for the local VTEP. · Configure unicast reachability to remote VTEPs. · Configure Bidirectional Protocol Independent Multicast (Bidir PIM) or PIM Sparse Mode. For more
information, see the Multicast Configuration Guide for Cisco ASR 9000 Series Routers.
Restrictions
Consider the following restrictions while configuring VXLAN:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 506

Implementing VXLAN

Creating and Configuring the Network Virtualization Endpoint (NVE) interface

· You configure VXLAN only on Overlay Transport Virtualization (OTV) and VXLAN UDP ports.
· The source interface can only be a loopback interface.
· You cannot share a VNI or a multicast group or a source interface across multiple NVE interfaces.
· The VNI range and the multicast range both can only be specified contiguously. A non-contiguous range with comma separated values is not supported.
· The VNI to multicast group mapping can be only either 1:1 or N:1. For example, · The "member vni 5000 mcast-group 239.1.1.1" command configures a valid 1:1 mapping.
· The "member vni 5000-5005 mcast-group 239.1.1.1" command configures a valid N:1 mapping.
· When a VNI is configured as a part of a VNI range, it can be modified or deleted only as part of the same range. For example, if the "member vni 5000-5002 mcast-group 239.1.1.1" command is configured, you cannot disassociate just the VNI 5001 from the NVE interface with a "no member vni 5001" command.
· Static MAC configuration is not supported.
· You can configure a maximum of 128k Layer 2 and Layer 3 sub-interfaces per system. The configuration can be a combination of both Layer 2 sub-interfaces and Layer 3 sub-interfaces; or either fully Layer 2 sub-interfaces or Layer 3 sub-interfaces. Though the system allows you to configure more than 128k sub-interfaces per system, you cannot use this configuration for services. Though the system displays a warning message on reaching the threshold of 128k sub-interfaces, the configuration is still applied. However, you cannot use this configuration for services.

Creating and Configuring the Network Virtualization Endpoint (NVE) interface
Perform this task to create an NVE interface and configure it as a VXLAN Tunnel EndPoint (VTEP) for VXLAN.

SUMMARY STEPS

1. interface nve nve-identifier 2. (Optional) overlay-encapsulation vxlan 3. source-interface loopback loopback-interface-identifier 4. member vni vni_number [ -end_vni_range ] mcast-group ip_address [ end_ip_address_range ] 5. (Optional) anycast source-interface loopback loopback-interface-identifier sync-group ip_address 6. Use the commit or end command.

DETAILED STEPS

Step 1

interface nve nve-identifier Example:
RP/0/RSP0/CPU0:router(config)# interface nve 1
Creates the NVE interface and enters the NVE interface configuration sub-mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 507

Creating and Configuring the Network Virtualization Endpoint (NVE) interface

Implementing VXLAN

Step 2 Step 3 Step 4

(Optional) overlay-encapsulation vxlan Example:
RP/0/RSP0/CPU0:router(config-if)# overlay-encapsulation vxlan
Sets VXLAN encapsulation for the NVE interface. VXLAN is the default encapsulation for an NVE interface. This step is optional if you have not changed the encapsulation.

source-interface loopback loopback-interface-identifier Example:
RP/0/RSP0/CPU0:router(config-if)# source-interface loopback 1
Sets a loopback interface as the source interface for the VTEP.

member vni vni_number [ -end_vni_range ] mcast-group ip_address [ end_ip_address_range ]

Example:

RP/0/RSP0/CPU0:router(config-if)# member vni 1-10 mcast-group 224.2.2.2 224.2.2.10

Associates a single VXLAN or a contiguous range of VXLANs with the NVE interface using their VXLAN Network Identifiers (VNIs) and specifies a multicast address or a contiguous multicast address range associated with these VNIs.

Note

· The mapping between the VNIs and the multicast groups is either one-to-one or many-to-one.

· To associate discontiguous VXLANs or VXLAN ranges with the NVE interface, perform this step for each VXLAN or VXLAN range. For instance,
RP/0/RSP0/CPU0:router(config-if)# member vni 10 mcast-group 224.2.2.10 RP/0/RSP0/CPU0:router(config-if)# member vni 23 mcast-group 224.2.2.23 RP/0/RSP0/CPU0:router(config-if)# member vni 50-59 mcast-group 224.2.2.50 224.2.2.59 RP/0/RSP0/CPU0:router(config-if)# member vni 100-120 mcast-group 224.2.2.100 224.2.2.120

Step 5 Step 6

(Optional) anycast source-interface loopback loopback-interface-identifier sync-group ip_address Example:
RP/0/RSP0/CPU0:router(config-if)# anycast source-interface loopback 1 sync-group 192.23.2.20
Configures anycast mode parameters for this VTEP. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

What to do next Use the show nve interface command to display the configured NVE interface information.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 508

Implementing VXLAN

Creating and configuring a layer 2 sub-interface

Creating and configuring a layer 2 sub-interface
Perform this task to create a layer 2 sub-interface associated with a VLAN segment.

SUMMARY STEPS

1. interface gigabitEthernet interface-identifier l2transport 2. dot1q vlan vlan-identifier 3. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

interface gigabitEthernet interface-identifier l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface gigabitEthernet 0/0/0/0.100 l2transport
Creates a layer 2 sub-interface and enters the sub-interface configuration mode.
dot1q vlan vlan-identifier Example:
RP/0/RSP0/CPU0:router(config-if)# dot1q vlan 100
Sets the VLAN for the interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Associating VLAN and VXLAN with a bridge domain
Perform this task to associate a VLAN and a VXLAN with a bridge domain.

SUMMARY STEPS

1. l2vpn 2. bridge group bridge-group-name 3. bridge-domain bridge-domain-name 4. member vni vxlan-identifier 5. interface gigabitEthernet sub-interface-identifier 6. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 509

Configuring VXLAN source UDP port

Implementing VXLAN

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the l2vpn configuration mode.
bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bridgegroup1
Enters the bridge group configuration mode.
bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bdomain1
Enters the bridge domain configuration mode. member vni vxlan-identifier Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# member vni 100
Associates a VXLAN with the bridge domain. interface gigabitEthernet sub-interface-identifier Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface gigabitEthernet 0/0/0/0.200
Associates a VLAN with the bridge domain using the VLAN sub-interface. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configuring VXLAN source UDP port
This is an optional task. By default, the source UDP port of the encapsulating VXLAN segment is calculated via hash functions on the layer 2 address fields of the inner payload. Perform this task to configure the hash functions to be performed on either the layer 2 or the layer 3 address fields of the inner payload.

SUMMARY STEPS

1. l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 510

Implementing VXLAN

Configuring VXLAN destination UDP port

DETAILED STEPS

2. load-balancing flow [ src-dst-mac | src-dst-ip ]

Step 1 Step 2

l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the l2vpn configuration mode.
load-balancing flow [ src-dst-mac | src-dst-ip ] Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# load-balancing flow src-dst-mac
Selects either the layer 2 or layer 3 address fields of the inner payload for hash function.

Configuring VXLAN destination UDP port
The UDP port numbers 4789 and 8472 are assigned to VXLAN and OTV respectively. Perform this task to configure the destination UDP port number of the encapsulating VXLAN segment. This is an optional task because, by default, the destination UDP port number of the encapsulating VXLAN datagram is set to 4789. The destination UDP port number should be set to 8472 if the destination VTEP provides VXLAN support using an OTV port.

SUMMARY STEPS

1. vxlan udp port port-number

DETAILED STEPS

vxlan udp port port-number Example:
RP/0/RSP0/CPU0:router(config)# vxlan udp port 4789
Sets the destination UDP port number of the encapsulating VXLAN segment.

Configuration Example for Implementing Layer 2 VXLAN Gateway
The following example shows layer 2 VXLAN gateway configuration on two Provider Edge (PE) routers, R1 and R2, from a sample network topology that has the core network simplified as a bundle link connection between the PE routers.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 511

Configuration Example for Implementing Layer 2 VXLAN Gateway Figure 73: Network with Layer 2 VXLAN Gateways

Implementing VXLAN

Configuration at R1:
interface Bundle-Ether10 ipv4 address 192.168.1.1/24
! interface Loopback0
ipv4 address 1.1.1.1/32 ! interface T0/2/0/1
no shut ! interface T0/2/0/1.200 l2transport
encapsulation dot1q 200 ! router ospf underlay
router-id 1.1.1.1 area 0
interface Bundle-Ether10 interface Loopback0 ! interface nve 1 member vni 1 mcast-group 224.2.2.2 0.0.0.0 overlay-encapsulation vxlan source-interface Loopback0 ! l2vpn bridge group vxlan bridge-domain vxlan
interface T0/2/0/1.200 member vni 1 ! multicast-routing address-family ipv4 interface Loopback0 enable interface Bundle-Ether10
enable ! router pim
address-family ipv4 rp-address 1.1.1.1 bidir
Configuration at R2:
interface Bundle-Ether10 ipv4 address 192.168.1.2/24
! interface Loopback0
ipv4 address 2.2.2.2/32 ! interface T0/3/0/23
no shut ! interface T0/3/0/23.200 l2transport
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 512

Implementing VXLAN

Configuration Example for Implementing Layer 2 VXLAN Gateway

encapsulation dot1q 200 ! router ospf underlay
router-id 2.2.2.2 area 0
interface Bundle-Ether10 interface Loopback0 ! Interface nve 1 member vni 1 mcast-group 224.2.2.2 0.0.0.0 overlay-encapsulation vxlan source-interface Loopback0 ! l2vpn bridge group vxlan bridge-domain vxlan
interface T0/3/0/23.200 member vni 1 ! multicast-routing address-family ipv4 interface Loopback0 enable interface Bundle-Ether10
enable ! router pim
address-family ipv4 rp-address 1.1.1.1 bidir

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 513

Configuration Example for Implementing Layer 2 VXLAN Gateway

Implementing VXLAN

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 514

1 1 C H A P T E R
EVPN Features
This chapter describes how to configure Layer 2 (L2) Ethernet VPN (EVPN) features on the Cisco ASR 9000 Series Aggregation Services Routers supporting Cisco IOS XR software.
· EVPN Overview , on page 516 · EVPN Operation , on page 518 · EVPN Route Types, on page 519 · Configure EVPN L2 Bridging Service, on page 520 · EVPN Software MAC Learning , on page 522 · EVPN Software MAC Aging, on page 532 · EVPN Out of Service, on page 532 · EVPN VXLAN Layer 2 Data Center Interconnect Gateway, on page 536 · Configure EVPN VXLAN Layer 2 Data Center Interconnect Gateway, on page 539 · Configure L2 EVPN Address Family under BGP Routing Process, on page 539 · Configure the Routing Sessions Between the DCI and ToR, on page 540 · Configure BGP session for remote DCI Connectivity, on page 542 · Configure Network Virtualization Endpoint (NVE) Interface, on page 544 · Configure a Bridge Domain, on page 547 · Configure BGP Route Targets Import/Export Rules, on page 548 · Configure Ethernet Segment Identifier, on page 551 · Configure ICCP Group, on page 552 · Enable Flow-based Load Balancing , on page 554 · Example: All-Active Multi Homing with Anycast VTEP IP Address Configuration, on page 555 · Example: All-Active Multi Homing with Unique VTEP IP Address Configuration, on page 556 · EVPN Port-Active Multihoming, on page 557 · EVPN Single-Flow-Active Load Multihoming Balancing Mode, on page 562 · EVPN Convergence Using NTP Synchronization, on page 568 · EVPN MPLS Seamless Integration with VPLS , on page 570 · EVPN Single-Active Multi-Homing, on page 583 · Virtual Ethernet Segment (vES), on page 591 · AC-based Virtual Ethernet Segment, on page 597 · EVPN Anycast Gateway All-Active Static Pseudowire, on page 605 · CFM Support for EVPN, on page 611 · EVPN Multiple Services per Ethernet Segment, on page 612 · EVPN VXLAN Ingress Replication, on page 615
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 515

EVPN Overview

EVPN Features

· EVPN Core Isolation Protection, on page 625 · EVPN Routing Policy, on page 627 · BGP Multiple Sourced or Redistributed Paths , on page 643 · Highest Random Weight Mode for EVPN DF Election, on page 645 · Layer 2 Fast Reroute , on page 647 · EVPN Preferred Nexthop, on page 653 · EVPN Access-Driven DF Election, on page 655 · Hierarchical EVPN Access Pseudowire, on page 665 · Inter-AS EVPN Option B, on page 667 · EVPN IGMPv2 Selective Multicast , on page 675
EVPN Overview
Ethernet VPN (EVPN) is a next generation solution that provide Ethernet multipoint services over MPLS networks. EVPN operates in contrast to the existing Virtual Private LAN Service (VPLS) by enabling control-plane based MAC learning in the core. In EVPN, PE's participating in the EVPN instances learn customer MAC routes in Control-Plane using MP-BGP protocol. Control-plane MAC learning brings a number of benefits that allow EVPN to address the VPLS shortcomings, including support for multi-homing with per-flow load balancing. The EVPN control-plane MAC learning has the following benefits:
· Eliminate flood and learn mechanism
· Fast-reroute, resiliency, and faster reconvergence when link to dual-homed server fails
· Enables load balancing of traffic to and from CEs that are multihomed to multiple PEs
The following EVPN modes are supported: · Single homing - This enables you connect a customer edge (CE) device to one provider edge (PE) device.
· Multihoming - This enables you to connect a customer edge (CE) device to two or more provider edge (PE) devices to provide redundant connectivity. The redundant PE device ensures that there is no traffic disruption when there is a network failure. Following are the types of multihoming: · Single-Active - In single-active mode, only a single PE among a group of PEs attached to the particular Ethernet-Segment is allowed to forward traffic to and from that Ethernet Segment.
· Active-Active - In active-active mode, all the PEs attached to the particular Ethernet-Segment is allowed to forward traffic to and from that Ethernet Segment.
EVPN Timers
The following table shows various EVPN timers:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 516

EVPN Features

EVPN Timers

Table 9: EVPN Timers

Timer Range

Default Trigger Value

Applicability

Action

Sequence

startup-cost-in 30-86400s

disabled node

Single-Homed,

recovered* All-Active,

Single-Active

Postpone

1

EVPN startup

procedure and

Hold AC

link(s) down to

prevent CE to

PE forwarding.

Startup-cost-in

timer allows PE

to set core

protocols first.

recovery 20-3600s

30s

Note

Starting

from

Release

6.6.3

onwards,

the

range is

0-3600s.

node

Single-Homed***,

recovered, Single-Active

interface recovered **

Postpone

2

EVPN Startup

procedure.

Recovery timer

allows PE to set

access

protocols (STP)

before

reachability

towards EVPN

core is

advertised.

peering 0-3600s

3s

node

All-Active,

Starts after 3

recovered, Single-Active

sending EVPN

interface

RT4 to

recovered

postpone rest of

EVPN startup

procedure.

Peering timer

allows remote

PE

(multihoming

AC with same

ESI) to process

RT4 before DF

election will

happen.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 517

EVPN Operation

EVPN Features

Note

· The timers are available in EVPN global configuration mode and in EVPN interface sub-configuration

mode.

· Startup-cost-in is available in EVPN global configuration mode only.

· Timers are triggered in sequence (if applicable).

· Cost-out in EVPN global configuration mode brings down AC link(s) to prepare node for reload or software upgrade.

* indicates all required software components are loaded. ** indicates link status is up. *** you can change the recovery timer on Single-Homed AC if you do not expect any STP protocol convergence on connected CE.

EVPN Operation
At startup, PEs exchange EVPN routes in order to advertise the following:
· VPN membership: The PE discovers all remote PE members of a given EVI. In the case of a multicast ingress replication model, this information is used to build the PE's flood list associated with an EVI.
· Ethernet segment reachability: In multi-home scenarios, the PE auto-discovers remote PE and their corresponding redundancy mode (all-active or single-active). In case of segment failures, PEs withdraw ESI-EAD routes and retain EVI-EAD routes used at this stage in order to trigger fast convergence by signaling a MAC mass withdrawal on remote PEs.
· Redundancy Group membership: PEs connected to the same Ethernet segment (multi-homing) automatically discover each other and elect a Designated Forwarder (DF) that is responsible for forwarding Broadcast, Unknown unicast and Multicast (BUM) traffic for a given EVI.
Figure 74: EVPN Operation

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 518

EVPN Features

EVPN Route Types

EVPN can operate in single homing or dual homing mode. Consider single homing scenario, when EVPN is enabled on PE, routes are advertised where each PE discovers all other member PEs for a given EVPN instance. When an unknown unicast (or BUM) MAC is received on the PE, it is advertised as EVPN type-2 routes to other PEs. MAC routes are advertised to the other PEs using EVPN type-2 routes. In multi-homing scenarios Type 1, 3 and 4 are advertised to discover other PEs and their redundancy modes (single active or active-active). Use of Type-1 route is to auto-discover other PE which hosts the same CE. The other use of this route type is to fast route unicast traffic away from a broken link between CE and PE. Type-4 route is used for electing designated forwarder. For instance, consider the topology when customer traffic arrives at the PE, EVPN MAC advertisement routes distribute reachability information over the core for each customer MAC address learned on local Ethernet segments. Each EVPN MAC route announces the customer MAC address and the Ethernet segment associated with the port where the MAC was learned from and is associated MPLS label. This EVPN MPLS label is used later by remote PEs when sending traffic destined to the advertised MAC address.
Behavior Change due to ESI Label Assignment
To adhere to RFC 7432 recommendations, the encoding or decoding of MPLS label is modified for extended community. Earlier, the lower 20 bits of extended community were used to encode the split-horizon group (SHG) label. Now, the SHG label encoding uses from higher 20 bits of extended community.
According to this change, routers in same ethernet-segment running old and new software release versions decodes extended community differently. This change causes inconsistent SHG labels on peering EVPN PE routers. Almost always, the router drops BUM packets with incorrect SHG label. However, in certain conditions, it may cause remote PE to accept such packets and forward to CE potentially causing a loop. One such instance is when label incorrectly read as NULL.
To overcome this problem, Cisco recommends you to:
· Minimize the time both PEs are running different software release versions.
· Before upgrading to a new release, isolate the upgraded node and shutdown the corresponding AC bundle.
· After upgrading both the PEs to the same release, you can bring both into service.
Similar recommendations are applicable to peering PEs with different vendors with SHG label assignment that does not adhere to RFC 7432.

EVPN Route Types

The EVPN network layer reachability information (NLRI) provides different route types.
Table 10: EVPN Route Types

Route Type 1
2

Name
Ethernet Auto-Discovery (AD) Route
MAC/IP Advertisement Route

Usage
Few routes sent per ES, carry the list of EVIs that belong to ES
Advertise MAC, address reachability, advertise IP/MAC binding

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 519

Configure EVPN L2 Bridging Service

EVPN Features

Route Type 3
4

Name

Usage

Inclusive Multicast Ethernet Tag Multicast Tunnel End point

Route

discovery

Ethernet Segment Route

Redundancy group discovery, DF election

Route Type 1: Ethernet Auto-Discovery (AD) Route The Ethernet (AD) routes are advertised on per EVI and per ESI basis. These routes are sent per ES. They carry the list of EVIs that belong to the ES. The ESI field is set to zero when a CE is single-homed.
Route Type 2: MAC/IP Advertisement Route The host's IP and MAC addresses are advertised to the peers within NRLI. The control plane learning of MAC addresses reduces unknown unicast flooding.
Route Type 3: Inclusive Multicast Ethernet Tag Route This route establishes the connection for broadcast, unknown unicast, and multicast (BUM) traffic from a source PE to a remote PE. This route is advertised on per VLAN and per ESI basis.
Route Type 4: Ethernet Segment Route Ethernet segment routes enable to connect a CE device to two or PE devices. ES route enables the discovery of connected PE devices that are connected to the same Ethernet segment.

Configure EVPN L2 Bridging Service
Perform the following steps to configure EVPN L2 bridging service.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. interface GigabitEthernet GigabitEthernet Interface Instance 6. evi ethernet vpn id 7. exit 8. exit 9. bridge-domain bridge-domain-name 10. interface GigabitEthernet GigabitEthernet Interface Instance 11. evi ethernet vpn id 12. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 520

EVPN Features

Configure EVPN L2 Bridging Service

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5
Step 6 Step 7 Step 8

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the l2vpn configuration mode. bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 1
Enters the bridge group configuration mode. bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 1-1
Enters the bridge domain configuration mode. interface GigabitEthernet GigabitEthernet Interface Instance Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/0/0/1.1
Enters interface configuration mode. evi ethernet vpn id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# evi 1
Creates the ethernet VPN ID. exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac-evi)# exit
Exits the current configuration mode. exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# exit
Exits the current configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 521

EVPN Software MAC Learning

EVPN Features

Step 9 Step 10 Step 11 Step 12

bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 1-2
Enters the bridge domain configuration mode. interface GigabitEthernet GigabitEthernet Interface Instance Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface GigabitEthernet 0/0/0/1.2
Enters interface configuration mode. evi ethernet vpn id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# evi 2
Creates the ethernet VPN ID. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

EVPN Software MAC Learning
MAC learning is the method of learning the MAC addresses of all devices available in a VLAN.
The MAC addresses learned on one device needs to be learned or distributed on the other devices in a VLAN. EVPN Native with software MAC Learning feature enables the distribution of the MAC addresses learned on one device to the other devices connected to a network. The MAC addresses are learnt from the remote devices using BGP.
Figure 75: EVPN Native with Software MAC Learning

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 522

EVPN Features

Software and Hardware Support

The above figure illustrates the process of Software MAC Learning. The following are the steps involved in the process:
1. Traffic comes in on one port in the bridge domain.
2. The source MAC address (AA) is learnt on DCI1 and is stored as a dynamic MAC entry.
3. The MAC address (AA) is converted into a type-2 BGP route and is sent over BGP to all the remote PEs in the same EVI.
4. The MAC address (AA) is updated on DCI3 as a static remote MAC address.
Software and Hardware Support
The EVPN Native with Software MAC Learning feature is supported on Cisco ASR 9000 Series Routers that support Cisco IOS XR and Cisco IOS XR 64-bit software.
Configure EVPN Native with Software MAC Learning
The following section describes how you can configure EVPN Native with Software MAC Learning:
/* Configure bridge domain. */
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group EVPN_SH RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain EVPN_2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface TenGigE0/4/0/10.2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface BundleEther 20.2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# storm-control broadcast pps 10000 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# neighbor 20.20.20.20 pw-id 1020001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-nbr)# evi 2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# exit RP/0/RSP0/CPU0:router(config-l2vpn-bg)# exit RP/0/RSP0/CPU0:router(config-l2vpn)# exit
/* Configure advertisement of MAC routes, suppress unknown unicast, disable the control word,*/ /* configure the flow label, configure BGP route-exchange using RT. */
RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 /* Use the advertise-mac command to control the advertisement of MAC routes through BGP to
other neighbors. */ RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac /* Use the unknown-unicast-suppress command to prevent the flooding of unknown unicast traffic received from the EVPN core towards all other EVPN bridge-ports. */ RP/0/RSP0/CPU0:router(config-evpn-evi)# unknown-unicast-suppress /* Use the control-word-disable command to prevent the control word from being sent */ /* in the packet that is sent to MPLS core. The control word functionality is enabled by default. */ RP/0/RSP0/CPU0:router(config-evpn-evi)# control-word-disable /* Use the load-balance flow label static command to add additional flow label header to the packet */ /* that is sent to MPLS core. The loadbalance flow functionality is disabled by default. */ RP/0/RSP0/CPU0:router(config-evpn-evi)# load-balance flow label static /* Perform the following steps to configure BGP route-exchange using RT */ RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 523

Supported Modes for EVPN Native with Software MAC Learning

EVPN Features

RP/0/RSP0/CPU0:router(config-evpn-evi)# route-target import 200:101 RP/0/RSP0/CPU0:router(config-evpn-evi)# route-target export 200:101 /* Configure address family session in BGP. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# router bgp 200 RP/0/RSP0/CPU0:router(config-bgp)# bgp router-id 40.40.40.40 RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn evpn RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.10.10.10 RP/0/RSP0/CPU0:router(config-bgp-nbr)# remote-as 200 RP/0/RSP0/CPU0:router(config-bgp-nbr)# description MPLSFACINGPEER RP/0/RSP0/CPU0:router(config-bgp-nbr)# update-source Loopback 0 RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-family l2vpn evpn
Supported Modes for EVPN Native with Software MAC Learning
The following are the modes in which EVPN MAC Learning is supported: · Single Home Device or Single Home Network
· Dual Home Device (DHD) - All Active Load Balancing
· Dual Home Device - Single-Active Load Balancing
Single Home Device or Single Home Network
The following section describes how you can configure EVPN Native with Software MAC Learning feature in single home device or single home network:
Figure 76: Single Home Device or Single Home Network (SHD/SHN)

In the above figure, the PE (PE1) is attached to Ethernet Segment using bundle or physical interfaces. Null Ethernet Segment Identifier (ESI) is used for SHD/SHN.
Configure EVPN in Single Home Device or Single Home Network
/* Configure bridge domain. */ RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group EVPN_ALL_ACTIVE RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain EVPN_2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface BundleEther1.2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# evi 2001 /* Configure advertisement of MAC routes. */ RP/0/RSP0/CPU0:router(config)# evpn
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 524

EVPN Features

Dual Home Device--All-Active Load Balancing Mode

RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac
/* Configure address family session in BGP. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router#(config)# router bgp 200 RP/0/RSP0/CPU0:router#(config-bgp)# bgp router-id 40.40.40.40 RP/0/RSP0/CPU0:router#(config-bgp)# address-family l2vpn evpn RP/0/RSP0/CPU0:router#(config-bgp)# neighbor 10.10.10.10 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# remote-as 200 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# description MPLSFACING-PEER RP/0/RSP0/CPU0:router#(config-bgp-nbr)# update-source Loopback 0 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# address-family l2vpn evpn
Running Configuration

l2vpn bridge group EVPN_ALL_ACTIVE
bridge-domain EVPN_2001 interface BundleEther1.2001 evi 2001
! evpn
evi 2001 advertise-mac
! router bgp 200 bgp
router-id 40.40.40.40 address-family l2vpn evpn neighbor 10.10.10.10
remote-as 200 description MPLS-FACING-PEER updatesource Loopback0 addressfamily l2vpn evpn
Verification
Verify EVPN in single home devices.

RP/0/RSP0/CPU0:router# show evpn ethernet-segment interface Te0/4/0/10 detail

Ethernet Segment Id Interface Nexthops

-------------------- ---------- ----------

N/A

Te0/4/0/10 20.20.20.20

...............

Topology :

Operational : SH

Configured : Single-active (AApS) (default)

Dual Home Device--All-Active Load Balancing Mode
The following section describes how you can configure EVPN Software MAC Learning feature in dual home device (DHD) in all-active load balancing mode:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 525

Configure EVPN Software MAC Learning in Dual Home Device--All-Active Mode Figure 77: Dual Home Device --All-Active Load Balancing Mode

EVPN Features

All-active load-balancing is known as Active/Active per Flow (AApF). In the above figure, identical Ethernet Segment Identifier is used on both EVPN PEs. PEs are attached to Ethernet Segment using bundle interfaces. In the CE, single bundles are configured towards two EVPN PEs. In this mode, the MAC address that is learnt is stored on both PE1 and PE2. Both PE1 and PE2 can forward the traffic within the same EVI.
Configure EVPN Software MAC Learning in Dual Home Device--All-Active Mode
This section describes how you can configure EVPN Software MAC Learning feature in dual home device--all-active mode:
/* Configure bridge domain. */
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group EVPN_ALL_ACTIVE RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain EVPN_2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface Bundle-Ether1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# evi 2001
/* Configure advertisement of MAC routes. */
RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac RP/0/RSP0/CPU0:router(config-evpn-evi)# exit RP/0/RSP0/CPU0:router(config-evpn)# interface Bundle-Ether1 RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-es)# identifier type 0 01.11.00.00.00.00.00.00.01
/* Configure address family session in BGP. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router#(config)# router bgp 200 RP/0/RSP0/CPU0:router#(config-bgp)# bgp router-id 209.165.200.227 RP/0/RSP0/CPU0:router#(config-bgp)# address-family l2vpn evpn RP/0/RSP0/CPU0:router#(config-bgp)# neighbor 10.10.10.10 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# remote-as 200 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# description MPLS-FACING-PEER RP/0/RSP0/CPU0:router#(config-bgp-nbr)# update-source Loopback 0 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# address-family l2vpn evpn
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 526

EVPN Features

Configure EVPN Software MAC Learning in Dual Home Device--All-Active Mode

/* Configure Link Aggregation Control Protocol (LACP) bundle. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether1 RP/0/RSP0/CPU0:router(config-if)# lacp switchover suppress-flaps 300 RP/0/RSP0/CPU0:router(config-if)# exit
/* Configure VLAN Header Rewrite.*/
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether1 l2transport RP/0/RSP0/CPU0:router(config-if)# encapsulation dot1q 10 RP/0/RSP0/CPU0:router(config-if)# rewrite ingress tag pop 1 symmetric

Note Configure the same mlacp system priority <id> for both the dual homed PE routers to enable all-active load balancing.
Running Configuration
l2vpn bridge group EVPN_ALL_ACTIVE
bridge-domain EVPN_2001 interface Bundle-Ether1 ! evi 2001 ! ! evpn evi 2001 ! advertise-mac ! interface Bundle-Ether1
ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 ! ! router bgp 200 bgp router-id 209.165.200.227 address-family l2vpn evpn ! neighbor 10.10.10.10 remote-as 200 description MPLS-FACING-PEER update-source Loopback0 address-family l2vpn evpn ! interface Bundle-Ether1 lacp switchover suppress-flaps 300 load-interval 30 ! interface Bundle-Ether1 l2transport encapsulation dot1aq 2001 rewrite ingress tag pop 1 symmetric !
Verification

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 527

Dual Home Device--Single-Active Load Balancing

EVPN Features

Verify EVPN in dual home devices in All-Active mode.

Note With the EVPN IRB, the supported label mode is per-VRF.

RP/0/RSP0/CPU0:router# show evpn ethernet-segment interface Bundle-Ether 1 carvin$

Ethernet Segment Id

Interface Nexthops

-------- ----------

-------- --------

0100.211b.fce5.df00.0b00 BE1

10.10.10.10

209.165.201.1

Topology :

Operational : MHN

Configured : All-active (AApF) (default)

Primary Services : Auto-selection

Secondary Services: Auto-selection

Service Carving Results:

Forwarders : 4003

Elected : 2002

EVI E : 2000, 2002, 36002, 36004, 36006, 36008

........

Not Elected : 2001

EVI NE : 2001, 36001, 36003, 36005, 36007, 36009

MAC Flushing mode : Invalid

Peering timer : 3 sec [not running] Recovery timer : 30 sec [not running] Local SHG label : 34251 Remote SHG labels : 1 38216 : nexthop 209.165.201.1

Dual Home Device--Single-Active Load Balancing
The following section describes how you can configure EVPN Native with Software MAC Learning feature in dual home device in single-active load balancing mode:
Figure 78: Dual Home Device (DHD)--Single-Active Load Balancing

Single-active load balancing also is known as Active/Active per Service (AApS). Identical ESI are configured on both EVPN PEs. In the CE, separate bundles or independent physical interfaces are configured towards two EVPN PEs. In this mode, the MAC address that is learnt is stored on both PE1 and PE2. Only one PE can forward traffic within the EVI at a given time.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 528

EVPN Features

Configure EVPN in Dual Home Device--Single-Active Mode

Configure EVPN in Dual Home Device--Single-Active Mode
/* Configure bridge domain. */
RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group EVPN_ALL_ACTIVE RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain EVPN_2001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface Bundle-Ether1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# evi 2001

/* Configure VLAN Header Rewrite (Single-tagged sub-interface).*/
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether1 l2transport RP/0/RSP0/CPU0:router(config-if)# lacp switchover suppress-flaps 300 RP/0/RSP0/CPU0:router(config-if)# exit RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether1 l2transport RP/0/RSP0/CPU0:router(config-if)# encapsulation dot1q 10 RP/0/RSP0/CPU0:router(config-if)# rewrite ingress tag pop 1 symmetric

/* Configure advertisement of MAC routes. */
RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac

/* Configure load balancing. */
RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac RP/0/RSP0/CPU0:router(config-evpn-evi)# exit RP/0/RSP0/CPU0:router(config-evpn)# interface Bundle-Ether1 RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-es)# load-balancing-mode single-active RP/0/RSP0/CPU0:router(config-evpn-ac-es)# identifier type 0 12.12.00.00.00.00.00.00.02 RP/0/RSP0/CPU0:router(config-evpn-ac-es)# bgp route-target 1212.0000.0002

/* Configure address family session in BGP. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router#(config)# router bgp 200 RP/0/RSP0/CPU0:router#(config-bgp)# bgp router-id 40.40.40.40 RP/0/RSP0/CPU0:router#(config-bgp)# address-family l2vpn evpn RP/0/RSP0/CPU0:router#(config-bgp)# neighbor 10.10.10.10 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# remote-as 200 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# description MPLSFACING-PEER RP/0/RSP0/CPU0:router#(config-bgp-nbr)# update-source Loopback 0 RP/0/RSP0/CPU0:router#(config-bgp-nbr)# address-family l2vpn evpn

Verification Verify EVPN in dual home devices in Single-Active mode.

RP/0/RSP0/CPU0:router# show evpn ethernet-segment int Bundle-Ether 1 carving detail

...

Ethernet Segment Id

Interface

----- ------------------ ----------

Nexthops -----------

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 529

Verify EVPN Native with Software MAC Learning

EVPN Features

0012.1200.0000.0000.0002 BE1

10.10.10.10 30.30.30.30

ESI type : 0 Value : 12.1200.0000.0000.0002 ES Import RT : 1212.0000.0000 (from ESI)

Source MAC : 0000.0000.0000 (N/A) Topology :
Operational : MHN Configured : Single-active (AApS) Primary Services : Auto-selection Secondary Services: Auto-selection

Service Carving Results: Forwarders : 2 Elected : 1 EVI E : 500, 2001 Not Elected : 1 EVI NE : 501

Verify EVPN Native with Software MAC Learning
Verify the packet drop statistics.
RP/0/RSP0/CPU0:router# show l2vpn bridge-domain bd-name EVPN_2001 details
Bridge group: EVPN_ALL_ACTIVE, bridge-domain: EVPN_2001, id: 1110, state: up, ShgId: 0, MSTi: 0
List of EVPNs: EVPN, state: up evi: 2001 XC ID 0x80000458 Statistics: packets: received 28907734874 (unicast 9697466652), sent 76882059953 bytes: received 5550285095808 (unicast 1861913597184), sent 14799781851396 MAC move: 0 List of ACs: AC: TenGigE0/4/0/10.2001, state is up Type VLAN; Num Ranges: 1 ... Statistics: packets: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 45573594908 bytes: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 8750130222336 MAC move: 0 ........
Verify the EVPN EVI information with the VPN-ID and MAC address filter.

RP/0/RSP0/CPU0:router# show evpn evi vpn-id 2001 neighbor

Neighbor IP ----------20.20.20.20 30.30.30.30

vpn-id -------2001 2001

Verify the BGP L2VPN EVPN summary.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 530

EVPN Features

Verify EVPN Native with Software MAC Learning

RP/0/RSP0/CPU0:router# show bgp l2vpn evpn summary

...

Neighbor Spk AS

MsgRcvd MsgSent TblVer InQ

20.20.20.20 0 200

216739 229871 200781341 0

30.30.30.30 0 200

6462962 4208831 200781341 10

OutQ 0 0

Up/Down 3d00h 2d22h

St/PfxRcd 348032 35750

Verify the MAC updates to the L2FIB table in a line card.

RP/0/RSP0/CPU0:router# show l2vpn mac mac all location 0/6/CPU0

Topo ID Producer Next Hop(s)

Mac Address IP Address

------- -------- -----------

-------------- ----------

1112 0/6/CPU0 Te0/6/0/1.36001 00a3.0001.0001

Verify the MAC updates to the L2FIB table in a route switch processor (RSP).

RP/0/RSP0/CPU0:router# show l2vpn mac mac all location 0/RSP0/CPU0

Topo ID Producer

Next Hop(s)

Mac Address IP Address

------- -------- -----------

-------------- ----------

1112

0/RSP0/CPU0 Te0/6/0/1.36001 00a3.0001.0001

Verify the summary information for the MAC address.

RP/0/RSP0/CPU0:router# show l2vpn forwarding bridge-domain EVPN_ALL_ACTIVE:EVPN_2001 mac-address location 0/6/CPU0

.....

Mac Address

Type

Mapped to

0000.2001.5555 dynamic

N/A <-- local dynamic

00bb.2001.0001 dynamic

N/A

0000.2001.1111 EVPN

N/A <-- remote static

00a9.2002.0001 EVPN

N/A

Learned from/Filtered on Te0/0/0/2/0.2001 Te0/0/0/2/0.2001 BD id: 1110 BD id: 1110

LC learned N/A N/A N/A N/A

Resync Age/Last Change 11 Jan 14:37:22 11 Jan 14:37:22 N/A N/A

Verify the EVPN EVI information with the VPN-ID and MAC address filter.

RP/0/RSP0/CPU0:router# show evpn evi vpn-id 2001 mac

EVI ---2001 2001

MAC address ------------00a9.2002.0001 00a9.2002.0001

IP address ----------:: ::

Nexthop ------10.10.10.10 30.30.30.30

Label -----34226 34202

<-- Remote MAC

2001 0000.2001.5555 20.1.5.55

TenGigE0/0/0/2/0.2001 34203 <-- local MAC

RP/0/RSP0/CPU0:router# RP/0/RSP0/CPU0:router# show evpn evi vpn-id 2001 mac 00a9.2002.0001 detail

EVI ----

MAC address

IP address Nexthop

-------------- ---------- -------

Label -----

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 531

EVPN Software MAC Aging

EVPN Features

2001 00a9.2002.0001 ::

10.10.10.10 34226

2001 00a9.2002.0001 ::

30.30.30.30 34202

Ethernet Tag : 0 Multi-paths Resolved : True <--- aliasing to two remote PE with All-Active load balancing

Static : No Local Ethernet Segment : N/A Remote Ethernet Segment : 0100.211b.fce5.df00.0b00 Local Sequence Number : N/A Remote Sequence Number : 0 Local Encapsulation : N/A Remote Encapsulation : MPLS

Verify the BGP routes associated with EVPN with bridge-domain filter.

RP/0/RSP0/CPU0:router# show bgp l2vpn evpn bridge-domain EVPN_2001 route-type 2

*> [2][0][48][00bb.2001.0001][0]/104 0.0.0.0
*>i[2][0][48][00a9.2002.00be][0]/104 10.10.10.10 100
* i 30.30.30.30 100 0 i

0 i <------ locally learnt MAC 0 i <----- remotely learnt MAC

EVPN Software MAC Aging
You can configure MAC aging on a bridge domain to set the maximum aging time for learned MAC addresses. Decrease the aging time when you want to move the hosts to allow the bridge to adapt to the changes quickly. However, in an EVPN network, the data plane and control plane are always synchronized. Furthermore, it is desirable to have a longer aging times for:
· MAC route stability and reliability
· Support for very high scale of MAC routes
· Reliable and consistent accounting without overloading the control plane
For the above-mentioned reasons, when you enable EVPN, maximum MAC aging times are not fully considered for the configured MAC aging values on the bridge domain. Also, it is observed that the aging times can be long, more than 2 hours.
EVPN Out of Service
The EVPN Out of Service feature enables you to control the state of bundle interfaces that are part of an Ethernet segment that have Link Aggregation Control protocol (LACP) configured. This feature enables you to put a node out of service (OOS) without having to manually shutdown all the bundles on their provider edge (PE). Use the cost-out command to bring down all the bundle interfaces belonging to an Ethernet VPN (EVPN) Ethernet segment on a node. The Ethernet A-D Ethernet Segment (ES-EAD) routes are withdrawn before shutting down the bundles. The PE signals to the connected customer edge (CE) device to bring down the

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 532

EVPN Features

Configure EVPN Out of Service

corresponding bundle member. This steers away traffic from this PE node without traffic disruption. The traffic that is bound for the Ethernet segment from the CE is directed to the peer PE in a multi-homing environment.
In the following topology, the CE is connected to PE1 and PE2. When you configure the cost-out command on PE1, all the bundle interfaces on the Ethernet segment are brought down. Also, the corresponding bundle member is brought down on the CE. Hence, the traffic for this Ethernet segment is now sent to PE2 from the CE.
Figure 79: EVPN Out of Service

To bring up the node into service, use no cost-out command. This brings up all the bundle interfaces belonging to EVPN Ethernet segment on the PE and the corresponding bundle members on the CE. When the node is in cost-out state, adding a new bundle Ethernet segment brings that bundle down. Similarly, removing the bundle Ethernet segment brings that bundle up. Use startup-cost-in command to bring up the node into service after the specified time on reload. The node will cost-out when EVPN is initialized and remain cost-out until the set time. If you execute evpn no startup-cost-in command while timer is running, the timer stops and node is cost-in. The 'cost-out' configuration always takes precedence over the 'startup-cost-in' timer. So, if you reload with both the configurations, cost-out state is controlled by the 'cost-out' configuration and the timer is not relevant. Similarly, if you reload with the startup timer, and configure 'cost-out' while timer is running, the timer is stopped and OOS state is controlled only by the 'cost-out' configuration. If you do a proc restart while the startup-cost-in timer is running, the node remains in cost-out state and the timer restarts.
Restrictions · EVPN cost-out is supported only on manually configured ESIs.
Configure EVPN Out of Service
This section describes how you can configure EVPN Out of Service.
/* Configuring node cost-out on a PE */
Router# configure Router(config)# evpn Router(config-evpn)# cost-out Router(config-evpn)commit
/* Bringing up the node into service */
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 533

Running Configuration

EVPN Features

Router# configure Router(config)# evpn Router(config-evpn)# no cost-out Router(config-evpn)commit
/* Configuring the timer to bring up the node into service after the specified time on reload */
Router# configure Router(config)# evpn Router(config-evpn)# startup-cost-in 6000 Router(config-evpn)commit

Running Configuration

Verification

configure evpn
cost-out !
configure evpn
startup-cost-in 6000 !
Verify the EVPN Out of Service configuration.

/* Verify the node cost-out configuration */

Router# show evpn summary

Fri Apr 7 07:45:22.311 IST

Global Information

-----------------------------

Number of EVIs

:2

Number of Local EAD Entries : 0

Number of Remote EAD Entries : 0

Number of Local MAC Routes : 0

Number of Local MAC Routes : 5

MAC

:5

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local ES:Global MAC : 12

Number of Remote MAC Routes : 7

MAC

:7

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local IMCAST Routes : 56

Number of Remote IMCAST Routes: 56

Number of Internal Labels

:5

Number of ES Entries

:9

Number of Neighbor Entries : 1

EVPN Router ID

: 192.168.0.1

BGP Router ID

: ::

BGP ASN

: 100

PBB BSA MAC address

: 0207.1fee.be00

Global peering timer

:

3 seconds

Global recovery timer

:

30 seconds

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 534

EVPN Features

EVPN cost-out

: TRUE

startup-cost-in timer : Not configured

/* Verify the no cost-out configuration */

Router# show evpn summary

Fri Apr 7 07:45:22.311 IST

Global Information

-----------------------------

Number of EVIs

:2

Number of Local EAD Entries : 0

Number of Remote EAD Entries : 0

Number of Local MAC Routes : 0

Number of Local MAC Routes : 5

MAC

:5

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local ES:Global MAC : 12

Number of Remote MAC Routes : 7

MAC

:7

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local IMCAST Routes : 56

Number of Remote IMCAST Routes: 56

Number of Internal Labels

:5

Number of ES Entries

:9

Number of Neighbor Entries : 1

EVPN Router ID

: 192.168.0.1

BGP Router ID

: ::

BGP ASN

: 100

PBB BSA MAC address

: 0207.1fee.be00

Global peering timer

:

3 seconds

Global recovery timer

:

30 seconds

EVPN cost-out

: FALSE

startup-cost-in timer : Not configured

/* Verify the startup-cost-in timer configuration */

Router# show evpn summary

Fri Apr 7 07:45:22.311 IST

Global Information

-----------------------------

Number of EVIs

:2

Number of Local EAD Entries : 0

Number of Remote EAD Entries : 0

Number of Local MAC Routes : 0

Number of Local MAC Routes : 5

MAC

:5

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local ES:Global MAC : 12

Number of Remote MAC Routes : 7

MAC

:7

MAC-IPv4

:0

MAC-IPv6

:0

Number of Local IMCAST Routes : 56

Number of Remote IMCAST Routes: 56

Number of Internal Labels

:5

Number of ES Entries

:9

Number of Neighbor Entries : 1

EVPN Router ID

: 192.168.0.1

BGP Router ID

: ::

Verification

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 535

EVPN VXLAN Layer 2 Data Center Interconnect Gateway

EVPN Features

BGP ASN

: 100

PBB BSA MAC address

: 0207.1fee.be00

Global peering timer

:

3 seconds

Global recovery timer

:

30 seconds

EVPN node cost-out

: TRUE

startup-cost-in timer : 6000

EVPN VXLAN Layer 2 Data Center Interconnect Gateway
The Cisco ASR 9000 Series Routers serve as a Data Center Interconnect (DCI) Layer 2 gateway to provide Layer 2 connectivity between EVPN VXLAN based data centers, over a MPLS-based L2VPN network. The data centers are connected through the intermediate service provider network. The EVPN VXLAN enabled data centers use EVPN control plane for distributing Layer 2 forwarding information from one data center to another data center. This feature provides redundancy, resiliency, and ease of provisioning. The EVPN VXLAN layer 2 DCI gateway feature supports these functions:
· VXLAN access for single homing
· VXLAN access for all-active multi homing with anycast VXLAN Terminal EndPoint (VTEP) IP address
· VXLAN access for all-active multi homing with unique VTEP IP address
· EVPN ESI Multipath with VXLAN encapsulation

All-Active Multi Homing with Anycast VTEP IP Address
The DCIs use the same anycast VTEP IP address for all-active multi-homing with anycast VTEP IP address. Consider the following topology where Top of Racks (ToRs) are connected to the DCIs using multiple paths: The traffic passes from ToRs to the DCIs through multiple physical paths and uses anycast IP address for load balancing. DCI1 and DCI2 advertise MAC routes to ToRs using the same anycast IP address as that of the next-hop. So, the ToR sends the traffic to the same anycast IP address of the DCIs, and uses IGP ECMP for load balancing. A virtual PortChannel (vPC) allows ToR1 and ToR2 to have the same IP configuration. ToR1 and ToR2 advertise MAC routes to DCIs using the same IP address as that of the next-hop. So, the DCI sends the traffic to the same IP address of the ToRs, and uses IGP ECMP for load balancing. The DCI sends the traffic to the remote data center through MPLS forwarding.
Figure 80: All-Active Multi Homing with Anycast VTEP IP Address

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 536

EVPN Features

All-Active Multi Homing with Unique VTEP IP Address

All-Active Multi Homing with Unique VTEP IP Address
The DCIs do not share anycast VTEP IP address for all-active multi homing with unique VTEP IP address. Each DCI uses a unique VTEP IP address. Consider the following topology where ToR receives the MAC routes from DCIs. Each MAC route has a unique next-hop. Because both DCI1 and DCI2 advertise routes for the same MAC with different next-hops, ToR has two equal cost next-hops for the same MAC. When ToR sends the traffic to the MAC, ToR load balances the traffic on both next-hops.
Figure 81: All-Active Multi Homing with Unique VTEP IP Address

EVPN ESI Multipath for VxLAN - EVI Based Load balancing
The EVPN Ethernet Segment Identifier (ESI) Multipath feature supports multi-path traffic to active-active dual-homed TORs and DCIs to provide redundant connectivity within the data center. ESI multi paths are discovered by the ASR9k DCI router through EVPN signalling. The path selection is based on Ethernet Segment Identifier (ESI) and EVPN instance (EVI). To resolve paths for MAC routes received, use Ethernet A-D routes per ES ( ES-EAD) and Ethernet A-D routes per EVI (EVI-EAD) as specified in RFC 7432.
Consider the following topology where DCIs receive the MAC routes from ToRs and each MAC route has a next-hop for each ToR. Similarly, DCIs advertise MAC routes with different next-hops to ToRs. When DCI sends the traffic to VM, which is behind a pair of ToRs, there are two paths (ToR) for every MAC. The DCI load balances the traffic on the two paths. The selection of path is based on EVI. For example, DCI1 and DCI2 selects ToR1 for all traffic destined to the MAC address learnt on EVI1; DCI1 and DCI2 selects ToR2 for all traffic destined to the MAC address learnt on EVI2.
Figure 82: EVPN ESI Multipath

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 537

EVPN ESI Multipath for VxLAN - Flow-based Load Balancing

EVPN Features

EVPN ESI Multipath for VxLAN - Flow-based Load Balancing
The EVPN Ethernet Segment Identifier (ESI) Multipath for VxLAN feature supports flow-based load balancing to forward the traffic between Top of Racks (ToRs) and Data Center Interconnect (DCI), and between the source and remote DCIs. A flow is identified either by the source and destination IP address of the traffic, or the source and destination MAC address of the traffic.
In Release 6.2.1, the default load balancing mode is flow-based. You can change the load balancing mode based on per EVI. See Configure Network Virtualization Endpoint (NVE) Interface, on page 544 task to change the load balancing mode based on per EVI.
In Release 6.1.2, only per EVI-based load balancing was supported. Starting from Release 6.2.1, both flow-based load balancing and per EVI based load balancing are supported. The following table shows the support matrix:
Table 11: Support Matrix for EVPN ESI Multipath for VxLAN Load Balancing

Line Card

Release 6.1.2

Release 6.2.1

ASR 9000 Enhanced Ethernet Line Supports only per EVI-based load Supports only per EVI-based load

Card

balancing

balancing

A9K-8x100G-LB-SE, A9K-8x100G-LB-TR, A9K-8X100GE-SE, A9K-8X100GE-TR, A9K-4X100GE-SE, A9K-4X100GE-TR, A9K-400G-DWDM-TR, A9K-MOD400-SE, A9K-MOD400-TR, A9K-MOD200-SE, A9K-MOD200-SE

Supports only per EVI-based load Supports both flow-based and per

balancing

EVI-based load balancing

The unknown unicast flooding on traffic received from VxLAN segment is supported. In Release 6.2.1, by default, the unknown unicast flooding on traffic received from VxLAN segment is enabled. To disable the unknown unicast flooding, use the suppress-unknown-unicast-flooding command. See Configure Network Virtualization Endpoint (NVE) Interface, on page 544 task to disable unknown unicast flooding on traffic received from VxLAN segment.
In Release 6.1.2, by default, the unknown unicast flooding on traffic received from VxLAN segment is disabled.
Table 12: Support Matrix for Unknown Unicast Flooding

Release

Unknown Unicast Flooding

Release 6.1.2 Release 6.2.1

The unknown unicast flooding on traffic received from VxLAN segment is disabled.
The unknown unicast flooding on traffic received from VxLAN segment is enabled. To disable, use the suppress-unknown-unicast-flooding command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 538

EVPN Features

Configure EVPN VXLAN Layer 2 Data Center Interconnect Gateway

Configure EVPN VXLAN Layer 2 Data Center Interconnect Gateway
Perform the following tasks to configure EVPN VXLAN Layer 2 Data Center Interconnect Gateway.
If you want to configure EVPN ESI Multipath feature, do not configure anycast IP address, the remaining configuration tasks remain the same.

Configure L2 EVPN Address Family under BGP Routing Process
Perform this task to enable EVPN address family under BGP routing process.

SUMMARY STEPS

1. configure 2. router bgp asn_id 3. nsr 4. bgp graceful-restart 5. bgp router-id ip-address 6. address-family l2vpn evpn 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
router bgp asn_id Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Specifies the BGP AS number and enters the BGP configuration mode, allowing you to configure the BGP routing process.
nsr Example:
RP/0/RSP0/CPU0:router(config-bgp)# nsr
Enables non-stop routing.
bgp graceful-restart Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 539

Configure the Routing Sessions Between the DCI and ToR

EVPN Features

Step 5 Step 6 Step 7

RP/0/RSP0/CPU0:router(config-bgp)# bgp graceful-restart
Enables graceful restart on the router.
bgp router-id ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# bgp router-id 209.165.200.227
Configures the router with a specified router ID.
address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp)# address-fmaily l2vpn evpn
Enables EVPN address family globally under BGP routing process and enters EVPN address family configuration submode.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure the Routing Sessions Between the DCI and ToR
Perform this task to configure the routing sessions between the DCI and ToR.

SUMMARY STEPS

1. configure 2. router bgp asn_id 3. neighbor ip-address 4. remote-as autonomous-system-number 5. ebgp-multihop maximum hop count 6. update-source loopback 7. address-family l2vpn evpn 8. import stitching-rt reoriginate 9. route-policy route-policy-name in 10. encapsulation-type type 11. route-policy route-policy-name out 12. advertise l2vpn evpn re-originated stitching-rt 13. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 540

EVPN Features

Configure the Routing Sessions Between the DCI and ToR

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
router bgp asn_id Example:
RP/0/RSP0/CPU0:router(config)# router bgp 100
Specifies the BGP AS number and enters the BGP configuration mode, allowing you to configure the BGP routing process.
neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 209.165.200.225
Places the router in neighbor configuration mode for BGP routing and configures the neighbor IP address 209.165.200.225 as a BGP peer.
remote-as autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# remote-as 2000
Creates a neighbor and assigns it a remote autonomous system number.
ebgp-multihop maximum hop count Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# ebgp-multihop 255
Enables multihop peerings with external BGP neighbors.
update-source loopback Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# update-source loopback1
Allows BGP sessions to use the primary IP address from a particular interface as the local address.
address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-fmaily l2vpn evpn
Configures EVPN address family.
import stitching-rt reoriginate Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# import stitching-rt reoriginate

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 541

Configure BGP session for remote DCI Connectivity

EVPN Features

Step 9 Step 10 Step 11 Step 12 Step 13

Enables import of routing information from BGP EVPN NLRIs that has route target identifier matching the stitching route target identifier and exports this routing information after re-origination to the L2VPN BGP neighbor.
route-policy route-policy-name in Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
Applies the route policy to inbound unicast routes.
encapsulation-type type Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# encapsulation-type vxlan
Configures VXLAN as encapsulation type.
route-policy route-policy-name out Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
Applies the route policy to outbound unicast routes.
advertise l2vpn evpn re-originated stitching-rt Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# advertise l2vpn evpn re-originated stitching-rt
Configures advertisement of L2VPN EVPN routes to be received from the L2VPN BGP neighbor.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No- Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure BGP session for remote DCI Connectivity
Perform this task to configure BGP session for remote DCI connectivity.

SUMMARY STEPS

1. configure 2. router bgp asn_id 3. neighbor ip-address 4. remote-as autonomous-system-number 5. update-source loopback

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 542

EVPN Features

Configure BGP session for remote DCI Connectivity

DETAILED STEPS

6. address-family l2vpn evpn 7. import re-originate stitching-rt 8. advertise l2vpn evpn re-originated 9. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
router bgp asn_id Example:
RP/0/RSP0/CPU0:router(config)# router bgp 200
Specifies the BGP AS number and enters the BGP configuration mode, allowing you to configure the BGP routing process.
neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 209.165.201.1
Places the router in neighbor configuration mode for BGP routing and configures the neighbor IP address 209.165.201.1 as a BGP peer.
remote-as autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# remote-as 100
Creates a neighbor and assigns it a remote autonomous system number.
update-source loopback Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# update-source loopback2
Allows BGP sessions to use the primary IP address from a particular interface as the local address.
address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-fmaily l2vpn evpn
Configures EVPN address family.
import re-originate stitching-rt Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# import re-originate stitching-rt

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 543

Configure Network Virtualization Endpoint (NVE) Interface

EVPN Features

Step 8 Step 9

Enables import of routing information from BGP EVPN NLRIs that have route target identifier matching the stitching route target identifier, and exports this routing information after re-origination to the L2VPN BGP neighbor.
advertise l2vpn evpn re-originated Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# advertise l2vpn evpn re-originated
Configures the advertisement of L2VPN EVPN routes to be received from the L2VPN BGP neighbor.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No- Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure Network Virtualization Endpoint (NVE) Interface
Perform this task to create an NVE interface and configure it as a VXLAN Tunnel EndPoint (VTEP) for VxLAN.

SUMMARY STEPS

1. configure 2. interface nve nve-identifier 3. source-interface loopback loopback-interface-identifier 4. anycast source-interface loopback loopback-interface-identifier 5. redundancy 6. backbone vxlan 7. iccp group group number 8. exit 9. backbone mpls 10. iccp group group number 11. exit 12. exit 13. member vni vni_number 14. load-balance per-evi 15. suppress-unknown-unicast-flooding 16. mcast-group ip_address 17. host-reachability protocol protocol 18. (Optional) ingress-replication protocol protocol 19. Use the commit or end command

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 544

EVPN Features

Configure Network Virtualization Endpoint (NVE) Interface

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4
Step 5 Step 6 Step 7 Step 8

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
interface nve nve-identifier Example:
RP/0/RSP0/CPU0:router(config)# interface nve 1
Creates the NVE interface and enters the NVE interface configuration sub-mode.
source-interface loopback loopback-interface-identifier Example:
RP/0/RSP0/CPU0:router(config-if)# source-interface loopback 1
Sets a loopback interface as the source interface for the VTEP.
anycast source-interface loopback loopback-interface-identifier Example:
RP/0/RSP0/CPU0:router(config-if)# anycast source-interface loopback 1
Configures anycast mode parameters and source interface for the anycast mode. Anycast IP address is used for BGP next hop on the fabric side. If you want to configure the ESI multipath feature, do not configure anycast IP address.
redundancy Example:
RP/0/RSP0/CPU0:router(config-if)# redundancy
Configures the redundancy path.
backbone vxlan Example:
RP/0/RSP0/CPU0:router(config-nve-red)# backbone vxlan
Configures Inter-Chassis Communication Protocol (ICCP) VXLAN backbone.
iccp group group number Example:
RP/0/RSP0/CPU0:router(config-nve-red-backbone-vxlan)# iccp group 11
Configures the ICCP group number.
exit Example:
RP/0/RSP0/CPU0:router(config-nve-red-backbone-vxlan)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 545

Configure Network Virtualization Endpoint (NVE) Interface

EVPN Features

Step 9 Step 10 Step 11 Step 12 Step 13 Step 14 Step 15 Step 16 Step 17

Exits the backbone-vxlan submode and returns to redundancy submode.
backbone mpls Example:
RP/0/RSP0/CPU0:router(config-nve-red)# backbone mpls
Configures ICCP MPLS backbone.
iccp group group number Example:
RP/0/RSP0/CPU0:router(config-nve-red-backbone-mpls)# iccp group 12
Configures ICCP group number for MPLS backbone.
exit Example:
RP/0/RSP0/CPU0:router(config-nve-red-backbone-mpls)# exit
Exits the backbone-mpls submode and returns to redundancy submode.
exit Example:
RP/0/RSP0/CPU0:router(config-nve-red)# exit
Exits the redundancy submode and returns to interface submode.
member vni vni_number Example:
RP/0/RSP0/CPU0:router(config-nve)# member vni 1
Associates a single VxLAN with the NVE interface using the VxLAN Network Identifier (VNI) and specifies a multicast address associated with this VNI.
load-balance per-evi Example:
RP/0/RSP0/CPU0:router(config-nve-vni)# load-balance per-evi
Configures per-evi load balance mode (default is per-flow).
suppress-unknown-unicast-flooding Example:
RP/0/RSP0/CPU0:router(config-nve-vni)# suppress-unknown-unicast-flooding
Configures the suppression of unknown unicast flooding.
mcast-group ip_address Example:
RP/0/RSP0/CPU0:router(config-nve-vni)# mcast-group 209.165.202.129
Specifies a multicast address associated with the VNI.
host-reachability protocol protocol

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 546

EVPN Features

Configure a Bridge Domain

Step 18 Step 19

Example:
RP/0/RSP0/CPU0:router(config-nve-vni)# host-reachability protocol bgp
Configures the BGP control protocol for VxLAN tunnel endpoint reachability.
(Optional) ingress-replication protocol protocol Example:
RP/0/RSP0/CPU0:router(config-nve-vni)# ingress-replication protocol bgp
Ingress replication is supported when configured, PIM-SSM otherwise.
Use the commit or end command commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure a Bridge Domain
Perform the following steps to configure the bridge domain on the DCI Gateway.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. evi ethernet vpn id 6. exit 7. member vni vxlan-id 8. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
l2vpn Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 547

Configure BGP Route Targets Import/Export Rules

EVPN Features

Step 3 Step 4 Step 5 Step 6 Step 7 Step 8

RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the l2vpn configuration mode.
bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1
Enters the bridge group configuration mode.
bridge-domain bridge-domain-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1
Enters the bridge domain configuration mode.
evi ethernet vpn id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# evi 1
Creates the ethernet VPN ID.
exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-evi)# exit
Exits the EVI configuration mode and returns to bridge domain configuration mode.
member vni vxlan-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# member vni 1
Associates a member VNI with the bridge domain.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure BGP Route Targets Import/Export Rules
By default, these parameters are auto-derived from the DCI's configuration: · Route Distinguisher (RD) for global Ethernet Segment table

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 548

EVPN Features

Configure BGP Route Targets Import/Export Rules

Default: Auto-generated RD based on loopback IP address · EVI's BGP Route Distinguisher (RD)
Default: Auto-generated RD based on loopback IP address · EVI's BGP Route Target. Default: Auto-generated RT based on EVI ID
Perform this task to overwrite the auto-generated BGP RD/RT values and define route targets to be used for import and export of forwarding information.

SUMMARY STEPS

1. configure 2. evpn 3. bgp 4. rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 5. exit 6. evi evi_id 7. bgp 8. route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 9. route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 10. exit 11. vni vni_idstitching 12. bgp 13. route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 14. route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 15. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode.
bgp Example:
RP/0/RSP0/CPU0:router(config-evpn)# bgp
Enters EVPN BGP configuration mode and configures static BGP settings for the Ethernet Segment ES:GLOBAL EVI, which is used for handling ES routes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 549

Configure BGP Route Targets Import/Export Rules

EVPN Features

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11

rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-bgp)# rd 200:50
Configures the route distinguisher.
exit Example:
RP/0/RSP0/CPU0:router(config-evpn-bgp)# exit
Exits the current configuration mode and returns to evpn submode
evi evi_id Example:
RP/0/RSP0/CPU0:router(config-evpn)# evi 1
Configures Ethernet VPN ID. The EVI ID range is from 1 to 65534.
bgp Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp
Enters the BGP configuration mode for the specific EVI.
route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target import 101:1
Configures importing of routes from the L2 EVPN BGP NLRI that have the matching route-target value.
route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target export 101:1
Configures exporting of routes to the L2 EVPN BGP NLRIs and assigns the specified route-target identifiers to the BGP EVPN NLRIs.
exit Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# exit
Exits the current configuration mode and returns to evpn submode
vni vni_idstitching Example:
RP/0/RSP0/CPU0:router(config-evpn)# vni 1 stitching
Configures Ethernet VNI ID. Configures stitching for the VxLAN side. The VNI ID range is from 1 to 16777215.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 550

EVPN Features

Configure Ethernet Segment Identifier

Step 12 Step 13 Step 14 Step 15

bgp Example:
RP/0/RSP0/CPU0:router(config-evpn-instance)# bgp
Enters the BGP configuration mode for the specific VNI.
route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-instance-bgp)# route-target import 101:1
Configures importing of routes from the L2 EVPN BGP NLRI that have the matching route-target value.
route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-instance-bgp)# route-target export 101:1
Configures exporting of routes to the L2 EVPN BGP NLRIs and assigns the specified route-target identifiers to the BGP EVPN NLRIs.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure Ethernet Segment Identifier
Perform this task to configure Ethernet Segment Identifier (ESI).

SUMMARY STEPS

1. configure 2. evpn 3. interface nve nve-identifier 4. ethernet-segment 5. identifier type esi-type esi-identifier 6. bgp route-target route target value 7. Use the commit or end command

DETAILED STEPS

Step 1 configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 551

Configure ICCP Group

EVPN Features

Step 2 Step 3 Step 4 Step 5 Step 6 Step 7

Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
evpn Example:
RP/0/RSP0/CPU0:router# evpn
Enters EVPN configuration mode.
interface nve nve-identifier Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface nve 1
Creates the NVE interface and enters the NVE interface configuration sub-mode
ethernet-segment Example:
RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment
Enters the EVPN ethernet-segment configuration mode.
identifier type esi-type esi-identifier Example:
RP/0/RSP0/CPU0:router(config-evpn-ac-es)# identifier type 0 88.00.00.00.00.00.00.00.01
Configures Ethernet Segment Identifier .
bgp route-target route target value Example:
RP/0/RSP0/CPU0:router(config-evpn-ac-es)# bgp route-target 8888.0000.0001
Configures the BGP import route-target for the Ethernet-Segment.
Use the commit or end command commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure ICCP Group
Perform this task to configure Inter Chassis Communication Protocol (ICCP) parameters.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 552

EVPN Features

Configure ICCP Group

Configure ICCP group for core interface tracking. If all interfaces are down, the DCI is isolated from the core/fabric network. The associated nve interface is brought down, and BGP NLRIs are withdrawn.

SUMMARY STEPS

1. configure 2. redundancy 3. iccp group group number 4. mode singleton 5. backbone 6. interface GigabitEthernet GigabitEthernet Interface Instance 7. Use the commit or end command

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5 Step 6

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
redundancy Example:
RP/0/RSP0/CPU0:router(config)# redundancy
Enters redundancy configuration mode.
iccp group group number Example:
RP/0/RSP0/CPU0:router(config-redundancy)# iccp group 11
Configures ICCP group number.
mode singleton Example:
RP/0/RSP0/CPU0:router(config-redundancy-iccp-group)# mode singleton
Enables to run the group in singleton mode.
backbone Example:
RP/0/RSP0/CPU0:router(config-redundancy-iccp-group)# backbone
Configures ICCP backbone interface.
interface GigabitEthernet GigabitEthernet Interface Instance Example:
RP/0/RSP0/CPU0:router(config-redundancy-group-iccp-backbone)# interface GigabitEthernet 0/2/0/12
Configures GigabitEthernet interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 553

Enable Flow-based Load Balancing

EVPN Features

Step 7

Use the commit or end command commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Enable Flow-based Load Balancing
Perform this task to enable flow-based load balancing.

SUMMARY STEPS

1. configure 2. l2vpn 3. load-balancing flow {src-dst-mac | src-dst-ip} 4. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the L2VPN configuration mode. load-balancing flow {src-dst-mac | src-dst-ip} Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# load-balancing flow src-dst-ip
Enables flow-based load balancing. Use the commit or end command.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 554

EVPN Features

Example: All-Active Multi Homing with Anycast VTEP IP Address Configuration

commit - Saves the configuration changes and remains within the configuration session.
end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Example: All-Active Multi Homing with Anycast VTEP IP Address Configuration
The following example shows the all-active multi homing with anycast VTEP IP address configuration:
interface nve1 source-interface loopback1 anycast source-interface loopback2
member vni 5100 mcast-address 239.1.1.1 host-reachabilty protocol bgp
!
! evpn
evi 10 bgp route-target import 100:10
! vni 5100 stitching bgp route-target import 200:5100 route-target export 200:5100 !
! l2vpn
bridge group DCI bridge-domain V1 evi 10 member vni 5100
! router bgp 100
bgp router-id 209.165.200.226 address-family l2vpn evpn
! neighbor 209.165.201.2 remote-as 100 description core-facing update-source Loopback1 address-family l2vpn evpn import re-originate stitching-rt advertise l2vpn evpn re-originated
! neighbor 209.165.202.130
remote-as 200 ebgp-multihop 255 update-source Loopback1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 555

Example: All-Active Multi Homing with Unique VTEP IP Address Configuration

EVPN Features

address-family l2vpn evpn import stitching-rt re-originate route-policy passall in encapsulation-type vxlan route-policy passall out advertise l2vpn evpn re-originated stitching-rt
!
Example: All-Active Multi Homing with Unique VTEP IP Address Configuration
The following example shows the all-active multi homing with unique VTEP IP address configuration:
interface nve1 source-interface loopback1
member vni 5100 mcast-address 239.1.1.1 host-reachabilty protocol bgp
! ! evpn
evi 10 bgp route-target import 100:10
! vni 5100 stitching bgp route-target import 200:5100 route-target export 200:5100 !
! l2vpn
bridge group DCI bridge-domain V1 evi 10 member vni 5100
! router bgp 100
bgp router-id 209.165.200.226 address-family l2vpn evpn
! neighbor 209.165.201.2
remote-as 100 description core-facing update-source Loopback1 address-family l2vpn evpn
import re-originate stitching-rt multipath advertise l2vpn evpn re-originated ! neighbor 209.165.202.130 remote-as 200 ebgp-multihop 255 update-source Loopback1 address-family l2vpn evpn import stitching-rt re-originate
multipath route-policy passall in

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 556

EVPN Features

EVPN Port-Active Multihoming

encapsulation-type vxlan route-policy passall out advertise l2vpn evpn re-originated stitching-rt !
EVPN Port-Active Multihoming
The EVPN Port-Active Multihoming feature supports single-active redundancy load balancing at the port-level or the interface-level. You can use this feature when you want to forward the traffic to a specific interface, rather than have a per-flow load balancing across multiple PE routers. This feature provides a faster convergence during a link failure. This feature enables protocol simplification as only one of the physical ports is active at a given time. You can enable this feature only on bundle interfaces.
EVPN port-active provides protocol simplification compared to Inter-Chassis Communication Protocol (ICCP), which runs on top of Label Distribution Protocol (LDP). You can use this feature as an alternative to multi-chassis link aggregation group (MC-LAG) with ICCP.
Also, you can use this feature when you want certain QoS features to work.
This feature allows one of the PEs to be in active mode and another in the standby mode at the port-level. Only the PE which is in the active mode sends and receives the traffic. The other PE remains in the standby mode. The PEs use the Designated Forwarder (DF) election mechanism to determine which PE must be in the active mode and which must be in the standby mode. You can use either modulo or Highest Random Weight (HRW) algorithm for per port DF election. By default, the modulo algorithm is used for per port DF election.
Figure 83: EVPN Port-Active Multihoming

Consider a topology where the customer edge device (CE) is multihomed to provider edge devices, PE1 and PE2. Use single link aggregation at the CE. Only one of the two interfaces is in the forwarding state, and the other interface is in the standby state. In this topology, PE2 is in the active mode and PE1 is in the standby mode. Hence, PE2 carries traffic from the CE. All services on the PE2 interface operate in the active mode. All services on the PE1 operate in the standby mode. If the interface is running LACP, then the standby sets the LACP state to Out-of-Service (OOS) instead of bringing the interface state down. This state enables better convergence on standby to active transition.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 557

Configure EVPN Port-Active Multihoming

EVPN Features

If you remove the port-active configuration on both PE1 and PE2 and then add back the port-active configuration on both the PEs, PE2 is chosen as an active interface again. EVPN port-active is compatible with the following services:
· L2 bridging · L3 gateway · L2VPN VPLS · EVPN ELAN · EVPN IRB · L2VPN VPWS · EVPN VPWS · FXC
Note MC-LAG in EVPN Multihoming-ELAN is not supported and alternative EVPN port-active should be used.
This feature supports both L2 and L3 port-active functionality. L2 and L3 port-active can coexist on the same bundle. For example, if you configure port-active on a bundle, the bundle can have a mix of both L3 subinterfaces and L2 subinterfaces participating in the services mentioned above.
Configure EVPN Port-Active Multihoming
Perform this task to configure EVPN port-active multihoming. Configure the same ESI on both the routers. Configure Ethernet-Segment in port-active load-balancing mode on peering PEs for a specific interface.
Configuration Example
/* PE1 and PE2 Configuration */
Router#configure Router(config)#interface Bundle-Ether11 Router(config-if)#lacp system mac 3637.3637.3637 Router(config-if)#exit
Router(config)#evpn Router(config-evpn)#interface Bundle-Ether11 Router(config-evpn-ac)#ethernet-segment Router(config-evpn-ac-es)#identifier type 0 11.11.11.11.11.00.11.11.11 Router(config-evpn-ac-es)#load-balancing-mode port-active Router(config-evpn-ac-es)#commit
/* If you want enable L3 port-active, configure the IP address */ Router#configure Router(config)#interface Bundle-Ether11 Router(config-if)#ipv4 address 10.0.0.1 255.0.0.0 Router(config-if)#ipv6 address 10::1/64 Router(config-if)#commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 558

EVPN Features

Configure EVPN Port-Active Multihoming

Running Configuration This section shows port-active running configuration.

configure interface Bundle-Ether11 lacp system mac 3637.3637.3637 !
evpn interface Bundle-Ether11 ethernet-segment identifier type 0 11.11.11.11.11.00.11.11.11 load-balancing-mode port-active ! !
interface Bundle-Ether11 ipv4 address 10.0.0.1 255.0.0.0 ipv6 address 10::1/64 !
!
Verification
Verify that you have configured the Port-Active Multihoming feature successfully.

Router:PE2#show bundle bundle-ether 11

Bundle-Ether11 Status: Local links <active/standby/configured>: Local bandwidth <effective/available>: MAC address (source): Inter-chassis link: Minimum active links / bandwidth: Maximum active links: Wait while timer: Load balancing: Link order signaling: Hash type: Locality threshold: LACP: Flap suppression timer: Cisco extensions: Non-revertive: mLACP: IPv4 BFD: IPv6 BFD:

Up 1/0/1 1000000 (1000000) kbps 02b4.3cb4.a004 (Chassis pool) No 1 / 1 kbps 64 2000 ms
Not configured Default None Operational Off Disabled Disabled Not configured Not configured Not configured

Port -------------------Gi0/2/0/8
Link is Active

Device --------------Local

State ----------Active

Port ID -------------0x8000, 0x0006

B/W, kbps 1000000

/* PE2 is in the active mode, hence the status shows as Up and the Link as Active. */

Router:PE1#show bundle bundle-ether 11

Bundle-Ether11 Status: Local links <active/standby/configured>: Local bandwidth <effective/available>:

LACP OOS (out of service) 0/1/1 0 (0) kbps

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 559

Configure EVPN Port-Active Multihoming

EVPN Features

MAC address (source): Inter-chassis link: Minimum active links / bandwidth: Maximum active links: Wait while timer: Load balancing:
Link order signaling: Hash type: Locality threshold: LACP: Flap suppression timer: Cisco extensions: Non-revertive: mLACP: IPv4 BFD: IPv6 BFD:

02cf.94c1.0a04 (Chassis pool) No 1 / 1 kbps 64 2000 ms
Not configured Default None Operational Off Disabled Disabled Not configured Not configured Not configured

Port

Device

State

Port ID

-------------------- --------------- ----------- --------------

Gi0/2/0/7

Local

Standby

0x8000, 0x0006

Link is in standby due to bundle out of service state

B/W, kbps 1000000

/* PE1 is in the standby mode, hence the status shows as LACP OOS (out of service) and the Link is in standby due to bundle out of service state. */

Router:CE#sshow bundle bundle-ether 11

Bundle-Ether11 Status: Local links <active/standby/configured>: Local bandwidth <effective/available>: MAC address (source): Inter-chassis link: Minimum active links / bandwidth: Maximum active links: Wait while timer: Load balancing: Link order signaling: Hash type: Locality threshold: LACP: Flap suppression timer: Cisco extensions: Non-revertive: mLACP: IPv4 BFD: IPv6 BFD:

Up 1/0/2 1000000 (1000000) kbps 02ff.566c.be04 (Chassis pool) No 1 / 1 kbps 64 2000 ms
Not configured Default None Operational Off Disabled Disabled Not configured Not configured Not configured

Port

Device

State

Port ID

B/W, kbps

-------------------- --------------- ----------- --------------

Gi0/0/0/8

Local

Active

0x8000, 0x0006

1000000

Link is Active

Gi0/0/0/16

Local

Negotiating 0x8000, 0x000b

1000000

Partner is not Synchronized (Waiting, Standby, or LAG ID mismatch)

Router:PE2#show evpn ethernet-segment interface BE11 detail

/* The following output shows that the port-active mode is configured and the port is in the UP state. */

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0011.1111.1111.0011.1111 BE11

192.168.0.2

192.168.0.3

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 560

EVPN Features

Configure EVPN Port-Active Multihoming

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether11

Interface MAC : 02b4.3cb4.a004

IfHandle

: 0x00004170

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 11.1111.1111.0011.1111

ES Import RT

: 1111.1111.1100 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: Port-Active

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

:

Mobility-Flush : Count 0, Skip 0, Last n/a

Peering Details : 2 Nexthops

192.168.0.2 [MOD:P:7fff]

192.168.0.3 [MOD:P:00]

Service Carving Results:

Forwarders

:0

Elected

:0

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 20 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : None

Remote SHG labels : 0

Access signal mode: Bundle OOS (Default)

Router:PE1#show evpn ethernet-segment interface BE11 detail

/* The following output shows that the por-active mode is configured and the port is in the Standby state. */

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0011.1111.1111.0011.1111 BE11

192.168.0.2

192.168.0.3

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether11

Interface MAC : 02cf.941c.0a04

IfHandle

: 0x00004170

State

: Standby

Redundancy

: Not Defined

ESI type

:0

Value

: 11.1111.1111.0011.1111

ES Import RT

: 1111.1111.1100 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: Port-Active

Service Carving : Auto-selection

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 561

EVPN Single-Flow-Active Load Multihoming Balancing Mode

EVPN Features

Multicast

: Disabled

Convergence

:

Mobility-Flush : Count 0, Skip 0, Last n/a

Peering Details : 2 Nexthops

192.168.0.2 [MOD:P:00]

192.168.0.3 [MOD:P:7fff]

Service Carving Results:

Forwarders

:0

Elected

:0

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 20 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : None

Remote SHG labels : 0

Access signal mode: Bundle OOS (Default)

EVPN Single-Flow-Active Load Multihoming Balancing Mode

Table 13: Feature History Table

Feature Name
EVPN Single-Flow-Active Multihoming Load-Balancing Mode

Release Information Release 7.3.1

Feature Description
This feature introduces EVPN Single-Flow-Active multihoming mode to connect PE devices in an access network that run Layer 2 access gateway protocols. In this mode, only the PE that first advertises the host MAC address in a VLAN forwards the traffic in a specific flow. When the primary link fails, the traffic quickly switches to the standby PE that learns the MAC address from the originated path, thereby providing fast convergence. A keyword, single-flow-active is added to the load-balancing-mode command.

In a ring topology, only one of the PEs, which is the active PE, sends and receives the traffic to prevent a traffic loop. When the link to the active PE fails, the traffic switches over to the standby PE. Traffic switchover takes a while because the standby PE has to learn the MAC addresses of the connected hosts. There's a traffic loss until the traffic switch over happens.
The EVPN Single-Flow-Active multihoming mode connects PE devices in an access network, and in the event of active link failure the switchover happens immediately and reduces the traffic loss.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 562

EVPN Features

EVPN Single-Flow-Active Load Multihoming Balancing Mode

Both active and standby PEs learn the MAC addresses of the connected host. The PE that learns the MAC address of the host directly is called the Primary (active) PE. The primary PE advertises the learnt MAC addresses to the peer PE, which is referred as standby PE. As the standby PE learns the MAC address of the host through the active PE, this learnt path is referred to as the reoriginated path.
When the primary link fails, the convergence happens fast and the traffic is sent through the standby PE (reoriginated path).
Let us understand how EVPN single flow-active mode helps in fast convergence:

· In this topology, the access network devices are connected through a ring topology. The access network uses Layer-2 gateway protocols such as G.8032, MPLS-TP, STP to prevent traffic loop due to continuous flooding.
· CE1, CE2, CE3, PE1, and PE2 devices form a ring topology. · Host 1 is connected to CE1. · CE1 is connected to both PE1 and PE2, thus is multihomed. · PE1 and PE2 are part of the access ring. · Both PE1 and PE2 is configured with the same non-zero Ethernet Segment ID (ESI) number 0
36.37.00.00.00.00.00.11.00 for the bundle interface to enable multihoming of the host (CE1). · PE1 and PE2 belongs to te same VLAN and hence configured with the same EVPN instance (EVI) 100.
Traffic Flow · Consider a traffic flow from Host 1 to Host 2. The traffic is sent from Host 1 to CE1. · In this ring topology, the link between CE1 to CE2 is in the blocked state; the link between CE1 to CE3 is in the forwarding state. Hence, CE1 sends the traffic to PE2 through CE3. · PE2 first learns the MAC address of Host1 through CE1. PE2 advertises the learnt MAC address to the peering PE1. · As PE2 has learnt the MAC address directly from Host 1, and acts as an active PE. · The PE which originates the MAC route due to access learning sets the default BGP local preference attribute value to 100.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 563

EVPN Single-Flow-Active Load Multihoming Balancing Mode

EVPN Features

· PE1 learns the MAC address from PE2 and acts as a stand-by PE. As PE1 gets the reoriginated MAC route from PE2, PE1 sets the BGP local preference attribute value to 80.
· The PE that has the higher local preference always sends and receives the traffic. Thus PE1 sends the traffic to PE3. PE3 sends the traffic to Host 2.
Failure Scenario When the link between CE1 and CE3 is down or when the link between CE3 and PE2 is down, traffic is sent through PE1.

· When the link fails, the link CE1-CE2 changes to the forwarding state. · PE1 learns the MAC address of Host 1 directly and advertises the learnt MAC address to PE2. · PE1 sends the traffic to Host 2 through the remote PE3 with a BGP local preference value of 100. · PE3 sends and receives the traffic from PE1 until the access link between CE1 and CE2 changes to the
blocked state.
Configuration Example · Configure both PE1 and PE2 with the same EVI of 100. · Configure both PE1 and PE2 with the same ESI 0 36.37.00.00.00.00.00.11.01.
Perform these tasks on both PE1and PE2.
/* Configure advertisement of MAC routes */ Router# configure Router(config)# evpn Router(config-evpn)# evi 100 Router(config-evpn-instance)# advertise-mac Router(config-evpn-instance-mac)# root
/* Configure single-flow-active load-balancing mode */ Router(config)# evpn Router(config-evpn)# interface bundle-ether 1 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 36.37.00.00.00.00.00.11.01 Router(config-evpn-ac-es)# load-balancing-mode single-flow-active
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 564

EVPN Features

EVPN Single-Flow-Active Load Multihoming Balancing Mode

Router(config-evpn-ac-es)# root
/* Configure bridge domain and associating the evi to the bridge domain */ Router(config)# l2vpn Router(config-l2vpn)# bridge group 100 Router(config-l2vpn-bg)# bridge-domain 100 Router(config-l2vpn-bg-bd)# interface Bundle-Ether1 Router(config-l2vpn-bg-bd-ac)# evi 100 Router(config-l2vpn-bg-bd-ac)# commit Router(config-l2vpn-bg-bd-evi)# root Router(config)# exit Router#
Running Configuration
evpn evi 100 advertise-mac ! ! interface Bundle-Ether1 ethernet-segment identifier type 0 36.37.00.00.00.00.00.11.01 load-balancing-mode single-flow-active ! !
! l2vpn
bridge group 100 bridge-domain 100 interface Bundle-Ether1 ! evi 100 ! !
! !
Verification
Verify the Ethernet Segment Status:
· Verify that the Ethernet Segment Id is the same as that you have configured: In this example, you notice that the ESI on PE1 is 0 36.37.00.00.00.00.00.11.01.
· Verify that the Single-flow-active mode is enabled in the Topology section.
The following example shows the output for PE1:
Router# show evpn ethernet-segment carving detail Thu Aug 6 13:00:37.988 IST Legend:
B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 565

EVPN Single-Flow-Active Load Multihoming Balancing Mode

EVPN Features

R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0 36.37.00.00.00.00.00.11.01 BE1

10.0.0.1

172.16.0.1

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether1

Interface MAC : 008a.96ee.88dc

IfHandle

: 0x20005f5c

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 00.0000.0000.0000.0001

ES Import RT

: 0000.0000.0001 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, Single-flow-active

Configured

: Single-flow-active

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

: MAC-Mobility,

Mobility-Flush : Debounce 13 sec, Count 1, Skip 1499

: Last 01/01 05:57:42.468

Peering Details : 2 Nexthops

10.0.0.1[MOD:P:00:T]

172.16.0.1 [MOD:P:7fff:T]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

Service Carving Results:

Forwarders

: 1000

Elected

: 1000

EVI E :

1,

2,

3,

4,

5,

6

EVI E :

7,

8,

9,

10,

11,

12,

EVI E :

13,

14,

15,

16,

17,

18,

EVI E :

19,

20,

21,

22,

23,

24,

[........]

EVI E :

979,

980,

981,

982,

983,

984,

EVI E :

985,

986,

987,

988,

989,

990,

EVI E :

991,

992,

993,

994,

995,

996,

EVI E :

997,

998,

999, 1000

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 29096

Remote SHG labels : 1

29096 : nexthop 10.0.0.1

Access signal mode: Bundle OOS (Default)

The following example shows the output for PE2:

Router# show evpn ethernet-segment carving detail Thu Aug 6 13:00:37.988 IST

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 566

EVPN Features

EVPN Single-Flow-Active Load Multihoming Balancing Mode

Legend: B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0 36.37.00.00.00.00.00.11.01 BE1

10.0.0.1

172.16.0.1

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether1

Interface MAC : 008a.96ee.88dc

IfHandle

: 0x20005f5c

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 00.0000.0000.0000.0001

ES Import RT

: 0000.0000.0001 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, Single-flow-active

Configured

: Single-flow-active

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

: MAC-Mobility,

Mobility-Flush : Debounce 13 sec, Count 1, Skip 1499

: Last 01/01 05:57:42.468

Peering Details : 2 Nexthops

10.0.0.1[MOD:P:00:T]

172.16.0.1 [MOD:P:7fff:T]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

Service Carving Results:

Forwarders

: 1000

Elected

: 1000

EVI E :

1,

2,

3,

4,

5,

6

EVI E :

7,

8,

9,

10,

11,

12,

EVI E :

13,

14,

15,

16,

17,

18,

EVI E :

19,

20,

21,

22,

23,

24,

[........]

EVI E :

979,

980,

981,

982,

983,

984,

EVI E :

985,

986,

987,

988,

989,

990,

EVI E :

991,

992,

993,

994,

995,

996,

EVI E :

997,

998,

999, 1000

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 567

EVPN Convergence Using NTP Synchronization

EVPN Features

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 29098

Remote SHG labels : 1

29098 : nexthop 172.16.0.1

Access signal mode: Bundle OOS (Default)

Associated Commands · load-balancing-mode · show evpn ethernet-segment

EVPN Convergence Using NTP Synchronization

Table 14: Feature History Table

Feature Name

Release Information

EVPN Convergence Using NTP Release 7.3.1 Synchronization

Feature Description
This feature leverages the NTP clock synchronization mechanism to handle the transfer of DF role from one edge device to another. In this mechanism, the newly added or recovered PE advertises the Service Carving Timestamp along with the current time to peering PEs. This improves convergence by reducing the time for DF election from three seconds to a few tens of milliseconds. The show evpn ethernet-segment command is modified to display the Service-Carving wall clock Timestamp (SCT).

In Ethernet VPN, depending on the load-balancing mode, the Designated Forwarder (DF) is responsible for forwarding Unicast, Broadcast, Unknown Unicast, and Multicast (BUM) traffic to a multihomed Customer Edge (CE) device on a given VLAN on a particular Ethernet Segment (ES).
The DF is selected from the set of multihomed edge devices attached to a given ES. When a new edge router joins the peering group either through failure recovery or booting up of a new device, the DF election process is triggered.
By default, the process of transferring the DF role from one edge device to another takes 3 seconds. The traffic may be lost during this period.
The NTP synchronization mechanism for fast DF election upon recovery leverages the NTP clock synchronization to better align DF events between peering PEs.
If all edge devices attached to a given Ethernet Segment are clock-synchronized with each other using NTP, the default DF election time reduces from 3 seconds to few tens of milliseconds, thereby reducing traffic loss.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 568

EVPN Features

EVPN Convergence Using NTP Synchronization

Note If the NTP is not synchronized with the NTP server when the EVPN Ethernet Segment interface is coming up, EVPN performs normal DF election.
Let's understand how NTP synchronization works:
Figure 84: EVPN Convergence Using NTP Synchronization

In this topology, CE1 is multihomed to PE1 and PE2. · PE1 joins the peering group after failure recovery at time (t) = 99 seconds. · When PE1 joins the peering group, PE1 advertises Route-Type 4 at t = 100 seconds with target Service Carving Time (SCT) value t = 103 seconds to PE2. · PE2 receives peering Route-Type 4 and learns the DF election time of PE1 to be t =103 seconds. · If all the peers support NTP, PE2 starts a timer based on the SCT received from PE1 along with a skew value in the Service Carving Time. The skew values are used to eliminate any potential duplicate traffic or loops. Both PE1 and PE2 carves at time t = 103 seconds.
Benefits · Helps in fast convergence during a primary link recovery · Supports all the existing load-balancing modes: · All-active multihoming · Single-active multihoming · Port-active multihoming · Single-Flow-Active multihoming
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 569

EVPN MPLS Seamless Integration with VPLS

EVPN Features

Limitations
· All devices attached to a given Ethernet Segment must be configured with NTP. If one of the devices doesn't support NTP clock, the mechanism falls back to default timers.

Verification Use the show evpn ethernet-segment command to view the Service Carving Time of the edge device. For example,
Router# show evpn ethernet-segment interface Bundle-Ether200 carving detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0053.5353.5353.5353.5301 BE200

10.0.0.1

172.16.0.1

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether200

Interface MAC : 2c62.34fd.2485

IfHandle

: 0x20004334

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 53.5353.5353.5353.5301

ES Import RT

: 8888.8888.8888 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, All-active

Configured

: All-active (AApF) (default)

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

: Reroute

Peering Details : 2 Nexthops

91.0.0.10 [MOD:P:00:T]

91.0.0.30 [MOD:P:7fff:T]

Service Carving Synchronization:

Mode

: NTP_SCT

Peer Updates :

10.0.0.1 [SCT: 2020-10-16 00:28:22:559418]

10.0.0.3 [SCT: 2020-10-22 17:46:36:587875]

Service Carving Results:

Forwarders

: 128

Elected

: 64

Not Elected : 64

Associated Commands · Show evpn ethernet-segment

EVPN MPLS Seamless Integration with VPLS
VPLS is a widely-deployed L2VPN technology. As service providers are looking to adopt EVPN on their existing VPLS networks, it is required to provide a mechanism by which EVPN can be introduced without a

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 570

EVPN Features

Migrate VPLS Network to EVPN Network through Seamless Integration

software upgrade. The EVPN MPLS Seamless Integration with VPLS feature allows EVPN service introduced gradually in the network on a few PE nodes at a time. It eliminates the need to network wide software upgrade at the same time. This feature allows a VPLS service migrated to EVPN service. This feature allows for staged migration where new EVPN sites can be provisioned on existing VPLS enabled PEs. This feature also allows for the co-existence of PE nodes running EVPN and VPLS for the same VPN instance. This allows VPLS or legacy network to be upgraded to the next generation EVPN network without service disruption.
Migrate VPLS Network to EVPN Network through Seamless Integration
In EVPN network, VPN instances are identified by EVPN instance ID (EVI-ID). Similar to other L2VPN technologies, EVPN instances are also associated with route-targets and route-distinguisher. EVPN uses control plane for learning and propagating MAC unlike traditional VPLS, where MAC is learnt in the data plane (learns using "flood and learn technique"). In EVPN, MAC routes are carried by MP-BGP protocol. In EVPN enabled PEs, PEs import the MAC route along with the label to their respective EVPN forwarding table only if their route targets (RTs) match. An EVPN PE router is capable of performing VPLS and EVPN L2 bridging in the same VPN instance. When both EVPN and BGP-AD PW are configured in a VPN instance, the EVPN PEs advertise the BGP VPLS auto-discovery (AD) route as well as the BGP EVPN Inclusive Multicast route (type-3) for a given VPN Instance. Route type-3 referred to as ingress replication multicast route, is used to send broadcast, unknown unicast, and multicast (BUM) traffic. Other remote PEs import type-3 routes for the same VPN instance only if the sending PE RTs match with their configured RT. Thus, at the end of these route-exchanges, EVPN capable PEs discover all other PEs in the VPN instance and their associated capabilities. The type-3 routes used by PE to send its BUM traffic to other PEs ensure that PEs with the same RTs receive the BUM traffic. EVPN advertises the customer MAC address using type-2 route.
This feature allows you to upgrade the VPLS PE routers to EVPN one by one and the network works without any service disruption. Consider the following topology where PE1, PE2, PE3, and PE4 are interconnected in a full-meshed network using VPLS PW.
Figure 85: EVPN MPLS Seamless Integration with VPLS

The EVPN service can be introduced in the network one PE node at a time. The VPLS to EVPN migration starts on PE1 by enabling EVPN in a VPN instance of VPLS service. As soon as EVPN is enabled, PE1 starts advertising EVPN inclusive multicast route to other PE nodes. Since PE1 does not receive any inclusive multicast routes from other PE nodes, VPLS pseudo wires between PE1 and other PE nodes remain up. PE1 keeps forwarding traffic using VPLS pseudo wires. At the same time, PE1 advertises all MAC address learned from CE1 using EVPN route type-2. In the second step, EVPN is enabled in PE3. PE3 starts advertising inclusive multicast route to other PE nodes. Both PE1 and PE3 discover each other through EVPN routes. As a result, PE1 and PE3 shut down the pseudo wires between them. EVPN service replaces VPLS service between PE1 and PE3. At this stage, PE1 keeps running VPLS service with PE2 and PE4. It starts EVPN service with PE3 in the same VPN instance. This is called EVPN seamless integration with VPLS. The VPLS to EVPN migration then continues to remaining PE nodes. In the end, all four PE nodes are enabled with
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 571

Configure EVPN on the Existing VPLS Network

EVPN Features

EVPN service. VPLS service is completely replaced with EVPN service in the network. All VPLS pseudo wires are shut down.
Configure EVPN on the Existing VPLS Network
Perform the following tasks to configure EVPN on the existing VPLS network. · Configure L2VPN EVPN address-family · Configure EVI and corresponding BGP route-targets under EVPN configuration mode · Configure EVI under a bridge-domain
See EVI Configuration under L2VPN Bridge-Domain, on page 578 section for how to migrate various VPLS-based network to EVPN.
Configure L2 EVPN Address-Family Perform this task to enable EVPN address family under both BGP and participating neighbor.

SUMMARY STEPS

1. configure 2. router bgp asn_id 3. nsr 4. bgp graceful-restart 5. bgp router-id ip-address 6. address-family l2vpn evpn 7. exit 8. neighbor ip-address 9. remote-as autonomous-system-number 10. update-source loopback 11. address-family l2vpn evpn 12. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
router bgp asn_id Example:
RP/0/RSP0/CPU0:router(config)# router bgp 65530
Specifies the BGP AS number and enters the BGP configuration mode, allowing you to configure the BGP routing process.
nsr

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 572

EVPN Features

Configure L2 EVPN Address-Family

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10 Step 11

Example:
RP/0/RSP0/CPU0:router(config-bgp)# nsr
Enables non-stop routing.
bgp graceful-restart Example:
RP/0/RSP0/CPU0:router(config-bgp)# bgp graceful-restart
Enables graceful restart on the router.
bgp router-id ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# bgp router-id 200.0.1.1
Configures the router with a specified router ID.
address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp)# address-family l2vpn evpn
Enables EVPN address family globally under BGP routing process and enters EVPN address family configuration submode.
exit Example:
RP/0/RSP0/CPU0:router(config-bgp-af)# exit
Exits the current configuration mode.
neighbor ip-address Example:
RP/0/RSP0/CPU0:router(config-bgp)# neighbor 200.0.4.1
Places the router in neighbor configuration mode for BGP routing and configures the neighbor IP address 200.0.4.1 as a BGP peer.
remote-as autonomous-system-number Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# remote-as 65530
Creates a neighbor and assigns it a remote autonomous system number.
update-source loopback Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# update-source Loopback0
Allows BGP sessions to use the primary IP address from a particular interface as the local address.
address-family l2vpn evpn Example:
RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-family l2vpn evpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 573

Configure EVI and Corresponding BGP Route Targets under EVPN Configuration Mode

EVPN Features

Step 12

Enables EVPN address family globally under BGP routing process and enters EVPN address family configuration submode.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure EVI and Corresponding BGP Route Targets under EVPN Configuration Mode
Perform this task to configure EVI and define the corresponding BGP route targets. Also, configure advertise-mac, else the MAC routes (type-2) are not advertised.

SUMMARY STEPS

1. configure 2. evpn 3. evi evi_id 4. bgp 5. table-policy policy name 6. route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 7. route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 8. exit 9. advertise-mac 10. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode.
evi evi_id Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 574

EVPN Features

Configure EVI and Corresponding BGP Route Targets under EVPN Configuration Mode

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10

RP/0/RSP0/CPU0:router(config-evpn)# evi 1
Configures Ethernet VPN ID. The EVI ID range is from 1 to 65534.
bgp Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp
Enters the BGP configuration mode for the specific EVI.
table-policy policy name Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# table-policy spp-basic-6
Configures policy for installation of forwarding data to L2FIB. The EVI ID range is from 1 to 65534.
route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target import 100:6005
Configures importing of routes from the L2 EVPN BGP NLRI that have the matching route-target value.
route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target export 100:6005
Configures exporting of routes to the L2 EVPN BGP NLRIs and assigns the specified route-target identifiers to the BGP EVPN NLRIs.
exit Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# exit
Exits the current configuration mode.
advertise-mac Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac
Advertises MAC route (type-2).
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 575

Example: EVI Configuration under EVPN Configuration-mode

EVPN Features

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Example: EVI Configuration under EVPN Configuration-mode
Every participating EVPN instances are identified by EVI_ID. EVI_ID must be defined under EVPN configuration mode as shown below.

EVPN Evi <VPN ID> Bgp RD <> RT <> !
advertise-mac
Configure EVI under a Bridge Domain
Perform this task to configure EVI under the corresponding L2VPN bridge domain.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge group name 4. bridge-domain bridge-domain name 5. interface type interface-path-id 6. exit 7. vfi { vfi name } 8. neighbor { A.B.C.D } { pw-id value } 9. mpls static label local label remote label 10. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode. l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the L2VPN configuration mode.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 576

EVPN Features

Configure EVI under a Bridge Domain

Step 3 Step 4 Step 5 Step 6 Step 7 Step 8
Step 9

bridge group bridge group name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1
Creates a bridge group so that it can contain bridge domains and then assigns network interfaces to the bridge domain. bridge-domain bridge-domain name Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1
Establishes a bridge domain and enters L2VPN bridge group bridge domain configuration mode. interface type interface-path-id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface GigabitEthernet0/2/0/0.1
Enters interface configuration mode and adds an interface to a bridge domain that allows packets to be forwarded and received from other interfaces that are part of the same bridge domain. exit Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# exit
Exits the current configuration mode. vfi { vfi name } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# vfi v1
Configures virtual forwarding interface (VFI) parameters and enters L2VPN bridge group bridge domain VFI configuration mode. neighbor { A.B.C.D } { pw-id value } Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi)# neighbor 10.1.1.2 pw-id 1000
Adds an access pseudowire port to a bridge domain or a pseudowire to a bridge virtual forwarding interface (VFI). · Use the A.B.C.D argument to specify the IP address of the cross-connect peer. · Use the pw-id keyword to configure the pseudowire ID and ID value. The range is 1 to 4294967295.
mpls static label local label remote label Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 577

EVI Configuration under L2VPN Bridge-Domain

EVPN Features

Step 10

RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-vfi-pw)# mpls static label local 20001 remote 10001
Configures the MPLS static local label to associate a remote label with a pseudowire or any other bridge interface.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

EVI Configuration under L2VPN Bridge-Domain
The following examples show EVI configuration under L2VPN bridge-domain for various VPLS-based network:
MPLS static labels based VPLS
l2vpn bridge group bg1 bridge-domain bd-1-1 interface GigabitEthernet0/2/0/0.1 ! vfi vfi-1-1 neighbor 200.0.2.1 pw-id 1200001 mpls static label local 20001 remote 10001 ! neighbor 200.0.3.1 pw-id 1300001 mpls static label local 30001 remote 10001 ! neighbor 200.0.4.1 pw-id 1400001 mpls static label local 40001 remote 10001 ! ! evi <VPN-ID>
!
AutoDiscovery BGP and BGP Signalling based VPLS
l2vpn bridge group bg1 bridge-domain bd-1-2
interface GigabitEthernet0/2/0/0.2 ! vfi vfi-1-2
vpn-id 2 autodiscovery bgp
rd 101:2 route-target 65530:200 signaling-protocol bgp
ve-id 11 ve-range 16 ! ! evi <VPN-ID> !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 578

EVPN Features

Verify EVPN Configuration

AutoDiscovery BGP and LDP signaling based VPLS
l2vpn bridge group bg1 bridge-domain bd-1-3
interface GigabitEthernet0/2/0/0.3 ! vfi vfi-1-3
vpn-id 3 autodiscovery bgp
rd 101:3 route-target 65530:300 signaling-protocol ldp
vpls-id 65530:3 ! ! evi <VPN-ID> !
Targeted LDP based VPLS
bridge-domain bd-1-4 interface GigabitEthernet0/2/0/0.4 ! vfi vfi-1-4 neighbor 200.0.2.1 pw-id 1200004 ! neighbor 200.0.3.1 pw-id 1300004 ! neighbor 200.0.4.1 pw-id 1400004 ! evi <VPN-ID> !
Verify EVPN Configuration
Verify EVPN configuration and MAC advertisement.
Verify EVPN status, AC status, and VFI status
RP/0/#show l2vpn bridge-domain bd-name bd-1-1 Mon Feb 20 21:03:40.244 EST Legend: pp = Partially Programmed. Bridge group: bg1, bridge-domain: bd-1-1, id: 0, state: up, ShgId: 0, MSTi: 0
Aging: 300 s, MAC limit: 4000, Action: none, Notification: syslog Filter MAC addresses: 0 ACs: 1 (1 up), VFIs: 1, PWs: 3 (2 up), PBBs: 0 (0 up), VNIs: 0 (0 up) List of EVPNs:
EVPN, state: up List of ACs:
Gi0/2/0/0.1, state: up, Static MAC addresses: 0, MSTi: 2 List of Access PWs: List of VFIs:
VFI vfi-1-1 (up) Neighbor 200.0.2.1 pw-id 1200001, state: up, Static MAC addresses: 0 Neighbor 200.0.3.1 pw-id 1300001, state: down, Static MAC addresses: 0 Neighbor 200.0.4.1 pw-id 1400001, state: up, Static MAC addresses: 0
List of Access VFIs: When PEs are evpn enabled, pseudowires that are associated with that BD will be brought down. The VPLS BD pseudowires are always up.
Verify the number of EVI's configured, local and remote MAC-routes that are advertised.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 579

Verify EVPN Configuration

EVPN Features

RP/0/#show evpn summary Mon Feb 20 21:05:16.755 EST ----------------------------Global Information ----------------------------Number of EVIs Number of Local EAD Entries Number of Remote EAD Entries Number of Local MAC Routes
MAC MAC-IPv4 MAC-IPv6 Number of Local ES:Global MAC Number of Remote MAC Routes MAC MAC-IPv4 MAC-IPv6 Number of Remote SOO MAC Routes Number of Local IMCAST Routes Number of Remote IMCAST Routes Number of Internal Labels Number of ES Entries Number of Neighbor Entries EVPN Router ID BGP ASN PBB BSA MAC address Global peering timer Global recovery timer
Verify EVPN route-targets.

:6

:0

:0

:4

:4

:0

:0

:1

:0

:0

:0

:0

:0

:4

:4

:0

:1

:4

: 200.0.1.1

: 65530

: 0026.982b.c1e5

:

3 seconds

:

30 seconds

RP/0/#show bgp rt l2vpn evpn

Mon Feb 20 21:06:18.882 EST

EXTCOMM

IMP/EXP

RT:65530:1

1/1

RT:65530:2

1/1

RT:65530:3

1/1

RT:65530:4

1/1

Processed 4 entries

Locally learnt MAC routes can be viewed by forwarding table show l2vpn forwarding bridge-domain mac-address location 0/0/cpu0 To Resynchronize MAC table from the Network Processors, use the command...
l2vpn resynchronize forwarding mac-address-table location <r/s/i>

Mac Address Type Learned from/Filtered on LC learned Resync Age/Last Change Mapped

to

-------------- ------- --------------------------- ---------- ----------------------

0033.0000.0001 dynamic Gi0/2/0/0.1

N/A

20 Feb 21:06:59

N/A

0033.0000.0002 dynamic Gi0/2/0/0.2

N/A

20 Feb 21:06:59

N/A

0033.0000.0003 dynamic Gi0/2/0/0.3

N/A

20 Feb 21:04:29

N/A

0033.0000.0004 dynamic Gi0/2/0/0.4

N/A

20 Feb 21:06:59

N/A

The remote routes learned via evpn enabled BD show l2vpn forwarding bridge-domain mac-address location 0/0$ To Resynchronize MAC table from the Network Processors, use the command...
l2vpn resynchronize forwarding mac-address-table location <r/s/i>

Mac Address to

Type

Learned from/Filtered on

LC learned Resync Age/Last Change Mapped

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 580

EVPN Features

Verify EVPN Configuration

-------------- ------- --------------------------- ---------- ----------------------

0033.0000.0001 EVPN BD id: 0

N/A

N/A

N/A

0033.0000.0002 EVPN BD id: 1

N/A

N/A

N/A

0033.0000.0003 EVPN BD id: 2

N/A

N/A

N/A

0033.0000.0004 EVPN BD id: 3

N/A

N/A

N/A

Verify EVPN MAC routes pertaining to specific VPN instance.

RP/0/#show evpn evi vpn-id 1 mac Mon Feb 20 21:36:23.574 EST

EVI

MAC address IP address

Nexthop

Label

---------- -------------- ----------------------------------------

---------------------------------

1

0033.0000.0001

::

200.0.1.1

45106

Verify L2 routing.

RP/0/#show l2route evpn mac all

Mon Feb 20 21:39:43.953 EST

Topo ID Mac Address Prod Next Hop(s)

-------- -------------- ------ ----------------------------------------

0

0033.0000.0001 L2VPN 200.0.1.1/45106/ME

1

0033.0000.0002 L2VPN 200.0.1.1/45108/ME

2

0033.0000.0003 L2VPN 200.0.1.1/45110/ME

3

0033.0000.0004 L2VPN 200.0.1.1/45112/ME

Verifty EVPN route-type 2 routes.

RP/0/#show bgp l2vpn evpn route-type 2 Mon Feb 20 21:43:23.616 EST BGP router identifier 200.0.3.1, local AS number 65530 BGP generic scan interval 60 secs Non-stop routing is enabled BGP table state: Active Table ID: 0x0 RD version: 0 BGP main routing table version 21 BGP NSR Initial initsync version 1 (Reached) BGP NSR/ISSU Sync-Group versions 0/0 BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network

Next Hop

Metric LocPrf Weight Path

Route Distinguisher: 200.0.1.1:1

*>i[2][0][48][0033.0000.0001][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:2

*>i[2][0][48][0033.0000.0002][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:3

*>i[2][0][48][0033.0000.0003][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:4

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 581

Verify EVPN Configuration

EVPN Features

*>i[2][0][48][0033.0000.0004][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.3.1:1 (default for vrf bd-1-1)

*>i[2][0][48][0033.0000.0001][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.3.1:2 (default for vrf bd-1-2)

*>i[2][0][48][0033.0000.0002][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.3.1:3 (default for vrf bd-1-3)

*>i[2][0][48][0033.0000.0003][0]/104

200.0.1.1

100

0i

Route Distinguisher: 200.0.3.1:4 (default for vrf bd-1-4)

*>i[2][0][48][0033.0000.0004][0]/104

200.0.1.1

100

0i

Processed 8 prefixes, 8 paths
Verify inclusive multicast routes and route-type 3 routes.

RP/0/#show bgp l2vpn evpn route-type 3 Mon Feb 20 21:43:33.970 EST BGP router identifier 200.0.3.1, local AS number 65530 BGP generic scan interval 60 secs Non-stop routing is enabled BGP table state: Active Table ID: 0x0 RD version: 0 BGP main routing table version 21 BGP NSR Initial initsync version 1 (Reached) BGP NSR/ISSU Sync-Group versions 0/0 BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network

Next Hop

Metric LocPrf Weight Path

Route Distinguisher: 200.0.1.1:1

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:2

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:3

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

Route Distinguisher: 200.0.1.1:4

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

Route Distinguisher: 200.0.3.1:1 (default for vrf bd-1-1)

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

*> [3][0][32][200.0.3.1]/80

0.0.0.0

0i

Route Distinguisher: 200.0.3.1:2 (default for vrf bd-1-2)

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

*> [3][0][32][200.0.3.1]/80

0.0.0.0

0i

Route Distinguisher: 200.0.3.1:3 (default for vrf bd-1-3)

*>i[3][0][32][200.0.1.1]/80

200.0.1.1

100

0i

*> [3][0][32][200.0.3.1]/80

0.0.0.0

0i

Route Distinguisher: 200.0.3.1:4 (default for vrf bd-1-4)

*>i[3][0][32][200.0.1.1]/80

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 582

EVPN Features

EVPN Single-Active Multi-Homing

200.0.1.1 *> [3][0][32][200.0.3.1]/80
0.0.0.0

100

0i

0i

EVPN Single-Active Multi-Homing
The EVPN Single-Active Multi-Homing feature supports single-active redundancy mode. In single-active mode, the PE nodes locally connected to an Ethernet Segment load balance traffic to and from the Ethernet Segment based on EVPN service instance (EVI). Within an EVPN service instance, only one PE forwards traffic to and from the Ethernet Segment.
Figure 86: EVPN: Single-Active Multi-Homing

Here is a topology in which CE1 is multihomed to PE1 and PE2. PE1 and PE2 are connected to PE3 through MPLS core. CE3 is connected to PE3 through an Ethernet 'interface bundle. PE1 and PE2 advertise Type 4 routes, and then do designated forwarder (DF) election. The non-DF blocks the traffic in both the directions in single-active mode.
Consider a traffic flow from CE1 to CE2. CE1 sends an address resolution protocol (ARP) broadcast request to both PE1 and PE2. If PE1 is the designated forwarder for the EVI, PE1 forwards the ARP request from CE1. PE2 drops the traffic from CE1. Thereafter, all the unicast traffic is sent through PE1. PE2 will be stand-by or blocked. Traffic is not sent over this path. PE1 advertises MAC to PE3. PE3 always sends and receives traffic through PE1. PE3 sends the traffic to CE2 over Ethernet interface bundle.

Configure EVPN Single-Active Multi-Homing
Perform the following tasks on PE1 and PE2 to configure EVPN Single-Active Multi-Homing feature:

Configuring EVPN Ethernet Segment
Perform this task to configure the EVPN Ethernet segment.

SUMMARY STEPS

1. configure 2. evpn 3. (Optional) timers 4. (Optional) peering seconds 5. (Optional) recovery seconds 6. exit 7. interface Bundle-Ether bundle-id 8. ethernet-segment 9. identifier type esi-type esi-identifier

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 583

Configuring EVPN Ethernet Segment

DETAILED STEPS

10. load-balancing-mode single-active 11. bgp route-target ipv4/v6-address 12. (Optional) service-carving manual primary {isid} secondary {isid} 13. exit 14. exit 15. (Optional) mac-flush mvrp 16. (Optional) timers 17. (Optional) peering seconds 18. (Optional) recovery seconds 19. Use the commit or end command.

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the Global Configuration mode. evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode. (Optional) timers Example:
RP/0/RSP0/CPU0:router(config-evpn)# timers
Configures global EVPN timers. (Optional) peering seconds Example:
RP/0/RSP0/CPU0:router(config-evpn-timers)# peering 15
Configures the global peering timer. Default is 3 seconds. Range is 0 to 300 seconds. (Optional) recovery seconds Example:
RP/0/RSP0/CPU0:router(config-evpn-timers)# recovery 30

EVPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 584

EVPN Features

Configuring EVPN Ethernet Segment

Step 6 Step 7 Step 8 Step 9 Step 10 Step 11 Step 12

Configures the global recovery timer. Default is 30 seconds. Range is from 20 to 3600 seconds. Starting from Release 6.6.3 onwards, the range is from 0 to 3600 seconds. exit Example:
RP/0/RSP0/CPU0:router(config-evpn-timers)# exit
Exits the current configuration mode. interface Bundle-Ether bundle-id Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface Bundle-Ether1
Enters bundle interface configuration mode. ethernet-segment Example:
RP/0/RSP0/CPU0:router(config-evpn-ac)# ethernet-segment
Enters the EVPN ethernet-segment configuration mode. identifier type esi-type esi-identifier Example:
RP/0/RSP0/CPU0:router(config-evpn-ac-es)# identifier type 0 40.00.00.00.00.00.00.00.01
Configures the Ethernet segment identifier (ESI) of an interface. load-balancing-mode single-active Example:
RP/0/RSP0/CPU0:router(config-evpn-ac-es)# load-balancing-mode single-active
Specifies the load balancing mode. bgp route-target ipv4/v6-address Example:
RP/0/RSP0/CPU0:router(config-evpn-ac-es)# bgp route-target 4000.0000.0001
Configures the BGP Import Route-Target for the Ethernet-Segment. (Optional) service-carving manual primary {isid} secondary {isid} Example:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 585

Configuring EVPN Ethernet Segment

EVPN Features

Step 13 Step 14 Step 15 Step 16 Step 17 Step 18

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# service-carving manual primary 100 secondary 200

Specifies a list of service identifiers (isid) as active and standby services. The isid range is from 256 to 16777216.

Note

For ELINE, the isid is the etag. For ELAN, the isid is the EVI. If ELINE and ELAN are used at the same

time on a particular ethernet-segment, the isid that matches etag or EVI or both, would apply to carving

on ELINE or ELAN or both.

exit Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es-man)# exit

Exits the current configuration mode. exit Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-es)# exit

Exits the current configuration mode. (Optional) mac-flush mvrp Example:

RP/0/RSP0/CPU0:router(config-evpn-ac)# mac-flush mvrp

Specifies MAC flush mode for this Ethernet Segment. (Optional) timers Example:

RP/0/RSP0/CPU0:router(config-evpn-ac)# timers

Configures per Ethernet segment timers. (Optional) peering seconds Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-timers)# peering 15

Configures the interface specific peering timer. Default is 3 seconds. Range is 0 to 300 seconds. (Optional) recovery seconds Example:

RP/0/RSP0/CPU0:router(config-evpn-ac-timers)# recovery 30

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 586

EVPN Features

Configure EVPN Service Instance (EVI) Parameters

Step 19

Configures the interface specific recovery timer. Default is 30 seconds. Range is from 20 to 3600 seconds. Starting from Release 6.6.3 onwards, the range is from 0 to 3600 seconds.
Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure EVPN Service Instance (EVI) Parameters
Perform this task to define EVPN service instance (EVI) parameters.

SUMMARY STEPS

1. configure 2. evpn 3. evi evi_id 4. bgp 5. (Optional) rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } 6. (Optional) route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : {
nn } 7. (Optional) route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : {
nn } 8. exit 9. advertise-mac 10. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
evpn Example:
RP/0/RSP0/CPU0:router(config)# evpn
Enters EVPN configuration mode.
evi evi_id

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 587

Configure EVPN Service Instance (EVI) Parameters

EVPN Features

Step 4 Step 5 Step 6 Step 7 Step 8 Step 9 Step 10

Example:
RP/0/RSP0/CPU0:router(config-evpn)# evi 6005
Configures Ethernet VPN ID. The EVI ID range is from 1 to 65534. bgp Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp
Enters the BGP configuration mode for the specific EVI. (Optional) rd { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# rd 200:50
Configures the route distinguisher. (Optional) route-target import { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target import 100:6005
Configures importing of routes from the L2 EVPN BGP NLRI that have the matching route-target value. (Optional) route-target export { 2-byte as_number | 4-byte as_number | IP_address | none } : { nn } Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target export 100:6005
Configures exporting of routes to the L2 EVPN BGP NLRIs and assigns the specified route-target identifiers to the BGP EVPN NLRIs. exit Example:
RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# exit
Exits the current configuration mode. advertise-mac Example:
RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac
Advertises the MAC route. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 588

EVPN Features

Configure Layer 2 Interface

· Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure Layer 2 Interface
Perform this task to define Layer 2 interface.

SUMMARY STEPS

1. configure 2. interface bundle-ether instance.subinterface l2transport 3. (Optional) no shut 4. encapsulation dot1q vlan-id 5. (Optional) rewrite tag pop dot1q vlan-id symmetric 6. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4 Step 5

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode. interface bundle-ether instance.subinterface l2transport Example:
RP/0/RSP0/CPU0:router(config)# interface bundle-ether2.1 l2transport
Configures the bundle ethernet interface and enables Layer 2 transport mode on the bundle ethernet interface. (Optional) no shut Example:
RP/0/RSP0/CPU0:router(config-subif-l2)# no shut
If a link is in the down state, bring it up. The no shut command returns the link to an up or down state depending on the configuration and state of the link. encapsulation dot1q vlan-id Example:
RP/0/RSP0/CPU0:router(config-subif-l2)# encapsulation dot1q 1
Assigns a VLAN attachment circuit to the subinterface. (Optional) rewrite tag pop dot1q vlan-id symmetric Example:
RP/0/RSP0/CPU0:router(config-subif-l2)# rewrite ingress tag pop 1 symmetric

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 589

Configure a Bridge Domain

EVPN Features

Step 6

Specifies the encapsulation adjustment that is to be performed on the frame ingress to the service instance. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Configure a Bridge Domain
Perform the following steps to configure the bridge domain on PE1 and PE2.

SUMMARY STEPS

1. configure 2. l2vpn 3. bridge group bridge-group-name 4. bridge-domain bridge-domain-name 5. interface Bundle-Ether bundle-id 6. evi ethernet vpn id 7. Use the commit or end command.

DETAILED STEPS

Step 1 Step 2 Step 3 Step 4

configure Example:
RP/0/RSP0/CPU0:router# configure
Enters the global configuration mode.
l2vpn Example:
RP/0/RSP0/CPU0:router(config)# l2vpn
Enters the l2vpn configuration mode.
bridge group bridge-group-name Example:
RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 6005
Enters the bridge group configuration mode.
bridge-domain bridge-domain-name

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 590

EVPN Features

Virtual Ethernet Segment (vES)

Step 5 Step 6 Step 7

Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 6005
Enters the bridge domain configuration mode. interface Bundle-Ether bundle-id Example:
RP/0/RSP0/CPU0:router(config-evpn)# interface Bundle-Ether2.1
Enters bundle interface configuration mode. evi ethernet vpn id Example:
RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# evi 6005
Creates the ethernet VPN ID. Use the commit or end command. commit - Saves the configuration changes and remains within the configuration session. end - Prompts user to take one of these actions:
· Yes - Saves configuration changes and exits the configuration session. · No - Exits the configuration session without committing the configuration changes. · Cancel - Remains in the configuration mode, without committing the configuration changes.

Virtual Ethernet Segment (vES)
Traditionally, multi-homing access to EVPN bridge is through bundle Ethernet connection or a physical Ethernet connection. The Virtual Ethernet Segment (vES) allows a Customer Edge (CE) to access EVPN bridge through MPLS network. The logical connection between CE and EVPN provider edge (PE) is a pseudowire (PW). Using vES you can connect VxLAN EVPN-based data center and a legacy data center through PW based virtual circuit.
The VxLAN EVPN-based data centers and legacy data centers are interconnected through access pseudowire (PW), access virtual forwarding instance (VFI), or both. One vES is created for each access PW and one vES is created per access VFI. This feature supports only single-active mode.
Use access VFI for connecting multiple sites in a mesh topology. Use access PW for connecting few sites in hub and spoke topology.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 591

Virtual Ethernet Segment (vES) Figure 87: Virtual Ethernet Segment (vES)

EVPN Features

Consider the topology where EVPN data centers are connected to legacy data centers through access PW or access VFI on a single Ethernet segment, which is vES.
Consider a traffic flow from CE2 to PE3. CE2 sends the traffic to DCI1 or DCI2 through EVPN VxLAN. DCI1 and DCI2 are connected to PE3 through access PW on a single Ethernet segment. DCI1 and DCI2 advertise Type 4 routes, and then do designated forwarder (DF) election. The non-DF blocks the traffic on that particular Ethernet segment. Both DCI1 and DCI2 can do the DF election. DCI1 and DCI2 perform DF election after they discover each other. Either one of them can be a DF and other a non-DF. The traffic is forwarded through the DF. The non-DF path is in stand-by mode. DF election is used to prevent traffic loop. DCI1 or DCI2 sends the traffic to PE3.
Consider a traffic flow from CE2 to PE1 and PE2. CE2 sends the traffic to DCI1 or DCI2 through EVPN VxLAN. DCI1 and DCI2 are connected to PE1 and PE2 through access VFI. DCI1 and DCI2 are connected to PE1 and PE2 through access VFI on a single Ethernet segment. DCI1 or DCI2 sends the traffic to PE1 and PE2. DCI1 and DCI2 advertise Type 4 routes, and then do designated forwarder (DF) election. The non-DF blocks the traffic on that particular Ethernet segment. Both DCI1 and DCI2 can do the DF election. DCI1 and DCI2 perform DF election after they discover each other. Either one of them can be a DF and other a non-DF. The traffic is forwarded through the DF. The non-DF path is in stand-by mode. DF election is used to prevent traffic loop. DCI1 or DCI2 sends the traffic to PE3.
Interoperability Between VxLAN and vES
When all-active VxLAN and single-active vES are integrated together, some traffic may take non-optimal path. Consider a traffic flow from CE2 to PE1. VxLAN is in all-active mode and vES is in single active mode. CE2 sends the traffic to ToR1, and ToR1 sends the traffic to DCI1 and DCI2. Both DCI1 and DCI2 can receive the traffic from VxLAN because it is in all-active mode. But, either DCI1 or DCI2 (which is a DF) can forward the traffic through vES. If DCI1 is a non-DF, the traffic is sent from DCI2 to PE1.
Limitations
The vES feature is supported with the following limitations:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 592

EVPN Features

Configure Virtual Ethernet Segment (vES)

· Core isolation is not supported for vES. MPLS core network must be always up and vES redundant peers must be able to exchange type 4 routes while vES is in operation.
· Only targeted LDP pseudowire is supported.
· Interoperability between VxLAN and classic VFI (legacy L2VPN) is not supported.
· Backup PW is not supported with vES.
· PW-status must be supported and enabled on both sides of PW.
· Up to 400 unique RTs are supported for each ESI. However, multiple ESI can share same the RT. Hence, this does not restrict the number of vES.
Configure Virtual Ethernet Segment (vES)
The following sections describe how to configure access PW and access VFI.
Configure Access PW
This section describes how you can configure access PW.
/* Configure DCI1 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 70.70.70.70 pw-id 17300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# evi 1 RP/0/RSP0/CPU0:router(config-bg-bd-pw-evi)# member vni 10001
/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual neighbor 70.70.70.70 pw-id 17300001 RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# identifier type 0 12.12.00.00.00.01.00.00.03 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# bgp route-target 1212.8888.0003 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# exit RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# timers peering 15 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-timers)# commit
/* Configure DCI2 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 70.70.70.70 pw-id 27300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# evi 1 RP/0/RSP0/CPU0:router(config-bg-bd-pw-evi)# member vni 10001
/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual neighbor 70.70.70.70 pw-id 27300001 RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# identifier type 0 12.12.00.00.00.01.00.00.03 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# bgp route-target 1212.8888.0003 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 593

Running Configuration - Access PW

EVPN Features

RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# timers peering 15 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-timers)# commit
/* Configure PE3 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 73 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 73-1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 10.10.10.10 pw-id 17300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# neighbor 20.20.20.20 pw-id 27300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# commit
Running Configuration - Access PW
This section shows access PW running configuration.
/* On DCI1 */ ! configure l2vpn
bridge group bg1 bridge-domain bd1 neighbor 70.70.70.70 pw-id 17300001 evi 1 member vni 10001
!
evpn virtual neighbor 70.70.70.70 pw-id 17300001 ethernet-segment identifier type 0 12.12.00.00.00.01.00.00.03 bgp route-target 1212.8888.0003 ! timers peering 15
!
/* On DCI2 */ ! configure l2vpn
bridge group bg1 bridge-domain bd1 neighbor 70.70.70.70 pw-id 27300001 evi 1 member vni 10001
!
evpn virtual neighbor 70.70.70.70 pw-id 27300001 ethernet-segment identifier type 0 12.12.00.00.00.01.00.00.03 bgp route-target 1212.8888.0003 ! timers peering 15
!
/* On PE3 */ ! configure l2vpn
bridge group bg73 bridge-domain bd73-1 neighbor 10.10.10.10 pw-id 17300001 !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 594

EVPN Features

Configure Access VFI

neighbor 20.20.20.20 pw-id 27300001
!
Configure Access VFI
This section describes how you can configure access VFI. RTs must match on the redundant DCIs that are connected to the same Ethernet segment.
/* Configure DCI1 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# access-vfi ac-vfi-1 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi)# neighbor 70.70.70.70 pw-id 17100005 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-pw)# neighbor 80.80.80.80 pw-id 18100005 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-pw)# exit RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi)# evi 1 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-evi)# member vni 10001
/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual vfi ac-vfi-1 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# identifier type 0 12.12.00.00.00.01.00.00.01 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# bgp route-target 1212.0005.0001 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# exit RP/0/RSP0/CPU0:router(config-evpn-ac-vfi)# timers peering 15 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-timers)# exit RP/0/RSP0/CPU0:router(config-evpn-ac-vfi)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# identifier type 0 12.12.00.00.05.00.00.00.03 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# bgp route-target 1212.0005.0003 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# commit
/* Configure DCI2 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# access-vfi ac-vfi-1 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi)# neighbor 70.70.70.70 pw-id 27100005 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-pw)# neighbor 80.80.80.80 pw-id 28100005 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-pw)# exit RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi)# evi 1 RP/0/RSP0/CPU0:router(config-bg-bd-accessvfi-evi)# member vni 10001
/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual vfi ac-vfi-1 RoRP/0/RSP0/CPU0:routeruter(config-evpn-ac-vfi)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# identifier type 0 12.12.00.00.00.01.00.00.01 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# bgp route-target 1212.0005.0001 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# exit RP/0/RSP0/CPU0:router(config-evpn-ac-vfi)# timers peering 15 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-timers)# exit RP/0/RSP0/CPU0:router(config-evpn-ac-vfi)# ethernet-segment RoRP/0/RSP0/CPU0:routeruter(config-evpn-ac-vfi-es)# identifier type 0 12.12.00.00.05.00.00.00.03

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 595

Running Configuration - Access VFI

EVPN Features

RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# bgp route-target 1212.0005.0003 RP/0/RSP0/CPU0:router(config-evpn-ac-vfi-es)# commit
/* Configure PE1 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 71 RoRP/0/RSP0/CPU0:routeruter(config-l2vpn-bg)# bridge-domain 71-1 RP/0/RSP0/CPU0:router(config-bg-bd)# vfi vfi-71-1 RP/0/RSP0/CPU0:router(config-bg-bd-vfi)# neighbor 10.10.10.10 pw-id 17100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# neighbor 20.20.20.20 pw-id 27100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# neighbor 80.80.80.80 pw-id 78100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# commit
/* Configure PE2 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 71 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 71-1 RP/0/RSP0/CPU0:router(config-bg-bd)# vfi vfi-71-1 RP/0/RSP0/CPU0:router(config-bg-bd-vfi)# neighbor 10.10.10.10 pw-id 18100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# neighbor 20.20.20.20 pw-id 28100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# neighbor 70.70.70.70 pw-id 78100005 RP/0/RSP0/CPU0:router(config-bg-bd-vfi-pw)# commit
Running Configuration - Access VFI
This section shows access VFI running configuration.
/* On DCI1 */ ! configure l2vpn
bridge group bg1 bridge-domain bd1 access-vfi ac-vfi-1 neighbor 70.70.70.70 pw-id 17100005 neighbor 80.80.80.80 pw-id 18100005 evi 1 member vni 10001
! evpn
virtual vfi ac-vfi-1 ethernet-segment identifier type 0 12.12.00.00.00.01.00.00.01 bgp route-target 1212.0005.0001 !
timers peering 15 !
!
ethernet-segment identifier type 0 12.12.00.00.05.00.00.00.03 bgp route-target 1212.0005.0003
!

/* On DCI2 */ ! configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 596

EVPN Features

AC-based Virtual Ethernet Segment

l2vpn bridge group bg1 bridge-domain bd1 access-vfi ac-vfi-1 neighbor 70.70.70.70 pw-id 27100005 neighbor 80.80.80.80 pw-id 28100005 evi 1 member vni 10001
!
evpn virtual vfi ac-vfi-1 ethernet-segment identifier type 0 12.12.00.00.00.01.00.00.01 bgp route-target 1212.0005.0001 ! timers peering 15
! !

ethernet-segment identifier type 0 12.12.00.00.05.00.00.00.03 bgp route-target 1212.0005.0003
!
/* On PE1 */ ! configure l2vpn
bridge group bg71 bridge-domain bd71-1 neighbor 10.10.10.10 pw-id 17100005 ! neighbor 20.20.20.20 pw-id 27100005 ! neighbor 80.80.80.80 pw-id 78100005
!
/* On PE2 */ ! configure l2vpn
bridge group bg71 bridge-domain bd71-1 neighbor 10.10.10.10 pw-id 18100005 ! neighbor 20.20.20.20 pw-id 28100005 ! neighbor 70.70.70.70 pw-id 78100005
!

AC-based Virtual Ethernet Segment

Table 15: Feature History Table

Feature Name Release Information

Feature Description

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 597

AC-based Virtual Ethernet Segment

EVPN Features

AC-based Virtual Release 7.5.1 Ethernet Segment

This feature allows you to extend the physical links to have VLANs (ACs) that act as Ethernet Virtual Circuits (EVCs). Many such EVCs can be aggregated on a single main interface called Virtual Ethernet Segment (vES). The main interface aggregates many vESs and creates a group to identify these vESs. This mechanism helps to minimize service disruption by mass withdrawal for main peering at the vES level.

Many service providers want to extend the concept of the physical links in an Ethernet Segment. They are looking at having Ethernet Virtual Circuits (EVCs) where many of such EVCs (for example, VLANs) are aggregated on a single physical External Network-to-Network Interface (ENNI). An ES that consists of a set of EVCs instead of physical links is referred to as a virtual ES (vES).
To meet customers' Service Level Agreements (SLA), service providers typically build redundancy through multiple EVPN PEs and across multiple ENNIs where a given vES can be multihomed to two or more EVPN PE devices through their associated EVCs. These Virtual Ethernet Segments (vESes) can be single-homed or multi-homed ES's and when multi-homed, they can operate in either single-active or all-active redundancy modes.
The Ethernet Segment over a parent interface (main port) is represented by parent ES (pES) that can be the main or physical bundle interface. The vES represents the logical connectivity of the access service multi-homed to PE nodes. Multiple vESs are grouped to form one group ES (gES) for one parent interface. This new grouping allows for mass withdrawal of MAC addresses upon main port failure.
The parent interface advertises the grouping ES/EAD (gES/EAD) with the type-3 ESI (meant to represent the main port grouping scheme), which is populated with the six octet MAC address of the main port, and the three octet Local Discriminator value set to 0xFFFFFF.
Similarly, the main port advertises grouping scheme in Type-3 ESI with gES/EAD (and Type-3 ESI also tagged on vES/EAD as an extcomm).

Supported Services vES supports the following services:
· EVPN ELAN · EVPN VPWS · EVPN IRB · EVPN FXC · Single-homing load balancing mode · Multi-homing load balancing mode - active-active and single-active · Supports Highest Random Weight (HRW) and MODULO algorithm for per port DF election. · Local switching on the same main port between two vES ACs (ELAN, FXC)

Restrictions · You might observe a traffic drop during the AC shutdown with vES.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 598

EVPN Features

AC-based Virtual Ethernet Segment

· For vES subinterface, the L3 route-sync is not supported when the main-port is vES-enabled. The syslog or warning message is not reported when the L3 subinterface is configured with VRF evpn-route-sync.
Topology In this example, vES-A is setup between PE1 and PE2. On PE1, there is a grouping ES gES-1 on the access facing interface. Similarly, on PE2 there is also a grouping ES gES-2.

In this topology, the following shows how PEs are peered: · PE1 and PE2 routers peer using vES-A with RT-4 (each route colored with gES-1 and gES-2 respectively). · PE2 and PE3 routers peer using vES-B with RT-4 (each route colored with gES-2 and gES-3 respectively).
The following information depicts how traffic is forwarded: PE4 connects vES-B remotely through PE2 and PE3:
· vES-B - MAC2 [PE3] · vES-B - EVI/EAD [PE2/L2, PE3/L3) · vES-B - ES/EAD [PE2 (gES-2), PE3 (gES-3)] · gES-2 - ES/EAD [PE2] · gES-3 - ES/EAD [PE3] PE3 connects vES-A remotely through PE1 and PE2: · vES-A - MAC1 [PE1] · vES-A - EVI/EAD [PE1/L1, PE2/L2) · vES-A - ES/EAD [PE1 (gES-1), PE2 (gES-2)] · gES-1 - ES/EAD [PE1] · gES-2 - ES/EAD [PE2]
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 599

AC-based Virtual Ethernet Segment

EVPN Features

PE1 performs the same forwarding for PE3 for vES-B. The following routes are advertised with the vESI in the NLRI:
· RT-4 at the granularity of vES for peering and DF-election, along with BGP router MAC extcomm carrying grouping scheme value (gES), which is the main port MAC address. BGP extcomm carries six bytes data which is exactly the length of MAC address.
· Any locally learned MAC address through RT-2 for bridging.
· Per EVI/EAD for service reachability.
· Per ES/EAD for that vES along with BGP router MAC extcomm carrying gES MAC address.
Local Switching Local switching allows you to switch Layer 2 data between two ACs on the same interface. Local switching involves the exchange of L2 data from one attachment circuit (AC) to the other, and between two interfaces of the same type on the same router. A local switching connection works like a bridge domain that has only two bridge ports, where traffic enters from one port of the local connection and leaves through the other. Consider an example where the customer is provided a service by two different SPs. PE1 and PE2 can local-switch between vES-A and vES-B.

In this topology, the following shows how PEs are peered: · PE1 and PE2 are peered for vES-A with RT-4 · PE1 and PE2 are peered for vES-B with RT-4
For BUM traffic, traffic is flooded to other ACs in Split-Horizon Group 0. For Unicast traffic, the MAC lookup in the bridge forwards the traffic to the right AC. If the local switching is not available, for example the AC goes down, then traffic is routed through the EVPN core. PE1 and PE2 will see each other's remote EVI/EAD and ES/EAD routes for vES-A and vES-B along with pES1 and pES2 ES/EAD.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 600

EVPN Features

AC-based Virtual Ethernet Segment

Main Port Failure
When there is a main port failure, the gES/EAD is withdrawn to provide fast switchover. The vES EVI/EAD and vES/EAD are advertised. After the main port recovery, the gES/EAD is re-advertised on the last vES to prevent remote end steering traffic to node.
The vES failure is identified as an AC failure, and is signaled through CFM/OAM. During vES failure, not the main port failure, the vES EVI/EAD is advertised and the vES/EAD is withdrawn. On vES recovery, after the peering timer expires, the vES/EAD is advertised.
Figure 88:

The following are remote routes for PE3 · vES-A EVI/EAD [PE1/L1,PE2/L2] · vES-A ES/EAD [PE1 [gESI-1],PE2 [gESI-2]] · gES-1 ES/EAD [PE1] · gES-2 ES/EAD [PE2]
After the main port failure, PE3 sees the following remote routes: · vES-A EVI/EAD [PE1/L1,PE2/L2]
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 601

Configure Virtual Ethernet Segment - AC based

EVPN Features

· vES-A ES/EAD [PE1 [gESI-1],PE2 [gESI-2]] · gES-2 ES/EAD [PE2] · gES-1 ES/EAD [PE1] is withdrawn

Configure Virtual Ethernet Segment - AC based

Configuration Example
The following example depicts a simple configuration for all-active vES sub-interface and non-vES enabled sub-interface under the same main-port:

evpn

virtual interface Bundle-Ether1.1

ethernet-segment

identifier type 0 1.2.3.4.5.6.7.8.9

!

l2vpn bridge-group g1

bridge-domain d1

interface Bundle-Ether1.1

>>MH vES

interface Bundle-Ether1.2

>>Becomes SH

evi 1

The following example depicts an expanded configuration to flex all options for vES (single-active bundle vES sub-interface with static gES-MAC):

interface Bundle-Ether1

ethernet-segment

load-balancing-mode single-active

virtual-ethernet-segment

identifier type 3 000a.000b.000c !

virtual interface Bundle-Ether1.1

ethernet-segment

identifier type 0 1.2.3.4.5.6.7.8.9

!

l2vpn bridge-group g1

bridge-domain d1

interface Bundle-Ether1.1

>>MH vES

interface Bundle-Ether1.2

>>Becomes SH

evi 1

Verification Verify the vES AC carving details.

Router# show evpn ethernet-segment interface bundle-Ether 5555.1 carving detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0055.5555.aabb.0000.0001 BE5555.1

10.201.201.201

10.250.250.250

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Virtual Access :

Interface name : Bundle-Ether5555.1

IfHandle

: 0x20017b36

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 602

EVPN Features

Configure Virtual Ethernet Segment - AC based

State

: Up

ESI type

:0

Value

: 55.5555.aabb.0000.0001

ES Import RT

: 6500.1111.2222 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, All-active

Configured

: All-active (AApF) (default)

Service Carving : HRW

Multicast

: Disabled

Convergence

:

Peering Details : 2 Nexthops

10.201.201.201 [HRW:P:7fff:T]

10.250.250.250 [HRW:P:00:T][5995.5995.5992]

Service Carving Synchronization:

Mode

: NTP_SCT

Peer Updates :

10.201.201.201 [SCT: 2021-10-17 01:25:16.1634459]

10.250.250.250 [SCT: 2021-10-18 19:43:45.1634611]

Service Carving Results:

Forwarders

:1

Elected

:1

EVI E : 41001

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

HRW Reset timer : 5 sec [not running]

Local SHG label : 47276

Remote SHG labels : 1

35041 : nexthop 10.250.250.250

Access signal mode: Bundle OOS (Default)

Verify the main port carving details.

Router# show evpn ethernet-segment interface bundle-Ether 5555 carving detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

N/A

BE5555

10.201.201.201

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether5555

Interface MAC : fe1d.1d8d.d489

IfHandle

: 0x20017a84

State

: Up

Redundancy

: Not Defined

VES Main port

:

Grouping MAC : 5995.5995.5991

Subif count : 30

ESI type ES Import RT Source MAC Topology
Operational Configured

: Invalid : 0000.0000.0000 (Incomplete Configuration) : 0000.0000.0000 (PBB BSA, no ESI) : : SH : All-active (AApF) (default)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 603

Configure Virtual Ethernet Segment - AC based

EVPN Features

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

:

Peering Details : 1 Nexthops

10.201.201.201 [MOD:P:7fff]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

10.201.201.201 [SCT: N/A]

Service Carving Results:

Forwarders

:1

Elected

:1

EVI E : 15001

Not Elected : 0

Verify the evi/ead gES/EAD route and internal-label.

Router# show evpn evi vpn-id 41001 ead

VPN-ID

Encap Ethernet Segment Id

EtherTag Nexthop

Label SID

---------- ------ ------------------------ ---------- ---------------------------------------

-------- ---------------------------------------

41001

MPLS 0055.5555.aabb.0000.0001 0x0

::

47069

10.250.250.250

41001

MPLS

0

41001

MPLS

56530

41001

MPLS

0

41001

MPLS

0

41001

MPLS

0

34950 0055.5555.aabb.0000.0001 0xffffffff 10.250.250.250

0055.5555.ccdd.0000.0001 0x0

10.240.240.240

0055.5555.ccdd.0000.0001 0xffffffff 10.240.240.240

0359.9559.9559.92ff.ffff 0xffffffff

10.250.250.250

0370.e422.60e0.1eff.ffff 0xffffffff

10.240.240.240

Router# show evpn internal-label vpn-id 41001 detail

VPN-ID

Encap Ethernet Segment Id

EtherTag

---------- ------ --------------------------- ----------

41001

MPLS 0370.e422.60e0.1eff.ffff 0

Multi-paths resolved: FALSE (Remote all-active)

Reason: No valid MAC paths

Multi-paths Internal label: None

EAD/ES

10.240.240.240

Label --------
None
0

41001

MPLS 0055.5555.aabb.0000.0001 0

Multi-paths resolved: TRUE (Remote all-active)

Multi-paths Internal label: 97041

EAD/ES

10.250.250.250

Grouping MAC: 5995.5995.5992

EAD/EVI

10.250.250.250

Summary pathlist:

0x02000005 (P) 10.250.250.250

97041
0 34950
34950

41001

MPLS 0055.5555.ccdd.0000.0001 0

Multi-paths resolved: TRUE (Remote all-active)

Multi-paths Internal label: 70349

EAD/ES

10.240.240.240

Grouping MAC: 70e4.2260.e01e

EAD/EVI

10.240.240.240

70349 0

56530

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 604

EVPN Features

EVPN Anycast Gateway All-Active Static Pseudowire

Summary pathlist: 0x02000004 (P) 10.240.240.240

41001

MPLS 0359.9559.9559.92ff.ffff 0

Multi-paths resolved: FALSE (Remote all-active)

Reason: No valid MAC paths

Multi-paths Internal label: None

EAD/ES

10.250.250.250

56530 None
0

EVPN Anycast Gateway All-Active Static Pseudowire
The EVPN Anycast Gateway All-active Static Pseudowire (PW) feature enables all-active multi-homing support for static PWs. When static PWs are configured, it overrides the default behavior of single-active, and the node becomes all-active per flow (AApF).
Configure EVPN Anycast All-active Static Pseudowire
Consider a traffic flow from CE1 to CE2. CE1 sends the traffic to PE1 or PE2. PE1 and PE2 are connected to CE1 through static PW. CE1 sends the traffic to the PEs using the same anycast IP address, and uses IGP ECMP for load balancing. Anycast PWs are static. You can configure an ESI per static PW. PE1 and PE2 forward the traffic based on the type of traffic.

Consider PE1 to be a DF and PE2 a non-DF. When a Broadcast, Unknown unicast and Multicast (BUM) traffic is sent from CE1 to PE1 or PE2. PE1 sends traffic to all other nodes towards the core side, including PE2. However, PE2 drops the traffic as it a non-DF. Similarly, PE2 sends traffic to all other nodes towards the core side, including PE1. However, PE1 drops the traffic as it is coming from a non-DF node. PE1 or PE2 sends the traffic to CE2 through MPLS core. When BUM traffic is sent from the core side, that is from PE3 or PE4 to CE1. PE3 or PE4 sends the traffic to PE1 and PE2. PE1 forwards the traffic to CE1. PE2 drops the packets as it is a non-DF. When unicast traffic is sent from CE1 to PE1 and PE2, both PE1 and PE2 forward the traffic to the core. When unicast traffic is sent from PE3 or PE4 to CE1, both PE1 and PE2 send the traffic to CE1.
Configure Static PW
This section describes how you can configure static PW.
/* Configure PE1 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 10.0.0.1 pw-id 17300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# mpls static label local 1000 remote 2000
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 605

Running Configuration

EVPN Features

/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual neighbor 10.0.0.1 pw-id 17300001 RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# identifier type 0 14.14.00.00.00.01.00.00.03 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# commit
/* Configure PE2 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group bg1 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain bd1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 10.0.0.1 pw-id 17300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# mpls static label local 1000 remote 2000
/* Configure EVPN */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# virtual neighbor 10.10.0.1 pw-id 17300001 RP/0/RSP0/CPU0:router(config-evpn-ac-pw)# ethernet-segment RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# identifier type 0 14.14.00.00.00.01.00.00.03 RP/0/RSP0/CPU0:router(config-evpn-ac-pw-es)# commit
/* Configure CE1 */ RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group 73 RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain 73-1 RP/0/RSP0/CPU0:router(config-bg-bd)# neighbor 209.165.200.225 pw-id 17300001 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# mpls static label local 2000 remote 1000 RP/0/RSP0/CPU0:router(config-bg-bd-pw)# commit
Running Configuration
This section shows static PW running configuration.
/* On PE1 */ ! configure l2vpn
bridge group bg1 bridge-domain bd1 neighbor 10.0.0.1 pw-id 17300001 mpls static label local 1000 remote 2000
!
evpn virtual neighbor 10.0.0.1 pw-id 17300001 ethernet-segment identifier type 0 14.14.00.00.00.01.00.00.03 !
/* On PE2 */ ! configure l2vpn
bridge group bg1 bridge-domain bd1 neighbor 10.0.0.1 pw-id 17300001 mpls static label local 1000 remote 2000
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 606

EVPN Features

Verification

Verification

!
evpn virtual neighbor 10.0.0.1 pw-id 17300001 ethernet-segment identifier type 0 14.14.00.00.00.01.00.00.03 !
/* On CE1 */ ! configure l2vpn
bridge group bg73 bridge-domain bd73-1 neighbor 209.165.200.225 pw-id 17300001 mpls static label local 2000 remote 1000
!
The outputs in this section show the number of static PWs configured on CE1, PE1, and PE2 and the configuration details of their neighbors.

/* CE1 static PW configuration details */
RP/0/RSP0/CPU0:router-CE1# show l2vpn bridge-domain bd-name bd-73-1 Fri Aug 11 12:36:12.732 EDT Legend: pp = Partially Programmed. Bridge group: bg73, bridge-domain: bd-73-1, id: 3, state: up, ShgId: 0, MSTi: 0
Aging: 300 s, MAC limit: 4000, Action: none, Notification: syslog Filter MAC addresses: 0 ACs: 1 (1 up), VFIs: 0, PWs: 1 (1 up), PBBs: 0 (0 up), VNIs: 0 (0 up) List of ACs:
BE7301.1, state: up, Static MAC addresses: 0 List of Access PWs:
Neighbor 128.0.0.19 pw-id 17300001, state: up, Static MAC addresses: 0 List of VFIs: List of Access VFIs:
RP/0/RSP0/CPU0:router-CE1#show l2vpn bridge-domain bd-name bd-73-1 detail Fri Aug 11 12:36:27.136 EDT Number of groups: 2, bridge-domains: 8000, Up: 8000, Shutdown: 0, Partiallyprogrammed: 0 Default: 8000, pbb-edge: 0, pbb-core: 0 Number of ACs: 8000 Up: 8000, Down: 0, Partially-programmed: 0 Number of PWs: 12001 Up: 12000, Down: 1, Standby: 0, Partially-programmed: 0 Number of P2MP PWs: 0, Up: 0, Down: 0, other-state: 0 Number of VNIs: 0, Up: 0, Down: 0, Unresolved: 0
Coupled state: disabled VINE state: Default MAC learning: enabled MAC withdraw: enabled
MAC withdraw for Access PW: enabled MAC withdraw sent on: bridge port down (legacy) MAC withdraw relaying (access to access): disabled Flooding: Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 607

Verification

EVPN Features

MAC limit reached: no MAC port down flush: enabled
MAC Secure: disabled, Logging: disabled Split Horizon Group: none Dynamic ARP Inspection: disabled, Logging: disabled IP Source Guard: disabled, Logging: disabled DHCPv4 Snooping: disabled DHCPv4 Snooping profile: none IGMP Snooping: disabled IGMP Snooping profile: none MLD Snooping profile: none Storm Control: disabled Bridge MTU: 1500 MIB cvplsConfigIndex: 4 Filter MAC addresses: P2MP PW: disabled Create time: 08/08/2017 17:19:31 (2d19h ago) No status change since creation ACs: 1 (1 up), VFIs: 0, PWs: 1 (1 up), PBBs: 0 (0 up), VNIs: 0 (0 up) List of ACs:
AC: Bundle-Ether7301.1, state is up Type VLAN; Num Ranges: 1 Rewrite Tags: [] VLAN ranges: [1, 1] MTU 8986; XC ID 0xc0003e82; interworking none MAC learning: enabled Flooding: Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 4000, Action: none, Notification: syslog MAC limit reached: no MAC port down flush: enabled MAC Secure: disabled, Logging: disabled Split Horizon Group: none Dynamic ARP Inspection: disabled, Logging: disabled IP Source Guard: disabled, Logging: disabled DHCPv4 Snooping: disabled DHCPv4 Snooping profile: none IGMP Snooping: disabled IGMP Snooping profile: none MLD Snooping profile: none Storm Control: bridge-domain policer Static MAC addresses: Statistics: packets: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent
0 bytes: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 0 MAC move: 0
Storm control drop counters: packets: broadcast 0, multicast 0, unknown unicast 0 bytes: broadcast 0, multicast 0, unknown unicast 0
Dynamic ARP inspection drop counters: packets: 0, bytes: 0
IP source guard drop counters: packets: 0, bytes: 0
List of Access PWs: PW: neighbor 128.0.0.19, PW ID 17300001, state is up PW class not set, XC ID 0xa0000013 Encapsulation MPLS, protocol none Source address 10.0.0.1 PW type Ethernet, control word disabled, interworking none PW backup disable delay 0 sec Sequencing not set

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 608

EVPN Features

Verification

MPLS

Local

Remote

------------ ------------------------------ ---------------------------

Label

2000

1000

Interface Access PW

MTU

1500

Control word disabled

PW type

Ethernet

VCCV CV type 0x2

(LSP ping verification)

VCCV CC type 0x6

(router alert label)

(TTL expiry)

------------ ------------------------------ ---------------------------

MIB cpwVcIndex: 2684354579

Create time: 08/08/2017 17:19:33 (2d19h ago)

Last time status changed: 11/08/2017 11:39:50 (00:56:46 ago)

MAC withdraw messages: sent 0, received 0

Forward-class: 0

Static MAC addresses:

Statistics:

packets: received 0 (unicast 0), sent 0

bytes: received 0 (unicast 0), sent 0

MAC move: 0

Storm control drop counters:

packets: broadcast 0, multicast 0, unknown unicast 0

bytes: broadcast 0, multicast 0, unknown unicast 0

MAC learning: enabled

Flooding:

Broadcast & Multicast: enabled

Unknown unicast: enabled

MAC aging time: 300 s, Type: inactivity

MAC limit: 4000, Action: none, Notification: syslog

MAC limit reached: no

MAC port down flush: enabled

MAC Secure: disabled, Logging: disabled

Split Horizon Group: none

DHCPv4 Snooping: disabled

DHCPv4 Snooping profile: none

IGMP Snooping: disabled

IGMP Snooping profile: none

MLD Snooping profile: none

Storm Control: bridge-domain policer

List of VFIs:

List of Access VFIs:

/* PE1 static PW configuration details */

RP/0/RSP0/CPU0:router-PE1#show evpn ethernet-segment esi 0 14.14.00.00.00.01.00.00.03 carving detail
Fri Aug 11 12:47:30.981 EDT Legend:
A - Load-balancing mode and Access Protection incompatible, B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 609

Verification

EVPN Features

S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0014.1400.0000.0100.0003 PW:10.0.0.1,17300001

128.0.0.1

128.0.0.2

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Virtual Access :

Name

: PW_10.0.0.1_17300001

State

: Up

Num PW Up

:1

ESI type

:0

Value

: 14.1400.0000.0100.0003

ES Import RT

: 1414.0001.0003 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: All-active (AApF)

Primary Services : Auto-selection

Secondary Services: Auto-selection

Service Carving Results:

Forwarders

:1

Permanent

:0

Elected

:1

EVI E :

1

Not Elected : 0

MAC Flushing mode : Invalid

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 32096

Remote SHG labels : 1

32096 : nexthop 128.0.0.1

/* PE2 static PW configuration details */

RP/0/RSP0/CPU0:router-PE2#show evpn ethernet-segment esi 0014.1400.0000.0100.0003 carving detail Legend:
A - Load-balancing mode and Access Protection incompatible, B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0014.1400.0000.0100.0003 PW:10.0.0.1,17300001

128.0.0.2

128.0.0.1

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 610

EVPN Features

CFM Support for EVPN

Virtual Access :

Name

: PW_10.0.0.1_17300001

State

: Up

Num PW Up

:1

ESI type

:0

Value

: 14.1400.0000.0100.0003

ES Import RT

: 1414.0001.0003 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: All-active (AApF)

Primary Services : Auto-selection

Secondary Services: Auto-selection

Service Carving Results:

Forwarders

:1

Permanent

:0

Elected

:0

Not Elected : 1

EVI NE :

1

MAC Flushing mode : Invalid

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 32096

Remote SHG labels : 1

32096 : nexthop 128.0.0.2

CFM Support for EVPN
Ethernet Connectivity Fault Management (CFM) is a service-level OAM protocol that provides tools for monitoring and troubleshooting end-to-end Ethernet services per VLAN. This includes proactive connectivity monitoring, fault verification, and fault isolation. CFM can be deployed in an EVPN network. You can monitor the connections between the nodes using CFM in an EVPN network.
Restrictions
CFM for EVPN is supported with the following restrictions:
· In an active-active multi-homing scenario, when monitoring the connectivity between a multi-homed CE device and the PE devices to which it is connected, CFM can only be used across each individual link between a CE and a PE. Attempts to use CFM on the bundle between CE and PE devices cause sequence number errors and statistical inaccuracies.
· There is a possibility of artefacts in loopback and linktrace results. Either a loopback or linktrace may report multiple results for the same instance, or consecutive instances of a loopback and linktrace between the same two endpoints may produce different results.
For more information about Ethernet Connectivity Fault Management (CFM), refer to the Configuring Ethernet OAM chapter in the Cisco ASR 9000 Series Aggregation Services Router Interface and Hardware Component Configuration Guide.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 611

EVPN Multiple Services per Ethernet Segment

EVPN Features

EVPN Multiple Services per Ethernet Segment
EVPN Multiple Services per Ethernet Segment feature allows you to configure multiple services over single Ethernet Segment (ES). Instead of configuring multiple services over multiple ES, you can configure multiple services over a single ES. You can configure the following services on a single Ethernet Bundle; you can configure one service on each sub-interface.
· EVPN-VPWS Xconnect service. Only all-active multihoming is supported. For more information, see EVPN Virtual Private Wire Service (VPWS) chapter in L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers.
· Native EVPN with Integrated Routing and Bridging (IRB) on a single ES. Both single-active and all-active multihoming modes are supported. However, both single-active and all-active multihoming cannot be configured on a single ES. You can configure either single-active or all-active multihoming mode on a single ES. But, they can coexist. For more information, see Configure EVPN IRB chapter in L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers.
· Native EVPN. Both single-active and all-active multihoming modes are supported. However, both single-active and all-active multihoming cannot be configured on a single ES. You can configure either single-active or all-active multihoming mode on a single ES. But, they can coexist. For more information see, EVPN Features chapter in L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers.
Configure EVPN Multiple Services per Ethernet Segment
Consider a customer edge (CE) device connected to two provider edge (PE) devices through Ethernet Bundle interface 22001. Configure multiple services on Bundle Ethernet sub-interfaces.
Configuration Example
Consider Bundle-Ether22001 ES, and configure multiple services on sub-interface.
/* Configure EVPN-VPWS xconnect service and native EVPN with IRB */
Router# configure Router(config)# interface Bundle-Ether22001.11 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 1 second-dot1q 11 Router(config-l2vpn-subif)# rewrite ingress tag pop 2 symmetric Router(config-l2vpn-subif)# commit Router(config-l2vpn-subif)# exit
Router# configure Router(config)# interface Bundle-Ether22001.21 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 1 second-dot1q 21 Router(config-l2vpn-subif)# rewrite ingress tag pop 2 symmetric Router(config-l2vpn-subif)# commit Router(config-l2vpn-subif)# exit
Router# configure
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 612

EVPN Features

Configuration Example

Route(config)# l2vpn Router(config-l2vpn)# xconnect group xg22001 Router(config-l2vpn-xc)# p2p evpn-vpws-mclag-22001 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether22001.11 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 22101 target 220101 source 220301 Router(config-l2vpn-xc-p2p)# commit Router(config-l2vpn-xc-p2p)# exit
Router # configure Router (config)# l2vpn Router (config-l2vpn)# bridge group native_evpn1 Router (config-l2vpn-bg)# bridge-domain bd21 Router (config-l2vpn-bg-bd)# interface Bundle-Ether22001.21 Router (config-l2vpn-bg-bd-ac)# routed interface BVI21 Router (config-l2vpn-bg-bd-bvi)# evi 22021 Router (config-l2vpn-bg-bd-bvi)# commit Router (config-l2vpn-bg-bd-bvi)# exit
/* Configure Native EVPN */
Router # configure Router (config)# evpn Router (config-evpn)# interface Bundle-Ether22001 Router (config-evpn-ac)# ethernet-segment identifier type 0 ff.ff.ff.ff.ff.ff.ff.ff.ee Router (config-evpn-ac-es)# bgp route-target 2200.0001.0001 Router (config-evpn-ac-es)# exit Router (config-evpn)# evi 24001 Router (config-evpn-evi)# bgp Router (config-evpn-evi-bgp)# route-target import 64:24001 Router (config-evpn-evi-bgp)# route-target export 64:24001 Router (config-evpn-evi-bgp)# exit Router (config-evpn-evi)# exit Router (config-evpn)# evi 21006 Router (config-evpn-evi)# bgp Router (config-evpn-evi-bgp)# route-target route-target 64:10000 Router (config-evpn-evi-bgp)# exit Router (config-evpn-evi)# exit Router (config-evpn)# evi 22101 Router (config-evpn-evi)# bgp Router (config-evpn-evi-bgp)# route-target import 64:22101 Router (config-evpn-evi-bgp)# route-target export 64:22101 Router (config-evpn-evi-bgp)# exit Router (config-evpn-evi)# exit Router (config-evpn)# evi 22021 Router (config-evpn-evi)# bgp Router (config-evpn-evi-bgp)# route-target import 64: 22021 Router (config-evpn-evi-bgp)# route-target export 64: 22021 Router (config-evpn-evi-bgp)# exit Router (config-evpn-evi)# exit Router (config-evpn-evi)# advertise-mac Router (config-evpn-evi)# exit Router (config-evpn)# evi 22022 Router (config-evpn-evi)# bgp Router (config-evpn-evi-bgp)# route-target import 64: 22022 Router (config-evpn-evi-bgp)# route-target export 64: 22022 Router (config-evpn-evi-bgp)# exit Router (config-evpn-evi)# advertise-mac Router (config-evpn-evi)# commit Router (config-evpn-evi)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 613

Running Configuration

EVPN Features

Running Configuration

Verification

/* Configure EVPN-VPWS xconnect service and native EVPN with IRB */
interface Bundle-Ether22001.11 l2transport encapsulation dot1q 1 second-dot1q 11 rewrite ingress tag pop 2 symmetric
! interface Bundle-Ether22001.21 l2transport
encapsulation dot1q 1 second-dot1q 21 rewrite ingress tag pop 2 symmetric ! ! l2vpn xconnect group xg22001 p2p evpn-vpws-mclag-22001 interface Bundle-Ether22001.11 neighbor evpn evi 22101 target 220101 source 220301 ! bridge group native_evpn1
bridge-domain bd21 interface Bundle-Ether22001.21
routed interface BVI21 evi 22021
! /* Configure Native EVPN */ Evpn
interface Bundle-Ether22001 ethernet-segment identifier type 0 ff.ff.ff.ff.ff.ff.ff.ff.ee bgp route-target 2200.0001.0001 ! evi 24001 bgp route-target import 64:24001 route-target export 64:24001 ! evi 21006 bgp route-target 64:100006 ! evi 22101 bgp route-target import 64:22101 route-target export 64:22101 ! evi 22021 bgp route-target import 64:22021 route-target export 64:22021 ! advertise-mac ! evi 22022 bgp route-target import 64:22022 route-target export 64:22022 ! advertise-mac !
Verify if each of the services is configured on the sub-interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 614

EVPN Features

Associated Commands

Router# show l2vpn xconnect summary Number of groups: 6 Number of xconnects: 505 Up: 505 Down: 0 Unresolved: 0 Partially-programmed: 0 AC-PW: 505 AC-AC: 0 PW-PW: 0 Monitor-Session-PW: 0 Number of Admin Down segments: 0 Number of MP2MP xconnects: 0
Up 0 Down 0 Advertised: 0 Non-Advertised: 0

Router# show l2vpn xconnect-service summary Number of flexible xconnect services: 74
Up: 74

Router# show l2vpn xconnect group xg22001 xc-name evpn-vpws-mclag-22001

Fri Sep 1 17:28:58.259 UTC

Legend: ST = State, UP = Up, DN = Down, AD = Admin Down, UR = Unresolved,

SB = Standby, SR = Standby Ready, (PP) = Partially Programmed

XConnect

Segment 1

Segment 2

Group

Name

ST

Description ST

Description

ST

------------------------ ----------------------------- -----------------------------------

xg22001 evpn-vpws-mclag-22001 UP BE22001.101 UP

EVPN 22101, 220101,64.1.1.6 UP

------------------------------------------------------------------------------------------

Associated Commands
· evpn · evi · ethernet-segment · advertise-mac · show evpn ethernet-segment · show evpn evi · show evpn summary · show l2vpn xconnect summary · show l2vpn xconnect group

EVPN VXLAN Ingress Replication
The EVPN VXLAN Ingress Replication feature enables the VXLAN tunnel endpoint (VTEP) to exchange local and remote VTEP IP addresses on the Virtual Network Identifier (VNI) in order to create the ingress replication list. This enables VTEPs to send and receive broadcast, unknown unicast and multicast (BUM) traffic for the VNI. These IP addresses are exchanged between VTEPs through the BGP EVPN control plane using EVPN Route Type 3. This feature enables in reduced traffic flooding, increased load sharing at VTEP, faster convergence during link and device failures, and simplified data center automation.
The VXLAN imposition node maintains a list of remote VTEP nodes that serve the same tenant VNI. Each copy of VXLAN packet is sent to the destination VTEP through underlay L3 unicast transport. EVPN Route Type 3 which is a inclusive multicast route, is used to build a replication list of VXLAN data plane VTEPs. The imposition node replicates BUM traffic for each remote VTEP node discovered by this route. Each copy

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 615

Single Homing VXLAN L2 GW

EVPN Features

of VXLAN is sent to destination VTEP through underlay L3 unicast transport. The ASR 9000 router is a DC edge router, which works as DCI gateway by stitching two MP-BGP control planes, one on the DC side, and the other on the MPLS WAN side. Following are the use cases of this feature:
· Single Homing VXLAN L2 gateway
· Anycast VXLAN L2 gateway
· All-active multihoming VXLAN L2 gateway
Single Homing VXLAN L2 GW
Consider a topology of single homing L2 gateway between DC and WAN. In this topology, ASR 9000 router is the DCI PE router. The L2 gateway on the PE is a bridge which forwards L2 frames between VXLAN DC and MPLS WAN. DC fabric devices, such as leaf and spine nodes, do not run IP multicast protocols, such as PIM-SM. All L2 BUM traffic between Nexus 9000 router and ASR 9000 router is forwarded through ingress replication at VXLAN imposition node.
Figure 89: Single Homing VXLAN L2 GW

A tenant VNI is enabled on all the four Nexus 9000 leaf nodes and one ASR 9000 border leaf node for L2VPN service. An IP host in DC1 initiates a communication to another IP host in DC2. The first ARP request goes from DC1 to DC2. Nexus 9000 router receives the ARP first, and uses ingress replication approach to flood the frame to other leaf nodes in DC1. One copy arrives on border leaf node ASR 9000. ASR 9000 performs L2 gateway operation. It replicates traffic using per EVI replication list at MPLS WAN side. One copy is sent to DC2. The other to DC3. In the reverse direction, when an IP host in DC2 initiates a communication with an IP host in DC1, an ARP request arrives at ASR 9000 DCI PE from WAN. ASR 9000 performs L2 gateway operation using per VNI ingress replication list for VXLAN. A total of four copies are created. Each copy is sent to one Nexus 9000 leaf node. Nexus 9000 leaf nodes that are configured as DFs forward the traffic to IP hosts on VMs.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 616

EVPN Features

Anycast VXLAN L2 Gateway

Anycast VXLAN L2 Gateway
Anycast VXLAN L2 gateway requires multihoming gateway nodes to use a common VTEP IP address. Gateway nodes in the same DC advertise the common VTEP IP in all EVPN routes from type 2 to type 5. Nexus 9000 leaf nodes in the DC considers only one border leaf VTEP located on multiple physical gateway nodes. Each Nexus 9000 router forwards traffic to the nearest gateway node through IGP routing.
Among multihoming DCI gateway nodes, an EVPN Ethernet segment is created on VXLAN facing NVE interface. One of the nodes is elected as DF for a tenant VNI. The DF node floods BUM traffic from WAN to DC. All DCI PE nodes discover each other through EVPN inclusive multicast routes advertised through WAN.
Consider a topology of anycast VXLAN L2 gateway between DC and WAN. In this topology, both ASR 9000 PE nodes share the same source VTEP IP address (VTEP5). Nexus 9000 router runs in vPC mode. ASR 9000 nodes advertise inclusive multicast routes using VTEP5 IP address. Nexus 9000 leaf nodes discover only one VTEP hosted by two ASR 9000 nodes.
Figure 90: Anycast VXLAN L2 Gateway

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 617

All-Active Multihoming VXLAN L2 Gateway

EVPN Features

When the Nexus 9000 router in DC1 receives BUM traffic from local IP host, it sends one copy to VTEP5. IGP routing in underlay transport chooses the nearest ASR 9000 router as the destination. After ASR 9000 router receives the L2 frame, it replicates it to MPLS WAN side. Three copies are sent to WAN. One arrives on peer ASR 9000 router in the same DC. The copy is dropped on peer PE using Ethernet Segment Split-Horizon feature.
In the direction from DC2 and DC3 to DC1, both ASR 9000 DCI PE nodes receive the same BUM traffic from MPLS WAN. The DF PE for the tenant VNI forwards traffic to DC1. Non-DF PE drops BUM traffic from WAN.

All-Active Multihoming VXLAN L2 Gateway
Consider a topology of all-active multihoming VXLAN L2 gateway where all leaf nodes, including Nexus 9000 node and ASR 9000 node, each has an unique VTEP IP address. Each Nexus 9000 leaf node creates EVPN Ethernet segment (ES1 and ES2) for dual-homed VM server. ASR 9000 border leaf nodes create an Ethernet Segment (ES3) for VXLAN facing NVE interface. Since every leaf node advertises inclusive multicast route using its local VTEP IP, ASR 9000 node receives four routes from Nexus 9000 node. The per VNI ingress replication list includes four remote VTEP (VTEP1 to VTEP4). Every Nexus 9000 node receives two routes from ASR 9000 gateway nodes. It sends BUM traffic to both ASR 9000 nodes. To prevent traffic duplication, only one of the ASR 9000 nodes can accept VXLAN traffic from Nexus 9000 leaf using DF. DF election is done at per tenant VNI level. One half of the VNIs elect top PE as DF. The other half elect bottom PE. DF PE accepts traffic both from DC and WAN. Non-DF drops traffic from DC and WAN.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 618

EVPN Features Figure 91: All-Active Multihoming VXLAN L2 Gateway

Configure EVPN VXLAN Ingress Replication

BUM traffic from DC1 arrives at Nexus 9000 leaf first. Nexus 9000 replicates the traffic to two ASR 9000 DCI nodes. DF DCI nodes flood traffic to WAN. Non-DF node drops traffic from DC fabric. Traffic flooded to WAN goes to DC2 and DC3. One copy comes back to DC1 through bottom DCI node. The bottom DCI node compares the split horizon label in the received MPLS packet and drops the packet.
In the reverse direction, when the traffic flows from DC2 and DC3, towards DC1, arrives at both top and bottom DCI nodes. The bottom DCI which is a non-DF drops traffic. The top DCI which is a DF, forwards four copies to remote leaf nodes. The Nexus 9000 leaf nodes forward traffic to an IP host.

Configure EVPN VXLAN Ingress Replication
Perform the following tasks to configure EVPN VXLAN Ingress Replication feature: · Configure DCI · Configure ToR
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 619

Configure EVPN VXLAN Ingress Replication

EVPN Features

/* DCI Configuration */
/* Configure Network Virtualization Endpoint (NVE) Interface */
Router# configure Router(config)# interface nve 40 Router(config-if)# member vni 40002 Router(config-if)# host-reachability protocol bgp Router(config-if)# source-interface loopback 40 Router(config-if)# anycast source-interface Loopback41 Router(config-if)# ingress-replication protocol bgp Router(config-if)# commit
/* Configure a Bridge Domain */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group bg1 Router(config-l2vpn-bg)# bridge-domain bd2 Router(config-l2vpn-bg-bd)# evi 40 Router(config-l2vpn-bg-bd-evi)# exit Router(config-l2vpn-bg-bd)# member vni 40002 Router(config-l2vpn-bg-bd-vni)# commit
/* Configure Ethernet Segment Identifier */
Router# configure Router(config)# evpn Router(config-evpn)# interface nve 40 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 28.28.28.00.00.40.00.00.13 Router(config-evpn-ac-es)# bgp route-target 200:40000 stitching Router(config-evpn-ac-es)# commit
/* Configure the routing sessions between the DCI and ToR */
Router# configure Router(config)# router bgp 100 Router(config-bgp)# bgp router-id 192.168.0.4 Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# exit Router(config-bgp)# neighbor 15.15.15.5 -------> ToR ebgp neighbour Router(config-bgp-nbr)# remote-as 200 Router(config-bgp-nbr)# ebgp-multihop 255 Router(config-bgp-nbr)# address-fmaily l2vpn evpn Router(config-bgp-nbr-af)# import stitching-rt reoriginate Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# encapsulation-type vxlan Router(config-bgp-nbr-af)# route-policy pass-all out Router(config-bgp-nbr-af)# advertise l2vpn evpn re-originated stitching-rt Router(config-bgp-nbr-af)# commit Router(config-bgp-nbr-af)# exit ! Router(config-bgp)# neighbor 192.168.0.2 -------> DCI BGP neighbour Router(config-bgp-nbr)# remote-as 100 Router(config-bgp-nbr)# update-source Loopback0 Router(config-bgp-nbr)# address-fmaily l2vpn evpn Router(config-bgp-nbr-af)# import stitching-rt reoriginate Router(config-bgp-nbr-af)# advertise l2vpn evpn re-originated stitching-rt Router(config-bgp-nbr-af)# commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 620

EVPN Features

Running Configuration

/* ToR Configuration */
/* Configure Network Virtualization Endpoint (NVE) Interface */
Router# configure Router(config)# interface nve 40 Router(config-if)# member vni 40002 Router(config-if)# host-reachability protocol bgp Router(config-if)# source-interface loopback 40 Router(config-if)# anycast source-interface Loopback41 Router(config-if)# ingress-replication protocol bgp Router(config-if)# commit
/* Configure RD and Route Targets for VXLAN Bridging */
Router# configure Router(config)# evpn Router(config-evpn)# router bgp Router(config-evpn-bgp)# rd auto Router(config-evpn-bgp)# route-target import auto Router(config-evpn-bgp)# route-target import 200:40000 Router(config-evpn-bgp)# route-target export 200:40000 Router(config-evpn-bgp)# commit
/* Configure the routing sessions between the ToR and DCI */
Router# configure Router(config)# router bgp 200 Router(config-bgp)# bgp router-id 10.5.41.41 Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# maximum-paths 8 Router(config-bgp-af)# maximum-paths ibgp 8 Router(config-bgp-af)# exit ! Router(config-bgp)# 192.168.0.4 -------> DCI neighbour: ebgp Router(config-bgp-nbr)# remote-as 100 Router(config-bgp-nbr)# update-source Loopback0 Router(config-bgp-nbr)# ebgp-multihop 255 Router(config-bgp-nbr)# address-family ipv4 unicast Router(config-bgp-nbr-af)# address-fmaily l2vpn evpn Router(config-bgp-nbr-af)# send-community extended Router(config-bgp-nbr-af)# route-map passall in Router(config-bgp-nbr-af)# route-map IR-test out Router(config-bgp-nbr-af)# commit Router(config-bgp-nbr-af)# exit ! Router(config-bgp)# neighbor 192.168.0.2 -------> VXLAN neighbour Router(config-bgp-nbr)# remote-as 200 Router(config-bgp-nbr)# update-source Loopback0 Router(config-bgp-nbr)# address-fmaily l2vpn evpn Router(config-bgp-nbr-af)# send-community extended Router(config-bgp-nbr-af)# commit
Running Configuration
/* DCI Configuration */
interface nve40 member vni 40002 host-reachability protocol bgp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 621

Running Configuration
! source-interface Loopback40 anycast source-interface Loopback41 ingress-replication protocol bgp
l2vpn bridge group bg1 bridge-domain bd2 evi 40 member vni 40002
evpn interface nve 40 ethernet-segment identifier type 0 28.28.28.00.00.40.00.00.13 bgp route-target 200:40000 stitching
evpn evi 40 bgp route-target 200:40000 stitching
router bgp 100 bgp router-id 192.168.0.4 address-family l2vpn evpn ! neighbor 15.15.15.5 -------> TOR ebgp neighbor remote-as 200 ebgp-multihop 255 address-family l2vpn evpn import stitching-rt re-originate route-policy pass-all in encapsulation-type vxlan route-policy pass-all out next-hop-self advertise l2vpn evpn re-originated stitching-rt
neighbor 192.168.0.2 ---------> DCI BGP neighor remote-as 100 update-source Loopback0 address-family l2vpn evpn import re-originate stitching-rt advertise l2vpn evpn re-originated
/* ToR Configuration */
interface nve 40 member vni 40002 host-reachability protocol bgp source-interface loopback 40 anycast source-interface Loopback41 ingress-replication protocol bgp
evpn router bgp rd auto route-target import auto route-target import 200:40000 route-target export 200:40000
router bgp 200 bgp router-id 10.5.41.41 address-family l2vpn evpn maximum-paths 8 maximum-paths ibgp 8
neighbor 192.168.0.4 -----------> DCI neighbour: ebgp

EVPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 622

EVPN Features

Verification

Verification

remote-as 100 update-source loopback0 ebgp-multihop 255 address-family ipv4 unicast address-family l2vpn evpn send-community extended route-map passall in route-map IR-test out

neighbor 192.168.0.6 -------> remote-as 200 update-source loopback0 address-family l2vpn evpn send-community both

VXLAN neighbour

Verify that you have configured EVPN VXLAN Ingress Replication feature successfully.

DC3# show evpn evi vpn-id 40 inclusive-multicast detail Ethernet Tag: 0, Originating IP: 192.168.0.2, vpn-id: 40
Nexthop: 192.168.0.2 Label : 24004 Source : Remote Encap : MPLS Ethernet Tag: 0, Originating IP: 192.168.0.3, vpn-id: 40 Nexthop: 192.168.0.3 Label : 24003 Source : Remote Encap : MPLS Ethernet Tag: 0, Originating IP: 192.168.0.4, vpn-id: 40 Nexthop: :: Label : 24001 Source : Local Encap : MPLS

------------------------------------------------------------------------------------------------------------------------------

DC2# show evpn ethernet-segment interface nve 40 detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0028.2828.0000.4000.0013 nv40

128.0.0.1

128.0.0.2

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : nve40

Interface MAC : 0000.0000.0000

IfHandle

: 0x0003e960

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 28.2828.0000.4000.0013

ES Import RT

: 2828.2800.0040 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: All-active (AApF) (default)

Primary Services : Auto-selection

Secondary Services: Auto-selection

Service Carving Results:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 623

Verification

EVPN Features

Forwarders

: 4000

Permanent

:0

Elected

: 2000

Not Elected : 2000

MAC Flushing mode : Invalid

Peering timer

: 30 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 38029

Remote SHG labels : 1

46029 : nexthop 128.0.0.1

-------------------------------------------------------------------------------------------------------------------------------

DCI# show l2vpn forwarding protection main-interface nve 40 location 0/2/CPU0

Main Interface ID

Instance State

-------------------------------- ---------- ------------

nve40

0

FORWARDING

nve40

1

FORWARDING

nve40

2

PE2CEBLOCK

nve40

3

FORWARDING

nve40

4

PE2CEBLOCK

nve40

5

FORWARDING

nve40

6

PE2CEBLOCK

nve40

7

FORWARDING

nve40

8

PE2CEBLOCK

nve40

9

FORWARDING

nve40

10

PE2CEBLOCK

nve40

11

FORWARDING

nve40

12

PE2CEBLOCK

nve40

13

FORWARDING

nve40

14

PE2CEBLOCK

--------------------------------------------------------------------------------------------------------------------------

DC3# show evpn evi vpn-id 40 inclusive-multicast detail

Ethernet Tag: 0, Originating IP: 10.4.41.41, vpn-id: 40 Nexthop: :: Label : 40000 Source : Local Encap : VXLAN
Ethernet Tag: 0, Originating IP: 10.5.41.41, vpn-id: 40 Nexthop: 10.5.41.41 Label : 40000 Source : Remote Encap : VXLAN
Ethernet Tag: 0, Originating IP: 10.6.41.41, vpn-id: 40 Nexthop: 10.6.41.41 Label : 40000 Source : Remote Encap : VXLAN
----------------------------------------------------------------------------------------------------------------------------

DC3# show l2vpn forwarding bridge-domain evpn inclusive-multicast location 0/0/CPU0

Bridge-Domain Name

BD-ID XCID

Next Hop

Label/VNI

-------------------------------- ------ ---------- --------------- ----------

l2cp-ir:l2cp-40

1

0xfff01002 192.168.0.2

24004 ;; MPLS-side

192.168.0.3

24003

l2cp-ir:l2cp-40

1

0xfffc1805 10.5.41.41

40000 ;; VXLAN side

10.6.41.41

40000

------------------------------------------------------------------------------------------

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 624

EVPN Features

EVPN Core Isolation Protection

EVPN Core Isolation Protection
The EVPN Core Isolation Protection feature enables you to monitor and detect the link failure in the core. When a core link failure is detected in the provider edge (PE) device, EVPN brings down the PE's Ethernet Segment (ES), which is associated with access interface attached to the customer edge (CE) device.
EVPN replaces ICCP in detecting the core isolation. This new feature eliminates the use of ICCP in the EVPN environment.
Consider a topology where CE is connected to PE1 and PE2. PE1, PE2, and PE3 are running EVPN over the MPLS core network. The core interfaces can be Gigabit Ethernet or bundle interface.
Figure 92: EVPN Core Isolation Protection

When the core links of PE1 go down, the EVPN detects the link failure and isolates PE1 node from the core network by bringing down the access network. This prevents CE from sending any traffic to PE1. Since BGP session also goes down, the BGP invalidates all the routes that were advertised by the failed PE. This causes the remote PE2 and PE3 to update their next-hop path-list and the MAC routes in the L2FIB. PE2 becomes the forwarder for all the traffic, thus isolating PE1 from the core network.
When all the core interfaces and BGP sessions come up, PE1 advertises Ethernet A-D Ethernet Segment (ES-EAD) routes again, triggers the service carving and becomes part of the core network.

Configure EVPN Core Isolation Protection
Configure core interfaces under EVPN group and associate that group to the Ethernet Segment which is an attachment circuit (AC) attached to the CE. When all the core interfaces go down, EVPN brings down the associated access interfaces which prevents the CE device from using those links within their bundles. All interfaces that are part of a group go down, EVPN brings down the bundle and withdraws the ES-EAD route.

Restrictions

· A maximum of 24 groups can be created under the EVPN. · A maximum of 12 core interfaces can be added under the group. · The core interfaces can be reused among the groups. The core interface can be a bundle interface.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 625

Running Configuration

EVPN Features

· EVPN group must only contain core interfaces, do not add access interfaces under the EVPN group.
· The access interface can only be a bundle interface.
· EVPN core facing interfaces must be physical or bundle main interfaces only. Sub-interfaces are not supported.

Router# configure Router(config)# evpn Router(config-evpn)# group 42001 Router(config-evpn-group)# core interface GigabitEthernet0/2/0/1 Router(config-evpn-group)# core interface GigabitEthernet0/2/0/3 Router(config-evpn-group)#exit ! Router(config-evpn)# group 43001 Router(config-evpn-group)# core interface GigabitEthernet0/2/0/2 Router(config-evpn-group)# core interface GigabitEthernet0/2/0/4 Router(config-evpn-group)#exit ! Router# configure Router(config)# evpn Router(config-evpn)# interface bundle-Ether 42001 Router(config-evpn-ac)# core-isolation-group 42001 Router(config-evpn-ac)# exit ! Router(config-evpn)# interface bundle-Ether 43001 Router(config-evpn-ac)# core-isolation-group 43001 Router(config-evpn-ac)# commit

Running Configuration

Verification

configure evpn group 42001 core interface GigabitEthernet0/2/0/1 core interface GigabitEthernet0/2/0/3 ! group 43001 core interface GigabitEthernet0/2/0/2 core interface GigabitEthernet0/2/0/4 ! !
configure evpn interface bundle-Ether 42001 core-isolation-group 42001 ! interface bundle-Ether 43001 core-isolation-group 43001 ! !
The show evpn group command displays the complete list of evpn groups, their associated core interfaces and access interfaces. The status, up or down, of each interface is displayed. For the access interface to be up, at least one of the core interfaces must be up.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 626

EVPN Features

EVPN Routing Policy

Router# show evpn group /* Lists specific group with core-interfaces and access interface status */ EVPN Group: 42001
State: Ready Core Interfaces:
Bundle-Ethernet110: down Bundle-Ethernet111: down GigabethEthernet0/2/0/1: up GigabethEthernet0/2/0/3: up GigabethEthernet0/4/0/8: up GigabethEthernet0/4/0/9: up GigabethEthernet0/4/0/10: up Access Interfaces: Bundle-Ether42001: up
EVPN Group: 43001 State: Ready Core Interfaces: Bundle-Ethernet110: down GigabethEthernet0/2/0/2: up GigabethEthernet0/2/0/4: up GigabethEthernet0/4/0/9: up
Access Interfaces: Bundle-Ether43001: up
EVPN Routing Policy
The EVPN Routing Policy feature provides the route policy support for address-family L2VPN EVPN. This feature adds EVPN route filtering capabilities to the routing policy language (RPL). The filtering is based on various EVPN attributes.
A routing policy instructs the router to inspect routes, filter them, and potentially modify their attributes as they are accepted from a peer, advertised to a peer, or redistributed from one routing protocol to another.
This feature enables you to configure route-policies using EVPN network layer reachability information (NLRI) attributes of EVPN route type 1 to 5 in the route-policy match criteria, which provides more granular definition of route-policy. For example, you can specify a route-policy to be applied to only certain EVPN route-types or any combination of EVPN NLRI attributes. This feature provides flexibility in configuring and deploying solutions by enabling route-policy to filter on EVPN NLRI attributes.
To implement this feature, you need to understand the following concepts:
· Routing Policy Language
· Routing Policy Language Structure
· Routing Policy Language Components
· Routing Policy Language Usage
· Policy Definitions
· Parameterization
· Semantics of Policy Application
· Policy Statements

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 627

EVPN Route Types

EVPN Features

· Attach Points
For information on these concepts, see Implementing Routing Policy. Currently, this feature is supported only on BGP neighbor "in" and "out" attach points. The route policy can be applied only on inbound or outbound on a BGP neighbor.
EVPN Route Types
The EVPN NLRI has the following different route types:
Route Type 1: Ethernet Auto-Discovery (AD) Route The Ethernet (AD) routes are advertised on per EVI and per Ethernet Segment Identifier (ESI) basis. These routes are sent per Ethernet segment (ES). They carry the list of EVIs that belong to the ES. The ESI field is set to zero when a CE is single-homed. An Ethernet A-D route type specific EVPN NLRI consists of the following fields:

NLRI Format: Route-type 1:
[Type][Len][RD][ESI][ETag][MPLS Label]
Net attributes: [Type][RD][ESI][ETag] Path attributes: [MPLS Label]
Example
route-policy evpn-policy if rd in (10.0.0.1:0) [and/or evpn-route-type is 1] [and/or esi in
(0a1.a2a3.a4a5.a6a7.a8a9)] [and/or etag is 4294967295] then set ..
endif end-policy ! route-policy evpn-policy
if rd in (1.0.0.2:0) [and/or evpn-route-type is 1] [and/or esi in (00a1.a2a3.a4a5.a6a7.a8a9)] [and/or etag is 4294967295] then
set .. endif end-policy
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 628

EVPN Features

EVPN Route Types

Route Type 2: MAC/IP Advertisement Route
The host's IP and MAC addresses are advertised to the peers within NLRI. The control plane learning of MAC addresses reduces unknown unicast flooding.
A MAC/IP Advertisement Route type specific EVPN NLRI consists of the following fields:

NLRI Format: Route-type 2:
[Type][Len][RD][ESI][ETag][MAC Addr Len][MAC Addr][IP Addr Len][IP Addr][MPLS Label1][MPLS Label2]
Net attributes: [Type][RD][ETag][MAC Addr Len][MAC Addr][IP Addr Len][IP Addr] Path attributes: [ESI], [MPLS Label1], [MPLS Label2]
Example
route-policy evpn-policy if rd in (10.0.0.2:0) [and/or evpn-route-type is 2] [and/or esi in
(0000.0000.0000.0000.0000)] [and/or etag is 0] [and/or macaddress in (0013.aabb.ccdd)] [and/or destination in (1.2.3.4/32)] then
set .. endif end-policy
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 629

EVPN Route Types

EVPN Features

Route Type 3: Inclusive Multicast Ethernet Tag Route
This route establishes the connection for broadcast, unknown unicast, and multicast (BUM) traffic from a source PE to a remote PE. This route is advertised on per VLAN and per ESI basis.
An Inclusive Multicast Ethernet Tag route type specific EVPN NLRI consists of the following fields:

NLRI Format: Route-type 3:
[Type][Len][RD][ETag][IP Addr Len][Originating Router's IP Addr]
Net attributes: [Type][RD][ETag][IP Addr Len][Originating Router's IP Addr]
Example
route-policy evpn-policy if rd in (10.0.0.1:300) [and/or evpn-route-type is 3] [and/or etag is 0] [and/or
evpn-originator in (10.0.0.1)] then set ..
endif end-policy
Route Type 4: Ethernet Segment Route Ethernet segment routes enable to connect a CE device to two or PE devices. ES route enables the discovery of connected PE devices that are connected to the same Ethernet segment. An Ethernet Segment route type specific EVPN NLRI consists of the following fields:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 630

EVPN Features

EVPN Route Types

NLRI Format: Route-type 4:
[Type][Len][RD][ESI][IP Addr Len][Originating Router's IP Addr]
Net attributes: [Type][RD][ESI][IP Addr Len][Originating Router's IP Addr]
Example
route-policy evpn-policy if rd in (10.0.0.1:0) [and/or evpn-route-type is 4] [and/or esi in
(00a1.a2a3.a4a5.a6a7.a8a9)] [and/or evpn-originator in (10.0.0.1)] then set ..
endif end-policy
Route Type 5: IP Prefix Route An IP Prefix Route type specific EVPN NLRI consists of the following fields:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 631

EVPN RPL Attribute

EVPN Features

NLRI Format: Route-type 5:
[Type][Len][RD][ESI][ETag][IP Addr Len][IP Addr][GW IP Addr][Label]
Net attributes: [Type][RD][ETag][IP Addr Len][IP Addr] Path attributes: [ESI], [GW IP Addr], [Label]
Example
route-policy evpn-policy if rd in (30.30.30.30:1) [and/or evpn-route-type is 5] [and/or esi in
(0000.0000.0000.0000.0000)] [and/or etag is 0] [and/or destination in (12.2.0.0/16)] [and/or evpn-gateway in (0.0.0.0)] then set .. endif
end-policy
EVPN RPL Attribute
Route Distinguisher A Route Distinguisher (rd) attribute consists of eight octets. An rd can be specified for each of the EVPN route types. This attribute is not mandatory in route-policy.
Example
rd in (1.2.3.4:0)
EVPN Route Type EVPN route type attribute consists of one octet. This specifies the EVPN route type. The EVPN route type attribute is used to identify a specific EVPN NLRI prefix format. It is a net attribute in all EVPN route types.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 632

EVPN Features

EVPN RPL Attribute

Example
evpn-route-type is 3
The following are the various EVPN route types that can be used: 1 - ethernet-ad 2 ­ mac-advertisement 3 - inclusive-multicast 4 - ethernet-segment 5 ­ ip-advertisement
IP Prefix An IP prefix attribute holds IPv4 or IPv6 prefix match specification, each of which has four parts: an address, a mask length, a minimum matching length, and a maximum matching length. The address is required, but the other three parts are optional. When IP prefix is specified in EVPN route type 2, it represents either a IPv4 or IPv6 host IP Address (/32 or /128). When IP prefix is specified in EVPN route type 5, it represents either IPv4 or IPv6 subnet. It is a net attribute in EVPN route type 2 and 5.
Example
destination in (128.47.10.2/32) destination in (128.47.0.0/16) destination in (128:47::1/128) destination in (128:47::0/112)
esi An Ethernet Segment Identifier (ESI) attribute consists of 10 octets. It is a net attribute in EVPN route type 1 and 4, and a path attribute in EVPN route type 2 and 5.
Example
esi in (ffff.ffff.ffff.ffff.fff0)
etag An Ethernet tag attribute consists of four octets. An Ethernet tag identifies a particular broadcast domain, for example, a VLAN. An EVPN instance consists of one or more broadcast domains. It is a net attribute in EVPN route type 1, 2, 3 and 5.
Example
etag in (10000)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 633

EVPN RPL Attribute Set

EVPN Features

mac The mac attribute consists of six octets. This attribute is a net attribute in EVPN route type 2.
Example
mac in (0206.acb1.e806)
evpn-originator The evpn-originator attribute specifies the originating router's IP address (4 or 16 octets). This is a net attribute in EVPN route type 3 and 4.
Example
evpn-originator in (1.2.3.4)
evpn-gateway The evpn-gateway attribute specifies the gateway IP address. The gateway IP address is a 32-bit or 128-bit field (IPv4 or IPv6), and encodes an overlay next-hop for the IP prefixes. The gateway IP address field can be zero if it is not used as an overlay next-hop. This is a path attribute in EVPN route type 5.
Example
evpn-gateway in (1.2.3.4)
EVPN RPL Attribute Set
In this context, the term set is used in its mathematical sense to mean an unordered collection of unique elements. The policy language provides sets as a container for groups of values for matching purposes. Sets are used in conditional expressions. The elements of the set are separated by commas. Null (empty) sets are allowed.
prefix-set A prefix-set holds IPv4 or IPv6 prefix match specifications, each of which has four parts: an address, a mask length, a minimum matching length, and a maximum matching length. The address is required, but the other three parts are optional. The prefix-set specifies one or more IP prefixes.
Example
prefix-set ip_prefix_set 14.2.0.0/16, 54.0.0.0/16, 12.12.12.0/24, 50:50::1:0/112 end-set

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 634

EVPN Features

EVPN Attributes and Operators

mac-set The mac-set specifies one or more MAC addresses.
Example
mac-set mac_address_set 1234.2345.6789, 2345.3456.7890 end-set
esi-set The esi-set specifies one or more ESI's.
Example
esi-set evpn_esi_set 1234.2345.3456.4567.5678, 1234.2345.3456.4567.5670 end-set
etag-set The etag-set specifies one or more Ethernet tags.
Example
etag-set evpn_etag_set 10000, 20000 end-set
EVPN Attributes and Operators
This table summarizes the EVPN attributes and operators per attach points.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 635

Configure EVPN RPL Feature

EVPN Features

Table 16: EVPN Attributes and Operators

Attach Point neighbor-in
neighbor-out

Attribute destination rd evpn-route-type esi etag mac evpn-originator evpn-gateway destination rd evpn-route-type esi etag mac evpn-originator evpn-gateway

Match in in is in in in in in in in is in in in in in

Attribute-Set -- -- -- Yes Yes Yes -- -- -- -- -- Yes Yes Yes -- --

Configure EVPN RPL Feature
The following section describe how to configure mac-set, esi-set, evpn-gateway, and evpn-originator.
/* Configuring a mac-set and refering it in a route-policy (Attach point - neighbor-in) */ Router# configure Router(config)# mac-set demo_mac_set Router(config-mac)# 1234.ffff.aaa3, Router(config-mac)# 2323.4444.ffff Router(config-mac)# end-set Router(config)# ! Router(config)# route-policy policy_use_pass_mac_set Router(config-rpl)# if mac in demo_mac_set then Router(config-rpl-if)# set med 200 Router(config-rpl-if)# else Router(config-rpl-else)# set med 1000 Router(config-rpl-else)# endif Router(config-rpl)# end-policy Router(config)# commit Router(config)# router bgp 100

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 636

EVPN Features

Running Configuration

Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# ! Router(config-bgp-af)# neighbor 10.0.0.10 Router(config-bgp-nbr)# remote-as 8 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy policy_use_pass_mac_set in Router(config-bgp-nbr-af)# commit
/* Configuring a esi-set and refering it in a route-policy (Attach point - neighbor-in) */ Router# configure Router(config)# esi-set demo_esi Router(config-esi)# ad34.1233.1222.ffff.44ff, Router(config-esi)# ad34.1233.1222.ffff.6666 Router(config-esi)# end-set Router(config)# ! Router(config)# route-policy use_esi Router(config-rpl)# if esi in demo_esi then Router(config-rpl-if)# set local-preference 100 Router(config-rpl-if)# else Router(config-rpl-else)# set local-preference 300 Router(config-rpl-else)# endif Router(config-rpl)# end-policy Router(config)# commit
/* Configuring evpn-gateway/evpn-originator in a route-policy (Attach point - neighbor-in and out) */ Router# configure Router(config)# route-policy gateway_demo Router(config-rpl)# if evpn-gateway in (10.0.0.0/32) then Router(config-rpl-if)# pass Router(config-rpl-if)# endif Router(config-rpl)# end-policy Router(config)# commit Router(config)# route-policy originator_demo Router(config-rpl)# if evpn-originator in (10.0.0.1/32) then Router(config-rpl-if)# set local-preference 100 Router(config-rpl-if)# else Router(config-rpl-else)# set med 200 Router(config-rpl-else)# endif Router(config-rpl)# end-policy Router(config)# commit Router(config)# router bgp 100 Router(config-bgp)# address-family ipv4 unicast Router(config-bgp-af)# ! Router(config-bgp-af)# neighbor 10.0.0.10 Router(config-bgp-nbr)# remote-as 8 Router(config-bgp-nbr)# address-family ipv4 unicast Router(config-bgp-nbr-af)# route-policy gateway_demo in Router(config-bgp-nbr-af)# route-policy originator_demo out Router(config-bgp-nbr-af)# commit
Running Configuration
/* Configuring a mac-set and refering it in a route-policy (Attach point - neighbor-in) */ mac-set demo_mac_set
1234.ffff.aaa3, 2323.4444.ffff end-set ! route-policy policy_use_pass_mac_set if mac in demo_mac_set then

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 637

Running Configuration

EVPN Features

set med 200 else
set med 1000 endif end-policy ! router bgp 100 address-family l2vpn evpn ! neighbor 10.0.0.10 remote-as 8 address-family l2vpn evpn route-policy policy_use_pass_mac_set in ! ! ! end
/* Configuring a esi-set and refering it in a route-policy (Attach point - neighbor-in) */ Wed Oct 26 11:52:23.720 IST esi-set demo_esi
ad34.1233.1222.ffff.44ff, ad34.1233.1222.ffff.6666 end-set ! route-policy use_esi if esi in demo_esi then
set local-preference 100 else
set local-preference 300 endif end-policy
EVPN Route Policy Examples
route-policy ex_2 if rd in (2.2.18.2:1004) and evpn-route-type is 1 then drop elseif rd in (2.2.18.2:1009) and evpn-route-type is 1 then drop else pass endif
end-policy ! route-policy ex_3
if evpn-route-type is 5 then set extcommunity bandwidth (100:9999)
else pass
endif end-policy ! route-policy samp end-policy ! route-policy samp1
if rd in (30.0.101.2:0) then pass
endif end-policy !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 638

EVPN Features

Running Configuration

route-policy samp2 if rd in (30.0.101.2:0, 1:1) then pass endif
end-policy ! route-policy samp3
if rd in (*:*) then pass
endif end-policy ! route-policy samp4
if rd in (30.0.101.2:*) then pass
endif end-policy ! route-policy samp5
if evpn-route-type is 1 then pass
endif end-policy ! route-policy samp6
if evpn-route-type is 2 or evpn-route-type is 5 then pass
endif end-policy ! route-policy samp7
if evpn-route-type is 4 or evpn-route-type is 3 then pass
endif end-policy ! route-policy samp8
if evpn-route-type is 1 or evpn-route-type is 2 or evpn-route-type is 3 then pass
endif end-policy ! route-policy samp9
if evpn-route-type is 1 or evpn-route-type is 2 or evpn-route-type is 3 or evpn-route-type is 4 then
pass endif end-policy ! route-policy test1 if evpn-route-type is 2 then
set next-hop 10.2.3.4 else
pass endif end-policy ! route-policy test2 if evpn-route-type is 2 then
set next-hop 10.10.10.10 else
drop endif end-policy

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 639

Running Configuration

EVPN Features

! route-policy test3
if evpn-route-type is 1 then set tag 9988
else pass
endif end-policy ! route-policy samp21
if mac in (6000.6000.6000) then pass
endif end-policy ! route-policy samp22
if extcommunity rt matches-any (100:1001) then pass
else drop
endif end-policy ! route-policy samp23
if evpn-route-type is 1 and esi in (aaaa.bbbb.cccc.dddd.eeee) then pass
else drop
endif end-policy ! route-policy samp24
if evpn-route-type is 5 and extcommunity rt matches-any (100:1001) then pass
else drop
endif end-policy ! route-policy samp25
if evpn-route-type is 2 and esi in (1234.1234.1234.1234.1236) then pass
else drop
endif end-policy ! route-policy samp26
if etag in (20000) then pass
else drop
endif end-policy ! route-policy samp27
if destination in (99.99.99.1) and etag in (20000) then pass
else drop
endif end-policy ! route-policy samp31

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 640

EVPN Features

Running Configuration

if evpn-route-type is 1 or evpn-route-type is 2 or evpn-route-type is 3 or evpn-route-type is 4 or evpn-route-type is 5 then
pass else
drop endif end-policy ! route-policy samp33 if esi in evpn_esi_set1 then
pass else
drop endif end-policy ! route-policy samp34 if destination in (90:1:1::9/128) then
pass else
drop endif end-policy ! route-policy samp35 if destination in evpn_prefix_set1 then
pass else
drop endif end-policy ! route-policy samp36 if evpn-route-type is 3 and evpn-originator in (80:1:1::3) then
pass else
drop endif end-policy ! route-policy samp37 if evpn-gateway in (10:10::10) then
pass else
drop endif end-policy ! route-policy samp38 if mac in evpn_mac_set1 then
pass else
drop endif end-policy ! route-policy samp39 if mac in (6000.6000.6002) then
pass else
drop endif end-policy !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 641

Running Configuration
route-policy samp41 if evpn-gateway in (10.10.10.10, 10:10::10) then pass else drop endif
end-policy ! route-policy samp42
if evpn-originator in (24.162.160.1/32, 70:1:1::1/128) then pass
else drop
endif end-policy ! route-policy example
if rd in (62300:1903) and evpn-route-type is 1 then drop
elseif rd in (62300:19032) and evpn-route-type is 1 then drop
else pass
endif end-policy ! route-policy samp100
if evpn-route-type is 4 or evpn-route-type is 5 then drop
else pass
endif end-policy ! route-policy samp101
if evpn-route-type is 4 then drop
else pass
endif end-policy ! route-policy samp102
if evpn-route-type is 4 then drop
elseif evpn-route-type is 5 then drop
else pass
endif end-policy ! route-policy samp103
if evpn-route-type is 2 and destination in evpn_prefix_set1 then drop
else pass
endif end-policy ! route-policy samp104
if evpn-route-type is 1 and etag in evpn_etag_set1 then drop
elseif evpn-route-type is 2 and mac in evpn_mac_set1 then

EVPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 642

EVPN Features

BGP Multiple Sourced or Redistributed Paths

drop elseif evpn-route-type is 5 and esi in evpn_esi_set1 then
drop else
pass endif end-policy !
BGP Multiple Sourced or Redistributed Paths
The BGP Multiple Sourced or Redistributed Paths feature allows BGP to receive multiple paths for each prefix that is redistributed or locally sourced. These multipaths can be used for add-path functionality advertisement. This feature allows the Virtual Topology System (VTS) to advertise the routes along with its IP address even when the Virtual Traffic Forwarder (VTF) resides outside the VTS controller. This enables the VTS customers to use multipath load-balancing capabilities across multiple VTFs.
The VTS advertises multiple paths of its VTFs to the remote autonomous system add path along with the properties of its own path, such as load-metrics and VXLAN Network Identifier (VNIs). The VTS uses the Server Layer applications for this advertisement. This enables multipath capability across VTFs along with load balancing.
Configure BGP Multiple Sourced or Redistributed Paths
You can configure the BGP Multiple Sourced or Redistributed Paths feature for redistributed or locally sourced prefix.
Perform the following tasks to configure BGP Multipath Extensions for redistributed prefix.
Router# configure Router(config)# router bgp 100 Router(config-bgp)# vrf vrf-1 Router(config-bgp-vrf)# address-family ipv4 unicast Router(config-bgp-vrf-af)# redistribute application Service-layer multipath Router(config-bgp-vrf-af)# commit
Perform the following tasks to configure BGP Multipath Extensions for locally sourced prefix.
Router# configure Router(config)# router bgp 200 Router(config-bgp)# vrf vrf-1 Router(config-bgp-vrf)# address-family ipv4 unicast Router(config-bgp-vrf-af)# network 192.0.2.1 255.255.255.0 multipath Router(config-bgp-vrf-af)# commit
Running Configuration
This section shows BGP Multiple Sourced and Redistributed Paths running configuration.
/* For redistributed prefix */ configure
router bgp 100 vrf vrf-1 address-family ipv4 unicast redistribute application Service-layer multipath

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 643

Configure BGP Multiple Sourced or Redistributed Paths

EVPN Features

! !
/* For locally sourced prefix */ configure
router bgp 200 vrf vrf-1 address-family ipv4 unicast network 192.0.2.1 255.255.255.0 multipath
! !
Verification
Verify the BGP Multiple Sourced or Redistributed Paths feature configuration.

Router# show bgp vrf vrf-1 198.51.100.1/32

Fri Nov 16 19:03:08.727 PST

BGP routing table entry for 198.51.100.1/32, Route Distinguisher: 192.168.0.1:0

Versions:

Process

bRIB/RIB SendTblVer

Speaker

10

10

Local Label: 24001

Last Modified: Nov 16 15:47:24.000 for 03:15:45

Paths: (2 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

0.0.0.0 from 0.0.0.0 (192.168.0.1)

Received Label 10000

Origin incomplete, metric 5, localpref 100, weight 32768, valid, redistributed, best,

group-best, import-candidate

Received Path ID 1, Local Path ID 1, version 10

Extended community: Encapsulation Type:8 Router MAC:abcd.ef00.0101 RT:10:10

VPN Nexthop: 10.0.0.1 <--------------------------------------------------------------

PATH1

Path #2: Received by speaker 0

Not advertised to any peer

Local

0.0.0.0 from 0.0.0.0 (192.168.0.1)

Received Label 10000

Origin incomplete, metric 5, localpref 100, weight 32768, valid, redistributed,

add-path

Received Path ID 2, Local Path ID 2, version 10

Extended community: Encapsulation Type:8 Router MAC:abcd.ef00.0102 RT:10:10

VPN Nexthop: 10.0.0.2 <--------------------------------------------------------------

PATH2

Related Topics · #unique_663
Associated Commands · redistribute application Service-layer multipath · network <ip address> multipath · show bgp vrf <vrf_name>

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 644

EVPN Features

Highest Random Weight Mode for EVPN DF Election

Highest Random Weight Mode for EVPN DF Election
The Highest Random Weight (HRW) Mode for EVPN DF Election feature provides optimal load distribution of Designated Forwarder (DF) election, redundancy, and fast access. It ensures a nondisruptive service for an ES irrespective of the state of a peer DF.
The DF election is calculated based on the weight. The highest weight becomes the DF and the subsequent weight becomes a backup DF (BDF). The weight is determined by the mathematical function of EVI, ESI, and the IP address of the server.
DF weight calculation is based on the weight vector:
Wrand(v, Si) = (1103515245((1103515245.Si+12345)XOR D(v))+12345)(mod 2^31) where: Si: IP Address of the server i v: EVI D(v): 31 bit digest [CRC-32 of v]
The existing DF election algorithm is based on ordinal value of a modulus calculation, and it comprises of number of peers and EVI. The DF is determined by the mathematical function of ESI and EVI, which is called "service carving". This mode of DF election is described in RFC 7432.
In modulus calculation mode, the algorithm does not perform well when the Ethernet tags are all even or all odd. When the Ethernet Segment (ES) is multihomed to two PEs, all the VLANs pick only one of the PEs as the DF; one of the PEs does not get elected at all as the DF. The DF election is not optimal in this mode of operation.
The HRW mode of DF election has the following advantages over modulus mode of DF election:
· The DF election for the respective VLANs is equally distributed among the PEs.
· When a PE which is neither a DF nor a BDF hosts some VLANs on a given ES, and if the PE goes down, or its connection to the ES goes down, it does not result in a DF and BDF reassignment to the other PEs. This eliminates computation during the connection flaps.
· It avoids the service disruption that are inherent in the existing modulus based algorithm.
· The BDF provides redundant connectivity. The BDF ensures that there is no traffic disruption when a DF fails. When a DF fails, the BDF becomes the DF.
Configure Highest Random Weight Mode for EVPN DF Election
Perform this task to configure Highest Random Weight Mode for EVPN DF Election feature.
Configuration Example
Router# configure Router(config)#evpn Router(config-evpn)#interface Bundle-Ether 23 Router(config-evpn-ac)#ethernet-segment Router(config-evpn-ac-es)#service-carving hrw Router(config-evpn-ac-es)#commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 645

Configure Highest Random Weight Mode for EVPN DF Election

EVPN Features

Running Configuration

configure evpn interface Bundle-Ether 23 ethernet-segment service-carving hrw ! ! !
Verification
Verify that you have configured HRW mode of DF election.

Router#show evpn ethernet-segment interface bundleEther 23 carving detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0011.1111.1111.1111.1111 Gi0/2/0/0

192.168.0.2

192.168.0.3

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : GigabitEthernet0/2/0/0

Interface MAC : 02db.c740.ca4e

IfHandle

: 0x01000060

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 11.1111.1111.1111.1111

ES Import RT

: 0011.0011.0011 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, Single-active

Configured

: Single-active (AApS) (default)

Service Carving : HRW -> Operation mode of carving

Peering Details : 192.168.0.2[HRW:P:00] 192.168.0.3[HRW:P:00] -> Carving capability as

advertised by peers

Service Carving Results:

Forwarders

:1

Permanent

:0

Elected

:0

Not Elected : 1

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 28109

Remote SHG labels : 1

24016 : nexthop 192.168.0.3

Associated Commands · service-carving · show evpn ethernet-segment

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 646

EVPN Features

Layer 2 Fast Reroute

Layer 2 Fast Reroute

Table 17: Feature History Table

Feature Name

Release Information

Layer 2 Fast Release 7.3.1 Reroute

Feature Description
In the event of a link failure, this feature enables the router to switch traffic quickly to a precomputed loop-free alternative (LFA) path by allocating a label to the incoming traffic. This minimizes the traffic loss ensuring fast convergence.
This feature introduces the convergence reroute command.

When there is a link failure, a network experiences traffic loss for a brief period until the convergence is complete. The extent of traffic loss depends on various factors such as the performance of the control plane, tuning of fast convergence, and the choice of technologies of the control plane on each node in the network.
Certain fault-tolerant applications are impacted by the traffic loss. To reduce this traffic loss, a technique for data plane convergence is essential. Fast Reroute (FRR) is one such technique that is primarily applicable to the network core.
The Layer 2 Fast Reroute (L2 FRR) feature enables the router to quickly send the traffic through the backup path when a primary link fails. The feature helps to minimise traffic loss and ensures fast convergence.
L2 FRR precomputes the loop-free alternative (LFA) path in the hardware. When a link or a router fails, distributed routing algorithms takes the failure into account and compute new routes. The time taken for computation is called routing transition. The routing transition in BGP convergence can take up to several hundreds of milliseconds.
Use LFA FRR to reduce the routing transition time to less than 50 milliseconds using a precomputed alternate backup path. When a router detects a link failure, FRR allocates a label to the incoming traffic, and the router immediately switches the traffic over to the backup path to reduce traffic loss.

Benefits This feature provides fast and predictable convergence:
· Convergence time is 50 ms · Fast failure notification even in large rings with high number of nodes · Manual configuration for predictable failover behavior · You do not have to change the topology

Restrictions · You can use L2 FRR only when PE devices are in EVPN active-active or single-active mode. · L2 FRR is applicable only for unicast traffic and not for BUM traffic.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 647

Layer 2 Fast Reroute Figure 93: Layer 2 Fast Reroute

EVPN Features

In this topology: · CE2 is multihomed to PE1 and PE2. · PE1 and PE2 are in EVPN active-active or single-active mode. They are connected to a remote router PE3 over the MPLS core network. · CE1 is connected to PE3. · Both PE1 and PE2 are L2 FRR enabled. An FRR label is added per EVI for the backup path.
Consider a traffic flow from CE1 to CE2 in a regular scenario: · The traffic is sent from CE1 to PE3. · PE3 distributes the traffic over PE1 and PE2. · PE1 and PE2 sends the traffic to CE2.
When FRR is enabled: · When the PE1-CE2 link goes down, L2 FRR is triggered on PE1. Traffic is redirected to PE2 until the convergence is complete. · When you enable FRR on PE1, the logical backup path is pre-programmed in the hardware. When PE1 detects a failure on the access side (CE2), PE1 identifies the backup PE2 as has been programmed in the hardware. · PE1 allocates the FRR label to the incoming traffic to reach PE2. · All incoming traffic to PE1 is redirected to PE2 using this FRR label. · PE1 encapsulates all the traffic with the label of PE2 and forwards the traffic to PE2. · PE2 receives the traffic with the label. · Each interface has an unique label. · PE2 removes the FRR label and forwards the traffic to the correct AC.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 648

EVPN Features

Layer 2 Fast Reroute

Configure Layer 2 Fast Reroute
Router# configure Router(config)# evpn Router(config-evpn)# interface Bundle-Ether100 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.00.00.00.00.00.05.01.02 Router(config-evpn-ac-es)# convergence Router(config-evpn-ac-es-conv)# reroute Router(config-evpn-ac-es-conv)# bgp route-target 5000.5000.5002 Router(config-evpn-ac-es-conv)# exit Router(config-evpn-ac-es)# l2vpn Router(config-l2vpn)# bridge group bg1 Router(config-l2vpn-bg)# bridge-domain bd1 Router(config-l2vpn-bg-bd)# interface Bundle-Ether100.100 > L2FRR enabled bridge-port (BP),
Primary and backup learn-fecs will be created in the hardware for this BP Router(config-l2vpn-bg-bd-ac)# routed interface BVI100 Router(config-l2vpn-bg-bd-bvi)# evi 990 Router(config-l2vpn-bg-bd-evi)# commit
Running Configuration
This section shows the Layer 2 Fast Reroute running configuration.
evpn interface Bundle-Ether100 ethernet-segment identifier type 0 00.00.00.00.00.00.05.01.02 convergence reroute ! bgp route-target 5000.5000.5002 ! !
! l2vpn
bridge group bg1 bridge-domain bd1 interface Bundle-Ether100.100 ! routed interface BVI100 ! evi 990 ! !
! ! end
Verification
Verify that you have configured Layer 2 Fast Reroute successfully.Check ESI bundle carving details, and ensure convergence reroute is enabled.
Router:PE1#show evpn ethernet-segment interface bundle-Ether 100 carving details Mon Dec 7 11:04:37.604 UTC Legend:
B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 649

Layer 2 Fast Reroute

EVPN Features

E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0000.0000.0000.0005.0102 BE200

2.2.2.2

8.8.8.8

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether200

Interface MAC : 008a.960e.70d9

IfHandle

: 0x20004064

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 00.0000.0000.0005.0102

ES Import RT

: 5000.5000.5002 (Local)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, All-active

Configured

: All-active (AApF) (default)

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

: Reroute, <<<<<<<< Check reroute is enabled on this ESI bundle

Mobility-Flush : Debounce 1 sec, Count 0, Skip 0

: Last n/a

Peering Details : 2 Nexthops

2.2.2.2 [MOD:P:7fff:T]

8.8.8.8 [MOD:P:00:T]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

Service Carving Results:

Forwarders

:2

Elected

:1

EVI E :

990

Not Elected : 1

EVI NE :

991

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 28098

Remote SHG labels : 1

28098 : nexthop 8.8.8.8

Access signal mode: Bundle OOS (Default)

Check multihoming nodes per bridge-port (BP) AC backup information is programmed correctly.

Router:PE1#show l2vpn forwarding interface bundle-Ether100.100 private location 0/0/CPU0

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 650

EVPN Features

Layer 2 Fast Reroute

Mon Dec 7 11:04:37.604 UTC

Xconnect ID 0xa0000007

Xconnect info: Base info: version=0xaabbcc13, flags=0xc110, type=2, reserved=0, address=0x308b25c448 xcon_bound=TRUE, switching_type=0, data_type=12 xcon_name=

AC info: Base info: version=0xaabbcc11, flags=0x0, type=3, reserved=0, address=0x308b25c570 xcon_id=0xa0000007, ifh=0x2000403c, subifh=0x20004046, ac_id=0, ac_type=21, ac_mtu=1500, iw_mode=1, adj_valid=TRUE, adj_addr=0x20004046, adj_ptr=0x30887ab5c8 r_aps_channel=FALSE, prot_exclusion=FALSE rg_id=0, ro_id=0x0000000000000000 evpn internal label = None E-Tree = Root FXC local-switch AC xcid = 0x0 (Invalid) FXC local-switch PW xcid = 0xffffffff (Invalid) Statistics: packets: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 0 bytes: received 0 (multicast 0, broadcast 0, unknown unicast 0, unicast 0), sent 0 MAC move: 0 packets dropped: PLU 0, tail 0 bytes dropped: PLU 0, tail 0

AC Backup info: Base info: version=0xaabbcc39, flags=0x0, type=43, reserved=0, address=0x308b264b70 VC label: 28100 << FRR label advertised by remote multihome peer node. Check this
label details on the multihoming peer node is correct or not. Note down this label and check on MH2 node.

Object: AC_BACKUP

Base info: version=0xaabbcc39, flags=0x0, type=43, reserved=0, address=0x308b264b70

Event Trace History [Total events: 1]

--------------------------------------------------------------------------------

Time

Event

Flags

====

=====

=====

Jul 23 08:59:49.658 Create

0x0

--

--------------------------------------------------------------------------------

Nexthop info: Base info: version=0xaabbcc14, flags=0x10000, type=7, reserved=0, address=0x308b25b4f8 nh_addr=2.2.2.2 ecd_plat_data_valid=TRUE, ecd_plat_data_len=104, plat_data_size=496 child_count=0, child_evpn_ole_count=2, child_mac_count=0, child_pwhe_mp_count=0,
child_ac_backup_count=2

Object: NHOP

Base info: version=0xaabbcc14, flags=0x10000, type=7, reserved=0, address=0x308b25b4f8

Event Trace History [Total events: 5]

--------------------------------------------------------------------------------

Time

Event

Flags

====

=====

=====

Jul 16 17:01:54.093 Create

0x0

--

Jul 16 17:01:54.093 FIB reg

0x2300

--

Jul 16 17:01:54.093 PD create

0x300

--

Jul 16 17:01:54.093 FIB ecd

0x200

-S

Jul 16 17:01:54.093 PD bind

0x10200

--

--------------------------------------------------------------------------------

Bridge port info: Base info: version=0xaabbcc1a, flags=0x0, type=12, reserved=0, address=0x308b25c690

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 651

Layer 2 Fast Reroute

EVPN Features

xcon_id=0xa0000007, bridge_id=0, shg_id=0, mac_limit=64000, mac_limit_action=0, bridge_ptr=0x8b263f68, shg_ptr=0x0, msti_ptr=0x8b2613a0, segment_ptr=0x8b25c570 segment_type=0x2, mtu=1500, msti=7, mvrp_seq_number=0, learn_key = 0 is_flooding_disabled=FALSE, is_mac_learning_disabled=FALSE, is_mac_port_down_flush_disabled=FALSE, mtu=1500, msti=7, aging_timeout=300, bridge_ptr=0x8b263f68, shg_ptr=0x0, segment_type=2, segment_ptr=0x8b25c570 MAC learning: enabled Software MAC learning: enabled MAC port down flush: enabled Flooding:
Broadcast & Multicast: enabled Unknown unicast: enabled MAC aging time: 300 s, Type: inactivity MAC limit: 64000, Action: none, Notification: syslog MAC limit reached: no, threshold: 75% MAC Secure: disabled, Logging: disabled, Accept-Shutdown: enabled DHCPv4 snooping: profile not known on this node, disabled Dynamic ARP Inspection: disabled, Logging: disabled IP Source Guard: disabled, Logging: disabled IGMP snooping profile: profile not known on this node MLD snooping profile: profile not known on this node Router guard disabled STP participating: disabled Storm control: disabled PD System Data: AF-LIF-IPv4: 0x00014003 AF-LIF-IPv6: 0x00014004 FRR-LIF: 0x00014002

Object: XCON

Base info: version=0xaabbcc13, flags=0xc110, type=2, reserved=0, address=0x308b25c448

Event Trace History [Total events: 14]

--------------------------------------------------------------------------------

Time

Event

Flags

====

=====

=====

Jul 23 08:59:48.126 Create

0x80000

--

Jul 23 08:59:48.126 Modify_RED

0x113

M-

Jul 23 08:59:48.126 PD create

0x100110

--

Jul 23 08:59:48.126 PD create

0x2110

- - (seg2)

Jul 23 08:59:48.126 PD bind

0x110

--

Jul 23 08:59:48.126 PD bind

0x2110

- - (seg2)

Jul 23 08:59:48.126 Modify_RED

0x113

M-

Jul 23 08:59:48.126 DHCP upd

0xc110

--

Jul 23 08:59:48.126 AIB upd

0xc110

--

Jul 23 08:59:48.126 PD modify

0x110

--

Jul 23 08:59:49.662 Modify

0x100110

--

Jul 23 08:59:49.662 Modify_RED

0x110

--

Jul 23 08:59:49.662 PD modify

0x110

--

Jul 23 08:59:49.662 DHCP upd

0xc110

--

--------------------------------------------------------------------------------

Modify Event History, oldest - 0x0 - 0x100110

RP/0/RP0/CPU0:shan-evpn-leaf1#

/* Check MH2 node FRR-label 28100 output */

Router:PE#show mpls forwarding labels 28100

Mon Dec 7 11:04:37.604 UTCv

Local Outgoing Prefix

Outgoing

Next Hop

Bytes

Label Label

or ID

Interface

Switched

------ ----------- ------------------ ------------ --------------- ------------

28100 Pop

PW(127.0.0.1:4254701977609) \

BE200.200 point2point

0

Associated Commands · convergence reroute

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 652

EVPN Features

EVPN Preferred Nexthop

· show evpn ethernet-segment · show evpn evi · show evpn evi ead private

EVPN Preferred Nexthop

Table 18: Feature History Table

Feature Name
EVPN Preferred Nexthop

Release Information
Release 7.3.1

Feature Description
With this feature, you can set an active and backup path, in a dual-homed mode based on the nexthop IP address, thereby allowing greater control over traffic patterns. If you are unable to use single-active mode due to hardware, topology, or technological limitations, this feature enables you to direct traffic to a specific remote PE.
This feature introduces the preferred nexthop command.

The EVPN Preferred Nexthop feature allows you to choose a primary nexthop and backup nexthop among the remote PE devices in dual-homed mode. By default, in an all-active dual-homed topology, traffic is load balanced using ECMP across both remote PE devices.
Configure the preferred-nexthop command when you want to direct traffic to one specific remote PE, and you are unable to use single-active mode due to hardware, topology, or technological limitations. The router allocates an internal label and will not allocate or consume ECMP FEC. The internal label enables fast switchover to backup PE when the primary link fails.
When remote PEs are operating in EVPN all-active mode, configure the preferred-nexthop command per EVI to choose an active and backup path based on the nexthop IP address. You can set the highest IP address as primary, which results in the lower IP address as a backup or vice versa.This feature provides you greater control over traffic patterns, that is to achieve symmetric traffic flow, and to allow support when a topology cannot support an all-active remote PE. Preferred nexthop is supported for native EVPN, EVPN VPWS, and EVPN PWHE. This feature supports a topology that has only two remote nexthops.

Configure EVPN Preferred Nexthop
Perform the following task to configure EVPN preferred nexthop.
Configuration Example This example shows the configuration of highest IP address as the preferred nexthop.

Router# configure Router(config)# evpn Router(config-evpn)# evi 100 Router(config-evpn-evi)# preferred-nexthop highest-ip Router(config-evpn-evi)# commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 653

Configure EVPN Preferred Nexthop

EVPN Features

This example shows the configuration of lowest IP address as the preferred nexthop.
Router# configure Router(config)# evpn Router(config-evpn)# evi 100 Router(config-evpn-evi)# preferred-nexthop lowest-ip Router(config-evpn-evi)# commit
This example shows the configuration of preferred nexthop using the modulo keyword.
Router# configure Router(config)# evpn Router(config-evpn)# evi 100 Router(config-evpn-evi)# preferred-nexthop modulo Router(config-evpn-evi)# commit
Running Configuration
This section shows the EVPN preferred nexthop running configuration.
/* Configuration of highest IP address as the preferred nexthop */ evpn
evi 100 preferred-nexthop highest-ip
!
/* Configuration of lowest IP address as the preferred nexthop */ evpn
evi 100 preferred-nexthop lowest-ip
!
/* Configuration of preferred nexthop using the modulo keyword */ evpn
evi 100 preferred-nexthop modulo

Verification
The output shows that the Highest IP is selected as primary (P) and the lowest IP as backup (B). The path selection is programmed in CEF.

Router#show evpn evi vpn-id 100 detail Mon Oct 26 14:00:51.459 EDT

VPN-ID

Encap

Bridge Domain

Type

---------- ---------- ---------------------------- -------------------

100

MPLS

bd100

EVPN

...

Preferred Nexthop Mode: Highest IP

Router#show evpn internal-label vpn-id 100 detail Mon Oct 26 14:01:46.665 EDT

VPN-ID

Encap Ethernet Segment Id

EtherTag

Label

---------- ------ --------------------------- ---------- --------

100

MPLS 0100.0000.acce.5500.0100 0

28120

Multi-paths resolved: TRUE (Remote all-active) (Preferred NH, Highest IP)

Multi-paths Internal label: 28120

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 654

EVPN Features

EVPN Access-Driven DF Election

EAD/ES

192.168.0.1

192.168.0.3

EAD/EVI

192.168.0.1

192.168.0.3

Summary pathlist:

0xffffffff (P) 192.168.0.3

0xffffffff (B) 192.168.0.1

0 0
28099 28099
28099 28099

Router#show cef mpls local-label 28120 eOS Mon Oct 26 14:04:10.851 EDT Label/EOS 28120/1, version 56, internal 0x1000001 0x30 (ptr 0x4d3ba2a8) [1], 0x0 (0x0), 0x208 (0x4e6502c0) Updated Oct 26 14:00:31.225 ...
via 192.168.0.3/32, 6 dependencies, recursive [flags 0x0] path-idx 0 NHID 0x0 [0x4d3bb58c 0x0], Internal 0x4e7890f8 recursion-via-/32 next hop 192.168.0.3/32 via 28103/0/21 local label 28120 next hop 27.27.27.3/32 Gi0/2/0/7 labels imposed {ImplNull 28099}
via 192.168.0.1/32, 6 dependencies, recursive, backup (Local-LFA) [flags 0x300] path-idx 1 NHID 0x0 [0x4d3bb454 0x0] recursion-via-/32 next hop 192.168.0.1/32 via 28105/0/21 local label 28120 next hop 26.26.26.1/32 Gi0/2/0/6 labels imposed {ImplNull 28099}

EVPN Access-Driven DF Election

Table 19: Feature History Table

Feature Name Release Information

EVPN Access-Driven DF Election

Release 7.3.1

Feature Description
This feature enables the access network to control EVPN PE devices by defining the backup path much before the event of a link failure, thereby reducing the traffic loss. The following keywords are added to the service-carving command:
· preference-based
· access-driven

This feature includes a preference-based and access-driven DF election mechanism.
In a preference-based DF election mechanism, the weight decides which PE is the DF at any given time. You can use this method for topologies where interface failures are revertive. However, for topologies where an access-PE is directly connected to the core PE, use the access-driven DF election mechanism.
When access PEs are configured in a non-revertive mode, the access-driven DF election mechanism allows the access-PE to choose which PE is the DF.
Consider an interface in an access network that connects PE nodes running Multichassis Link Aggregation Control Protocol (mLACP) and the EVPN PE in the core. When this interface fails, there may be a traffic loss for a longer duration. The delay in convergence is because the backup PE is not chosen before failure occurs.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 655

EVPN Access-Driven DF Election

EVPN Features

The EVPN Access-Driven DF Election feature allows the EVPN PE to preprogram a backup PE even before the failure of the interface. In the event of failure, the PE node will be aware of the next PE that will take over. Thereby reducing the convergence time. Use the preference df weight option for an Ethernet segment identifier (ESI) to set the backup path. By configuring the weight for a PE, you can control the DF election, thus define the backup path.
Restrictions · The feature is supported only in an EVPN-VPWS scenario where EVPN PEs are in the port-active mode. · The bundle attached to the ethernet segment must be configured with lacp mode active. LACP mode on is not supported.
Topology Let's understand the feature on how the backup path is precomputed with the following topology.
Figure 94: EVPN Access-Driven DF Election

· PE1, PE2, and PE3 are PEs for the EVPN core network. · aPE1, aPE2, and aPE3 are their access PE counterparts and configured in a multichassis link aggregation
group (MCLAG) redundancy group. Only one link among the three is active at any given time. aPE1, aPE2, and aPE3 are in a non-revertive mode. · PE1 is directly connected to aPE1, PE2 to aPE2, and PE3 to aPE3. EVPN VPWS is configured on the PE devices in the core. · All PE devices are attached to the same bundle and shares the same ethernet segment identifier.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 656

EVPN Features

EVPN Access-Driven DF Election

· PE1, PE2, and PE3 are configured with a weight of 100, 10, and 1 respectively. Traffic Flow In this example, consider a traffic flow from a host connected to PE4 to the host connected to the access PE.

· aPE1-PE1 interface state is up. The aPE2-PE2 and aPE3-PE3 remains in OOS state. · The traffic is sent from PE4 to aPE1 through PE1 as the PE1 is configured with a highest weight of 100. · The highest weight is modified by adding 32768 to the configured weight. For example, the weight of
PE1 is 100, 32768 is added to this weight. Hence, 32868 is advertised to the peer PEs. · The highest weight is advertised as P-bit, which is primary. The next highest weight is advertised as
B-bit, which is secondary. The lowest weight as non-DF (NDF). · When the EVPN PE devcies are of same weight, the traffic is sent based on the IP address. Lowest IP
address takes the precedence. · Only one PE indicates that the state of the bundle for the Ethernet Segment is up. For all other PEs, the
Ethernet Segment is standby and the bundle is in OOS state. · All PE devices are aware of the associated next hop and weights of their peers.
Failure and Recovery Scenarios The weights configured on the EVPN PE devices cascade in the same order as the protection mechanism on the access side PEs:
· During the network failure, the redundancy ordering for the access PEs is aPE1, aPE2, aPE3. · The weights of PE1 through PE3 are weight of PE1 > weight of PE2 > weight of PE3.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 657

EVPN Access-Driven DF Election

EVPN Features

· If this ordering is not satisfied, the network will eventually converge, but it will not be as efficient as if the weights are ordered correctly.
Scenario - 1 Consider a scenario where the aPE1-PE1 interface is down.

When aPE1-PE1 interface is down, the PE1 withdraws the EAD/ES route, and the traffic is sent through the backup path, which is PE2. The aPE2-PE2 becomes the primary with a weight of 32778, and aPE3-PE3 becomes the backup. The aPE2-PE2 advertises P-bit to PE4. aPE3-PE3 advertises the B-bit to PE4.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 658

EVPN Features

EVPN Access-Driven DF Election

Scenario - 2 Consider a scenario where aPE2-PE2 interface is also down.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 659

EVPN Access-Driven DF Election

EVPN Features

When the aPE2-PE2 interface is also down, the traffic is sent through aPE3-PE3 link. aPE3-PE3 becomes the primary path with a weight of 32769.

Scenario - 3
When the aPE2-PE2 interface comes up, the aPE3-PE3 link still remains the primary path. aPE2-PE2 interface becomes the backup path with a weight of 10.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 660

EVPN Features

Configure EVPN Access-Driven DF Election

Scenario - 4
When the aPE1-PE1 interface comes up, the aPE3-PE3 link remains the primary path with a weight of 32769. aPE1-PE1 interface becomes the backup path with a weight of 100. The aPE2-PE2 interface becomes NDF with a weight of 10.

Configure EVPN Access-Driven DF Election
Perform the following tasks to configure EVPN Access-Driven DF Election feature: · Configure EVPN access-driven DF election on PE1, PE2, and PE3 · Configure LACP on aPE1, aPE2, and aPE3 · Configure EVPN-VPWS for PE1, PE2, and PE3 See the EVPN Virtual Private Wire Service (VPWS) chapter on how to configure EVPN-VPWS.
Configuration Example · All PE devices are configured with different weights. PE1, PE2, and PE3 are configured with a weight of 100, 10, and 1 respectively. · The bundle attached to the ethernet segment is configured with lacp mode active. · EVPN VPWS is configured on the PE devices.
/* Configure EVPN access-driven DF election on PE1, PE2, and PE3 */ /* PE1 Configuration */ Router#configure
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 661

Configure EVPN Access-Driven DF Election

EVPN Features

Router(config)#evpn Router(config-evpn)#interface Bundle-Ether1 Router(config-evpn-ac)#ethernet-segment Router(config-evpn-ac-es)#identifier type 0 01.11.00.00.00.00.00.00.01 Router(config-evpn-ac-es)#load-balancing-mode port-active Router(config-evpn-ac-es)#service-carving preference-based Router(config-evpn-ac-es-sc-pref)#weight 100 Router(config-evpn-ac-es-sc-pref)#access-driven Router(config-evpn-ac-es-sc-pref)#commit
/* PE2 Configuration */ Router#configure Router(config)#evpn Router(config-evpn)#interface Bundle-Ether1 Router(config-evpn-ac)#ethernet-segment Router(config-evpn-ac-es)#identifier type 0 01.11.00.00.00.00.00.00.01 Router(config-evpn-ac-es)#load-balancing-mode port-active Router(config-evpn-ac-es)#service-carving preference-based Router(config-evpn-ac-es-sc-pref)#weight 10 Router(config-evpn-ac-es-sc-pref)#access-driven Router(config-evpn-ac-es-sc-pref)#commit
/* PE3 Configuration */ Router#configure Router(config)#evpn Router(config-evpn)#interface Bundle-Ether1 Router(config-evpn-ac)#ethernet-segment Router(config-evpn-ac-es)#identifier type 0 01.11.00.00.00.00.00.00.01 Router(config-evpn-ac-es)#load-balancing-mode port-active Router(config-evpn-ac-es)#service-carving preference-based Router(config-evpn-ac-es-sc-pref)#weight 1 Router(config-evpn-ac-es-sc-pref)#access-driven Router(config-evpn-ac-es-sc-pref)#commit
Configure LACP on aPE1, aPE2, and aPE3
/* aPE1 Configuration */ Router#configure Router(config)#interface Bundle-Ether 1 Router(config-if)#lacp non-revertive Router(config-if)#bundle maximum-active links 1 hot-standby Router(config-if)#exit Router(config-if)#interface GigabitEthernet0/0/0/40 Router(config-if)bundle id 10 mode active Router(config-if)bundle port-priority 10000 Router(config-if)description Connection to PE1 Router(config-if)commit
/* aPE2 Configuration */ Router#configure Router(config)#interface Bundle-Ether 1 Router(config-if)#lacp non-revertive Router(config-if)#bundle maximum-active links 1 hot-standby Router(config-if)#exit Router(config-if)#interface GigabitEthernet0/0/0/39 Router(config-if)bundle id 10 mode active Router(config-if)bundle port-priority 20000 Router(config-if)description Connection to PE2 Router(config-if)commit
/* aPE3 Configuration */

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 662

EVPN Features

Configure EVPN Access-Driven DF Election

Router#configure Router(config)#interface Bundle-Ether 1 Router(config-if)#lacp non-revertive Router(config-if)#bundle maximum-active links 1 hot-standby Router(config-if)#exit Router(config-if)#interface GigabitEthernet0/0/0/38 Router(config-if)bundle id 10 mode active Router(config-if)bundle port-priority 30000 Router(config-if)description Connection to PE3 Router(config-if)commit
Running Configuration
This section shows the running configuration of EVPN Access-Driven DF Election feature.
/* PE1 Configuration */ evpn
interface Bundle-Ether 1 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode port-active service-carving preference-based weight 100 access-driven !
!
/* PE2 Configuration */ evpn
interface Bundle-Ether 1 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode port-active service-carving preference-based weight 10 access-driven !
!
/* PE3 Configuration */ evpn
interface Bundle-Ether 1 ethernet-segment identifier type 0 01.11.00.00.00.00.00.00.01 load-balancing-mode port-active service-carving preference-based weight 1 access-driven !
!
/* aPE1 Configuration */
interface Bundle-Ether 1 lacp non-revertive bundle maximum-active links 1 hot-standby
interface GigabitEthernet0/0/0/40 bundle id 10 mode active bundle port-priority 10000 description Connection to PE1
!
/* aPE2 Configuration */

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 663

Configure EVPN Access-Driven DF Election

EVPN Features

interface Bundle-Ether 1 lacp non-revertive bundle maximum-active links 1 hot-standby
interface GigabitEthernet0/0/0/39 bundle id 10 mode active bundle port-priority 20000 description Connection to PE2
!
/* aPE3 Configuration */
interface Bundle-Ether 1 lacp non-revertive bundle maximum-active links 1 hot-standby
interface GigabitEthernet0/0/0/40 bundle id 10 mode active bundle port-priority 30000 description Connection to PE3
!

Verification Verify that you have configured the EVPN Access-Driven DF Election feature successfully.

Router#show evpn ethernet-segment detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0001.0001.0001.1b01.001b BE1

192.168.0.1

192.168.0.3

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Bundle-Ether1

Interface MAC : 02ef.af8d.8008

IfHandle

: 0x00004190

State

: Up

Redundancy

: Active

ESI type

:0

Value

: 01.0001.0001.1b01.001b

ES Import RT

: 0100.0100.011b (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH

Configured

: Port-Active

Service Carving : Preferential

Multicast

: Disabled

Convergence

:

Peering Details : 2 Nexthops

192.168.0.1 [PREF:P:d6ce:T] >> Weight in hexadecimal

192.168.0.3 [PREF:P:457]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

Service Carving Results:

Forwarders

: 24

Elected

:6

Not Elected : 0

EVPN-VPWS Service Carving Results:

Primary

: 18

Backup

:0

Non-DF

:0

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 664

EVPN Features

Hierarchical EVPN Access Pseudowire

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

Local SHG label : 28384

Remote SHG labels : 0

Access signal mode: Bundle OOS (Default)

Associated Commands · service-carving · show evpn ethernet-segment

Hierarchical EVPN Access Pseudowire

Table 20: Feature History Table

Feature Name

Release

Feature Description

Information

Hierarchical EVPN Release 7.4.1 Access Pseudowire

This feature enables you to configure EVPN VPWS in the access node under the same bridge domain as EVPN in the core and helps to build a PW to the nearest high-end PE that stitches those access circuits using EVPN. Therefore, the access nodes can leverage the benefits of EVPN.
This feature also allows you to reduce the number of pseudowires (PWs) between the network provider edge (N-PE) devices by replacing PE devices with user provider edge (U-PE) and network provider edge (N-PE) devices. This feature prevents signaling overhead and packet replication.

A standard VPN configuration comprises of CE devices and PE devices. With this feature, each PE device is replaced with a user provider edge (U-PE) and network provider edge (N-PE) devices. U-PE devices communicate with the CE devices and N-PE devices on the access side, and N-PE devices communicate with other N-PE devices on the core.
The Hierarchical EVPN Access Pseudowire feature allows you to reduce the number of pseudowires (PWs) between the network provider edge (N-PE) devices. The user provider edge (U-PE) device connects to the N-PE device using EVPN access pseudowire (PW) for each VPN instance. Each CE device is connected to a U-PE device through an attachment circuit.

Hierarchical EVPN Access Pseudowire Topology

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 665

Configure Hierarchical EVPN Access Pseudowire

EVPN Features

In this topology, a user provider edge (U-PE1) device is connected to the CE1 through an attachment circuit. The U-PE1 device transports the CE1 traffic over an EVPN access PW to a network provider edge (N-PE1) device. The N-PE1 is connected with other N-PE2 in an EVPN core. On the N-PE1, the access PW coming from the U-PE1 is much like an AC. The U-PE is not part of the core with the other N-PEs. The N-PE forwards traffic from that access PW to the core PWs that are part of the EVPN core.
Configure Hierarchical EVPN Access Pseudowire
Perform the following task to configure Hierarchical EVPN Access Pseudowire feature on U-PEs and N-PEs.
Configuration Example
/* Configure U-PE1 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group XG1 Router(config-l2vpn-xc)# p2p P1 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/0/31 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 4 target 33 source 33 Router(config-l2vpn-xc-p2p-pw)# commit
/* Configure N-PE1 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group evpn Router(config-l2vpn-bg)# bridge-domain evpn1 Router(config-l2vpn-bg-bd)# neighbor evpn evi 4 target 33 Router(config-l2vpn-bg-bd)# evi 1 Router(config-l2vpn-bg-bd-evi)# commit
Running Configuration
This section shows the Hierarchical EVPN Access Pseudowire running configuration.
/* U-PE1 Configuration */ l2vpn
xconnect group XG1 p2p P1 interface TenGigE0/0/0/31 l2transport neighbor evpn evi 4 target 33 source 33 !
! /* N-PE1 Configuration */ l2vpn bridge group evpn
bridge-domain evpn1 neighbor evpn evi 4 target 33 evi 1 !
! ! !
Verification
Verify the EVPN state, and the list of access PWs. The following is the sample output on N-PE1:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 666

EVPN Features

Inter-AS EVPN Option B

Router:N-PE1# show l2vpn bridge-domain bd-name evpn1 Wed Jun 16 09:22:30.328 EDT Legend: pp = Partially Programmed. Bridge group: evpn, bridge-domain: evpn1, id: 1, state: up, ShgId: 0, MSTi: 0
Aging: 300 s, MAC limit: 4000, Action: none, Notification: syslog Filter MAC addresses: 0 ACs: 0 (0 up), VFIs: 0, PWs: 1 (1 up), PBBs: 0 (0 up), VNIs: 0 (0 up) List of EVPNs:
EVPN, state: up List of ACs: List of Access PWs:
EVPN 4,33,192.168.0.4, state: up, Static MAC addresses: 0 List of VFIs: List of Access VFIs:

Inter-AS EVPN Option B

Table 21: Feature History Table

Feature Name Release Information
Inter-AS EVPN Release 7.4.1 Option B

Feature Description
This feature enables the service providers to establish an end-to-end EVPN service over an MPLS backbone that spans multiple autonomous systems (AS). Inter-AS EVPN Option B allows the autonomous system boundary routers (ASBRs) to exchange L2VPN EVPN label routes between AS without the need for dedicated interfaces. This feature helps you to increase the number of services terminated on PE devices without requiring a dedicated number of interfaces on ASBR nodes.
This feature introduces the option-b-asbr-only command.

The Inter-AS Option B for EVPN feature allows the service providers to offer the L2VPN EVPN service across service provider boundaries similar to L3VPN. Typically, service providers are in charge of AS and offers L2VPN EVPN services to its customers. SP customers control access devices and would want pure L2 or a combination of L2 and L3 unicast or multicast services with single or dual-homing capabilities. This is achieved by setting up MPLS tunnels over the SP core similar to L3VPN.
Prior to this release, L2VPN EVPN routes could not be exchanged across AS boundaries because ASBRs do not assign a local label to L2VPN EVPN routes. Hence L2VPN EVPN routes were not advertised to other ASBRs.
Inter-AS EVPN Option B allows L2VPN EVPN routes to be exchanged across AS boundaries because the ASBRs allocate the local label for L2VPN EVPN route types, and also perform the rewrite action. To provide an end-to-end L2VPN EVPN service across AS boundaries, you must combine the EVPN Label Switched Path (LSP) together, from PE1 to ASBR1, ASBR1 to ASBR2, and from ASBR2 to PE3.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 667

Inter-AS EVPN Option B Figure 95: Inter-AS EVPN Option B

EVPN Features

In this topology: · The L2VPN EVPN session between ASBRs is used to exchange the L2VPN EVPN prefixes. BGP session is used to exchange L2VPN EVPN routes between PEs and ASBRs and between ASBRs. · A labeled switched path must exist between the PEs or each carrier. Exchange of labels is accomplished using BGP on the Inter-AS link. · These are the three LSPs where next-hop changes: · PE1 to ASBR1 · ASBR1 to ASBR2 · ASBR2 to the PE3
· End-to-end LSPs using three hops make QoS easier to manage. · The ASBRs are configured to change the next-hop when sending L2VPN EVPN NLRIs to the eBGP
neighbors. Therefore, the ASBRs must allocate a new label when they forward the NLRI to the eBGP neighbors. · ASBR assigns a local label to L2VPN EVPN routes and L2VPN EVPN routes are advertised to other ASBR. · ASBRs must have all of the L2VPN EVPN prefixes, which requires them to be as resource intensive as route reflectors.
Restrictions · Support EVPN Type-1, Type-2 (MAC only, MAC-IP with only MAC label), Type-3, and Type-5 routes. · Type-2 MAC-IP routes with two labels, MAC label, and IP label are not supported. · This feature does not support dual-home mode.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 668

EVPN Features

Configure Inter-AS EVPN Option B

Configure Inter-AS EVPN Option B
Perform the following tasks to configure Inter-AS EVPN Option B:
· Configure EVPN-VPWS
· Configure native EVPN
· Configure EVPN IRB
· Configure BGP
Configuration Example
Configure EVPN-VPWS on PE1.
/* Type-1 Route */ Router# configure Router(config)# interface TenGigE0/0/0/9.33 l2transport Router(config-subif)# encapsulation dot1q 33 Router(config-subif)# exit Router(config)# l2vpn Router(config-l2vpn)# xconnect group xconnect-group Router(config-l2vpn-xc)# p2p p2p_33 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/0/9.33 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 4033 target 333 >> Exchange target and source
on remote PE Router(config-l2vpn-xc-p2p-pw)# exit Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# evi 4033 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target 4033:4033 Router(config-evpn-instance-bgp)# commit
Configure native EVPN on PE1.
/* Type-2 MAC only Route */ Router# configure Router(config)# interface TenGigE0/0/0/9.22 l2transport Router(config-subif)# encapsulation dot1q 22 Router(config-subif)# exit Router(config)# l2vpn Router(config-l2vpn)# bridge group evpn-group Router(config-l2vpn-bg)# bridge-domain evpn_3022 Router(config-l2vpn-bg-bd)# interface TenGigE0/0/0/9.22 Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd)# evi 3022 Router(config-l2vpn-bg-bd-evi)# exit Router(config-l2vpn-bg-bd)# exit Router(config-l2vpn-bg)# exit Router(config-l2vpn)# exit Router(config)# exit Router(config)# evpn Router(config-evpn)# evi 3022 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target 3022:3022 Router(config-evpn-instance-bgp)# exit Router(config-evpn-instance)# advertise-ma >> advertise mac to other PEs using EVPN type-2

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 669

Configure Inter-AS EVPN Option B

EVPN Features

routes Router(config-evpn-instance-mac)# commit
Configure EVPN IRB on PE1.

/* Type-2 MAC-IP Route with only MAC Layer Label */ Router# configure Router(config)# interface TenGigE0/0/0/9.12 l2transport Router(config-subif)# encapsulation dot1q 12 Router(config-subif)# rewrite ingress tag pop 1 symmetric Router(config-subif)# exit Router(config)# interface BVI12 > BVI under default vrf generate type-2
only MAC layer label Router(config-if)# host-routing Router(config-if)# ipv4 address 10.0.0.1 255.0.0.0 Router(config-if)# ipv6 address 2020:c::1/112 Router(config-if)# mac-address 20.12.1 Router(config-if)# exit Router(config)# l2vpn Router(config-l2vpn)# bridge group evpn-irb-group Router(config-l2vpn-bg)# bridge-domain evpn_2012 Router(config-l2vpn-bg-bd)# interface TenGigE0/0/0/9.12 Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd)# routed interface BVI12 Router(config-l2vpn-bg-bd-bvi)# split-horizon group core Router(config-l2vpn-bg-bd-bvi)# exit Router(config-l2vpn-bg-bd-bvi)# evi 2012 Router(config-l2vpn-bg-bd-evi)# exit Router(config-l2vpn-bg-bd)# exit Router(config-l2vpn-bg)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# evi 2012 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target 2012:2012 Router(config-evpn-instance-bgp)# commit

mac-ip route with

Configure BGP on PE1.

Router# configure Router(config)# router bgp 1 Router(config-bgp)# bgp router-id 10.0.0.2 Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# neighbor 172.16.0.1 Router(config-bgp-nbr)# remote-as 1 Router(config-bgp-nbr)# update-source Loopback0 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# route-policy set_community out Router(config-bgp-nbr-af)# advertise vpnv4 unicast Router(config-bgp-nbr-af)# advertise vpnv6 unicast >> advertise IP prefixes as type-5 routes
under l2vpn evpn address family Router(config-bgp-nbr-af)# vrf cust-1 Router(config-bgp-vrf)# rd 1:1 Router(config-bgp-vrf)# address-family ipv4 unicast Router(config-bgp-vrf-af)# label mode per-vrf Router(config-bgp-vrf-af)# exit Router(config-bgp-vrf)# address-family ipv6 unicast Router(config-bgp-vrf-af)# label mode per-vrf Router(config-bgp-vrf-af)# commit
Configure BGP on ASRBR.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 670

EVPN Features

Configure Inter-AS EVPN Option B

Router# configure Router(config)# router bgp 1 Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# label mode per-nexthop-received-label Router(config-bgp-af)# option-b-asbr-only > Enables Inter-AS EVPN option B Router(config-bgp-af)# retain route-target all Router(config-bgp-af)# exit Router(config-bgp)# neighbor 192.0.2.1 Router(config-bgp-nbr)# remote-as 2 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# route-policy pass-all out Router(config-bgp-nbr-af)# exit Router(config-bgp-nbr)# exit Router(config-bgp)# neighbor 172.16.0.1 Router(config-bgp-nbr)# remote-as 1 Router(config-bgp-nbr)# update-source Loopback0 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# route-policy pass-all out Router(config-bgp-nbr-af)# next-hop-self Router(config-bgp-nbr-af)# commit
Runninng Configuration
This section shows the Inter-AS EVPN Option B running configuration.
/* EVPN-VPWS Configuration on PE1 */ interface TenGigE0/0/0/9.33 l2transport
encapsulation dot1q 33
l2vpn xconnect group xconnect-group p2p p2p_33 interface TenGigE0/0/0/9.33 neighbor evpn evi 4033 target 333 source 133
evpn evi 4033 bgp route-target 4033:4033
! /* Native EVPN Configuration */ interface TenGigE0/0/0/9.22 l2transport
encapsulation dot1q 22
l2vpn bridge group evpn-group bridge-domain evpn_3022 interface TenGigE0/0/0/9.22 ! evi 3022
evpn evi 3022 bgp route-target 3022:3022 ! advertise-mac
! /* EVPN IRB Configuration on PE1 */
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 671

Configure Inter-AS EVPN Option B
interface TenGigE0/0/0/9.12 l2transport encapsulation dot1q 12 rewrite ingress tag pop 1 symmetric
interface BVI12 host-routing ipv4 address 10.0.0.1 255.0.0.0 ipv6 address 2020:c::1/112 mac-address 20.12.1
l2vpn bridge group evpn-irb-group bridge-domain evpn_2012 interface TenGigE0/0/0/9.12 ! routed interface BVI12 split-horizon group core ! evi 2012
evpn evi 2012 bgp route-target 2012:2012
! /* BGP Configuration on PE1 */ router bgp 1
bgp router-id 10.0.0.2 address-family l2vpn evpn
neighbor 172.16.0.1 remote-as 1 update-source Loopback0 address-family l2vpn evpn route-policy pass-all in route-policy set_community out advertise vpnv4 unicast advertise vpnv6 unicast vrf cust-1 rd 1:1 address-family ipv4 unicast label mode per-vrf ! address-family ipv6 unicast label mode per-vrf !
! /* BGP Configuration on ASBR */ router bgp 1
address-family l2vpn evpn label mode per-nexthop-received-label option-b-asbr-only retain route-target all
neighbor 192.0.2.1 remote-as 2 address-family l2vpn evpn route-policy pass-all in route-policy pass-all out
neighbor 172.16.0.1 remote-as 1 update-source Loopback0 address-family l2vpn evpn

EVPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 672

EVPN Features

Configure Inter-AS EVPN Option B

route-policy pass-all in route-policy pass-all out next-hop-self
Verification
Verify the Inter-AS EVPN Option B configuration.
Router:PE1# show bgp l2vpn evpn rd 10.0.0.2:4033 [1][0000.0000.0000.0000.0000][133]/120 > Type - 1 route Last Modified: Feb 3 23:05:09.595 for 00:02:35 Paths: (1 available, best #1)
Advertised to peers (in unique update groups): 172.16.0.1
Path #1: Received by speaker 0 Advertised to peers (in unique update groups):
172.16.0.1 Local
0.0.0.0 from 0.0.0.0 (10.0.0.2) Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate,
rib-install Received Path ID 0, Local Path ID 1, version 153095 Extended community: EVPN L2 ATTRS:0x06:1504 RT:4033:4033
Router:PE1# show bgp l2vpn evpn rd 10.0.0.2:3022 [2][0][48][0011.0100.00c9][0]/104 Paths: (1 available, best #1)
Advertised to peers (in unique update groups): 172.16.0.1
Path #1: Received by speaker 0 Advertised to peers (in unique update groups):
172.16.0.1 Local
0.0.0.0 from 0.0.0.0 (10.0.0.2) Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate,
rib-install Received Path ID 0, Local Path ID 1, version 153097 Extended community: SoO:10.0.0.2:3022 0x060e:0000.0000.0016 RT:3022:3022 EVPN ESI: 0000.0000.0000.0000.0000

Note EVPN Option B supports Type-2 MAC-IP routes with only MAC layer labels; Type-2 MAC-IP routes with two labels, MAC layer labels, and IP layer labels are not supported.
BGP receives L2VPN EVPN routes from EVPN.

Router:PE1# show bgp l2vpn evpn bridge-domain evpn_2012

...

Route Distinguisher: 10.0.0.2:2012 (default for vrf evpn_2012)

*> [2][0][48][0011.0100.0065][32][20.0.12.11]/136 >> Type-2 MAC-IP routes

0.0.0.0

0i

*> [2][0][48][0011.0100.0065][128][2020:c::11]/232

0.0.0.0

0i

*> [2][0][48][0011.0100.0065][128][fe80::211:1ff:fe00:65]/232

0.0.0.0

0i

*>i[2][0][48][0012.0100.0065][32][20.0.12.51]/136

2.2.2.2

100

0I

*>i[2][0][48][0013.0100.0065][32][20.0.12.101]/136

3.3.3.3

100

02I

*> [3][0][32][10.0.0.2]/80 >> Type-3 Inclusive Multicast Ethernet Tag (IMET) route

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 673

Configure Inter-AS EVPN Option B

EVPN Features

0.0.0.0 *>i[3][0][32][2.2.2.2]/80
2.2.2.2 *>i[3][0][32][5.5.5.5]/80
3.3.3.3

0i

100

0i

100

02i

Router:PE1# show evpn evi vpn-id 2012 detail

VPN-ID

Encap

Bridge Domain

Type

---------- ---------- ---------------------------- -------------------

2012

MPLS

evpn_2012

EVPN

Stitching: Regular

Unicast Label : 26048

Multicast Label: 24000

...

BVI Subnet Withheld: ipv4 No, ipv6 No

RD Config: none

RD Auto : (auto) 10.0.0.2:2012

RT Auto : 1:2012

Route Targets in Use

Type

------------------------------ ---------------------

2012:2012

Both

...

If PE is aware of the destination MAC address, the PE uses unicast label for forwarding traffic, and if PE is not aware of the destination MAC route, multicast label is used for forwarding traffic.
Verify the ASBR BGP configuration.

/* Route Type-2 Verification */ Router:ASBR-1# show bgp l2vpn evpn rd 10.0.0.2:2012 [2][0][48][0011.0100.0065][32][20.0.12.11]/136 ...
Local Label: 25018 Paths: (1 available, best #1) Path #1: Received by speaker 0
Advertised to peers (in unique update groups): 192.0.2.1
Local 10.0.0.2 (metric 20) from 172.16.0.1 (10.0.0.2) Received Label 26048 Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate,
not-in-vrf Received Path ID 1, Local Path ID 1, version 6705962 Community: internet 1:1 2:2 3:3 4:4 5:5 6:6 7:7 8:8 9:9 Large Community: 0:0:0 1:1:1 2:2:2 3:3:3 4:4:4 5:5:5 6:6:6 7:7:7 8:8:8 9:9:9 Extended community: Flags 0x14: SoO:10.0.0.2:2012 0x060e:0000.0000.000c RT:2012:2012
Originator: 10.0.0.2, Cluster list: 172.16.0.1 EVPN ESI: 0000.0000.0000.0000.0000
/* Route Type-3 Verification */ Router:ASBR-1# show bgp l2vpn evpn rd 10.0.0.2:2012 [3][0][32][10.0.0.2]/80 ...
Local Label: 201762 Paths: (1 available, best #1)
Advertised to peers (in unique update groups): 192.0.2.1
Path #1: Received by speaker 0 Advertised to peers (in unique update groups):
192.0.2.1 Local

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 674

EVPN Features

EVPN IGMPv2 Selective Multicast

10.0.0.2 (metric 20) from 172.16.0.1 (10.0.0.2) Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate,
not-in-vrf Received Path ID 1, Local Path ID 1, version 893 Community: internet 1:1 2:2 3:3 4:4 5:5 6:6 7:7 8:8 9:9 Large Community: 0:0:0 1:1:1 2:2:2 3:3:3 4:4:4 5:5:5 6:6:6 7:7:7 8:8:8 9:9:9 Extended community: RT:2012:2012 Originator: 10.0.0.2, Cluster list: 172.16.0.1 PMSI: flags 0x00, type 6, label 24000, ID 0x01010101

EVPN IGMPv2 Selective Multicast

Table 22: Feature History Table

Feature Name

Release Information

EVPN IGMPv2 Selective Multicast Release 7.5.1

Feature Description
Using this feature, you can now forward multicast traffic over the EVPN network only to the receivers in the multicast groups. This targeted and selective forwarding helps eliminate unnecessary flooding of traffic. This feature also helps in optimal forwarding and efficient bandwidth utilization.

Multicast traffic is getting forwarded to all PE devices participating in a given EVPN instance, regardless of presence of interested receivers. Without BUM suppression, BUM traffic is flooded to all PE devices. This leads to very inefficient use of inter-PE bandwidth as the volume of traffic increases. For example, if multicast is used for live video feed distribution.
This feature allows the anycast gateway routers to forward multicast traffic over EVPN network to only to the receivers in the multicast groups using selective multicast.
With this feature, leaf sends the IGMP reports as BGP EVPN Route Type 6 and centralized gateway (CGW) learns it. When traffic is received over MVPN from the external source, centralized gateway sends the traffic only to interested receiver. Centralized gateway also floods the traffic to leaf which doesn't support RT-6.
You can enable this feature using igmp-snooping command under evpn-evi-proxy mode.
CGW supports only MVPN session profile 14 to remote PE.

Note This feature does not support IPv6 multicast and SSM.
Topology PE1-CGW1 and PE2-CGW2 are centralized gateways. Leaf 1 and Leaf 2 are multihomed. Leaf 3 is single-homed. Receivers are connected to leaf and the mulicast source is external, and are connected to centralized gateways, which is configured with mPVN profile14.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 675

EVPN IGMPv2 Selective Multicast

EVPN Features

IGMP reports from the leaf are sent as BGP EVPN Route Type 6 and CGW learns it. When traffic is received over mVPN from the external source, CGW sends the traffic only to leafs which has the interested receiver.
CGW also floods the traffic to leaf which doesn't support RT-6.
Figure 96: Topology

Configuration for EVPN IGMPv2 Selective Multicast Before your enable this feature, perform the following tasks on all nodes:
· Configure BGP · Configure MPLS · Enable multicast · BVI configuration The following is the BGP configuration:
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 676

EVPN Features

EVPN IGMPv2 Selective Multicast

router bgp 1 nsr bgp router-id 1.1.1.21 bgp graceful-restart address-family vpnv4 unicast ! address-family vpnv6 unicast ! address-family ipv4 mvpn ! address-family l2vpn evpn ! neighbor 1.1.1.11 remote-as 1 update-source Loopback0 address-family l2vpn evpn ! ! neighbor 1.1.1.12 remote-as 1 update-source Loopback0 address-family l2vpn evpn ! !
vrf cgw rd auto address-family ipv4 unicast redistribute connected ! address-family ipv6 unicast redistribute connected ! address-family ipv4 mvpn !
! vrf vrf10
rd auto address-family ipv4 unicast
redistribute connected ! address-family ipv6 unicast
redistribute connected ! address-family ipv4 mvpn ! !
The following is the MPLS configuration:
mpls ldp graceful-restart mldp address-family ipv4 ! ! router-id 1.1.1.21 interface Bundle-Ether22 ! interface Bundle-Ether222 ! interface Bundle-Ether2222 ! interface HundredGigE0/0/0/1 !
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 677

EVPN IGMPv2 Selective Multicast

EVPN Features

interface HundredGigE0/0/0/3 ! interface HundredGigE0/0/0/5 !
l2vpn bridge group bg bridge-domain cgw10 igmp snooping profile snoop_profile1 access-evi 10 routed interface BVI10 ! ! bridge-domain cgw11 igmp snooping profile snoop_profile1 access-evi 11 routed interface BVI11 !
The following is the multicast configuration:
multicast-routing address-family ipv4 mdt source Loopback0 interface all enable bgp auto-discovery mldp ! vrf cgw address-family ipv4 mdt source Loopback0 rate-per-route interface all enable accounting per-prefix bgp auto-discovery mldp ! mdt partitioned mldp ipv4 p2mp mdt data mldp 1000 ! ! vrf vrf10 address-family ipv4 mdt source Loopback0 rate-per-route interface all enable accounting per-prefix bgp auto-discovery mldp ! mdt partitioned mldp ipv4 p2mp mdt data mldp 1000 !
router pim vrf cgw address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp ! rp-address 1.1.1.113 ! ! vrf vrf10 address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 678

EVPN Features

EVPN IGMPv2 Selective Multicast

! rp-address 1.1.1.114 ! ! vrf vrf11 address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp ! rp-address 1.1.1.115 ! ! vrf vrf12 address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp ! rp-address 1.1.1.116 ! ! vrf vrf13 address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp ! rp-address 1.1.1.117 ! ! vrf vrf14 address-family ipv4 rpf topology route-policy rpf-profile14 mdt c-multicast-routing bgp ! rp-address 1.1.1.118 ! !
The following is the BVI configuration:
interface BVI10 vrf cgw ipv4 address 10.10.1.1 255.255.0.0 ipv6 address 10:10::1/64 mac-address 11.d1.d2
! interface BVI11
vrf cgw ipv4 address 10.11.1.1 255.255.0.0 ipv6 address 10:11::1/64 mac-address 0.d3.d4 !
Configuration for Centralized Gateway
L2VPN and EVPN configuration:
The following is the configuration of centralized gateway routers:
Router#configure Router(config)#l2vpn Router(config-l2vpn)#bridge group bg Router(config-l2vpn-bg)#bridge-domain cgw10

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 679

EVPN IGMPv2 Selective Multicast

EVPN Features

Router(config-l2vpn-bg-bd)#igmp snooping profile snoop_profile1 Router(config-l2vpn-bg-bd)#access-evi 10 Router(config-l2vpn-bg-bd)#routed interface BVI10 Router(config-l2vpn-bg-bd-bvi)#exit Router(config-l2vpn-bg-bd)#exit
Router(config-l2vpn-bg)#bridge-domain cgw11 Router(config-l2vpn-bg-bd)#igmp snooping profile snoop_profile1 Router(config-l2vpn-bg-bd)#access-evi 11 Router(config-l2vpn-bg-bd)#routed interface BVI1 Router(config-l2vpn-bg-bd-bvi)#
Router(config)#evpn Router(config-evpn)# evi 10 Router(config-evpn-instance)#advertise-mac Router(config-evpn-instance-mac)#bvi-mac Router(config-evpn-instance-mac)#proxy Router(config-evpn-instance-proxy)# igmp-snooping Router(config-evpn-instance-proxy)#exit Router(config-evpn-instance)#exit
Router(config-evpn)#evi 11 Router(config-evpn-instance)#advertise-mac Router(config-evpn-instance-mac)#proxy Router(config-evpn-instance-proxy)#igmp-snooping Router(config-evpn-instance-proxy)#
IGMP snooping configuration:
Router(config)#igmp snooping profile snoop_profile1 Router(config-igmp-snooping-profile)#
Configuration for Leafs
The following is the configuration of Leaf routers
Router(config)#l2vpn Router(config-l2vpn)#bridge group bg Router(config-l2vpn-bg)#bridge-domain cgw10 Router(config-l2vpn-bg-bd)#multicast-source ipv4 Router(config-l2vpn-bg-bd)#igmp snooping profile snoop_profile1 Router(config-l2vpn-bg-bd)#interface TenGigE0/0/0/0/0.10 Router(config-l2vpn-bg-bd-ac)#exit Router(config-l2vpn-bg-bd)#exit
Router(config-l2vpn)#evpn Router(config-evpn)#evi 10 Router(config-evpn-instance)#advertise-mac Router(config-evpn-instance-mac)#exit Router(config-evpn-instance-proxy)#igmp-snooping
The following is the IGMP snooping configuration for leaf router:
Router(config)#igmp snooping profile snoop_profile1 Router(config-igmp-snooping-profile)#system-ip-address 1.1.1.11 Router(config-igmp-snooping-profile)#internal-querier Router(config-igmp-snooping-profile)#internal-querier version 3 Router(config-igmp-snooping-profile)#internal-querier query-interval 60
The followung the route-policy configuration:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 680

EVPN Features

EVPN IGMPv2 Selective Multicast

route-policy policy-discard-smet-routes if evpn-route-type is 6 then drop else pass endif
end-policy !

Verification
Router<PE1-CGW1># show igmp snooping port group 226.43.1.3

Key: GM=Group Filter Mode, PM=Port Filter Mode Flags Key: S=Static, D=Dynamic, B=BGP Learnt, E=Explicit Tracking, R=Replicated

Bridge Domain group1:cgw830

Port ---Ev830,Peer 1.1.1.11

PM Group -- ----- 226.43.1.3

Ver GM Source --- -- -----V2 - *

Exp Flgs --- ---never B

Bridge Domain group1:cgw831

Port ---Ev831,Peer 1.1.1.11

PM Group -- ----- 226.43.1.3

Ver GM Source --- -- -----V2 - *

Exp Flgs --- ---never B

Bridge Domain group1:cgw837

Port ---Ev837,Peer 1.1.1.11

PM Group -- ----- 226.43.1.3

Ver GM Source --- -- -----V2 - *

Exp Flgs --- ---never B

Bridge Domain group1:cgw838

Port ---Ev838,Peer 1.1.1.11

PM Group -- ----- 226.43.1.3

Ver GM Source --- -- -----V2 - *

Exp Flgs --- ---never B

Bridge Domain group1:cgw839

Port ---Ev839,Peer 1.1.1.11

PM Group -- ----- 226.43.1.3

Ver GM Source --- -- -----V2 - *

Router<PE2-CGW2># show evpn ethernet-segment carving detail Legend:
B - No Forwarders EVPN-enabled, C - MAC missing (Backbone S-MAC PBB-EVPN / Grouping ES-MAC vES) RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated Hp - Interface blocked on peering complete during HA event

Exp Flgs --- ---never B

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 681

EVPN IGMPv2 Selective Multicast

EVPN Features

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0000.00ac.ce55.00e1.0000 Access-EVI:all

1.1.1.21

1.1.1.22

ES to BGP Gates : Ready

ES to L2FIB Gates : Ready

Main port

:

Interface name : Access-EVI/all

Interface MAC : 0000.0000.0000

IfHandle

: 0x00000000

State

: Up

Redundancy

: Not Defined

ESI type

:0

Value

: 00.00ac.ce55.00e1.0000

ES Import RT

: 0000.acce.5500 (from ESI)

Source MAC

: 0000.0000.0000 (N/A)

Topology

:

Operational : MH, Single-active

Configured

: Single-active (AApS) (default)

Service Carving : Auto-selection

Multicast

: Disabled

Convergence

:

Peering Details : 2 Nexthops

1.1.1.21 [MOD:P:7fff:T]

1.1.1.22 [MOD:P:00:T]

Service Carving Synchronization:

Mode

: NONE

Peer Updates :

1.1.1.21 [SCT: 2021-11-16 10:12:21.1637086]

1.1.1.22 [SCT: N/A]

Service Carving Results:

Forwarders

: 1690

Elected

: 845

EVI E :

10,

12,

14,

16,

EVI E :

22,

24,

26,

28,

EVI E :

34,

36,

38,

40,

EVI E :

46,

48,

50,

52,

EVI E :

58,

60,

62,

64,

EVI E :

70,

72,

74,

76,

EVI E :

82,

84,

86,

88,

EVI E :

94,

96,

98,

100,

EVI E :

106,

108,

110,

112,

EVI E :

1894, 1896, 1898, 1900,

EVI E :

1906, 1908, 1910, 1912,

EVI E :

1918, 1920, 1922, 1924,

EVI E :

1930, 1932, 1934, 1936,

EVI E :

1942, 1944, 1946, 1948,

EVI E :

1954, 1956, 1958, 1960,

EVI E :

1966, 1968, 1970, 1972,

EVI E :

1978, 1980, 1982, 1984,

EVI E :

1990, 1992, 1994, 1996,

Not Elected : 845

EVI NE :

11,

13,

15,

17,

EVI NE :

23,

25,

27,

29,

EVI NE :

35,

37,

39,

41,

EVI NE :

47,

49,

51,

53,

EVI NE :

59,

61,

63,

65,

EVI NE :

71,

73,

75,

77,

EVI NE :

83,

85,

87,

89,

EVI NE :

95,

97,

99,

101,

EVI NE :

1859, 1861, 1863, 1865,

EVI NE :

1871, 1873, 1875, 1877,

18, 30, 42, 54, 66, 78, 90, 102, 114, 1902, 1914, 1926, 1938, 1950, 1962, 1974, 1986, 1998
19, 31, 43, 55, 67, 79, 91, 103, 1867, 1879,

20 32, 44, 56, 68, 80, 92, 104, 116, 1904, 1916, 1928, 1940, 1952, 1964, 1976, 1988,
21 33, 45, 57, 69, 81, 93, 105... 1869, 1881,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 682

EVPN Features

EVPN IGMPv2 Selective Multicast

EVI NE :

1883, 1885,

EVI NE :

1895, 1897,

EVI NE :

1907, 1909,

EVI NE :

1919, 1921,

EVI NE :

1931, 1933,

EVI NE :

1943, 1945,

EVI NE :

1955, 1957,

EVI NE :

1967, 1969,

EVI NE :

1979, 1981,

EVI NE :

1991, 1993,

EVPN-VPWS Service Carving Results:

Primary

:0

Backup

:0

Non-DF

:0

MAC Flushing mode : STP-TCN

Peering timer

: 3 sec [not running]

Recovery timer : 30 sec [not running]

Carving timer

: 0 sec [not running]

HRW Reset timer : 5 sec [not running]

Local SHG label : 27884

Remote SHG labels : 0

Access signal mode: Unsupported

1887, 1899, 1911, 1923, 1935, 1947, 1959, 1971, 1983, 1995,

1889, 1901, 1913, 1925, 1937, 1949, 1961, 1973, 1985, 1997,

1891, 1903, 1915, 1927, 1939, 1951, 1963, 1975, 1987, 1999

1893, 1905, 1917, 1929, 1941, 1953, 1965, 1977, 1989,

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 683

EVPN IGMPv2 Selective Multicast

EVPN Features

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 684

1 2 C H A P T E R
Configure EVPN IRB
This chapter introduces you to Ethernet VPN (EVPN) Integrated Routing and Bridging (IRB) feature and describe how you can configure the EVPN IRB feature.
· EVPN IRB , on page 685 · EVPN Single-Homing Access EVPN Gateway , on page 686 · EVPN Multi-Homing Active-Active, on page 686 · EVPN Single-Active Multihoming for Anycast Gateway IRB, on page 687 · EVPN IRB Support, on page 691 · Distributed Anycast Gateway, on page 691 · Centralized Anycast Gateway for EVPN IRB, on page 693 · BVI-Coupled Mode, on page 698 · VM Mobility Support, on page 699 · Configuring EVPN IRB, on page 699 · Running Configuration for EVPN IRB, on page 701 · Verify EVPN IRB, on page 702 · EVPN IPv6 Hosts with Mobility, on page 711 · EVPN IRB: DHCPv4 and DHCPv6 Relay , on page 722 · Duplicate IP Address Detection, on page 728 · EVPN E-Tree Using RT Constraints, on page 730 · EVPN E-Tree Per-PE (Scenario1b), on page 744
EVPN IRB
Ethernet VPN (EVPN) provides an extensible and flexible multi-homing VPN solution for Layer 2 connectivity among hosts over an MPLS core/IP network. EVPN Integrated Routing and Bridging (IRB) feature enables Layer 3 forwarding among hosts across different IP subnets, while maintaining the multi-homing capabilities of EVPN. Also, EVPN IRB feature enables EVPN hosts or subnets to communicate with IP VPNs.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 685

EVPN Single-Homing Access EVPN Gateway Figure 97: EVPN IRB

Configure EVPN IRB

The above figure illustrates a scenario where EVPN IRB is deployed using three EVPN PE routers that provide single-homing or multi-homing access. The PE routers exchange EVPN and IP VPN BGP address-families information. In Cisco ASR 9000 Series Aggregation Services Router, the centralized EVPN gateway with both EVPN and VPN address-families are enabled, so EVPN route stitching and re-origination does not occur. The single IP VPN gateway provides access to other IP VPNs or the Internet. The IP VPN gateway exchanges VPNv4 or VPNv6 address families with the EVPN PE routers but EVPN address family is not available.
In the above figure, the host sends an IP packet whose frame contain its MAC and IP address. The frame of the packet also includes the destination MAC address of the BVI interface of the local PE device and the IP address of the destination host. When the host is required to send packets for routing to other subnets and IP VPN or the Internet, the host uses the MAC address of the local BVI interface as destination MAC address. The IRB interface receives the packet in whose frame the interface's MAC address is set as the destination. The IRB interface routes the packet to the destination after looking up the VRF table. The PE device chooses an intra-subnet route registered earlier in the VRF table. The MAC address that matches the destination IP, in the earlier route, becomes the new MAC address which replaces the existing MAC address in the packet. The packet reaches the destination remote PE device, to which the destination host is connected, which does an inter-subnet looks up in the VRF table for the MAC address of the destination host. Then, through the IRB interface, the remote PE device forwards the packet to the destination host.
EVPN Single-Homing Access EVPN Gateway
The EVPN provider edge (PE) devices learn the MAC address and IP address from the ARP traffic that they receives from the customer edge (CE) devices. The PEs create the MAC+IP routes. The PEs advertise the MAC+IP routes to MPLS core. They inject the host IP routes to IP-VPN gateway. All the PE nodes add the host routes in the IP-VRF table. The EVPN PE nodes add MAC route to the MAC-VRF table. The IP-VPN PE advertise the subnet routes to the provider edge devices who add the subnet routes to IP-VRF table. On the PE devices, IRB IP addresses and MAC addresses are not advertised through BGP. The IRB IP addresses or MAC addresses are used to send ARP requests towards the datacenter CEs.
EVPN Multi-Homing Active-Active
EVPN Multi-homing access gateway enables redundant network connectivity by allowing a CE device to connect to more than one PE devices. Disruptions to the network connectivity are prevented by allowing a CE device to be connected to a PE device or several PE devices through multi-homing. Ethernet segment is the bunch of Ethernet links through which a CE device is connected to more than one PE devices.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 686

Configure EVPN IRB

EVPN Single-Active Multihoming for Anycast Gateway IRB

In EVPN IRB, both EVPN and IP VPN (both VPNv4 and VPNv6) address families are enabled between ASR 9000 Data Center Interconnect (DCI) gateways. When Layer 2 (L2) stretch is not available in multiple datacenters (DC), routing is established through VPNv4 or VPNv6 routes. When Layer 2 stretch is available, host routing is applied where IP-MAC routes are learnt by ARP/IPv6 ND and are distributed to EVPN/BGP. In remote peer gateway, these IP-MAC EVPN routes are imported into IP VPN routing table from EVPN route-type 2 routes with secondary label and Layer 3 VRF route-target.
EVPN Single-Active Multihoming for Anycast Gateway IRB
The EVPN Single-Active Multihoming for Anycast Gateway IRB feature supports single-active redundancy mode. In this mode, the provider edge (PE) nodes locally connected to an Ethernet Segment load balance traffic to and from the Ethernet Segment based on EVPN service instance (EVI). Within an EVPN service instance, only one PE forwards traffic to and from the Ethernet Segment (ES). This feature supports intersubnet scenario only.
Figure 98: EVPN: Single-Active Multihoming for Anycast Gateway IRB

Consider a topology where CE1 is multihomed to PE1 and PE2. Bundle Ethernet interfaces BE 1.1, BE 2.1, and the ingress interface must belong to the same switching domain on CE1. Enable host routing and configure anycast gateway IP address on both these peering PEs. PE1 and PE2 are connected to PE3 through MPLS core. PE3 has reachability of subnet 10.0.0.5/8 to both peering PEs. Peering PEs has reachability to PE3 subnet 192.0.2.1/24. CE2 is connected to PE3 through an Ethernet interface bundle. PE1 and PE2 advertise Type four routes, and then performs designated forwarder (DF) election. The non-DF blocks the traffic in both the directions in single-active mode. Consider traffic flow from CE1 to CE2. CE1 sends an Address Resolution Protocol (ARP) broadcast request to both PE1 and PE2. Peering PEs performs designated forwarder (DF) election for shared ESI. If PE1 is the designated forwarder for the EVI, PE1 replies to the ARP request from CE1. PE2 drops the traffic from CE1. Thereafter, all the unicast traffic is sent through PE1. PE2 is set to standby or blocked state and traffic is not sent over this path. PE1 advertises MAC to PE3. PE3 always sends and receives traffic through PE1. PE3 sends the traffic to CE2 over Ethernet interface bundle. If BE1 fails, PE2 becomes the DF and traffic flows through PE2.
Configure EVPN Single-Active Multihoming
Perform the following tasks on PE1 and PE2 to configure EVPN Single-Active Multihoming feature: · Configure EVPN IRB with host routing
· Configure EVPN Ethernet Segment
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 687

Configure EVPN IRB with Host Routing

Configure EVPN IRB

· Configure Layer 2 Interface
· Configure a Bridge Domain
· Configure VRF
Configure EVPN IRB with Host Routing
Perform this task to configure EVPN IRB with host routing.
Configuration Example
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group 6005 Router(config-l2vpn-bg)# bridge-domain 6005 Router(config-l2vpn-bg-bd)# routed interface BVI50 Router(config-l2vpn-bg-bd-bvi)# exit Router(config-l2vpn-bg-bd-bvi)# interface Bundle-Ether2.1 Router(config-l2vpn-bg-bd-ac)# evi 6005 Router(config-l2vpnbg-bd-evi)# commit Router(config-l2vpnbg-bd-evi)# exit Router(config)# interface BVI50 Router(config-if)# host-routing Router(config-if)# vrf 30 Router(config-if)# ipv4 address 10.0.0.5 255.0.0.0 Router(config-if)# local-proxy-arp Router(config-if)# mac-address 1.1.1 Router(config-if)# commit
Running Configuration
This section shows EVPN IRB with host routing running configuration.
configure l2vpn
bridge group 6005 bridge-domain 6005 interface Bundle-Ether2.1 evi 6005
! !
interface BVI34 host-routing vrf 30 ipv4 address 10.0.0.5 255.0.0.0 arp learning local local-proxy-arp mac-address 1.1.1
Configure EVPN Ethernet Segment
Perform this task to configure the EVPN Ethernet segment.
Router# configure Router(config)# evpn Router(config-evpn)# interface Bundle-Ether1 Router(config-evpn-ac)# ethernet-segment

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 688

Configure EVPN IRB

Running Configuration

Router(config-evpn-ac-es)# identifier type 0 40.00.00.00.00.00.00.00.01 Router(config-evpn-ac-es)# load-balancing-mode single-active Router(config-evpn-ac-es)# bgp route-target 4000.0000.0001 Router(config-evpn-ac-es)# commit
Running Configuration
configure evpn
interface Bundle-Ether1 ethernet-segment identifier type 0 40.00.00.00.00.00.00.00.01 load-balancing-mode single-active bgp route-target 4000.0000.0001 !
! !
Configure EVPN Service Instance (EVI) Parameters
Perform this task to define EVPN service instance (EVI) parameters.
Router# configure Router(config)# evpn Router(config-evpn)# evi 6005 Router(config-evpn-evi)# bgp Router(config-evpn-evi-bgp)# rd 200:50 Router(config-evpn-evi-bgp)# route-target import 100:6005 Router(config-evpn-evi-bgp)# route-target export 100:6005 Router(config-evpn-evi-bgp)# commit
Running Configuration
configure evpn evi 6005 bgp rd 200:50 route-target import 100:6005 route-target export 100:6005
! !
Configure Layer 2 Interface
Perform this task to define Layer 2 interface.
Router# configure Router(config)# interface bundle-ether2.1 l2transport Router(config-subif-l2)# no shutdown Router(config-subif-l2)# encapsulation dot1q 1 Router(config-subif-l2)# rewrite ingress tag pop 1 symmetric Router(config-subif-l2)#commit Router(config-subif-l2)#exit
Running Configuration
This section shows the Layer 2 interface running configuration.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 689

Configure a Bridge Domain

Configure EVPN IRB

configure interface bundle-ether2.1 l2transport no shutdown encapsulation dot1q 1 rewrite ingress tag pop 1 symmetric
!
Configure a Bridge Domain
Perform the following steps to configure the bridge domain on PE1 and PE2.
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group 6005 Router(config-l2vpn-bg)# bridge-domain 6005 Router(config-l2vpn-bg-bd)# interface Bundle-Ether2.1 Router(config-l2vpn-bg-bd-ac)# evi 6005 Router(config-l2vpnbg-bd-evi)# commit Router(config-l2vpnbg-bd-evi)# exit
Running Configuration This section shows the bridge domain running configuration.
configure l2vpn
bridge group 6005 bridge-domain 6005 interface Bundle-Ether2.1 evi 6005
!
Configure VRF
Perform this task to configure VRF.
Configuration Example
Router# configure Router(config)# vrf 30 Router(config-vrf)# address-family ipv4 unicast Router(config-l2vpn-vrf-af)# route-target import 100:6005 Router(config-l2vpn-vrf-af)# route-target export 100:6005 Router(config-l2vpn-vrf-af)# commit
Running Configuration This section shows the VRF running configuration.
configure vrf 30 address-family ipv4 unicast route-target import 100:6005 route-target export 100:6005
!

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 690

Configure EVPN IRB

EVPN IRB Support

EVPN IRB Support
EVPN IRB supports the following scenarios: · In single-homing scenario, only physical, VLAN, .1q, .1ad, or QinQ access methods are supported. · In dual-homing scenario, only two PE gateways in a redundancy group are supported. · Both IPv4 and IPv6 are supported.
Distributed Anycast Gateway
EVPN IRB for the given subnet is configured on all the EVPN PEs that are hosted on this subnet. To facilitate optimal routing while supporting transparent virtual machine mobility, hosts are configured with a single default gateway address for their local subnet. That single (anycast) gateway address is configured with a single (anycast) MAC address on all EVPN PE nodes locally supporting that subnet. This process is repeated for each locally defined subnet requires Anycast Gateway support. The host-to-host Layer 3 traffic, similar to Layer 3 VPN PE-PE forwarding, is routed on the source EVPN PE to the destination EVPN PE next-hop over an IP or MPLS tunnel, where it is routed again to the directly connected host. Such forwarding is also known as Symmetric IRB because the Layer 3 flows are routed at both the source and destination EVPN PEs. The following solutions are part of the Distributed Anycast Gateway feature:
EVPN IRB with Active-Active Multi-Homing with Subnet Stretch or Host-Routing across the Fabric
For a bridge domain or subnet that is stretched across remote EVPN PEs, both /32 host routes and MAC routes are distributed in a EVPN overlay control plane to enable Layer 2 and Layer 3 traffic to the end points in a stretched subnet. This type of multi-homing has the following characteristics:
· Layer 2 or Layer 3 ECMP for the fabric for dual-homed hosts based on Route Type 1 and Route Type 2
· Layer 3 unipath over the Fabric for single-homed hosts based on Route Type 2 · Layer 2 subnet stretch over the fabric · Layer 2 stretch within redundancy group of leafs with orphan ports
MAC and IP Unicast Control Plane
This use case has following types: Prefix Routing or No Subnet Stretch IP reachability across the fabric is established using subnet prefix routes that are advertised using EVPN Route Type 5 with the VPN label and VRF RTs. Host ARP and MAC sync are established across multi-homing
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 691

Intra-subnet Unicast Data Plane

Configure EVPN IRB

EVPN PEs using MAC+IP Route Type 2 based on a shared ESI to enable local switching through both the multi-homing EVPN PEs.
Host Routing or Stretched Subnet
When a host is discovered through ARP, the MAC and IP Route Type 2 is advertised with both MAC VRF and IP VRF router targets, and with VPN labels for both MAC-VRF and IP-VRF. Particularly, the VRF route targets and Layer 3 VPN label are associated with Route Type 2 to achieve PE-PE IP routing identical to traditional L3VPNs. A remote EVPN PE installs IP/32 entries directly in Layer 3 VRF table through the advertising EVPN PE next-hop with the Layer 3 VPN label encapsulation, much like a Layer 3 VPN imposition PE. This approach avoids the need to install separate adjacency rewrites for each remote host in a stretched subnet. Instead, it inherits a key Layer 3 VPN scale benefit of being able to share a common forwarding rewrite or load-balance resource across all IP host entries reachable through a set of EVPN PEs.
ARP and MAC sync
For hosts that are connected through LAG to more that one EVPN PE, the local host ARP and MAC entries are learnt in data plane on either or both of the multihoming EVPN PEs. Local ARP and MAC entries are synced across the two multihoming EVPN PEs using MAC and IP Route Type 2 based on a shared ESI to enable local switching through both the multihoming EVPN PEs. Essentially, a MAC and IP Route Type 2 that is received with a local ESI causes the installation of a synced MAC entry that points to the local AC port, and a synced ARP entry that is installed on the local BVI interface.
Note Only one Ethernet Flow Point (EFP) is supported per non-Zero ESI per bridge domain or EVI. This is a limitation of EVPN.
MAC and IP Route Re-origination
MAC and IP Route Type 2 received with a local ESI, which is used to sync MAC and ARP entries, is also re-originated from the router that installs a SYNC entry, if the host is not locally learnt and advertised based on local learning. This route re-origination is required to establish overlay IP ECMP paths on remote EVPN PEs, and to minimize traffic hit on local AC link failures, that can result in MAC and IP route withdraw in the overlay.
Intra-subnet Unicast Data Plane
The Layer 2 traffic is bridged on the source EVPN PE using ECMP paths to remote EVPN PEs, established through MAC+IP RT2, for every ES and for every EVI, ES and EAD Route Type 2 routes that are advertised from the local EVPN PEs.
Inter-subnet Unicast Data Plane
Inter-subnet traffic is routed on the source EVPN PEs through overlay ECMP to the destination EVPN PEs next-hops. Data packet are encapsulated with the VPN label advertised from the EVPN PE and tunnel label for the BGP next-hop towards the spine. It is then routed again on the destination EVPN PE using a local ARP adjacency towards the host. IP ECMP on the remote EVPN PEs is established through local and re-originated routes advertised from the local EVPN PEs.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 692

Configure EVPN IRB

Centralized Anycast Gateway for EVPN IRB

Centralized Anycast Gateway for EVPN IRB

Table 23: Feature History Table

Feature Name

Release Information

Centralized Anycast Gateway for Release 7.5.1 EVPN IRB

Feature Description
This feature enables configuring the IRB interface in a central location called the Centralized Anycast Gateway. Such a centralized, single-point makes it easier to configure and maintain, reducing the overall operational cost. It also makes it easy to configure the IRB because it's configured only on the centralized gateway of edge L2 devices.
This feature is supported only on Single-active mode and this feature introduces virtual access-evi command.

EVPN Integrated Routing and Bridging (IRB) allows hosts across the overlay to communicate with each other across the subnets in the VPN. Distributed anycast gateway allows you to configure EVPN IRB for the given subnet on all the access side EVPN PEs that are hosted on the subnet. The distributed gateway provides inner and intra subnet optimal forwarding.
However, the distributed anycast gateway doesn't provide a centralized point to perform services such as QOS and ACL. Moreover, distributed gateway brings the complexity of setting up and maintaining IRB L3 domains across leaf or edge nodes. Distributed anycast is a bit complex for mobile networks. Customers are looking at connecting and aggregating mobile antennas using cell site routers to core backbone networks in a simple way especially when access networks aren't complex or multilayered Cos fabrics. There's a need for a single gateway device to carry the load at a lesser cost and that is easy to configure.
With this feature, you can add a centralized gateway to configure IRB in the central location that is known as Centralized Anycast Gateway. The gateway is centralized on a pair of nodes that act as an interface point between the layer-2 and layer-3 routed networks. The Centralized Anycast Gateway uses anycast IRB, which is configured with the same BVI MAC address and BVI IP address.
Centralized Anycast GW supports the following services:
· Unicast Traffic ­ IPv4/IPv6 on BVI, Global VRF, customer VRF
· Core Isolation
· Cost-in/Cost-out
· DHCP Relay Agent
· MAC Mobility
· Convergence ­ with Unicast traffic

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 693

Centralized Anycast Gateway for EVPN IRB

Configure EVPN IRB

How Does Centralized Anycast Gateway Work?
EVPN performs DF election between centralized gateways to elect DF and non-DF node at BVI or EVI level for load balancing across subnets. BVI interfaces remain up on both gateways, and the BVI anycast MAC address is programmed in the hardware as an encapsulation Source-MAC to enable anycast traffic.
This example shows the centralized gateway without locally attached interface running in a single-active multi-homing mode.
Figure 99: Topology

In this topology, PE1 and PE2 are the centralized gateways where IRB interfaces are configured. Centralized gateways perform EVPN DF election based on EVI/ESI. PE1 is elected as DF whereas PE2 is elected as non-DF. The following describes the centralized anycast gateway advertisement:
· PE1 is DF and PE2 is non-DF.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 694

Configure EVPN IRB

Centralized Anycast Gateway for EVPN IRB

· PE1 advertises its BVI MAC to remote PE (PE3 and PE4) where it gets installed as remote MAC entry in the MAC forwarding database. PE2 does not install PE1 BVI MAC as remote MAC.
· PE1 and PE2 advertise their route to the remote PEs (PE3 and PE4). · PE2 blocks all traffic from EVI to BVI interface. · MAC-IP addresses of hosts are learned only at the IRB termination point, which is the centralized gateway.
PE1 and PE2 advertise host MAC-IP to synchronize with the access EVI.
The following describes how the inter subnet communication happens: · Host attached to PE3 sends an ARP request to BVI towards EVPN L2 fabric. · PE3 learns the host MAC as local and advertises its reachability using EVPN Route-Type2 to remote PEs, including gateways. · The ARP request reaches PE1 BVI through dataplane and gets blocked on PE2. · PE1 learns the ARP request locally as the first-hop router. The learnt port is the BVI interface. · PE1 synchronizes ARP entry with PE2 to complete the adjacency. · PE1 and PE2 receive corresponding host MAC route from BGP and installs it as remote MAC. · PE1 responds with appropriate ARP reply to source host through PE3. · PE3 sends unicast traffic to PE1 following BVI MAC reachability from its MAC FDB table.
The following describes how the intra subnet communication with a host connected to PE4 happens: · EVPN layer-2 bridging capability where MAC reachability is learned over EVPN Route-Type2. · Host H3 (attached to PE3) sends direct ARP request to the host IP connected to PE4. · The PE4 host responds with an ARP reply using the unicast MAC address.
Restrictions · Physical and bundle AC interfaces are not supported on centralized gateway. Configuration is not prevented but a warning syslog is generated and traffic from locally attached ACs is not supported. · Only single-active multihoming mode is supported. · Locally attached interface on gateway is supported only when the access-EVI is configured as Virtual Interface (VES) and EVPN non-DF blocking scheme is used. · IRB interfaces on peering PE must be configured with anycast gateway.
Configuration Perform this task to configure centralized gateway. You must have the same configuration on PE1 and PE2: :
EVPN configuration: Router#configure Router(config)#evpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 695

Centralized Anycast Gateway for EVPN IRB

Configure EVPN IRB

Router(config-evpn)#evi 8001 Router(config-evpn-instance)#advertise-mac Router(config-evpn-instance-mac)#bvi-mac Router(config-evpn-instance-mac)#exit
Centralized gateway configuration for single-active load-balancing : Router(config-evpn-instance)#virtual access-evi Router(config-evpn-ac-evi)#ethernet-segment Router(config-evpn-ac-evi-es)#identifier type 0 00.00.00.34.34.34.34.34.34 Router(config-evpn-ac-evi-es)#exit
Router(config-evpn-ac-evi)#core-isolation-group 1 Router(config-evpn-ac-evi)#exit Router(config-evpn)#exit Router(config-l2vpn)#
L2VPN configuration for centralized gateway: Router(config-l2vpn)#bridge group evpn_access_evi_8 Router(config-l2vpn-bg)#bridge-domain bd_8001 Router(config-l2vpn-bg-bd)#access-evi 8001 Router(config-l2vpn-bg-bd)#routed interface BVI8001 Router(config-l2vpn-bg-bd-bvi)#exit Router(config-l2vpn-bg-bd)#exit Router(config-l2vpn-bg)#exit Router(config-l2vpn)#exit
BVI configuration: Router(config)#Interface BVI8001 Router(config-if)#ipv4 address 10.1.1.1/24 Router(config-if)#mac-address 00aa.8001.00aa Router(config-if)#commit
Show running configuration for centralized gateway:
interface BVI8001 ipv4 address 10.1.1.1 255.255.255.0 mac-address aa.8001.aa
! evpn
evi 8001 advertise-mac bvi-mac !
! virtual access-evi
ethernet-segment identifier type 0 00.00.00.34.34.34.34.34.34
! core-isolation-group 1 ! ! l2vpn bridge group evpn_access_evi_8 bridge-domain bd_8001
access-evi 8001 routed interface BVI8001 ! ! ! !
Perform this task to configure PE2 and PE3:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 696

Configure EVPN IRB

Centralized Anycast Gateway for EVPN IRB

Note Regular L2 EVPN configuration on PE2 and PE3 and BVI configurations aren't required.

Router#configure Router(config)#evpn Router(config-evpn)#evi 8001 Router(config-evpn-instance)#advertise-mac
Router(config)#interface bundle-ether80.1 l2transport Router(config-subif)#encapsulation dot1q 0 Router(config-subif)#rewrite ingress tag pop 1 symmetric Router(config-subif)#exit
Router(config)#l2vpn Router(config-l2vpn)#bridge group evpn_access_evi_8 Router(config-l2vpn-bg)#bridge-domain bd_8001 Router(config-l2vpn-bg-bd)#interface bundle-ether 80.1 Router(config-l2vpn-bg-bd-ac)#evi 8001 Router(config-l2vpn-bg-bd-evi)#
Verification
Verify the configuration on PE1 and PE2 using the following show commands:

Router-PE1# show evpn ethernet-segment carving detail

Ethernet Segment Id

Interface

Nexthops

------------------------ ---------------------------------- --------------------

0000.0000.3434.3434.3434 Access-EVI:all

192.168.30.1

192.168.40.1

Main port

:

Interface name : Access-EVI/all

Topology

:

Configured

: Single-active (AApS) (default)

Service Carving : Auto-selection

Service Carving Results:

Forwarders

: 200

Elected

: 100

Not Elected

: 100

ARP ND sync for DF and non-DF: For DF, the state should be dynamic and for non-DF, it shows EVPN-SYNC.

/*For DF:*/

Router-PE1# show arp bvi 9002

Address

Age

Hardware Addr

90.1.2.1

-

0011.0090.1111

90.1.2.34

00:00:46 0012.9001.0002

State Interface Dynamic

Type ARPA ARPA

Interface BVI9002 BVI9002

/* For NON-DF*/

Router-PE2# show arp bvi 9002

Address

Age

Hardware Addr

90.1.2.1

-

0011.0090.1111

90.1.2.34

-

0012.9001.0002

State Interface EVPN_SYNC

Type ARPA ARPA

Interface BVI9002 BVI9002

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 697

BVI-Coupled Mode

Configure EVPN IRB

BVI-Coupled Mode
When ACs go down, the BVI also goes down. However, with this mode enabled, the state of the BVI remains Up even though the ACs go down. Hence, the BVI state becomes EVPN-aware.
BVI tracks the Up or Down state of ACs and PWs in a bridge. When the EVPN port is available, there may be an L2 redirect path over EVI to carry the traffic between L3 to L2. However, this depends on the remote or peer EVI-EAD routes received.
Under certain conditions, you can reduce the churns of BVI state adjacency by keeping the BVI state Up. BVI state drives the state of EVPN_SYNC adjacencies being pushed to forwarding entries, thereby reducing the churns further. Keeping the BVI state Up, the router creates adjacencies in the forwarding table, which indicates that a local adjacency is invalid when an interface is down.

Configure BVI-Coupled Mode Perform this task to configure BVI-coupled mode.

evpn evi 101 bgp route-target import 60000:101 route-target export 60000:101 ! bvi-coupled-mode
l2vpn bridge group BG-1 bridge-domain BD-1 interface Bundle-Ether100.101 ! routed interface BVI101 ! evi 101
Verification
Verify that the BVI-coupled mode is enabled.

Router# show evpn evi detail

VPN-ID

Encap

Bridge Domain

Type

---------- ---------- ---------------------------- -------------------

101

MPLS

BD-1

EVPN

Stitching: Regular

Unicast Label : 35048

Multicast Label: 33000

Reroute Label: 0

Flow Label: N

Control-Word: Enabled

E-Tree: Root

Forward-class: 0

Advertise MACs: Yes

Advertise BVI MACs: No

Aliasing: Enabled

UUF: Enabled

Re-origination: Enabled

Multicast:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 698

Configure EVPN IRB

VM Mobility Support

Source connected : No

IGMP-Snooping Proxy: No

MLD-Snooping Proxy : No

BGP Implicit Import: Enabled

VRF Name: cust1

Preferred Nexthop Mode: Off

BVI Coupled Mode: Yes -------------------------> enabled

BVI Subnet Withheld: ipv4 No, ipv6 No

RD Config: none

RD Auto : (auto) 201.201.201.1:101

RT Auto : 60000:101

Route Targets in Use

Type

------------------------------ -------------

60000:101

Import

60000:101

Export

----------------------- --------------------

VM Mobility Support
VM mobility is the ability of virtual machines to migrate between one server and another while retaining their existing MAC and IP addresses. The following are the two key components in EVPN Route Type 2 that enable VM Mobility:
· Host MAC advertisement component that is imported into local bridge MAC table, and Layer 2 bridged traffic across the network overlay.
· Host IP advertisement component that is imported into the IP routing table in a symmetric IRB design, enables routed traffic across the network overlay.
The above-mentioned components are advertised together in a single MAC + IP host route advertisement. An additional MAC-only route could also be advertised. The following behaviors of VM are supported. The VM can:
· retain existing MAC and acquire a new IP address
· retain existing IP address and acquire a new MAC
· retain both existing MAC and IP address

Note IRB solution supports VM mobility with IP+MAC pair. VM mobility move, with new IP to MAC, or new MAC to IP, is not supported.
Configuring EVPN IRB
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface Bundle-Ether 3 RP/0/RSP0/CPU0:router(config-if)# lacp system mac 1.1.1 RP/0/RSP0/CPU0:router(config-if)# exit
/* Configure EVPN L3VRF per DC tenant. */

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 699

Configuring EVPN IRB

Configure EVPN IRB

RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# vrf irb1 RP/0/RSP0/CPU0:router(config-vrf)# address-family ipv4 unicast RP/0/RSP0/CPU0:router(config-vrf-af)# import route-target 1000:1 RP/0/RSP0/CPU0:router(config-vrf-af)# export route-target 1000:1 RP/0/RSP0/CPU0:router(config-vrf-af)# exit
/* Configure Layer 2 attachment circuit (AC) from multichassis (MC) bundle interface, and bridge-group virtual interface (BVI) per bridge domain. */ /* Note: When a VM migrates from one subnet to another (subnet stretching), apply the following IRB configuration to both the EVPN PEs. *\
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# interface bvi 1001 RP/0/RSP0/CPU0:router(config-if)# host-routing RP/0/RSP0/CPU0:router(config-if)# vrf irb1 RP/0/RSP0/CPU0:router(config-if)# ipv4 address 10.10.0.4 255.255.255.0 RP/0/RSP0/CPU0:router(config-if)# ipv4 address 172.16.0.1 secondary RP/0/RSP0/CPU0:router(config-if)# mac-address 00aa.1001.00aa
/* Configure EVPN Layer 2 bridging service. Note: This configuration is performed in Layer 2 gateway or bridging scenario. */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group 1 Router(config-l2vpn-bg)# bridge-domain 1-1 Router(config-l2vpn-bg-bd)# interface GigabitEthernet 0/0/0/1.1 Router(config-l2vpn-bg-bd-ac)# evi 1 Router(config-l2vpn-bg-bd-ac-evi)# commit Router(config-l2vpnbg-bd-ac-evi)# exit
/* Configure BGP. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# router bgp 3107 RP/0/RSP0/CPU0:router(config-bgp)# vrf irb1 RP/0/RSP0/CPU0:router(config-bgp-vrf)# rd auto RP/0/RSP0/CPU0:router(config-bgp-vrf)# address-family ipv4 unicast RP/0/RSP0/CPU0:router(config-bgp-vrf-af)# redistribute connected RP/0/RSP0/CPU0:router(config-bgp-vrf-af)# redistribute static RP/0/RSP0/CPU0:router(config-bgp-vrf-af)# exit
/* Configure EVPN, and configure main bundle ethernet segment parameters in EVPN. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# evi 2001 RP/0/RSP0/CPU0:router(config-evpn-evi)# bgp RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target import 1000:1 RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# route-target export 1000:1 RP/0/RSP0/CPU0:router(config-evpn-evi-bgp)# exit RP/0/RSP0/CPU0:router(config-evpn-evi)# advertise-mac RP/0/RSP0/CPU0:router(config-evpn-evi)# unknown-unicast-suppression
/* Configure Layer 2 VPN. */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# l2vpn RP/0/RSP0/CPU0:router(config-l2vpn)# bridge group irb
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 700

Configure EVPN IRB

Running Configuration for EVPN IRB

RP/0/RSP0/CPU0:router(config-l2vpn-bg)# bridge-domain irb1 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd)# interface bundle-Ether3.1001 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-ac)# routed interface BVI100 RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-bvi)# split-horizon group core RP/0/RSP0/CPU0:router(config-l2vpn-bg-bd-bvi)# evi 10001
Running Configuration for EVPN IRB
/* Configure LACP */ interface Bundle-Ether3
lacp system mac 1.1.1 !
/* Configure EVPN Layer 3 VRF per DC tenant. */ vrf irb1 address-family ipv4 unicast
import route-target 1000:1
! export route-target
1000:1 !
! !
/* Configure Layer 2 attachment circuit (AC) from multichassis (MC) bundle interface, and bridge-group virtual interface (BVI) per bridge domain./*
interface Bundle-Ether3.1001 l2transport encapsulation dot1q 1001 rewrite ingress tag pop 1 symmetric
! interface BVI1001
host-routing vrf irb1 ipv4 address 10.0.1.1 255.255.255.0 mac-address 0000.3030.1 !
/* Configure BGP. */
router bgp 3107 vrf irb1 rd auto address-family ipv4 unicast redistribute connected redistribute static
! !
/* Configure EVPN. */
evpn evi 10001
bgp route-target import 1000:1 route-target export 1000:1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 701

Verify EVPN IRB

Configure EVPN IRB

! advertise-mac unknown-unicast-suppression !
/* Configure Layer2 VPN. */
l2vpn bridge group irb
bridge-domain irb1 interface Bundle-Ether3.1001 ! routed interface BVI1001 split-horizon group core ! evi 10001 !
!

Verify EVPN IRB
Verify the Address Resolution Protocol (ARP) protocol entries, and synced entries in multi-homing scenarios.

RP/0/RSP0/CPU0:router# show arp vrf evpn1

-----------------------------------------------------------------

0/1/CPU0

-----------------------------------------------------------------

Address Age

Hardware Addr State

Type Interface

10.1.1.1 -

0010.0001.0001 Interface ARPA BVI1

10.1.1.11 02:23:46 1000.0001.0001 Dynamic ARPA BVI1

10.1.1.93 -

0000.f65a.357c EVPN_SYNC ARPA BVI1

10.1.2.1 -

0011.0112.0001 Interface ARPA BVI2

10.1.2.91 02:24:14 0000.f65a.3570 Dynamic ARPA BVI2

10.1.2.93 02:21:52 0000.f65a.357d Dynamic ARPA BVI2

---------------------------------------------------------------

0/0/CPU0

---------------------------------------------------------------

Address Age

Hardware Addr State

Type Interface

10.1.1.1 10.1.1.11 02:23:46 10.1.1.93 10.1.2.1 10.1.2.91 02:24:14 10.1.2.93 02:21:52

0010.0001.0001 1000.0001.0001 0000.f65a.357c 0011.0112.0001 0000.f65a.3570 0000.f65a.357d

Interface Dynamic EVPN_SYNC Interface Dynamic Dynamic

ARPA BVI1 ARPA BVI1 ARPA BVI1 ARPA BVI2 ARPA BVI2 ARPA BVI2

Verify the adjacency entries, particularly verify newly added information for synced IPv4 and IP ARP entries.
RP/0/RSP0/CPU0:router# show adjacency ipv4 BVI 1 internal detail location 0/0/CPU0
BVI1, 10.1.1.93 (ipv4) Version: 1169, references: 2, transient lock: 0 Encapsulation information (14 bytes) 0000f65a357c0000f65a357c0800 MTU: 1500
Adjacency pointer is: 0x770a9278 Platform adjacency pointer is: 0x7d7bc380 Last updated: Feb 28 15:58:21.998

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 702

Configure EVPN IRB

Verify EVPN IRB

Adjacency producer: arp (prod_id: 10) Flags: incomplete adj, Additional Adjacency Information (4 bytes long), Upto first 4 bytes (in hex): 01000000 Netio idb pointer not cached Cached interface type: 78
Adjacency references: bfd_agent (JID 150, PID 3637), 0 reference l2fib_mgr (JID 185, PID 4003), 0 reference fib_mgr (JID 294, PID 3605), 1 reference aib (JID 314, PID 3590), 1 reference
BVI1, 10.1.1.11 (ipv4) Version: 1493, references: 3, transient lock: 0 Encapsulation information (14 bytes) 1000000100010010000100010800 MTU: 1500 Adjacency pointer is: 0x770ab778 Platform adjacency pointer is: 0x7d7bcb10 Last updated: Mar 2 17:22:00.544 Adjacency producer: arp (prod_id: 10) Flags: incomplete adj, Netio idb pointer not cached Cached interface type: 78 Adjacency references: bfd_agent (JID 150, PID 3637), 0 reference l2fib_mgr (JID 185, PID 4003), 1 reference fib_mgr (JID 294, PID 3605), 1 reference aib (JID 314, PID 3590), 1 reference

Verify the entries to obtain details learnt in L2FIB line cards. In multi-homing active-active scenario, the link-local addresses are also updated and distributed to EVPN peer gateways.

RP/0/RSP0/CPU0:router# show l2vpn mac-learning mac-ipv4 all location 0/0/cPU0

Topo ID Producer Next Hop(s) Mac Address

IP Address

6

0/0/CPU0 BV1

7

0/0/CPU0 BV2

7

0/0/CPU0 BV2

1000.0001.0001 0000.f65a.3570 0000.f65a.357d

10.1.1.11 10.1.2.91 10.1.2.93

RP/0/RSP0/CPU0:router# show l2vpn mac-learning mac-ipv4 all location 0/0/cPU0

Topo ID Producer Next Hop(s) Mac Address IP Address

6

0/0/CPU0 BV1

7

0/0/CPU0 BV2

7

0/0/CPU0 BV2

7

0/0/CPU0 BV2

0000.f65a.357c 0000.f65a.3570 0000.f65a.357d 0000.f65a.3570

fe80::200:f6ff:fe5a:357c 10:1:2::91 10:1:2::93 fe80::200:f6ff:fe5a:3570

Verify sequence ID for VM mobility.

RP/0/RSP0/CPU0:router# show l2route evpn mac-ip all detail

Sun Apr 30 18:09:19.368 PDT Flags: (Stt)=Static; (L)=Local; (R)=Remote; (F)=Flood; (N)=No Redistribution; (Rtr)=Router MAC; (B)=Best Route; (P)=Probe; (S)=Peer Sync; (F)=Flush; (D)=Duplicate MAC; (Z)=Frozen MAC;

Topo ID Mac Address

IP Address Prod Next Hop(s)

Seq No Flags

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 703

Verify EVPN IRB

Configure EVPN IRB

Opaque Data Type Opaque Data Len Opaque Data Value

------- -----------

---------- ---- ----------

------

---------------- --------------- -----------------

33

0022.6730.0001 10.130.0.2 L2VPN Bundle-Ether6.1300 0

0x06000000

0x22000080

0x00000000

----SB 0 12

Last Update: Sun Apr 30 15:00:01.911 PDT

33

0022.6730.0002 10.130.0.3 LOCAL Bundle-Ether6.1300 0

B

N/A

N/A

N/A

Verify the entries to obtain details learnt in L2FIB RP when it is an aggregator. Route processor (RP) entries are aggregated entries obtained from the line cards. In some cases of MAC move, there could be different states for the same MAC. This is displayed in RP aggregated entries. RP determines the update to be sent to L2RIB according to MAC-Learning algorithms.

RP/0/RSP0/CPU0:router# show l2vpn mac-learning mac-ipv4 all location 0/RSP0/CPU0

Topo ID ------6 7 7

Producer -------0/0/CPU0 0/0/CPU0 0/0/CPU0

Next Hop(s) -----------
BV1 BV2 BV2

Mac Address -------------1000.0001.0001 0000.f65a.3570 0000.f65a.357d

IP Address ---------10.1.1.11 10.1.2.91 10.1.2.93

Verify the entries in L2RIB that are updated by RP L2FIB. Note the following when you verify the entries:
· The entries with producer as L2VPN and NH as remote IP are learnt from the remote peer gateways, which are learnt from BGP, updated to EVPN, and then updated to L2RIB. So these entries are not from local IP-MAC learning.
· The entries with producer as L2VPN and NH as local bundle interfaces are synced entries from MH-AA peer gateway.
· The entries with producer as LOCAL and NH as local bundle interfaces are dynamically learnt local entries.

RP/0/RSP0/CPU0:router# show l2route evpn mac-ip evi 6

Topo ID -------6 6 6 6 6 6 6 6 6 6

Mac Address -------------0000.f65a.3569 0000.f65a.3575 0000.f65a.3575 0000.f65a.3575 0000.f65a.357c 0000.f65a.357c 0000.f65a.357c 0010.0001.0012 1000.0001.0001 90e2.ba8e.c0c9

IP Address

Prod

---------------

------

10.1.1.101

L2VPN

10.1.1.97

L2VPN

10:1:1::97

L2VPN

fe80::200:f6ff:fe5a:3575 L2VPN

10.1.1.93

L2VPN

10:1:1::93

L2VPN

fe80::200:f6ff:fe5a:357c LOCAL

10.1.1.12

L2VPN

10.1.1.11

LOCAL

10.1.1.102

L2VPN

Next Hop(s) ------------172.16.0.2/24014/ME 172.16.0.7/24025/ME 172.16.0.7/24025/ME 172.16.0.7/24025/ME Bundle-Ether1.11 Bundle-Ether1.11 Bundle-Ether1.11 172.16.0.7/24025/ME Bundle-Ether1.11 172.16.0.2/24014/ME

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 704

Configure EVPN IRB

Verify EVPN IRB

Verify entries to obtain details of EVPN.

RP/0/RSP0/CPU0:router# show evpn evi vpn-id 1 mac ipv4 10.1.1.93 detail

EVI ---1

MAC address ---------------
0000.f65a.357c

IP address ----------
10.1.1.93

Nexthop ---------172.16.0.2

Label ----24014

Ethernet Tag : 0 Multi-paths Resolved : True Static : No Local Ethernet Segment : N/A Remote Ethernet Segment : 0100.6cbc.a77c.c180.0000 Local Sequence Number : N/A Remote Sequence Number : 0 Local Encapsulation : N/A Remote Encapsulation : MPLS

Verify local BGP entries with appropriate second label and second IP VRF route-target.

RP/0/RSP0/CPU0:router# show bgp l2vpn evpn rd 172.16.0.1:1 [2][0][48][0000.f65a.357c][32][10.1.1.93]/136

BGP routing table entry for [2][0][48][0000.f65a.357c][32][10.1.1.93]/136, Route

Distinguisher: 172.16.0.1:1

Versions:

Process bRIB/RIB SendTblVer

Speaker 3772 3772

Local Label: 24013

Last Modified: Feb 28 16:06:37.073 for 2d19h

Paths: (2 available, best #1)

Advertised to peers (in unique update groups):

172.16.0.9

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

172.16.0.9

Local

0.0.0.0 from 0.0.0.0 (172.16.0.1)

Second Label 24027

>>>> Second label when IRB host-routing

is enabled.

Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate,

rib-install

Received Path ID 0, Local Path ID 0, version 3772

Extended community: SoO:172.16.0.2:1 RT:100:100

EVPN ESI: 0100.6cbc.a77c.c180.0000

Path #2: Received by speaker 0

Not advertised to any peer

Local

172.16.0.2 (metric 101) from 172.16.0.9 (172.16.0.2)

Received Label 24014, Second Label 24031

Origin IGP, localpref 100, valid, internal, add-path, import-candidate, imported, rib-install

Received Path ID 0, Local Path ID 2, version 3769

Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 >>> Second RT is IP VRF RT for

remote to import into IP VRF routing table.

Originator: 172.16.0.2, Cluster list: 172.16.0.9

EVPN ESI: 0100.6cbc.a77c.c180.0000

Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 705

Verify EVPN IRB

Configure EVPN IRB

RP/0/RSP0/CPU0:router# show bgp l2vpn evpn rd 172.16.0.1:1 [2][0][48][0000.f65a.357c][128][10:1:1::93]/232
[2][0][48][0000.f65a.357c][128][10:1:1::93]/232 BGP routing table entry for [2][0][48][0000.f65a.357c][128][10:1:1::93]/232, Route Distinguisher: 172.16.0.1:1 Versions: Process bRIB/RIB SendTblVer Speaker 3172 3172 Local Label: 24013 Last Modified: Feb 28 11:34:33.073 for 3d00h Paths: (2 available, best #1) Advertised to peers (in unique update groups): 172.16.0.9 Path #1: Received by speaker 0 Advertised to peers (in unique update groups): 172.16.0.9 Local 0.0.0.0 from 0.0.0.0 (172.16.0.1) Second Label 24029 Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate, rib-install Received Path ID 0, Local Path ID 0, version 3172 Extended community: SoO:172.16.0.2:1 RT:100:100 EVPN ESI: 0100.6cbc.a77c.c180.0000 Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 (metric 101) from 172.16.0.9 (172.16.0.2) Received Label 24014, Second Label 24033 Origin IGP, localpref 100, valid, internal, add-path, import-candidate, imported, rib-install Received Path ID 0, Local Path ID 2, version 3167 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 172.16.0.9 EVPN ESI: 0100.6cbc.a77c.c180.0000 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1
Verify the remote peer gateway BGP entries with correct label and route-target. Particularly verify the local auto-generated RD on a remote EVPN gateway. EVPN type-2 routes are imported into EVPN. The host routes of IPv4 /32 addresses are imported only into IP VRF route-table in the remote EVPN gateway, but not in the local EVPN gateway where local BVI adjacency is used to overwrite RIB entries.
RP/0/RSP0/CPU0:router# show bgp l2vpn evpn rd 172.16.0.7:1 [2][0][48][0000.f65a.357c][32][10.1.1.93]/136 BGP routing table entry for [2][0][48][0000.f65a.357c][32][10.1.1.93]/136, Route Distinguisher: 172.16.0.7:1 Versions: Process bRIB/RIB SendTblVer Speaker 16712 16712 Last Modified: Feb 28 16:06:36.448 for 2d19h Paths: (2 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 172.16.0.1 from 172.16.0.9 (172.16.0.1) Received Label 24013, Second Label 24027 >>>> First label for L2 MAC unicast bridging; second label for EVPN IRB host-routing
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 706

Configure EVPN IRB

Verify EVPN IRB

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported, rib-install Received Path ID 0, Local Path ID 0, version 16712 Extended community: SoO:172.16.0.2:1 RT:100:1 RT:100:100 Originator: 172.16.0.1, Cluster list: 172.16.0.9 EVPN ESI: 0100.6cbc.a77c.c180.0000 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.1:1 Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 from 172.16.0.9 (172.16.0.2) Received Label 24014, Second Label 24031 Origin IGP, localpref 100, valid, internal, backup, add-path, import-candidate, imported, rib-install Received Path ID 0, Local Path ID 1, version 16706 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 172.16.0.9 EVPN ESI: 0100.6cbc.a77c.c180.0000 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1

RP/0/RSP0/CPU0:router# show bgp l2vpn evpn rd 172.16.0.7:1 [2][0][48][0000.f65a.357c][128][10:1:1::93]/232
BGP routing table entry for [2][0][48][0000.f65a.357c][128][10:1:1::93]/232, Route Distinguisher: 172.16.0.7:1 Versions: Process bRIB/RIB SendTblVer Speaker 6059 6059 Last Modified: Feb 28 12:03:22.448 for 2d23h Paths: (2 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 172.16.0.1 from 172.16.0.9 (172.16.0.1) Received Label 24013, Second Label 24029 Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported, rib-install Received Path ID 0, Local Path ID 0, version 6043 Extended community: SoO:172.16.0.2:1 RT:100:1 RT:100:100 Originator: 172.16.0.1, Cluster list: 172.16.0.9 EVPN ESI: 0100.6cbc.a77c.c180.0000 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.1:1 Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 from 172.16.0.9 (172.16.0.2) Received Label 24014, Second Label 24033 Origin IGP, localpref 100, valid, internal, backup, add-path, import-candidate, imported, rib-install Received Path ID 0, Local Path ID 1, version 6059 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 172.16.0.9 EVPN ESI: 0100.6cbc.a77c.c180.0000 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1

Verify the remote peer gateway with host routes of IPv4 /32 addresses imported into the IP VRF routing table.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 707

Verify EVPN IRB

Configure EVPN IRB

RP/0/RSP0/CPU0:router# show bgp vpnv4 unicast vrf evpn1 10.1.1.93/32
BGP routing table entry for 10.1.1.93/32, Route Distinguisher: 172.16.0.7:11 Versions: Process bRIB/RIB SendTblVer Speaker 22202 22202 Last Modified: Feb 28 16:06:36.447 for 2d19h Paths: (2 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 172.16.0.1 from 172.16.0.9 (172.16.0.1) Received Label 24027 Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported Received Path ID 0, Local Path ID 0, version 22202 Extended community: SoO:172.16.0.2:1 RT:100:1 RT:100:100 Originator: 172.16.0.1, Cluster list: 172.16.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.1:1 >>>>
The source from
>>>> L2VPN and from
>>>> synced ARP entry. Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 from 172.16.0.9 (172.16.0.2) Received Label 24031 Origin IGP, localpref 100, valid, internal, backup, add-path, import-candidate, imported Received Path ID 0, Local Path ID 1, version 22201 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 17.0.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1 >>>>
The source from
>>>> L2VPN and
>>>> from dynamic
>>>> ARP entry.

RP/0/RSP0/CPU0:router# show bgp vpnv6 unicast vrf evpn1 10:1:1::93/128
BGP routing table entry for 10:1:1::93/128, Route Distinguisher: 172.16.0.7:11 Versions: Process bRIB/RIB SendTblVer Speaker 22163 22163 Last Modified: Feb 28 12:09:30.447 for 2d23h Paths: (2 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 172.16.0.1 from 172.16.0.9 (172.16.0.1) Received Label 24029 Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported Received Path ID 0, Local Path ID 0, version 22163 Extended community: SoO:172.16.0.2:1 RT:100:1 RT:100:100
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 708

Configure EVPN IRB

Verify EVPN IRB

Originator: 172.16.0.1, Cluster list: 172.16.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.1:1 >>>>
Source from
>>>> L2VPN and from
>>>> synced ARP entry. Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 from 172.16.0.9 (172.16.0.2) Received Label 24033 Origin IGP, localpref 100, valid, internal, backup, add-path, import-candidate, imported Received Path ID 0, Local Path ID 1, version 22163 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 172.16.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1 >>>>
Source from
>>>> L2VPN and from
>>>> dynamic ARP entry.

RP/0/RSP0/CPU0:router# show bgp vpnv6 unicast vrf evpn1 10:1:1::93/128
BGP routing table entry for 10:1:1::93/128, Route Distinguisher: 172.16.0.7:11 Versions: Process bRIB/RIB SendTblVer Speaker 22163 22163 Last Modified: Feb 28 12:09:30.447 for 2d23h Paths: (2 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 172.16.0.1 from 172.16.0.9 (172.16.0.1) Received Label 24029 Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported Received Path ID 0, Local Path ID 0, version 22163 Extended community: SoO:172.16.0.2:1 RT:100:1 RT:100:100 Originator: 172.16.0.1, Cluster list: 172.16.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.1:1 Path #2: Received by speaker 0 Not advertised to any peer Local 172.16.0.2 from 172.16.0.9 (172.16.0.2) Received Label 24033 Origin IGP, localpref 100, valid, internal, backup, add-path, import-candidate, imported Received Path ID 0, Local Path ID 1, version 22163 Extended community: SoO:172.16.0.2:1 RT:200:1 RT:700:100 Originator: 172.16.0.2, Cluster list: 172.16.0.9 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 172.16.0.2:1
Verify local forwarding with local adjacency which overwrite the RIB entries, and remote peer that use the IP VRF host route entries for IP VPN forwarding.
RP/0/RSP0/CPU0:router# show bgp vpnv4 unicast vrf evpn1 10.1.1.93/32

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 709

Verify EVPN IRB

Configure EVPN IRB

-- For local routing and forwarding

RP/0/RSP0/CPU0:PE11-R1#show route vrf evpn1 10.1.1.93

Routing entry for 10.1.1.93/32

Known via "bgp 3107", distance 200, metric 0, type internal

Installed Feb 28 15:57:28.154 for 2d20h

Routing Descriptor Blocks

172.16.0.2, from 172.16.0.9

>>> From MH-AA peer.

Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000

Route metric is 0

No advertising protos.

RP/0/RSP0/CPU0:PE11-R1# show cef vrf evpn1 10.1.1.93 location 0/0/CPU0

10.1.1.93/32, version 0, internal 0x1120001 0x0 (ptr 0x7b40052c) [1], 0x0 (0x7b286010), 0x0

(0x0)

Updated Feb 28 15:58:22.688

local adjacency 10.1.1.93

Prefix Len 32, traffic index 0, Adjacency-prefix, precedence n/a, priority 15

via 10.1.1.93/32, BVI1, 2 dependencies, weight 0, class 0 [flags 0x0]

path-idx 0 NHID 0x0 [0x7f531f88 0x0]

next hop

local adjacency

>>> Forwarding with local synced ARP adjacency entries.

For remote routing and forwarding:
RP/0/RSP0/CPU0:router# show route vrf evpn1 10.1.1.93
Routing entry for 10.1.1.93/32 Known via "bgp 3107", distance 200, metric 0 Number of pic paths 1 , type internal Installed Feb 28 16:06:36.431 for 2d20h Routing Descriptor Blocks 172.16.0.1, from 172.16.0.9 Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000 Route metric is 0 172.16.0.2, from 172.16.0.9, BGP backup path Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000 Route metric is 0 No advertising protos.
RP/0/RSP0/CPU0:router# show cef vrf evpn1 10.1.1.93 location 0/0/CPU0
10.1.1.93/32, version 86, internal 0x5000001 0x0 (ptr 0x99fac884) [1], 0x0 (0x0), 0x208 (0x96c58494) Updated Feb 28 16:06:39.285 Prefix Len 32, traffic index 0, precedence n/a, priority 3 via 172.16.0.1/32, 15 dependencies, recursive [flags 0x6000] path-idx 0 NHID 0x0 [0x97955380 0x0] recursion-via-/32 next hop VRF - 'default', table - 0xe0000000 next hop 172.16.0.1/32 via 34034/0/21 next hop 100.0.57.5/32 Te0/0/0/3 labels imposed {ImplNull 24011 24027} next hop 100.0.67.6/32 Te0/0/0/1 labels imposed {ImplNull 24009 24027} via 172.16.0.2/32, 11 dependencies, recursive, backup [flags 0x6100] path-idx 1 NHID 0x0 [0x979554a0 0x0] recursion-via-/32 next hop VRF - 'default', table - 0xe0000000 next hop 172.16.0.2/32 via 34035/0/21 next hop 100.0.57.5/32 Te0/0/0/3 labels imposed {ImplNull 24012 24031} next hop 100.0.67.6/32 Te0/0/0/1 labels imposed {ImplNull 24010 24031}

The following sections describe how to verify the subnet stretching.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 710

Configure EVPN IRB

EVPN IPv6 Hosts with Mobility

Verify the VRF.
RP/0/RP0/CPU0:leafW# show run vrf cust130
vrf cust130 address-family ipv4 unicast
import route-target 130:130
! export route-target
130:130 ! ! !
Verify the BGP configuration.
RP/0/RP0/CPU0:leafW# show run router bgp | begin vrf cust130
vrf cust130 rd auto address-family ipv4 unicast label mode per-vrf maximum-paths ibgp 10 redistribute connected !
!
Verify the L2VPN.
RP/0/RP0/CPU0:leafW# show run l2vpn bridge group bg130
l2vpn bridge group bg130
bridge-domain bd130 interface Bundle-Ether1.1300 ! interface Bundle-Ether5.1300 ! routed interface BVI130 evi 130 !
! ! !
EVPN IPv6 Hosts with Mobility
EVPN IPv6 Hosts with Mobility feature enables you to provide EVPN IPv6 service over IPv4-MPLS core network. This feature supports all-active multihoming and virtual machine (VM) or host move.
Service Providers (SPs) use a stable and established core with IPv4-MPLS backbone for providing IPv4 VPN services. The IPv6 VPN Provider Edge Transport over MPLS (IPv6 on Provider Edge Routers [6PE] and IPv6 on VPN Provider Edge Routers [6VPE]) facilitates SPs to offer IPv6 VPN services over IPv4 backbone without an IPv6 core. The provide edge (PE) routers run MP-iBGP to advertise IPv6 reachability and IPv6

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 711

Configure EVPN IPv6 Hosts with Mobility

Configure EVPN IRB

label distribution. For 6PE, the labels are allocated per IPv6 prefix learnt from connected customer edge (CE) routers and for 6VPE, the PE router can be configured to allocate labels on a per-prefix or per-CE and per-VRF level.
Mobility Support In global VRF, mobility is not supported. However, you can move a host from one ES to another ES within the same bridge domain. The host gets a new MAC address and IP address. The host can have multiple IP addresses for the same MAC address. In non-default VRF, mobility is supported with the following conditions:
· Basic MAC move: The IP address and MAC address remains the same. You can move a host from one ES to another ES with the same IP address and MAC address.
· Same MAC address but with a different IP address: The host gets a new IP address
· Same IP address but with a different MAC address: The host gets a new MAC address but retains the same IP address
· Multiple IP addresses with the same MAC address: Many VMs are involved in the same the MAC move

Restrictions
· In customer VRFs, when host routing is not configured, MAC-IP advertisement is different between zero ESI and none-zero ESI. When host routing is not configured, MAC-IP with non-zero ESI is advertised without L3 RT (VRF RT). MAC-IP with zero ESI is not advertised. The following table lists the behavior of MAC-IP advertisement with respect to ESI and host routing.

ESI Type

With host routing

Without host routing

MAC-IP with non-zero ESI Advertised with L3 VRF RT Advertised without L3 VRF RT

MAC-IP with zero ESI Advertised with L3 VRF RT Not advertised

· In global VRF, Layer 2 stretch is not supported. · MAC move in global VRF is only supported if the host is within the same bridge domain. You can move
a host from one ES to another ES within the same bridge domain. · Duplication of IP address detection is not supported. · Maximum number of leafs allowed per ESI is two.

Configure EVPN IPv6 Hosts with Mobility
Perform the following tasks to configure EVPN IPv6 Hosts with Mobility feature: · Configure VRF · Configure ISIS · Configure BGP · Configure AC interface

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 712

Configure EVPN IRB

Configure EVPN IPv6 Hosts with Mobility

· Configure BVI interface
· Configure EVPN
· Configure L2VPN
Note · You cannot configure the EVPN remote peer using the VPNv4 unicast if you have configured the advertise vpnv4 unicast re-originated command under the L2VPN EVPN address-family. You can either configure the VPNv4 unicast or the advertise vpnv4 unicast re-originated under L2VPN EVPN address-family.
· You cannot configure the EVPN remote peer using the VPNv6 unicast if you have configured the advertise vpnv6 unicast re-originated command under the L2VPN EVPN address-family. You can either configure the VPNv6 unicast or the advertise vpnv6 unicast re-originated under L2VPN EVPN address-family.
/* Configure VRF */
Router# configure Router(config)# vrf cust102 Router(config-vrf)# address-family ipv4 unicast Router(config-vrf-af)# import route-target 160102:16102 Router(config-vrf-af)# export route-target 160102:16102 Router(config-vrf-af)# exit ! Router(config-vrf)# address-family ipv6 unicast Router(config-vrf-af)# import route-target 6160102:16102 Router(config-vrf-af)# export route-target 6160102:16102 Router(config-vrf-af)# commit !
/* Configure ISIS */
Router# configure Route(config)# router isis v6 Route(config-isis)# 49.0001.0000.0160.0005.00 Route(config-isis)# nsr Route(config-isis)# log adjacency changes Route(config-isis)# lsp-gen-interval maximum-wait 5000 initial-wait 1 secondary-wait 20 Route(config-isis)# lsp-mtu 1468 Route(config-isis)# lsp-refresh-interval 65000 Route(config-isis)# max-lsp-lifetime 65535 Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide Route(config-isis-af)# microloop avoidance protected Route(config-isis-af)# spf-interval maximum-wait 5000 initial-wait 1 secondary-wait 20 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface Bundle-Ether10 Route(config-isis-if)# point-to-point Route(config-isis-if)# address-family ipv4 unicast

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 713

Configure EVPN IPv6 Hosts with Mobility

Configure EVPN IRB

Route(config-isis-af)# fast-reroute per-prefix Route(config-isis-af)# fast-reroute per-prefix ti-lfa Route(config-isis-af)# metric 10 Route(config-isis-af)# exit ! Route(config-isis)# interface Bundle-Ether20 Route(config-isis-if)# point-to-point Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# fast-reroute per-prefix Route(config-isis-af)# fast-reroute per-prefix ti-lfa Route(config-isis-af)# metric 10 Route(config-isis-af)# exit ! Route(config-isis)# interface loopback0 Route(config-isis-if)# passive Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# exit ! Route(config-isis)# interface loopback10 Route(config-isis-if)# passive Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 1605 Route(config-isis-af)# commit Route(config-isis-af)# exit !

/* Configure Segment Routing */

Router# configure Router(config)# segment-routing Router(config-sr)# global-block 16000 23999 Router(config-sr)# commit

/* Configure BGP */

Router(config)# router bgp 100

Router(config-bgp)# bfd minimum-interval 50

Router(config-bgp)# bfd multiplier 3

Router(config-bgp)# bgp router-id 160.0.0.5

Router(config-bgp)# address-family ipv4 unicast

---> To support V4 Global VRF

Router(config-bgp-af)# maximum-paths ibgp 10 unequal-cost ---> ECMP

Router(config-bgp-af)# redistribute connected --> V4 Global VRF

Router(config-bgp-af)# exit

!

Router(config-bgp)# address-family ipv4 unicast

---> VRF

Router(config-bgp-af)# vrf all

Router(config-bgp-af)# label mode per-vrf

Router(config-bgp-af)# exit

!

Router(config-bgp)# address-family ipv6 unicast ---> For 6PE

Router(config-bgp-af)# label mode per-vrf

Router(config-bgp-af)# maximum-paths ibgp 8

Router(config-bgp-af)# redistribute static

Router(config-bgp-af)# allocate-label all

Router(config-bgp-af)# exit

!

Router(config-bgp)# address-family vpnv6 unicast ---> 6 VPE

Router(config-bgp-af)# vrf all

Router(config-bgp-af)# label mode per-vrf

Router(config-bgp-af)# exit

!

Router(config-bgp)# address-family l2vpn evpn ----> EVPN

Router(config-bgp-af)# bgp implicit-import

----> Global VRF

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 714

Configure EVPN IRB

Configure EVPN IPv6 Hosts with Mobility

Router(config-bgp-af)# exit ! Router(config-bgp)# neighbor-group evpn-rr Router(config-bgp-nbr)# remote-as 100 Router(config-bgp-nbr)# bfd fast-detect Router(config-bgp-nbr)# update-source loopback0 Router(config-bgp-nbr)# address-family ipv4 unicast Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# route-policy nh-lo10 out Router(config-bgp-nbr-af)# exit ! Router(config-bgp-nbr)# address-family ipv6 labeled-unicast ----> For 6PE Router(config-bgp-nbr-af)# route-policy pass-all out Router(config-bgp-nbr-af)# exit ! Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy pass-all in Router(config-bgp-nbr-af)# route-policy nh-lo10 out Router(config-bgp-nbr-af)# advertise vpnv4 unicast re-originated -> For Route Type 5 Router(config-bgp-nbr-af)# advertise vpnv6 unicast re-originated -> For Route Type 5 Router(config-bgp-nbr-af)# exit ! Router(config-bgp)# neighbor 160.0.0.1 Router(config-bgp-nbr)# use neighbor-group evpn-rr Router(config-bgp-nbr)# exit ! Router(config-bgp)# neighbor 160.0.0.2 Router(config-bgp-nbr)# use neighbor-group evpn-rr Router(config-bgp-nbr)# exit ! Router(config-bgp)# vrf all Router(config-bgp-vrf)# rd 1605:102 Router(config-bgp-vrf)# address-family ipv4 unicast Router(config-bgp-vrf-af)# label mode per-vrf Router(config-bgp-vrf-af)# maximum-paths ibgp 10 unequal-cost Router(config-bgp-vrf-af)# redistribute connected ---> Triggers Route Type 5 Router(config-bgp-vrf-af)# exit ! Router(config-bgp-vrf)# address-family ipv6 unicast Router(config-bgp-vrf-af)# label mode per-vrf Router(config-bgp-vrf-af)# maximum-paths ibgp 10 unequal-cost Router(config-bgp-vrf-af)# redistribute connected Router(config-bgp-vrf-af)# exit !
/* Configure AC interface */
Router(config)# interface Bundle-Ether1.102 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 102 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit Router(config-l2vpn-subif)# exit
/* Configure BVI interface */
Router(config)# interface BVI100 Router(config-if)# ipv4 address 56.78.100.1 255.255.255.0 Router(config-if)# ipv6 address 56:78:100::1/64 Router(config-if)# mac-address 22.22.22 Router(config-if)# exit ! Router(config)# interface BVI102 Router(config-if)# host-routing

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 715

Running Configuration

Configure EVPN IRB

Router(config-if)# vrf cust102 Router(config-if-vrf)# ipv4 address 56.78.102.1 255.255.255.0 Router(config-if-vrf)# ipv6 nd dad attempts 0 Router(config-if-vrf)# ipv6 address 56:78:100::1/64 Router(config-if-vrf)# ipv6 address 56:78:102::1/64 Router(config-if-vrf)# mac-address 22.22.22 Router(config-if)# commit
/* Configure EVPN, and configure main bundle ethernet segment parameters in EVPN */
Router# configure Router(config)# evpn Router(config-evpn)# evi 102 Router(config-evpn-evi)# bgp Router(config-evpn-evi)# rd 1605:102 Router(config-evpn-evi-bgp)# route-target import 160102:102 Router(config-evpn-evi-bgp)# route-target export 160102:102 Router(config-evpn-evi-bgp)# exit Router(config-evpn-evi)# advertise-mac Router(config-evpn-evi)# exit ! Router(config-evpn)# interface Bundle-Ether1 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 56.56.56.56.56.56.56.56.01 Router(config-evpn-ac-es)# exit ! Router(config-evpn)# interface Bundle-Ether2 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 56.56.56.56.56.56.56.56.02 Router(config-evpn-ac-es)# commit
/* Configure L2VPN */
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group bg102 Router(config-l2vpn-bg)# bridge-domain bd102 Router(config-l2vpn-bg-bd)# interface Bundle-Ether1.102 Router(config-l2vpn-bg-bd-ac)# exit ! Router(config-l2vpn-bg-bd)# interface Bundle-Ether2.102 Router(config-l2vpn-bg-bd-ac)# exit ! Router(config-l2vpn-bg-bd)# interface Bundle-Ether3.102 Router(config-l2vpn-bg-bd-ac)# exit ! Router(config-l2vpn-bg-bd)# interface Bundle-Ether4.102 Router(config-l2vpn-bg-bd-ac)# exit ! Router(config-l2vpn-bg-bd)# interface Bundle-Ether5.102 Router(config-l2vpn-bg-bd-ac)# routed interface BVI102 Router(config-l2vpn-bg-bd-bvi)# evi 102 Router(config-l2vpn-bg-bd-bvi-evi)# commit
Running Configuration
/* Configure VRF */
vrf cust102

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 716

Configure EVPN IRB

Running Configuration

address-family ipv4 unicast import route-target 160102:16102 ! export route-target 160102:16102 ! ! address-family ipv6 unicast import route-target 6160102:16102 ! export route-target 6160102:16102 ! ! !
/ * Configure ISIS */
router isis v6 net 49.0001.0000.0160.0005.00 nsr log adjacency changes lsp-gen-interval maximum-wait 5000 initial-wait 1 secondary-wait 20 lsp-mtu 1468 lsp-refresh-interval 65000 max-lsp-lifetime 65535 address-family ipv4 unicast metric-style wide microloop avoidance protected spf-interval maximum-wait 5000 initial-wait 1 secondary-wait 20 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local ! interface Bundle-Ether10 point-to-point address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa metric 10 ! ! interface Bundle-Ether20 point-to-point address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa metric 10 ! ! interface Loopback0 passive address-family ipv4 unicast ! ! interface Loopback10 passive address-family ipv4 unicast prefix-sid index 1605 ! !
!

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 717

Running Configuration

Configure EVPN IRB

/ * Configure Segment Routing */

segment-routing global-block 16000 23999
!

/ * Configure BGP */

router bgp 100

bfd minimum-interval 50

bfd multiplier 3

bgp router-id 160.0.0.5

address-family ipv4 unicast

---> To support V4 Global VRF

maximum-paths ibgp 10 unequal-cost ---> ECMP

redistribute connected --> V4 Global VRF

!

address-family vpnv4 unicast ---> VRF

vrf all

label mode per-vrf

!

address-family ipv6 unicast ---> For 6PE

label mode per-vrf

maximum-paths ibgp 8

redistribute connected

redistribute static

allocate-label all

!

address-family vpnv6 unicast ---> 6VPE

vrf all

label mode per-vrf

!

address-family l2vpn evpn ----> EVPN

bgp implicit-import

----> Global VRF

!

neighbor-group evpn-rr remote-as 100 bfd fast-detect update-source Loopback0 address-family ipv4 unicast route-policy pass-all in route-policy nh-lo10 out ! address-family ipv6 labeled-unicast ----> For 6PE route-policy pass-all out ! address-family l2vpn evpn route-policy pass-all in route-policy nh-lo10 out advertise vpnv4 unicast re-originated ---> For Route Type 5 advertise vpnv6 unicast re-originated ----> For Route Type 5 ! ! neighbor 160.0.0.1 use neighbor-group evpn-rr ! neighbor 160.0.0.2 use neighbor-group evpn-rr ! vrf cust102 rd 1605:102 address-family ipv4 unicast label mode per-vrf maximum-paths ibgp 10 unequal-cost

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 718

Configure EVPN IRB
redistribute connected <----- Triggers Route Type 5 ! address-family ipv6 unicast label mode per-vrf maximum-paths ibgp 10 unequal-cost redistribute connected ! !
/* Configure AC interface */
interface Bundle-Ether1.102 l2transport encapsulation dot1q 102 rewrite ingress tag pop 1 symmetric
! /* Configure BVI interface */ interface BVI100
ipv4 address 56.78.100.1 255.255.255.0 ipv6 address 56:78:100::1/64 mac-address 22.22.22 ! interface BVI102 host-routing vrf cust102 ipv4 address 56.78.102.1 255.255.255.0 ipv6 nd dad attempts 0 ipv6 address 56:78:100::1/64 ipv6 address 56:78:102::1/64 mac-address 22.22.22 !
/* Configure EVPN */
evpn evi 102 bgp rd 1605:102 route-target import 160102:102 route-target export 160102:102 ! advertise-mac ! !
! interface Bundle-Ether1
ethernet-segment identifier type 0 56.56.56.56.56.56.56.56.01 ! ! interface Bundle-Ether2 ethernet-segment identifier type 0 56.56.56.56.56.56.56.56.02 ! !
/* Configure L2VPN */
l2vpn bridge group bg102 bridge-domain bd102 interface Bundle-Ether1.102

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 719

Verification

Configure EVPN IRB

Verification

! interface Bundle-Ether2.102 ! interface Bundle-Ether3.102 ! interface Bundle-Ether4.102 ! interface Bundle-Ether5.102 ! routed interface BVI102 ! evi 102 ! ! ! !
Verify that you have configured EVPN IPv6 Hosts with Mobility feature is configured.
/* 6PE and Static Route Advertisement */ Host route is advertised as EVPN Route Type 2
Router# show bgp ipv6 unicast 56:78:100::2 BGP routing table entry for 56:78:100::2/128 Versions:
Process bRIB/RIB SendTblVer Speaker 212 212 Local Label: 2 Last Modified: Oct 31 19:13:10.998 for 00:00:19 Paths: (1 available, best #1) Not advertised to any peer Path #1: Received by speaker 0 Not advertised to any peer Local 160.5.5.5 (metric 20) from 160.0.0.1 (160.0.0.5) Received Label 2 Origin IGP, localpref 100, valid, internal, best, group-best, imported Received Path ID 0, Local Path ID 0, version 212 Extended community: Flags 0x20: SoO:160.5.5.5:100 RT:160100:100 mac: 00:06:01:00:01:02 Originator: 160.0.0.5, Cluster list: 100.0.0.4 Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 1605:100
/* Manually configured static route in global VRF */
Router# show bgp ipv6 unicast 56:78:100::2
BGP routing table entry for 30::1/128 Versions:
Process bRIB/RIB SendTblVer Speaker 9 9 Local Label: 2 Last Modified: Oct 30 20:25:17.159 for 23:15:55 Paths: (2 available, best #2) Advertised to update-groups (with more than one peer): 0.2 Path #1: Received by speaker 0 Not advertised to any peer Local 160.0.0.6 (metric 20) from 160.0.0.1 (160.0.0.6) Received Label 2

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 720

Configure EVPN IRB

Verification

Origin incomplete, metric 0, localpref 100, valid, internal, labeled-unicast Received Path ID 0, Local Path ID 0, version 0 mac: 10:11:04:64:f2:7f Originator: 160.0.0.6, Cluster list: 100.0.0.4 Path #2: Received by speaker 0 Advertised to update-groups (with more than one peer): 0.2 Local 56:78:100::2 from :: (160.0.0.5) Origin incomplete, metric 0, localpref 100, weight 32768, valid, redistributed, best, group-best Received Path ID 0, Local Path ID 0, version 9 mac: 10:11:04:64:f2:7f
/* Verify Ethernet Segments are peering for Dual homing */
Router# show evpn ethernet-segment int bundle-Ether 1
Ethernet Segment Id Interface Nexthops ------------------------ ---------------------------------- -------------------0056.5656.5656.5656.5601 BE1 160.5.5.5
160.6.6.6 -----------------------------------------------------------
/* Verify DF election */
Router# show evpn ethernet-segment int bundle-Ether 1 carving detail Legend:
A - Load-balancing mode and Access Protection incompatible, B - No Forwarders EVPN-enabled, C - Backbone Source MAC missing (PBB-EVPN), RT - ES-Import Route Target missing, E - ESI missing, H - Interface handle missing, I - Name (Interface or Virtual Access) missing, M - Interface in Down state, O - BGP End of Download missing, P - Interface already Access Protected, Pf - Interface forced single-homed, R - BGP RID not received, S - Interface in redundancy standby state, X - ESI-extracted MAC Conflict SHG - No local split-horizon-group label allocated
Ethernet Segment Id Interface Nexthops ------------------------ ---------------------------------- -------------------0056.5656.5656.5656.5601 BE1 160.5.5.5
160.6.6.6 ES to BGP Gates : Ready ES to L2FIB Gates : Ready Main port : Interface name : Bundle-Ether1 Interface MAC : 008a.9644.acdd IfHandle : 0x080004dc State : Up Redundancy : Not Defined ESI type : 0 Value : 56.5656.5656.5656.5601 ES Import RT : 5656.5656.5656 (from ESI) Source MAC : 0000.0000.0000 (N/A) Topology : Operational : MH Configured : All-active (AApF) (default) Primary Services : Auto-selection

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 721

EVPN IRB: DHCPv4 and DHCPv6 Relay

Configure EVPN IRB

Secondary Services: Auto-selection Service Carving Results: Forwarders : 161 Permanent : 10 EVI:ETag P : 700:1, 701:1, 702:1, 703:1, 704:1, 705:1 EVI:ETag P : 706:1, 707:1, 708:1, 709:1 Elected : 76 EVI E : 100, 102, 104, 106, 108, 110 EVI E : 112, 114, 116, 118, 120, 122, EVI E : 124, 126, 128, 130, 132, 134, EVI E : 136, 138, 140, 142, 144, 146, EVI E : 148, 150, 152, 154, 156, 158, EVI E : 160, 162, 164, 166, 168, 170, EVI E : 172, 174, 176, 178, 180, 182, EVI E : 184, 186, 188, 190, 192, 194, EVI E : 196, 198, 200, 202, 204, 206, EVI E : 208, 210, 212, 214, 216, 218, EVI E : 220, 222, 224, 226, 228, 230, EVI E : 232, 234, 236, 238, 240, 242, EVI E : 244, 246, 248, 250 Not Elected : 75 EVI NE : 101, 103, 105, 107, 109, 111 EVI NE : 113, 115, 117, 119, 121, 123, EVI NE : 125, 127, 129, 131, 133, 135, EVI NE : 137, 139, 141, 143, 145, 147, EVI NE : 149, 151, 153, 155, 157, 159, EVI NE : 161, 163, 165, 167, 169, 171, EVI NE : 173, 175, 177, 179, 181, 183, EVI NE : 185, 187, 189, 191, 193, 195, EVI NE : 197, 199, 201, 203, 205, 207, EVI NE : 209, 211, 213, 215, 217, 219, EVI NE : 221, 223, 225, 227, 229, 231, EVI NE : 233, 235, 237, 239, 241, 243, EVI NE : 245, 247, 249 MAC Flushing mode : STP-TCN Peering timer : 3 sec [not running] Recovery timer : 30 sec [not running] Carving timer : 0 sec [not running] Local SHG label : 68663 Remote SHG labels : 1 68670 : nexthop 160.6.6.6
EVPN IRB: DHCPv4 and DHCPv6 Relay
EVPN IRB: DHCPv4 and DHCPv6 Relay feature provides DHCP support for the end users in EVPN multi-homing Active-Active (MH-AA) deployment scenario. This feature enables reduction of traffic flooding, increase in load sharing at VTEP, faster convergence during link and device failures, and simplification of data center automation.
DHCPv4 and DHCPv6 Relay agents relay request packets, coming over the access interface, to external DHCPv4 and DHCPv4 server to request allocation of addresses (/32) and IANA (::/128) for the end user.
DHCPv4 and DHCPv6 Relay profiles are configured on BVI interfaces which relay DHCPv4 or DHCPv4 requests from Layer 2 (L2) attachment circuit (AC) to external DHCP servers for host IPv4 addresses (/32) and IANA (::128) IPv6 addresses.
This feature is compliant with RFC-6607.
Multi-homing Active-Active EVPN Gateways

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 722

Configure EVPN IRB

EVPN IRB: DHCPv4 and DHCPv6 Relay

Multi-homing Active-Active EVPN Gateways are configured with anycast IP address and MAC addresses. ASR 9000 devices have centralized L2//Layer 3 (L3) gateway. Based on native EVPN and MAC learning, IRB uses distributed anycast IP and anycast MAC address. Static clients are configured with anycast gateway address as the default gateway. DHCP client sends DHCP requests for IP addresses with BVI as the gateway. L2 access can be either single homing or multi-homing, Not all access protocols is supported with IRB. There may or may not be L2 stretch between DC centers. Internet gateway is also included for clients to access external network. No EVPN is configured on the Internet gateway.
EVPN IRB Route Distribution
In EVPN IRB DHCPv4 and DHCPv6, DHCP application processes and DHCP packet forwarding are independent of EVPN IRB L2 and L3 routing. There is no subscriber routing information with the stateless DHCP relay. But DHCP clients work similar to static clients in the EVPN core for L2 and L3 bridging and routing. When the relay information option, relay information option vpn, relay information option von-mode cisco and relay information option von-mode rfc commands are configured on the DHCP relay agent, the DHCP relay agent inserts the sub options of DHCP Option 82, such as subnet selection and VPN ID options. These options are considered by DHCP server while allocating IP address.
DHCP clients use the L2 AC interface to access EVPN bridge domain and use BVI interface as default gateway. So the clients must get the IP addresses from the DHCP server as in the same subnet of BVI interface.
DHCP Request Forwarding Path
Clients broadcast requests to the access switch with DHAA to EVPN PE routers. The access switch does load balancing. The load balancing configurations in access switch will impact PE in DH-AA and DHCP to send the DHCP requests. The DHCP request reaches the Bridge Domain (BD) BVI interface which is configured with DHCP relay. Because AA PE routers are configured the same IP addresses, BVI IP addresses cannot be used as DHCP relay source IP address.
For DHCPv4, configuring GIADDR field for each DHCP relay profile is allowed. Loopback interface with unique IP addresses can be configured in VRF which is reachable to DHCP servers. Configuring DHCP relay source address is not supported.
In case of DHCPv6 servers, DHCPv6 relay picks up an available Loopback interface IPv6 address as DHCPv6 relay source IP address. After the DHCP clients get the IP address. DHCP clients are not normally routable to DHCP servers. DHCP clients send unicast DHCP renew messages to the DHCP server. If the DHCP servers are not routable, the DHCP unicast messages fail, then the DHCP client sends broadcast rebinding messages with the corrsponding DHCP relay.
In the below figure, DHCP clients are configured on PE11 and PE12.
Figure 100: EVPN IRB with ASR 9000 as Centralized DCI Gateway

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 723

Configure EVPN IRB: DHCPv4 and DHCPv6 Relay

Configure EVPN IRB

Configure EVPN IRB: DHCPv4 and DHCPv6 Relay
Perform the following tasks to configure the EVPN IRB: DHCPv4 and DHCPv6 Relay feature:
/* PE11 configuration */
Router(config)# dhcp ipv4 Router(config-dhcpv4)# profile DHCPv4_RELAY relay Router(config-dhcpv4-relay-profile)# helper-address vrf default 10.20.20.20 giaddr 192.0.2.1 Router(config-dhcpv4-relay-profile)# relay information option vpn Router(config-dhcpv4-relay-profile)# relay information option vpn-mode rfc Router(config-dhcpv4-relay-profile)# exit Router(config-dhcpv4)# exit Router(config)# interface BVI1 relay profile DHCPv4_RELAY
Router(config)# dhcp ipv6 Router(config-dhcpv6)# profile DHCPv6_RELAY relay Router(config-dhcpv6-relay-profile)# helper-address vrf default 20::20 Router(config-dhcpv6-relay-profile)# exit Router(config-dhcpv6)# exit Router(config)# interface BVI1 relay profile DHCPv6_RELAY Router(config-if)# exit Router(config)# interface Loopback 5 Router(config-if)# ipv4 address 192.0.2.1 255.255.255.255 Router(config-if)# exit Router(config)# interface BVI1 Router(config-if)# host-routing Router(config-if)# ipv4 address 10.10.10.2 255.255.255.0 Router(config-if)# ipv6 address 2001:DB8:0:ABCD::1/64 Router(config-if)# ipv6 enable Router(config-if)# mac-address 0.12.3456
/* PE12 configuration */ Router# dhcp ipv4 Router(config-dhcpv4)# profile DHCPv4_RELAY relay Router(config-dhcpv4-relay-profile)# helper-address vrf default 10.20.20.20 giaddr 127.0.0.1 Router(config-dhcpv4-relay-profile)# relay information option vpn Router(config-dhcpv4-relay-profile)# relay information option vpn-mode cisco Router(config-dhcpv4-relay-profile)# exit Router(config-dhcpv4)# exit Router(config)# interface BVI1 relay profile DHCPv4_RELAY Router(config)# dhcp ipv6 Router(config-dhcpv6)# profile DHCPv6_RELAY relay Router(config-dhcpv6-relay-profile)# helper-address vrf default 20::20 Router(config-dhcpv6-relay-profile)# exit Router(config-dhcpv6)# exit Router(config) interface BVI1 relay profile DHCPv6_RELAY Router(config)# interface Loopback 6 Router(config)# exit Router(config-if)# ipv4 address 127.0.0.1 255.255.255.255
Router(config)# interface BVI1 Router(config-if)# host-routing Router(config-if)# vrf evpn 1 Router(config-if)# exit Router(config-if)# ipv4 address 10.10.10.2 255.255.255.0 Router(config-if)# proxy-arp Router(config-if)# ipv6 address 3000:0:0:8003::2/64 Router(config-if)# ipv6 enable

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 724

Configure EVPN IRB

Configure EVPN IRB: DHCPv4 and DHCPv6 Relay

Router(config-if)# mac-address 1122.3344.5566
Running Configuration
/* PE11 Configuration */
dhcp ipv4 profile DHCPv4_RELAY relay
helper-address vrf default 10.20.20.20 giaddr 192.0.2.1 relay information option vpn relay information option vpn-mode cisco ! interface BVI1 relay profile DHCPv4_RELAY ! dhcp ipv6 profile DHCPv6_RELAY relay helper-address vrf default 20::20 ! interface BVI1 relay profile DHCPv6_RELAY ! interface Loopback5 ipv4 address 192.0.2.1 255.255.255.0 ! interface BVI1 host-routing ipv4 address 10.10.10.2 255.255.255.0 ipv6 address 2001:DB8:0:ABCD::1/64 ipv6 enable mac-address 0.12.3456 !
/* PE12 Configuration */
dhcp ipv4 profile DHCPv4_RELAY relay
helper-address vrf default 10.20.20.20 giaddr 127.0.0.1 relay information option vpn relay information option vpn-mode cisco ! interface BVI1 relay profile DHCPv4_RELAY ! dhcp ipv6 profile DHCPv6_RELAY relay helper-address vrf default 20::20 ! interface BVI1 relay profile DHCPv6_RELAY ! interface Loopback6 ipv4 address 127.0.0.1 255.255.255.255 ! interface BVI1 host-routing vrf evpn1 ipv4 address 10.10.10.2 255.255.255.0 proxy-arp ipv6 address 3000:0:0:8003::2/64 ipv6 enable mac-address 1122.3344.5566 !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 725

Configure EVPN IRB: DHCPv4 and DHCPv6 Relay

Configure EVPN IRB

Verification Verify the DHCPv4 configuration.

Router# show running-configuration dhcp ipv4 Thu Feb 15 21:44:31.550 IST dhcp ipv4
profile DHCPv4_RELAY relay helper-address vrf default 10.20.20.20 giaddr 192.0.2.1 relay information option vpn relay information option vpn-mode rfc
! interface BVI1 relay profile DHCPv4_RELAY !

Verify the DHCPv4 relay profile details.

Router# show dhcp ipv4 relay profile name DHCPv4_RELAY Thu Feb 15 21:47:32.247 IST Profile: DHCPv4_RELAY Helper Addresses:
10.20.20.20, vrf default, giaddr 192.0.2.1 Information Option: Disabled Information Option Allow Untrusted: Disabled Information Option VPN: Enabled Information Option VPN Mode: RFC Information Option Policy: Replace Information Option Check: Disabled GIADDR Policy: Keep Broadcast-flag Policy: Ignore Mac Mismatch Action: Forward VRF References: Interface References: BVI1

Verify the DHCPv4 relay packet statistics.

Router# show dhcp ipv4 relay statistics

Fri Feb 16 12:34:51.202 IST

VRF

|

RX | TX | DR |

-------------------------------------------------------

default

|

4 | 4|0|

**nVSatellite

|

0 | 0|0|

Verify DHCPv4 relay packet statistics in detail.

Router# show dhcp vrf default ipv4 relay statistics Fri Feb 16 12:36:05.544 IST

DHCP IPv4 Relay Statistics for VRF default:

TYPE

| RECEIVE | TRANSMIT |

DROP

|

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 726

Configure EVPN IRB

Configure EVPN IRB: DHCPv4 and DHCPv6 Relay

-------------------------------------------------------------------

DISCOVER

|

1|

1|

0|

OFFER

|

1|

1|

0|

REQUEST

|

1|

1|

0|

DECLINE

|

0|

0|

0|

ACK

|

1|

1|

0|

NAK

|

0|

0|

0|

RELEASE

|

0|

0|

0|

INFORM

|

0|

0|

0|

LEASEQUERY

|

0|

0|

0|

LEASEUNASSIGNED |

0|

0|

0|

LEASEUNKNOWN

|

0|

0|

0|

LEASEACTIVE

|

0|

0|

0|

BOOTP-REQUEST |

0|

0|

0|

BOOTP-REPLY

|

0|

0|

0|

BOOTP-INVALID |

0|

0|

0|

Verify the DHCPv6 configuration.

Router# show running-configuration dhcp ipv6 Fri Feb 16 15:40:52.721 IST dhcp ipv6 profile DHCPv6_RELAY relay
helper-address vrf default 20::20 ! interface BVI1 relay profile DHCPv6_RELAY !

Verify DHCPv6 relay profile.

Router# show dhcp ipv6 relay statistics Fri Feb 16 15:41:00.456 IST

VRF

|

RX | TX | DR |

-------------------------------------------------------------------------------------------

default

|

4 | 4|0|

**nVSatellite

|

0 | 0|0|

Verify DHCPv6 relay packet statistics in detail.

Routerr# show dhcp ipv6 relay statistics vrf default Fri Feb 16 15:41:09.991 IST

DHCP IPv6 Relay Statistics for VRF default:

TYPE

| RECEIVE | TRANSMIT |

DROP

|

-------------------------------------------------------------------

SOLICIT

|

1|

0|

0|

ADVERTISE

|

0|

1|

0|

REQUEST

|

1|

0|

0|

REPLY

|

0|

1|

0|

CONFIRM

|

0|

0|

0|

DECLINE

|

0|

0|

0|

RENEW

|

0|

0|

0|

REBIND

|

0|

0|

0|

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 727

Duplicate IP Address Detection

Configure EVPN IRB

RELEASE

|

RECONFIG

|

INFORM

|

RELAY_FWD

|

RELAY_REP

|

LEASEQUERY

|

LEASEQUERY_REP |

LEASEQUERY_DONE |

LEASEQUERY_DATA |

0| 0| 0| 0| 0| 0| 0| 0| 0|

0| 0| 0| 0| 0| 0| 0| 0| 0|

0| 0| 0| 0| 0| 0| 0| 0| 0|

Duplicate IP Address Detection
The Duplicate IP Address Detection feature automatically detects any host with a duplicate IP address and blocks all MAC-IP routes that have a duplicate IP address.
This protects the network from hosts that are assigned duplicate IP addresses unintentionally or by malicious intent in an EVPN fabric. Hosts with duplicate IP address cause unnecessary churn in a network and causes traffic loss to either or both the hosts with the same IP address.
The system handles mobility of EVPN hosts by keeping track of MAC and IP addresses as they move from one host to another. If two hosts are assigned the same IP address, the IOS XR system keeps learning and re-learning MAC-IP routes from both the hosts. Each time it learns the MAC-IP route from one host, it is counted as one move since the newly learnt route supersedes the route previously learnt from the other host. This continues back and forth until the IP address is marked as duplicate based on the configured parameters.
It uses the following parameters to determine when an IP address should be marked as duplicate, and frozen or unfrozen as it moves between different hosts. The configurable parameters are:
· move-interval: The period within which a MAC or IP address has to move certain number of times between different hosts to be considered as duplicate and frozen temporarily. This number is specified in the move-count parameter.
· move-count: The number of times a MAC or IP address has to move within the interval specified for the move-interval parameter between different hosts to be considered a duplicate.
· freeze-time: The length of time a MAC or IP address is locked after it has been detected as a duplicate. After this period, the IP address is unlocked and it is allowed to learn again.
· retry-count: The number of times a MAC or IP address is unlocked after it has been detected as a duplicate before it is frozen permanently.
The system maintains a count of the number of times an IP address has been moved from one host to another host, either to another local host or to a host behind a remote Top of Rack (TOR). If an IP address moves certain number of times specified in the move-count parameter within the interval specified in the move-interval parameter is considered a duplicate IP address. All MAC-IP routes with that IP address is frozen for the time specified in the freeze-time parameter. A syslog notifies the user that the particular IP address is frozen. While an IP address is frozen, any new MAC-IP routes or updates to existing MAC-IP routes with the frozen IP address are ignored.
After freeze-time has elapsed, the corresponding MAC-IP routes are unfrozen and the value of the move-count is reset to zero. For any unfrozen local MAC-IP routes, an ARP probe and flush are initiated while the remote MAC-IP routes are put in the probe mode. This restarts the duplicate detection process.
The system also maintains the information about the number of times a particular IP address has been frozen and unfrozen. If an IP address is marked as duplicate after it is unfrozen retry-count times, it is frozen

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 728

Configure EVPN IRB

Configure Duplicate IP Address Detection

permanently until user manually unfreezes it. Use the following commands to manually unfreeze frozen MAC, IPv4 and IPV6 addresses respectively:
· clear l2route evpn mac{mac-address} | all [evi evi] frozen-flag
· clear l2route evpn ipv4{ipv4-address} | all [evi evi] frozen-flag
· clear l2route evpn ipv6{ipv6-address} | all [evi evi] frozen-flag

Configure Duplicate IP Address Detection
Perfrom these tasks to configure Duplicate IP Address Detection feature.
Configuration Example
/* Ipv4 Address Duplicate Detection Configuration */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# host ipv4-address duplicate-detection RP/0/RSP0/CPU0:router(config-evpn-host-ipv4-addr)# move-count 2 RP/0/RSP0/CPU0:router(config-evpn-host-ipv4-addr)# freeze-time 10 RP/0/RSP0/CPU0:router(config-evpn-host-ipv4-addr)# retry-count 2 RP/0/RSP0/CPU0:router(config-evpn-host-ipv4-addr)# commit
/* Ipv6 Address Duplicate Detection Configuration */
RP/0/RSP0/CPU0:router# configure RP/0/RSP0/CPU0:router(config)# evpn RP/0/RSP0/CPU0:router(config-evpn)# host ipv6-address duplicate-detection RP/0/RSP0/CPU0:router(config-evpn-host-ipv6-addr)# move-count 2 RP/0/RSP0/CPU0:router(config-evpn-host-ipv6-addr)# freeze-time 10 RP/0/RSP0/CPU0:router(config-evpn-host-ipv6-addr)# retry-count 2 RP/0/RSP0/CPU0:router(config-evpn-host-ipv6-addr)# commit
Running Configuration
This section shows the running configuration to detect duplicate IP address.
evpn host ipv4-address duplicate-detection move-count 2 freeze-time 10 retry-count 2 !
evpn host ipv6-address duplicate-detection move-count 2 freeze-time 10 retry-count 2 !

Verification

The show output given in the following section display the details of the duplicate IP address detection and recovery parameters.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 729

EVPN E-Tree Using RT Constraints

Configure EVPN IRB

RP/0/RSP0/CPU0:router#show l2route evpn mac-ip all detail

Flags:

(Stt)=Static; (L)=Local; (R)=Remote; (F)=Flood; (N)=No Redistribution; (Rtr)=RP/0/RSP0/CPU0:router MAC; (B)=Best Route; (S)=Peer Sync; (Spl)=Split; (Rcv)=Recd; (D)=Duplicate MAC; (Z)=Frozen MAC;

Topo ID Mac Address

IP Address Prod Next Hop(s)

Seq No

Opaque Data Type Opaque Data Len Opaque Data Value

------- -----------

---------- ---- ----------

------

---------------- --------------- -----------------

33

0022.6730.0001 10.130.0.2 L2VPN Bundle-Ether6.1300 0

0x06000000

Flags ----SB 0 12

Related Topics · Duplicate IP Address Detection, on page 728
Associated Commands · evpn host ipv4-address duplicate-detection · evpn host ipv6-address duplicate-detection · show l2route evpn mac-ip all detail

EVPN E-Tree Using RT Constraints
The EVPN E-Tree using RT constraints feature enables you to configure BGP RT import and export policies for an attachment circuit. This feature allows you to define communication between the leaf and root nodes. The provider edge (PE) nodes can receive L2 traffic either from the attachment circuit (AC) of a bridge domain (BD) or from the remote PE node. For a given BD, L2 communication can only happen from root to leaf and leaf to root. This feature does not allow any L2 communication between the ACs of two or more leafs. This feature uses two BGP RTs for every EVI. Associate one RT with root ACs and the other with leaf ACs. For example, there are two distinct sets of RTs, one for root-rt and another for leaf-rt.
This feature provides you with the following benefits by performing filtering of unicast and multicast traffic at the ingress PE nodes:
· Achieve efficiency of the BGP MAC routes scale
· Reduce the consumption of hardware resources
· Utilize the link bandwidth efficiently
Rules for Import and Export Policies under the BGP of EVPN EVI Instances
· Root PE exports its ROOT-RT using BGP export policy. It also imports other ROOT-RT from the corresponding root PE for the same EVI. This is necessary where there is more than one root for a particular BD and EVPN EVI. For example, in a multihome active-active scenario or multihome port-active and single-active scenarios.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 730

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

· Root PE imports LEAF-RT using BGP import policy for a EVPN EVI. This enables the root to be aware of all remote L2 MAC addresses through EVPN RT2 advertisement of leaf PE node for a given E-Tree EVI.
· Leaf PE exports its LEAF-RT using BGP export policy to let the root to be aware of the reachability of its directly connected L2 endpoints through EVPN RT2 advertisement.
· Leaf PE imports ROOT-RT using BGP import policy. It helps the leaf to know about the L2 endpoints which are reachable through the AC of BD under EVPN EVI instance of root PE. You must not import LEAF-RT using BGP Import policy to avoid L2 Communication between two leaf PEs.
· Use split-horizon filtering to block traffic among leaf ACs on a BD for a given E-Tree EVI.
The BGP import and export policies applies to all EVPN RTs along with the RT2 advertisement.
MAC Address Learning
· L2 MAC addresses are learnt on AC of a particular BD on leaf PE as type LOCAL. The same MAC address is advertised to root PE as EVPN RT2. On the remote root PE, the MAC table replicates the entry of MAC address with the learn type as L2VPN. Also, it associates the MPLS label of its BGP peer, which advertises RT2 to root PE node.
· L2 MAC addresses are learnt on AC of a particular BD on the root as type LOCAL. The same MAC address is advertised to peer root (except for MH A/A) or leaf PE as EVPN RT2. On the remote root PE or leaf PE, the MAC table replicates the entry of MAC address with the learn type as L2VPN. Also, it associates the MPLS label of its BGP peer, which advertises RT2 to PE node.
· L2 MAC addresses are learnt on AC of a particular BD on the root as type LOCAL. The same MAC address is advertised to peer root for MH A/A as EVPN RT2. The MAC table of the peer root node synchronizes the replicated entry of MAC address with the learn type as L2VPN for same the ESI and with the same AC as the next hop. This avoids flooding and duplication of known unicast traffic.
The following scenario describes the feature topology:
CE with Multihoming Active-Active and CE with Multihoming Active-Active
Consider a topology where you connect CE-02 and CE-03 to PE-01 and PE-02. Both the CEs are in multihoming active-active mode. Connect CE-02 to PE-01 and PE-02 using AC BE-800.305. Connect CE-03 to PE-01 and PE-02 using AC BE-820.305. Connect CE-06 and CE-07 to PE-03 and PE-04. Connect CE-06 to PE-03 and PE-04 using AC BE-700.305. Connect CE-07 to PE-03 and PE-04 using AC BE-720.305. Associate the bridge domain BD-305 with other AC on the respective PEs along with EVI-305 instance. Configure the respective RT on root and leaf with its import and export RTs for EVI-305. Configure PE-01 and PE-02 as root. Configure PE-03 and PE-04 as leaf.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 731

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

Configuration Perform the following tasks on PE-01, PE-02, PE-03, and PE-04.
· Configure bridge domain · Configure attachment circuit · Configure EVPN EVI · Configure bundle Ethernet · Configure EVPN interface
Note Use the etree rt-leaf command only if the leaf sites are in the EVPN all-active multihoming mode and not required for EVPN single homing mode.
Configuration Example
/* Configure PE-01 (as root) */ /* Configure bridge domain */ Router # configure
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 732

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Router(config)# l2vpn Router(config-l2vpn)# bridge group EVPN_BD Router(config-l2vpn-bg)# bridge-domain evpn_bvi_305 Router(config-l2vpn-bg-bd)# interface Bundle-Ether800.305 Router(config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# interface Bundle-Ether820.305 Router(config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# evi 305 Router (config-l2vpn-bg-bd-evi)# commit
/* Configure attachment circuit */ Router# configure Router(config)# interface Bundle-Ether800.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
Router# configure Router(config)# interface Bundle-Ether820.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
/* Configure EVPN EVI */ Router# configure Router(config)# evpn Router(config-evpn)# evi 305 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target import 1001:305 Router(config-evpn-instance-bgp)# route-target export 1001:305 Router(config-evpn-instance-bgp)# route-target import 1001:5305 Router(config-evpn-instance-bgp)# exit Router(config-evpn-instance)# control-word-disable Router(config-evpn-instance)# advertise-mac Router(config-evpn-instance-mac)# commit
/* Configure bundle Ethernet */ Router# configure Router(config)# interface Bundle-Ether800 Router(config-if)# lacp system mac 00aa.aabb.2020 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
Router# configure Router(config)# interface Bundle-Ether820 Router(config-if)# lacp system mac 00aa.aabb.2222 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
/* Configure EVPN interface */ Router(config)# evpn Router(config-evpn)# interface Bundle-Ether800 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.88.88.88.88.88.88.88.00 Router(config-evpn-ac-es)# bgp route-target 0001.0000.0001 Router(config-evpn-ac-es)# commit
Router(config)# evpn Router(config-evpn)# interface Bundle-Ether820

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 733

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.88.88.88.88.88.88.88.20 Router(config-evpn-ac-es)# bgp route-target 0001.0000.0020 Router(config-evpn-ac-es)# commit
/* Configure PE-02 (as root) */
/* Configure bridge domain */ Router # configure Router(config)# l2vpn Router(config-l2vpn)# bridge group EVPN_BD Router(config-l2vpn-bg)# bridge-domain evpn_bvi_305 Router(config-l2vpn-bg-bd)# interface Bundle-Ether800.305 Router(config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# interface Bundle-Ether820.305 Router(config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# evi 305 Router (config-l2vpn-bg-bd-evi)# commit
/* Configure attachment circuit */ Router# configure Router(config)# interface Bundle-Ether800.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
Router# configure Router(config)# interface Bundle-Ether820.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
/* Configure EVPN EVI */ Router# configure Router(config)# evpn Router(config-evpn)# evi 305 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target import 1001:305 Router(config-evpn-instance-bgp)# route-target export 1001:305 Router(config-evpn-instance-bgp)# route-target import 1001:5305 Router(config-evpn-instance-bgp)# exit Router(config-evpn-instance)# control-word-disable Router(config-evpn-instance)# advertise-mac Router(config-evpn-instance-mac)# commit
/* Configure bundle Ethernet */ Router# configure Router(config)# interface Bundle-Ether800 Router(config-if)# lacp system mac 00aa.aabb.2020 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
Router# configure Router(config)# interface Bundle-Ether820 Router(config-if)# lacp system mac 00aa.aabb.2222 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 734

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

/* Configure EVPN interface */ Router(config)# evpn Router(config-evpn)# interface Bundle-Ether800 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.88.88.88.88.88.88.88.00 Router(config-evpn-ac-es)# bgp route-target 0001.0000.0001 Router(config-evpn-ac-es)# commit
Router(config)# evpn Router(config-evpn)# interface Bundle-Ether820 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.88.88.88.88.88.88.88.20 Router(config-evpn-ac-es)# bgp route-target 0001.0000.0020 Router(config-evpn-ac-es)# commit
/* Configure PE-03 (as leaf) */
/* Configure bridge domain */ Router # configure Router(config)# l2vpn Router(config-l2vpn)# bridge group EVPN_BD Router(config-l2vpn-bg)# bridge-domain evpn_bvi_305 Router(config-l2vpn-bg-bd)# interface Bundle-Ether700.305 Router(config-l2vpn-bg-bd-ac)# split-horizon group Router (config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd)# interface Bundle-Ether720.305 Router(config-l2vpn-bg-bd-ac)# split-horizon group Router (config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# evi 305 Router (config-l2vpn-bg-bd-evi)# commit
/* Configure attachment circuit */ Router# configure Router(config)# interface Bundle-Ether700.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
Router# configure Router(config)# interface Bundle-Ether720.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
/* Configure EVPN EVI */ Router# configure Router(config)# evpn Router(config-evpn)# evi 305 Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target import 1001:305 Router(config-evpn-instance-bgp)# route-target export 1001:5305 Router(config-evpn-instance-bgp)# exit Router(config-evpn-instance)# etree Router(config-evpn-instance-etree)# rt-leaf Router(config-evpn-instance)# exit Router(config-evpn-instance)# control-word-disable Router(config-evpn-instance)# advertise-mac Router(config-evpn-instance-mac)# commit
/* Configure bundle Ethernet */ Router# configure Router(config)# interface Bundle-Ether700

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 735

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

Router(config-if)# lacp system mac 00aa.aabb.1010 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
Router# configure Router(config)# interface Bundle-Ether720 Router(config-if)# lacp system mac 00aa.aabb.1212 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
/* Configure EVPN interface */ Router(config)# evpn Router(config-evpn)# interface Bundle-Ether700 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.77.77.77.77.77.77.77.00 Router(config-evpn-ac-es)# bgp route-target 0000.0000.0001 Router(config-evpn-ac-es)# commit
Router(config)# evpn Router(config-evpn)# interface Bundle-Ether720 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.77.77.77.77.77.77.77.20 Router(config-evpn-ac-es)# bgp route-target 0000.0000.0020 Router(config-evpn-ac-es)# commit
/* Configure PE-04 (as leaf) */
/* Configure bridge domain */ Router # configure Router(config)# l2vpn Router(config-l2vpn)# bridge group EVPN_BD Router(config-l2vpn-bg)# bridge-domain evpn_bvi_305 Router(config-l2vpn-bg-bd)# interface Bundle-Ether700.305 Router(config-l2vpn-bg-bd-ac)# split-horizon group Router (config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd)# interface Bundle-Ether720.305 Router(config-l2vpn-bg-bd-ac)# split-horizon group Router (config-l2vpn-bg-bd-ac)# exit Router (config-l2vpn-bg-bd)# evi 305 Router (config-l2vpn-bg-bd-evi)# commit
/* Configure attachment circuit */ Router# configure Router(config)# interface Bundle-Ether700.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
Router# configure Router(config)# interface Bundle-Ether720.305 l2transport Router(config-l2vpn-subif)# encapsulation dot1q 305 Router(config-l2vpn-subif)# rewrite ingress tag pop 1 symmetric Router(config-l2vpn-subif)# commit
/* Configure EVPN EVI */ Router# configure Router(config)# evpn Router(config-evpn)# evi 305

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 736

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Router(config-evpn-instance)# bgp Router(config-evpn-instance-bgp)# route-target import 1001:305 Router(config-evpn-instance-bgp)# route-target export 1001:5305 Router(config-evpn-instance-bgp)# exit Router(config-evpn-instance)# etree Router(config-evpn-instance-etree)# rt-leaf Router(config-evpn-instance)# exit Router(config-evpn-instance)# control-word-disable Router(config-evpn-instance)# advertise-mac Router(config-evpn-instance-mac)# commit
/* Configure bundle Ethernet */ Router# configure Router(config)# interface Bundle-Ether700 Router(config-if)# lacp system mac 00aa.aabb.1010 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
Router# configure Router(config)# interface Bundle-Ether720 Router(config-if)# lacp system mac 00aa.aabb.1212 Router(config-if)# lacp switchover suppress-flaps 300 Router(config-if)# lacp cisco enable link-order signaled Router(config-if)# bundle wait-while 100 Router(config-if)# commit
/* Configure EVPN interface */ Router(config)# evpn Router(config-evpn)# interface Bundle-Ether700 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.77.77.77.77.77.77.77.00 Router(config-evpn-ac-es)# bgp route-target 0000.0000.0001 Router(config-evpn-ac-es)# commit
Router(config)# evpn Router(config-evpn)# interface Bundle-Ether720 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.77.77.77.77.77.77.77.20 Router(config-evpn-ac-es)# bgp route-target 0000.0000.0020 Router(config-evpn-ac-es)# commit
Running Configuration
This section shows the PE-01, PE-02, PE-3, and PE-04 running configuration.
/* PE-01 Configuration */ l2vpn
bridge group EVPN_BD bridge-domain evpn_bvi_305 interface Bundle-Ether800.305 ! interface Bundle-Ether820.305 ! evi 305 ! !
! interface Bundle-Ether800.305 l2transport
encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 737

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

! interface Bundle-Ether820.305 l2transport
encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! evpn evi 305
bgp route-target import 1001:305 route-target export 1001:305 route-target import 1001:5305
! control-word-disable advertise-mac ! ! ! interface Bundle-Ether800 lacp system mac 00aa.aabb.2020 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! interface Bundle-Ether820 lacp system mac 00aa.aabb.2222 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! evpn interface Bundle-Ether800 ethernet-segment
identifier type 0 00.88.88.88.88.88.88.88.00 bgp route-target 0001.0000.0001 ! ! ! evpn interface Bundle-Ether820 ethernet-segment identifier type 0 00.88.88.88.88.88.88.88.20 bgp route-target 0001.0000.0020 ! ! !
/* PE-02 Configuration */ l2vpn
bridge group EVPN_BD bridge-domain evpn_bvi_305 interface Bundle-Ether800.305 ! interface Bundle-Ether820.305 ! evi 305 ! !
interface Bundle-Ether800.305 l2transport encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! interface Bundle-Ether820.305 l2transport encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 738

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

! evpn
evi 305 bgp route-target import 1001:305 route-target export 1001:305 route-target import 1001:5305 ! control-word-disable advertise-mac !
! interface Bundle-Ether800
lacp system mac 00aa.aabb.2020 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! interface Bundle-Ether820 lacp system mac 00aa.aabb.2222 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! evpn interface Bundle-Ether800
ethernet-segment identifier type 0 00.88.88.88.88.88.88.88.00 bgp route-target 0001.0000.0001
! ! evpn interface Bundle-Ether820
ethernet-segment identifier type 0 00.88.88.88.88.88.88.88.20 bgp route-target 0001.0000.0020
! !
/* PE-03 Configuration */ l2vpn
bridge group EVPN_BD bridge-domain evpn_bvi_305 interface Bundle-Ether700.305 split-horizon group ! interface Bundle-Ether720.305 split-horizon group ! evi 305 ! !
! interface Bundle-Ether700.305 l2transport
encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! interface Bundle-Ether720.305 l2transport encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! evpn evi 305
bgp

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 739

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

route-target import 1001:305 route-target export 1001:5305 ! etree rt-leaf ! control-word-disable advertise-mac ! ! ! interface Bundle-Ether700 lacp system mac 00aa.aabb.1010 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! interface Bundle-Ether720 lacp system mac 00aa.aabb.1212 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! evpn interface Bundle-Ether700 ethernet-segment identifier type 0 00.77.77.77.77.77.77.77.00 bgp route-target 0000.0000.0001 ! ! ! evpn interface Bundle-Ether720 ethernet-segment identifier type 0 00.77.77.77.77.77.77.77.20 bgp route-target 0000.0000.0020 ! ! !
/* PE-04 Configuration */ l2vpn
bridge group EVPN_BD bridge-domain evpn_bvi_305 interface Bundle-Ether700.305 split-horizon group ! interface Bundle-Ether720.305 split-horizon group ! evi 305 ! !
! interface Bundle-Ether700.305 l2transport
encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! interface Bundle-Ether720.305 l2transport encapsulation dot1q 305 rewrite ingress tag pop 1 symmetric ! evpn evi 305

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 740

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

bgp route-target import 1001:305 route-target export 1001:5305
! etree
rt-leaf ! control-word-disable advertise-mac ! ! ! interface Bundle-Ether700 lacp system mac 00aa.aabb.1010 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! interface Bundle-Ether720 lacp system mac 00aa.aabb.1212 lacp switchover suppress-flaps 300 lacp cisco enable link-order signaled bundle wait-while 100 ! evpn interface Bundle-Ether700 ethernet-segment
identifier type 0 00.77.77.77.77.77.77.77.00 bgp route-target 0000.0000.0001 ! ! ! evpn interface Bundle-Ether720 ethernet-segment identifier type 0 00.77.77.77.77.77.77.77.20 bgp route-target 0000.0000.0020 ! ! !
Verification
This section shows how the L2 MAC addresses are synchronized as LOCAL and L2VPN with multihoming active-active peers PE. Also, the root PE is aware of MAC addresses learnt on leaf PE remotely through RT2 advertisements.

Router:PE-01# show l2route evpn mac all

Topo ID Mac Address Producer Next Hop(s)

-------- -------------- ----------- ----------------------------------------

204

001f.0100.0001 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0001 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0002 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0002 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0003 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0003 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0004 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0004 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0005 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0005 L2VPN

Bundle-Ether820.305, N/A

204

0020.0100.0001 L2VPN

26791/I/ME, N/A

204

0020.0100.0002 L2VPN

26791/I/ME, N/A

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 741

CE with Multihoming Active-Active and CE with Multihoming Active-Active

Configure EVPN IRB

204

0020.0100.0003 L2VPN

204

0020.0100.0004 L2VPN

204

0020.0100.0005 L2VPN

204

0021.0100.0001 L2VPN

204

0021.0100.0002 L2VPN

204

0021.0100.0003 LOCAL

204

0021.0100.0004 L2VPN

204

0021.0100.0005 LOCAL

204

0022.0100.0001 L2VPN

204

0022.0100.0002 L2VPN

204

0022.0100.0003 L2VPN

204

0022.0100.0004 L2VPN

204

0022.0100.0005 L2VPN

26791/I/ME, N/A 26791/I/ME, N/A 26791/I/ME, N/A Bundle-Ether800.305, N/A Bundle-Ether800.305, N/A Bundle-Ether800.305, N/A Bundle-Ether800.305, N/A Bundle-Ether800.305, N/A 26790/I/ME, N/A 26790/I/ME, N/A 26790/I/ME, N/A 26790/I/ME, N/A 26790/I/ME, N/A

Router:PE-02# show l2route evpn mac all

Topo ID Mac Address Producer Next Hop(s)

-------- -------------- ----------- ----------------------------------------

204

001f.0100.0001 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0001 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0002 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0002 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0003 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0003 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0004 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0004 L2VPN

Bundle-Ether820.305, N/A

204

001f.0100.0005 LOCAL

Bundle-Ether820.305, N/A

204

001f.0100.0005 L2VPN

Bundle-Ether820.305, N/A

204

0020.0100.0001 L2VPN

27367/I/ME, N/A

204

0020.0100.0002 L2VPN

27367/I/ME, N/A

204

0020.0100.0003 L2VPN

27367/I/ME, N/A

204

0020.0100.0004 L2VPN

27367/I/ME, N/A

204

0020.0100.0005 L2VPN

27367/I/ME, N/A

204

0021.0100.0001 LOCAL

Bundle-Ether800.305, N/A

204

0021.0100.0002 LOCAL

Bundle-Ether800.305, N/A

204

0021.0100.0003 L2VPN

Bundle-Ether800.305, N/A

204

0021.0100.0004 LOCAL

Bundle-Ether800.305, N/A

204

0021.0100.0005 L2VPN

Bundle-Ether800.305, N/A

204

0022.0100.0001 L2VPN

27366/I/ME, N/A

204

0022.0100.0002 L2VPN

27366/I/ME, N/A

204

0022.0100.0003 L2VPN

27366/I/ME, N/A

204

0022.0100.0004 L2VPN

27366/I/ME, N/A

204

0022.0100.0005 L2VPN

27366/I/ME, N/A

The following output shows how the multihoming PE is aware of its local L2 MAC addresses as well as the MAC addresses learnt on the root node only. Leaf multihoming PE is not aware of any other MAC addresses learnt on other leaf PE nodes except if they are learnt on a multihoming active-active ethernet-segment on the peer leaf PE.

Router:PE-03# show l2route evpn mac all

Topo ID Mac Address Producer Next Hop(s)

-------- -------------- ----------- ----------------------------------------

200

0011.0100.0003 L2VPN

30579/I/ME, N/A

200

0011.0100.0005 L2VPN

30579/I/ME, N/A

204

001f.0100.0001 L2VPN

30588/I/ME, N/A

204

001f.0100.0002 L2VPN

30588/I/ME, N/A

204

001f.0100.0003 L2VPN

30588/I/ME, N/A

204

001f.0100.0004 L2VPN

30588/I/ME, N/A

204

001f.0100.0005 L2VPN

30588/I/ME, N/A

204

0020.0100.0001 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0001 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0002 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0002 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0003 LOCAL

Bundle-Ether720.305, N/A

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 742

Configure EVPN IRB

CE with Multihoming Active-Active and CE with Multihoming Active-Active

204

0020.0100.0003 L2VPN

204

0020.0100.0004 LOCAL

204

0020.0100.0004 L2VPN

204

0020.0100.0005 LOCAL

204

0020.0100.0005 L2VPN

204

0021.0100.0001 L2VPN

204

0021.0100.0002 L2VPN

204

0021.0100.0003 L2VPN

204

0021.0100.0004 L2VPN

204

0021.0100.0005 L2VPN

204

0022.0100.0001 LOCAL

204

0022.0100.0001 L2VPN

204

0022.0100.0002 LOCAL

204

0022.0100.0002 L2VPN

204

0022.0100.0003 LOCAL

204

0022.0100.0003 L2VPN

204

0022.0100.0004 LOCAL

204

0022.0100.0004 L2VPN

204

0022.0100.0005 LOCAL

204

0022.0100.0005 L2VPN

Bundle-Ether720.305, N/A Bundle-Ether720.305, N/A Bundle-Ether720.305, N/A Bundle-Ether720.305, N/A Bundle-Ether720.305, N/A 30587/I/ME, N/A 30587/I/ME, N/A 30587/I/ME, N/A 30587/I/ME, N/A 30587/I/ME, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A Bundle-Ether700.305, N/A

Router:PE-04# show l2route evpn mac all

Topo ID Mac Address Producer Next Hop(s)

-------- -------------- ----------- ----------------------------------------

200

0011.0100.0003 L2VPN

30545/I/ME, N/A

200

0011.0100.0005 L2VPN

30545/I/ME, N/A

204

001f.0100.0001 L2VPN

30550/I/ME, N/A

204

001f.0100.0002 L2VPN

30550/I/ME, N/A

204

001f.0100.0003 L2VPN

30550/I/ME, N/A

204

001f.0100.0004 L2VPN

30550/I/ME, N/A

204

001f.0100.0005 L2VPN

30550/I/ME, N/A

204

0020.0100.0001 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0001 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0002 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0002 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0003 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0003 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0004 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0004 L2VPN

Bundle-Ether720.305, N/A

204

0020.0100.0005 LOCAL

Bundle-Ether720.305, N/A

204

0020.0100.0005 L2VPN

Bundle-Ether720.305, N/A

204

0021.0100.0001 L2VPN

30549/I/ME, N/A

204

0021.0100.0002 L2VPN

30549/I/ME, N/A

204

0021.0100.0003 L2VPN

30549/I/ME, N/A

204

0021.0100.0004 L2VPN

30549/I/ME, N/A

204

0021.0100.0005 L2VPN

30549/I/ME, N/A

204

0022.0100.0001 LOCAL

Bundle-Ether700.305, N/A

204

0022.0100.0001 L2VPN

Bundle-Ether700.305, N/A

204

0022.0100.0002 LOCAL

Bundle-Ether700.305, N/A

204

0022.0100.0002 L2VPN

Bundle-Ether700.305, N/A

204

0022.0100.0003 LOCAL

Bundle-Ether700.305, N/A

204

0022.0100.0003 L2VPN

Bundle-Ether700.305, N/A

204

0022.0100.0004 LOCAL

Bundle-Ether700.305, N/A

204

0022.0100.0004 L2VPN

Bundle-Ether700.305, N/A

204

0022.0100.0005 LOCAL

Bundle-Ether700.305, N/A

204

0022.0100.0005 L2VPN

Bundle-Ether700.305, N/A

Related Topics · EVPN E-Tree Using RT Constraints, on page 730

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 743

EVPN E-Tree Per-PE (Scenario1b)

Configure EVPN IRB

Associated Commands · etree rt-leaf · show l2route evpn mac all

EVPN E-Tree Per-PE (Scenario1b)

Table 24: Feature History Table

Feature Name Release Information

EVPN E-Tree Per-PE (Scenario1b)

Release 7.5.1

Feature Description
This feature allows you to configure an attachment circuit on a PE device either as a root site or a leaf site using the etree leaf label for a given bridge-domain. By preventing communication among leaf ACs connected to the same PE and belonging to the same bridge-domain, you can segregate traffic received and sent from different geographical locations. This segregation helps in securing traffic and Denial of Service Prevention (DoS).
This feature is compliant with RFC 8317.

EVPN Ethernet Tree (E-Tree) is a rooted-multipoint Ethernet service over MPLS core and enables you to define attachment circuits (ACs) as either a root site or a leaf site. The provider edge (PE) nodes can receive L2 traffic either from the attachment circuit (AC) of a bridge domain (BD) or from the remote PE node. For a given BD, L2 communication can only happen from root to leaf and leaf to root, and root to root. L2 communication between the ACs of two or more leafs is not allowed.
You can implement E-Tree in the following two ways:
· Scenario 1 - All ACs at a particular PE for a given BD can be either root or leaf site and all traffic for an EVI from a PE in the network is from either a root or a leaf. In this scenario you have two options to configure E-Tree:
· Scenario 1a - You can configure E-Tree with route-targets (RT) constraints using two RTs per EVI. For more information, see the EVPN E-Tree Using RT Constraints section.
· Scenario 1b - You can configure E-Tree without route-targets (RT) constraints and using etree leaf label.

· Scenario 2 - A PE for a given EVI can have both root and leaf sites. The root and leaf designation increases from bridge-domain level in Scenario 1, to a per AC level. For more information, see the EVPN ETREE Per-AC (Scenario 2) section.

Scenario 1b
In this scenario, you can configure E-Tree without route-targets (RT) constraints and using etree leaf label.
When you configure E-Tree with Scenario 1b, for known unicast traffic, MAC advertisements originating from a leaf site is identified with an etree leaf label to classify that the source is a leaf. Ingress filtering is performed, and traffic originating at leaf AC destined for a remote leaf MAC is dropped. If the remote PE is

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 744

Configure EVPN IRB

Configure EVPN E-Tree Per-PE (Scenario1b)

also a leaf, the ingress traffic from the source leaf is dropped. If the remote PE is a root, the ingress traffic from the source leaf is forwarded.
For BUM traffic, egress filtering is performed and leaf nodes transmit an etree leaf label to identify that leaf sites are connected to the PE. Then, at the ingress node, BUM traffic originating from a leaf node is tagged with the corresponding remote etree leaf label. At the egress PE, traffic is tagged with the matching etree leaf label that is dropped at leaf ACs.
Scenario 1b Behavior
· E-Tree leaf is configured per bridge domain. If there is no leaf configuration, the bridge domain is always a root.
· All ACs inherit E-Tree leaf designation from the bridge domain.
· Split-horizon group between ACs of a leaf is enabled automatically.
· All local MACs learned under the BD is advertised to BGP with etree leaf indicator.
· Upon first leaf configuration, a special E-Tree ethernet segment with ESI-0 is created to allocate a split-horizon label, referred to as the local etree leaf label.
· ES/EAD with ESI-0 (ES-0/EAD) is advertised to BGP with etree leaf label.
You can use scenario 1b to interact with scenario 2 when a remote node is NCS 5500, NCS 540, or NCS 560, and configure E-Tree using scenario 1b with ASR 9000.
Configure EVPN E-Tree Per-PE (Scenario1b)
Perform this task to configure EVPN E-Tree Per-PE (Scenario1b).
Configure EVPN E-Tree leaf per bridge domain.
Router# configure Router(config)# l2vpn Router(config-l2vpn)# bridge group bg1 Router(config-l2vpn-bg)# bridge-domain bd_1 Router(config-l2vpn-bg-bd)# etree Router(config-l2vpn-bg-bd-etree)# leaf Router(config-l2vpn-bg-bd-etree)# interface Bundle-Ether400.1 Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd-etree)# interface Bundle-Ether401.1001 Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd-etree)# interface Bundle-Ether4701.2001 Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd-ac)# exit Router(config-l2vpn-bg-bd)# routed interface BVI1 Router(config-l2vpn-bg-bd-bvi)# split-horizon group core Router(config-l2vpn-bg-bd-bvi)# exit Router(config-l2vpn-bg-bd)# evi 200 Router(config-l2vpn-bg-bd-evi)# commit
Running Configuration
l2vpn bridge group bg1 bridge-domain bd_1 etree

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 745

EVPN ETREE Per-AC (Scenario 2)

Configure EVPN IRB

leaf ! interface Bundle-Ether400.1 ! interface Bundle-Ether401.1001 ! interface Bundle-Ether4701.2001 ! routed interface BVI1
split-horizon group core ! evi 200 ! ! !

EVPN ETREE Per-AC (Scenario 2)

Table 25: Feature History Table

Feature Name Release Information
EVPN E-TREE Release 7.5.1 Per-AC (Scenario 2)

Feature Description
This feature allows a provider edge (PE) device to have both root and leaf sites for a given EVI. This feature increases the granularity of leaf designation from the entire bridge to AC bridge ports; ACs under a bridge may be root or leaf.

Customer sites represented by ACs can be defined as root or leaf. PE can receive traffic from both root and leaf ACs for a given EVI from a remote node. An EVI can be associated with both root(s) and leaf(s). If an AC is not configured as E-Tree leaf, it is considered as root by default.
In Scenario 2, a PE for a given EVI can have both root and leaf sites. The granularity of root or leaf designation increases from bridge-domain level in Scenario 1 to a per AC level. Traffic for an EVI from a PE in the network can be from either a root or a leaf site.

Scenario 2 Behavior
For unicast traffic:
· Remote PE performs ingress filtering to prevent traffic from being sent unnecessarily over the core to be filtered at egress PE.
· PE indicates if the MAC address is associated with a root or a leaf.
· MAC advertisements originating from a leaf site are colored with a leaf-indication flag in an extended community; routes that do not have this flag are from a root site.
· Remote PEs perform ingress filtering, when MAC is programmed and the leaf-indication is present, a cross-check is performed with the originating AC; if the AC is also a leaf, packets will not be forwarded.
· Supports E-Tree extcomm of type 0x06 (EVPN) and sub-type 0x05 used for leaf-indication for known-unicast and BUM traffic.
· Enable unknown unicast suppression at EVIs connected to both root and leaf sites to prevent egress unknown unicast traffic arriving at an EVI from being flooded to ACs. This eliminates the leaf-to-leaf traffic during a BD MAC flush.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 746

Configure EVPN IRB

EVPN ETREE Per-AC (Scenario 2)

· MAC advertises local ESI and there is no leaf indicator from root. When processing the root sync-route, the root or leaf status of the individual AC is considered, instead of the entire bridge-domain. If a root MAC with a matching local ESI is received, and if the corresponding AC is a leaf, a syslog message is generated for the misconfiguration.
For BUM traffic: · The PE performs egress filtering for BUM traffic. BUM traffic originating from leaf sites is filtered at egress nodes if the destination is also a leaf. · A PE with leaf sites allocate a leaf label, and communicate this label to remote PEs using an ES/EAD route with ESI 0 with the ETREE extended community. · BUM traffic originating from single-homed leaf AC is tagged with destination etree leaf label. · BUM traffic originating from single-homed root AC is not tagged with any ESI or etree leaf label. · BUM traffic originating from multi-homed leaf AC is tagged with destination etree leaf label. · BUM traffic originating from multi-homed root AC is tagged with ESI label. · The ingress PE tags MPLS frames with the etree leaf label for traffic originating from a leaf site; this label allows the disposition PE to perform egress filtering to native EVPN ESI label filtering. · Intra-PE forwarding between leaf sites is prevented by putting all leaf ACs under a given bridge domain in a single split-horizon group.
Restrictions · This feature is supporeted only on physical and bundle interfaces. · You can use either Scenario 1 or Scenario 2 for a given EVI within a network. · Scenario 2 interoperates only with scenario 1b and vice-versa. · You can use scenario 1b to interact with scenario 2 when a remote node is NCS 5500, NCS 540, or NCS 560, and configure E-Tree using scenario 1b with ASR 9000.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 747

EVPN ETREE Per-AC (Scenario 2)

Configure EVPN IRB

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 748

1 3 C H A P T E R
EVPN Virtual Private Wire Service (VPWS)
The EVPN-VPWS is a BGP control plane solution for point-to-point services. It implements the signaling and encapsulation techniques for establishing an EVPN instance between a pair of PEs. It has the ability to forward traffic from one network to another without MAC lookup. The use of EVPN for VPWS eliminates the need for signaling single-segment and multi-segment PWs for point-to-point Ethernet services. The EVPN-VPWS technology works on IP and MPLS core; IP core to support BGP and MPLS core for switching packets between the endpoints. EVPN-VPWS support both single-homing and multi-homing.
Note When both MPLS and SRv6 are configured in the core, EVPN VPWS services cannot co-exist with SRv6 and MPLS.
· Supported Modes for EVPN-VPWS, on page 749 · EVPN-VPWS Single Homed, on page 750 · EVPN-VPWS Multi-Homed, on page 751 · Flow Label Support for EVPN VPWS, on page 756
Supported Modes for EVPN-VPWS
EVPN-VPWS supports the following modes: · Single-homed - Enables you to connect a customer edge (CE) device to one provider edge (PE) device. · Multi-homed - Enables you to connect a customer edge (CE) device to more than one provider edge (PE) device. Multihoming ensures redundant connectivity. The redundant PE device ensures that there is no traffic disruption when there is a network failure. Following are the types of multihoming: · Single-Active - In single-active mode only a single PE among a group of PEs attached to the particular Ethernet-Segment is allowed to forward traffic to and from that Ethernet Segment. · All-Active - In all-active mode all the PEs attached to the particular Ethernet-Segment is allowed to forward traffic to and from that Ethernet Segment.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 749

EVPN-VPWS Single Homed

EVPN Virtual Private Wire Service (VPWS)

EVPN-VPWS Single Homed
The EVPN-VPWS single homed solution requires per EVI Ethernet Auto Discovery route. EVPN defines a new BGP Network Layer Reachability Information (NLRI) used to carry all EVPN routes. BGP Capabilities Advertisement used to ensure that two speakers support EVPN NLRI (AFI 25, SAFI 70) as per RFC 4760.
The architecture for EVPN VPWS is that the PEs run Multi-Protocol BGP in control-plane. The following image describes the EVPN-VPWS configuration:

· The VPWS service on PE1 requires the following three elements to be specified at configuration time: · The VPN ID (EVI) · The local AC identifier (AC1) that identifies the local end of the emulated service. · The remote AC identifier (AC2) that identifies the remote end of the emulated service.
PE1 allocates a MPLS label per local AC for reachability. · The VPWS service on PE2 is set in the same manner as PE1. The three same elements are required and
the service configuration must be symmetric. PE2 allocates a MPLS label per local AC for reachability. · PE1 advertise a single EVPN per EVI Ethernet AD route for each local endpoint (AC) to remote PEs with the associated MPLS label. PE2 performs the same task. · On reception of EVPN per EVI EAD route from PE2, PE1 adds the entry to its local L2 RIB. PE1 knows the path list to reach AC2, for example, next hop is PE2 IP address and MPLS label for AC2. PE2 performs the same task.
Configure EVPN-VPWS Single Homed
This section describes how you can configure single-homed EVPN-VPWS feature.
Router# configure Router(config)# router bgp 100 Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# exit Router(config-bgp)# neighbor 10.10.10.1 Router(config-bgp-nbr))# address-family l2vpn evpn Router(config-bgp-nbr-af)# commit
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 750

EVPN Virtual Private Wire Service (VPWS)

Running Configuration

Router(config-bgp-nbr-af)# exit Router(config-bgp-nbr)# exit Router(config-bgp)# exit Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn-vpws Router(config-l2vpn-xc)# p2p evpn1 Router(config-l2vpn-xc-p2p)# interface TenGigE0/1/0/2 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 100 target 12 source 10 Router(config-l2vpn-xc-p2p)# commit
Running Configuration
configure router bgp 100
address-family l2vpn evpn neighbor 10.10.10.1 address-family l2vpn evpn
!
configure l2vpn
xconnect group evpn-vpws p2p evpn1 interface TenGigE0/1/0/2 neighbor evpn evi 100 target 12 source 10
!
EVPN-VPWS Multi-Homed
The EVPN VPWS feature supports all-active multihoming capability that enables you to connect a customer edge device to two or more provider edge (PE) devices to provide load balancing and redundant connectivity. The load balancing is done using equal-cost multipath (ECMP).
When a CE device is multi-homed to two or more PEs and when all PEs can forward traffic to and from the multi-homed device for the VLAN, then such multihoming is referred to as all-active multihoming.
Figure 101: EVPN VPWS Multi-Homed

Consider the topology in which CE1 is multi-homed to PE1 and PE2; CE2 is multi-homed to PE3 and PE4. PE1 and PE2 will advertise an EAD per EVI route per AC to remote PEs which is PE3 and PE4, with the
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 751

Configure EVPN-VPWS Single-Active Multi-Homed

EVPN Virtual Private Wire Service (VPWS)

associated MPLS label. The ES-EAD route is advertised per ES (main interface), and it will not have a label. Similarly, PE3 and PE4 advertise an EAD per EVI route per AC to remote PEs, which is PE1 and PE2, with the associated MPLS label.
Consider a traffic flow from CE1 to CE2. Traffic is sent to either PE1 or PE2. The selection of path is dependent on the CE implementation for forwarding over a LAG. Traffic is encapsulated at each PE and forwarded to the remote PEs (PE 3 and PE4) through MPLS core. Selection of the destination PE is established by flow-based load balancing. PE3 and PE4 send the traffic to CE2. The selection of path from PE3 or PE4 to CE2 is established by flow-based load balancing.
If there is a failure and when the link from CE1 to PE1 goes down, the PE1 withdraws the ES-EAD route; sends a signal to the remote PEs to switch all the VPWS service instances associated with this multi-homed ES to backup PE, which is PE2.
Configure EVPN-VPWS Single-Active Multi-Homed
This section describes how to configure single-active multi-homed EVPN-VPWS feature. You can enable the single-active mode by using the load-balancing-mode single-active command.
/* Configure PE1 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether10.2 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 5 source 6 Router(config-l2vpn-xc-p2p)# exit
Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether10 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.0a.00 Router(config-evpn-ac-es)# load-balancing-mode single-active Router(config-evpn-ac-es)# commit
/* Configure PE2 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether10.2 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 5 source 6 Router(config-l2vpn-xc-p2p)# exit
Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether10 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.0a.00 Router(config-evpn-ac-es)# load-balancing-mode single-active Router(config-evpn-ac-es)# commit
/* Configure PE3 */ Router# configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 752

EVPN Virtual Private Wire Service (VPWS)

Running Configuration

Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether20.1 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 6 source 5 Router(config-l2vpn-xc-p2p)# exit
Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether20 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.14.00 Router(config-evpn-ac-es)# load-balancing-mode single-active Router(config-evpn-ac-es)# commit
/* Configure PE4 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether20.1 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 6 source 5 Router(config-l2vpn-xc-p2p)# exit Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether20 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.14.00 Router(config-evpn-ac-es)# load-balancing-mode single-active Router(config-evpn-ac-es)# commit
Running Configuration
/* On PE1 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether10.2 neighbor evpn evi 1 target 5 source 6
! evpn interface Bundle-Ether10
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.0a.00 load-balancing-mode single-active
!
/* On PE2 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether10.2 neighbor evpn evi 1 target 5 source 6
! evpn interface Bundle-Ether10
ethernet-segment

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 753

Configure EVPN-VPWS All-Active Multi-Homed

EVPN Virtual Private Wire Service (VPWS)

identifier type 0 00.01.00.ac.ce.55.00.0a.00 load-balancing-mode single-active !
/* On PE3 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether20.1 neighbor evpn evi 1 target 6 source 5
! evpn interface Bundle-Ether20
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.14.00 load-balancing-mode single-active
!
/* On PE4 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether20.1 neighbor evpn evi 1 target 6 source 5
! evpn interface Bundle-Ether20
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.14.00 load-balancing-mode single-active
!
Configure EVPN-VPWS All-Active Multi-Homed
This section describes how you can configure multi-homed EVPN-VPWS feature.
/* Configure PE1 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether10.2 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 5 source 6 Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether10 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.0a.00 Router(config-evpn-ac-es)# commit
/* Configure PE2 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether10.2

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 754

EVPN Virtual Private Wire Service (VPWS)

Running Configuration

Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 5 source 6 Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether10 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.0a.00 Router(config-evpn-ac-es)# commit
/* Configure PE3 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether20.1 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 6 source 5 Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether20 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.14.00 Router(config-evpn-ac-es)# commit
/* Configure PE4 */ Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_5-6 Router(config-l2vpn-xc-p2p)# interface Bundle-Ether20.1 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 6 source 5 Router(config-l2vpn-xc-p2p)# exit Router(config-l2vpn-xc)# exit Router(config-l2vpn)# exit Router(config)# evpn Router(config-evpn)# interface Bundle-Ether20 Router(config-evpn-ac)# ethernet-segment Router(config-evpn-ac-es)# identifier type 0 00.01.00.ac.ce.55.00.14.00 Router(config-evpn-ac-es)# commit
Running Configuration
/* On PE1 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether10.2 neighbor evpn evi 1 target 5 source 6
! evpn interface Bundle-Ether10
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.0a.00
!
/* On PE2 */ ! configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 755

Flow Label Support for EVPN VPWS

EVPN Virtual Private Wire Service (VPWS)

l2vpn xconnect group evpn_vpws p2p e1_5-6 interface Bundle-Ether10.2 neighbor evpn evi 1 target 5 source 6
! evpn interface Bundle-Ether10
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.0a.00
!
/* On PE3 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether20.1 neighbor evpn evi 1 target 6 source 5
! evpn interface Bundle-Ether20
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.14.00
!
/* On PE4 */ ! configure l2vpn xconnect group evpn_vpws
p2p e1_5-6 interface Bundle-Ether20.1 neighbor evpn evi 1 target 6 source 5
! evpn interface Bundle-Ether20
ethernet-segment identifier type 0 00.01.00.ac.ce.55.00.14.00
!
Flow Label Support for EVPN VPWS
The Flow Label support for EVPN VPWS feature enables provider (P) routers to use the flow-based load balancing to forward traffic between the provider edge (PE) devices. This feature uses Flow-Aware Transport (FAT) of pseudowires (PW) over an MPLS packet switched network for load-balancing traffic across BGP-based signaled pseudowires for Ethernet VPN (EVPN) Virtual Private Wire Service (VPWS).
FAT PWs provide the capability to identify individual flows within a PW and provide routers the ability to use these flows to load-balance the traffic. FAT PWs are used to load balance the traffic in the core when equal cost multipaths (ECMP) are used. A flow label is created based on indivisible packet flows entering an imposition PE. This flow label is inserted as the lower most label in the packet. P routers use the flow label for load balancing to provide better traffic distribution across ECMP paths or link-bundled paths in the core. A flow is identified either by the source and destination IP address and layer 4 source and destination ports of the traffic, or the source and destination MAC address of the traffic.
The following figure shows a FAT PW with two flows distributing over ECMPs and bundle links.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 756

EVPN Virtual Private Wire Service (VPWS) Figure 102: FAT PW with Two Flows Distributing over ECMPs and Bundle

Configure Flow Label for EVPN VPWS

skniL
An extra label is added to the stack, called the flow label, which is generated for each unique incoming flow on the PE. A flow label is a unique identifier that distinguishes a flow within the PW, and is derived from source and destination MAC addresses, and source and destination IP addresses. The flow label contains the end of label stack (EOS) bit set. The flow label is inserted after the VC label and before the control word (if any). The ingress PE calculates and forwards the flow label. The FAT PW configuration enables the flow label. The egress PE discards the flow label such that no decisions are made. Core routers perform load balancing using the flow-label in the FAT PW with other information like MAC address and IP address. The flow-label adds greater entropy to improve traffic load balancing. Therefore, it's possible to distribute flows over ECMPs and link bundles. In this topology, the imposition router, PE1, adds a flow label in the traffic. The disposition router, PE2, allows mixed types of traffic of which some have flow label, others do not. The P router uses flow label to load balance the traffic between the PEs. PE2 ignores the flow label in traffic, and uses one EVPN label for all unicast traffic.
Restrictions To configure flow label for EVPN VPWS, the following restrictions are applicable:
· This feature is not supported for EVPN Point-to-Multipoint (P2MP) of VPLS and Ethernet LAN (E-LAN) service.
· This feature is supported only for EVPN VPWS single homing. AC bundle interfaces must be configured with ESI-0 only.
· This feature is not supported for EVPN flexible cross-connect service. · This feature is not supported for EVPN VPWS multihoming.
Configure Flow Label for EVPN VPWS
Configuration Example Perform this task to configure flow label for EVPN VPWS on both PE1 and PE2.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 757

Configure Flow Label for EVPN VPWS

EVPN Virtual Private Wire Service (VPWS)

Router# configure Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn-vpws Router(config-l2vpn-xc)# p2p evpn1 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/0/0 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1 target 2 source 1 Router(config-l2vpn-xc-p2p)# exit ! Router# configure Router(config)# evpn Router(config-evpn)# evi 1 Router(config-evpn-instance)# control-word-disable Router(config-evpn-instance)# load-balancing Router(config-evpn-instance-lb)# flow-label static Router(config-evpn-instance-lb)# commit
Running Configuration
This section shows the running configuration of flow label for EVPN VPWS.

l2vpn xconnect group evpn-vpws p2p evpn1 interface TenGigE0/0/0/0 neighbor evpn evi 1 target 2 source 1 ! !
evpn evi 1 control-word-disable load-balancing flow-label static !
!
Verification
Verify EVPN VPWS flow label configuration.

Router# show l2vpn xconnect detail Group evpn-vpws, XC evpn1, state is up; Interworking none
AC: TenGigE0/0/0/0, state is up Type Ethernet MTU 1500; XC ID 0x1; interworking none Statistics: packets: received 21757444, sent 0 bytes: received 18226521128, sent 0
EVPN: neighbor 100.100.100.2, PW ID: evi 1, ac-id 2, state is up ( established ) XC ID 0xc0000001 Encapsulation MPLS
Encap type Ethernet, control word disabled Sequencing not set LSP : Up Flow Label flags configured (Tx=1,Rx=1) statically

EVPN

Local

Remote

------------ ------------------------------ -----------------------------

Label

64002

64002

MTU

1500

1500

Control word disabled

disabled

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 758

EVPN Virtual Private Wire Service (VPWS)

Configure Flow Label for EVPN VPWS

AC ID EVPN type

1 Ethernet

2 Ethernet

------------ ------------------------------ ----------------------------Create time: 30/10/2018 03:04:16 (00:00:40 ago) Last time status changed: 30/10/2018 03:04:16 (00:00:40 ago) Statistics:
packets: received 0, sent 21757444 bytes: received 0, sent 18226521128

Related Topics · Flow Label Support for EVPN VPWS, on page 756

Associated Commands · show evpn evi

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 759

Configure Flow Label for EVPN VPWS

EVPN Virtual Private Wire Service (VPWS)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 760

1 4 C H A P T E R
L2VPN Services over Segment Routing for Traffic Engineering Policy
This chapter describes how to configure segment routing for traffic-engineering policies on the Cisco ASR 9000 Series Aggregation Services Routers supporting Cisco IOS XR software.
· Overview of Segment Routing , on page 761 · How Segment Routing Works , on page 762 · Segment Routing Global Block , on page 763 · Preferred Path over SR-TE, on page 763
Overview of Segment Routing
Segment Routing (SR) is a flexible and scalable way of performing source routing. The source device selects a path and encodes it in the packet header as an ordered list of segments. Segments are identifiers for any type of instruction. Segment routing for traffic engineering (SR-TE) takes place through a tunnel between a source and destination pair. SR-TE uses the concept of source routing, where the source calculates the path and encodes it in the packet header as a segment. Segments are identifier for any type of instruction. In SR-TE preferred path, each segment is an end-to-end path from the source to the destination, and instructs the routers in the provider core network to follow the specified path instead of the shortest path calculated by the IGP. The destination is unaware of the presence of the tunnel. Each segment is identified by the segment ID (SID) consisting of a flat unsigned 32-bit integer. Segment instruction can be:
· Go to node N using the shortest path · Go to node N over the shortest path to node M and then follow links Layer 1, Layer 2, and Layer 3 · Apply service S
The user can achieve better resilience and convergence for the network traffic, by transporting MPLS L2VPN services using segment routing, instead of MPLS LDP. Segment routing can be directly applied to the MPLS architecture without changing the forwarding plane. In a segment-routing network that uses the MPLS data plane, LDP or other signaling protocol is not required; instead label distribution is performed by IGP. Removing protocols from the network simplifies its operation and makes it more robust and stable by eliminating the
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 761

How Segment Routing Works

L2VPN Services over Segment Routing for Traffic Engineering Policy

need for protocol interaction. Segment routing utilizes the network bandwidth more effectively than traditional MPLS networks and offers lower latency.
With segment routing, the network no longer needs to maintain a per-application and per-flow state. Instead, it obeys the forwarding instructions provided in the packet.
Segment Routing relies on a small number of extensions to Cisco Intermediate System-to-Intermediate System (IS-IS) and Open Shortest Path First (OSPF) protocols. It can operate with an MPLS (Multiprotocol Label Switching) or an IPv6 data plane, and it integrates with the rich multi service capabilities of MPLS, including Layer 3 VPN (L3VPN), Virtual Private Wire Service (VPWS), Virtual Private LAN Service (VPLS), and Ethernet VPN (EVPN).
Segment routing can be directly applied to the Multiprotocol Label Switching (MPLS) architecture with no change in the forwarding plane. Segment routing utilizes the network bandwidth more effectively than traditional MPLS networks and offers lower latency. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. The related label is popped from the stack, after the completion of a segment.
Segment Routing provides automatic traffic protection without any topological restrictions. The network protects traffic against link and node failures without requiring additional signaling in the network. Existing IP fast re-route (FRR) technology, in combination with the explicit routing capabilities in Segment Routing guarantees full protection coverage with optimum backup paths. Traffic protection does not impose any additional signaling requirements.
How Segment Routing Works
A router in a Segment Routing network is capable of selecting any path to forward traffic, whether it is explicit or Interior Gateway Protocol (IGP) shortest path. Segments represent subpaths that a router can combine to form a complete route to a network destination. Each segment has an identifier (Segment Identifier) that is distributed throughout the network using new IGP extensions. The extensions are equally applicable to IPv4 and IPv6 control planes. Unlike the case for traditional MPLS networks, routers in a Segment Router network do not require Label Distribution Protocol (LDP) and Resource Reservation Protocol - Traffic Engineering (RSVP-TE) to allocate or signal their segment identifiers and program their forwarding information.
There are two ways to configure segment routing:
· SR-TE policy under "segment-routing traffic-eng" sub-mode
· TE tunnel with SR option under "mpls traffic-eng" sub-mode
Note However, you can configure the above mentioned L2VPN and EVPN services using only "segment-routing traffic-eng" sub-mode.
Each router (node) and each link (adjacency) has an associated segment identifier (SID). Node segment identifiers are globally unique and represent the shortest path to a router as determined by the IGP. The network administrator allocates a node ID to each router from a reserved block. On the other hand, an adjacency segment ID is locally significant and represents a specific adjacency, such as egress interface, to a neighboring router. Routers automatically generate adjacency identifiers outside of the reserved block of node IDs. In an MPLS network, a segment identifier is encoded as an MPLS label stack entry. Segment IDs direct the data along a specified path. There are two kinds of segment IDS:

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 762

L2VPN Services over Segment Routing for Traffic Engineering Policy

Segment Routing Global Block

· Prefix SID: A segment ID that contains an IP address prefix calculated by an IGP in the service provider core network. Prefix SIDs are globally unique. A prefix segment represents the shortest path (as computed by IGP) to reach a specific prefix; a node segment is a special prefix segment that is bound to the loopback address of a node. It is advertised as an index into the node specific SR Global Block or SRGB.
· Adjacency SID: A segment ID that contains an advertising router's adjacency to a neighbor. An adjacency SID is a link between two routers. Since the adjacency SID is relative to a specific router, it is locally unique. A node segment can be a multi-hop path while an adjacency segment is a one-hop path.
Segment Routing Global Block
Segment Routing Global Block (SRGB) is the range of labels reserved for segment routing. SRGB is local property of an segment routing node. In MPLS, architecture, SRGB is the set of local labels reserved for global segments. In segment routing, each node can be configured with a different SRGB value and hence the absolute SID value associated to an IGP Prefix Segment can change from node to node. The SRGB default value is 16000 to 23999. The SRGB can be configured as follows:
Router(config)# router isis 1 Router(config-isis)#segment-routing global-block 45000 55000
Preferred Path over SR-TE
Preferred tunnel path functionality allows you map pseudowires to specific traffic-engineering tunnel paths. Attachment circuits are cross-connected to specific SR traffic engineering tunnel interfaces instead of remote PE router IP addresses reachable using IGP or LDP. Using preferred tunnel path, the traffic engineering tunnel transports L2 or L3 traffic between the source and destination PE routers. A path is selected for an SR Policy when the path is valid and its preference is the best (highest value) among all the candidate paths of the SR Policy.
EVPN VPWS Preferred Path over SR-TE Policy
EVPN VPWS Preferred Path over SR-TE Policy feature allows you to set the preferred path between the two end-points for EVPN VPWS pseudowire (PW) using SR-TE policy. SR policy allows you to choose the path on a per EVPN instance (EVI) basis. This feature is supported on bundle attachment circuit (AC), physical AC, and PWHE (PW-Ether interfaces) AC.
Restrictions · If EVPN VPWS with On Demand Next Hop (ODN) is configured, and EVPN VPWS with preferred path is also configured for the same PW, then the preferred-path will take precedence.
· EVPN VPWS SR policy is not supported on EVPN VPWS dual homing.
· L2VPN services over PWHE with EVPN VPWS preferred-path over SR-TE policy is not supported.
· PWHE over SR-TE with Equal-cost multipath (ECMP) paths is not supported.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 763

Configure EVPN VPWS Preferred Path over SR-TE Policy

L2VPN Services over Segment Routing for Traffic Engineering Policy

· EVPN validates if the route is for a single home next hop, otherwise it issues an error message about a dangling SR TE policy, and continue to set up EVPN-VPWS without it. EVPN relies on ESI value being zero to determine if this is a single home or not. If the AC is a Bundle-Ether interface running LACP then you need to manually configure the ESI value to zero to overwrite the auto-sense ESI as EVPN VPWS multihoming is not supported.
To disable EVPN dual homing, configure bundle-Ether AC with ESI value set to zero.
evpn interface Bundle-Ether12
ethernet-segment identifier type 0 00.00.00.00.00.00.00.00.00
/* Or globally */ Evpn
ethernet-segment type 1 auto-generation-disable
Topology
Figure 103: EVPN VPWS Preferred Path over SR-TE Policy

Consider a topology where PE1 and PE3 are the two EVPN VPWS PW end-points. Traffic is sent from PE1 to PE3 through SR in the core. Traffic from PE1 can be sent to PE3 either through P1 or P2 node. In this example, the EVPN VPWS preferred path over SR policy is configured to show the traffic flow from PE1 to PE3 using prefix-SID. Using adjacency-SID, you can steer traffic flow from PE1 to PE3 and specify whether it should pass through P1 or P2 node.
Configure EVPN VPWS Preferred Path over SR-TE Policy
You must complete these tasks to ensure the successful configuration of EVPN VPWS Preferred Path over SR-TE Policy feature:
· Configure Prefix-SID on IGP -- The following examples show how to configure prefix-SID in IS-IS. · Configure Adjacency-SID on IGP -- The following examples show how to configure Adjacency-SID
in IS-IS.
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 764

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure Prefix-SID in IS-IS

· Configure segment-list
· Configure SR-TE policy
· Configure EVPN VPWS over SR-TE policy
· Configure VPWS pseudowire headend over SR-TE policy
Configure Prefix-SID in IS-IS
Configure Prefix-SID on PE1, P1, P2, and PE3.
/* Configure Prefix-SID on PE1 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.0031.00 Route(config-isis)# nsr Route(config-isis)# nsf ietf Route(config-isis)# log adjacency changes Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id 1.1.1.1 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface loopback 0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 180010 Route(config-isis-af)# commit Route(config-isis-af)# exit
/* Configure Prefix-SID on P1 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# exit ! Router# configure Router(config)# router isis core Router(config-isis)# is-type level-2-only Router(config-isis)# net 49.0002.0330.2000.0021.00 Router(config-isis)# nsr Router(config-isis)# nsf ietf Router(config-isis)# log adjacency changes Router(config-isis)# address-family ipv4 unicast Router(config-isis-af)# metric-style wide level 2 Router(config-isis-af)# mpls traffic-eng level-2-only Router(config-isis-af)# mpls traffic-eng router-id loopback0 Router(config-isis-af)# segment-routing mpls sr-prefer Router(config-isis-af)# segment-routing prefix-sid-map advertise-local Router(config-isis-af)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 765

Configure Prefix-SID in IS-IS

L2VPN Services over Segment Routing for Traffic Engineering Policy

! Router(config-isis)# interface loopback 0 Router(config-isis-if)# address-family ipv4 unicast Router(config-isis-af)# prefix-sid index 180015 Router(config-isis-af)# commit Router(config-isis-af)# exit
/* Configure Prefix-SID on P2 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.0022.00 Route(config-isis)# nsr Route(config-isis)# nsf ietf Route(config-isis)# log adjacency changes Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface loopback 0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 180025 Route(config-isis-af)# commit Route(config-isis-af)# exit
/* Configure Prefix-SID on PE3 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.3030.0030.0035.00 Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface loopback0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 180020 Route(config-isis-af)# commit Route(config-isis-af)# exit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 766

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure Adjacency-SID in IS-IS

Configure Adjacency-SID in IS-IS
Configure Adjacency-SID on PE1, P1, P2, and PE3.
/* Configure Adjacency-SID on PE1 */
Router# configure Router(config)# segment-routing Router(config-sr)# local-block 15000 15999 ! Router# configure Route(config)# router isis core Route(config-isis)# interface Bundle-Ether121 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15101 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/1/6 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15102 Route(config-isis-if-af)# commit
/* Configure Adjacency-SID on P1 */
Router# configure Router(config)# segment-routing Router(config-sr)# local-block 15000 15999 ! Router# configure Route(config)# router isis core Route(config-isis)# interface Bundle-Ether121 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# metric 20 Route(config-isis-if-af)# adjacency-sid absolute 15200 Route(config-isis-if-af)# commit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/7 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15202 Route(config-isis-if-af)# commit !
/* Configure Adjacency-SID on P2 */
Router# configure

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 767

Configure Segment-list

L2VPN Services over Segment Routing for Traffic Engineering Policy

Router(config)# segment-routing Router(config-sr)# local-block 15000 15999 ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/7 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# metric 20 Route(config-isis-if-af)# adjacency-sid absolute 15201 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/5 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# metric 20 Route(config-isis-if-af)# adjacency-sid absolute 15204 Route(config-isis-if-af)# commit
/* Configure Adjacency-SID on PE3 */
Router# configure Router(config)# segment-routing Router(config-sr)# local-block 15000 15999 ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/1 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15301 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/2 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15302 Route(config-isis-if-af)# commit
Configure Segment-list
/* Configure Segment-list on PE1 using prefix-SID */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# traffic-eng Router(config-sr-te)# logging Router(config-sr-te-log)# policy status

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 768

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure SR-TE Policy

Router(config-sr-te-log)# exit ! Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# segment-list name pref_sid_to_PE3 Router(config-sr-te-sl)# index 1 mpls label 180020 <-----------------------using prefix-SID Router(config-sr-te-sl)# exit
/* Configure Segment-list on PE1 using adjacency-SID */
Router# configure Router(config)# segment-routing Router(config-sr)# local-block 15000 15999 Router(config-sr)# traffic-eng Router(config-sr-te)# logging Router(config-sr-te-log)# policy status Router(config-sr-te-log)# exit ! Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# segment-list name pref_adj_sid_to_PE3 Router(config-sr-te-sl)# index 1 mpls label 15101 <-----------------------using adjacency-SID Router(config-sr-te-sl)# index 2 mpls label 15202 <-----------------------using adjacency-SID Router(config-sr-te-sl)# exit
Configure SR-TE Policy
/* Configure SR-TE Policy */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# policy pref_sid_to_PE3 Router(config-sr-te-policy)# color 9001 end-point ipv4 20.20.20.20 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 10 Router(config-sr-te-pp-info)# explicit segment-list pref_sid_to_PE3 Router(config-sr-te-pp-info)# commit Router(config-sr-te-pp-info)# exit ! Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# policy pref_adj_sid_to_PE3 Router(config-sr-te-policy)# color 9001 end-point ipv4 20.20.20.20 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 200 Router(config-sr-te-pp-info)# explicit segment-list pref_adj_sid_to_PE3 Router(config-sr-te-pp-info)# commit Router(config-sr-te-pp-info)# exit
/* You can configure multiple preferences for an SR policy. Among the configured preferences, the largest number takes the highest precedence */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 180000 200000 Router(config-sr)# local-block 15000 15999 Router(config-sr)# traffic-eng Router(config-sr-te)# policy 1013

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 769

Configure EVPN VPWS over SR-TE Policy

L2VPN Services over Segment Routing for Traffic Engineering Policy

Router(config-sr-te-policy)# color 1013 end-point ipv4 2.2.2.2 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 100 Router(config-sr-te-pp-info)# explicit segment-list PE1-P1_BE121 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 200 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3-P1-t0016 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 700 <----------largest number takes the precendence Router(config-sr-te-pp-info)# explicit segment-list PE1-P1 Router(config-sr-te-pp-info)# commit Router(config-sr-te-pp-info)# exit
Configure EVPN VPWS over SR-TE Policy
Note Use the auto-generated SR-TE policy name to attach the policy to the L2VPN instance. The auto-generated policy name is based on the policy color and end-point. Use the show segment-routing traffic-eng policy candidate-path name policy_name command to display the auto-generated policy name.
Router# show segment-routing traffic-eng policy candidate-path name pref_sid_to_PE3
SR-TE policy database --------------------Color: 9001, End-point: 20.20.20.20
Name: srte_c_9001_ep_20.20.20.20
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class 1001 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_9001_ep_20.20.20.20 fallback disable Router(config-l2vpn-pwc-mpls)# commit Router(config-l2vpn-pwc-mpls)# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p evpn_vpws_1001 Router(config-l2vpn-xc-p2p)# interface tengi0/1/0/1.1001 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 1001 target 10001 source 20001 Router(config-l2vpn-xc-p2p-pw)# pw-class 1001 Router(config-l2vpn-xc-p2p-pw)# commit Router(config-l2vpn-xc-p2p-pw)# exit
/* If Fallback Enable is configured, which is the default option, and if the SR-policy is down, then EVPN VPWS will still continue to be UP using the regular IGP path, and not using
the SR-policy */ show l2vpn xconnect detail
EVPN: neighbor 20.20.20.20, PW ID: evi 1001, ac-id 10001, state is up ( established ) Preferred path Inactive : SR TE srte_c_9001_ep_20.20.20.20, Statically configured,
fallback enabled Tunnel : Down LSP: Up

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 770

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure VPWS Pseudowire Headend over SR-TE Policy

/* If Fallback Disable is configured, and if the SR-policy is down, or if it misconfigured in dual homed mode, then the L2VPN PW will be down */
show l2vpn xconnect detail EVPN: neighbor 20.20.20.20, PW ID: evi 1001, ac-id 10001, state is down ( local ready ) Preferred path Active : SR TE srte_c_9001_ep_20.20.20.20, Statically configured, fallback disabled Tunnel : Down
Configure VPWS Pseudowire Headend over SR-TE Policy
Note Use the auto-generated SR-TE policy name to attach the policy to the L2VPN instance. The auto-generated policy name is based on the policy color and end-point. Use the show segment-routing traffic-eng policy candidate-path name policy_name command to display the auto-generated policy name.
Router# show segment-routing traffic-eng policy candidate-path name 1013
SR-TE policy database --------------------Color: 1013, End-point: 2.2.2.2
Name: srte_c_1013_ep_2.2.2.2
Router# configure Router(config)# interface PW-Ether1 Router(config-if)# ipv4 address 10.1.1.1 255.255.255.0 Router(config-if)# attach generic-interface-list 1 Router(config-if)# exit ! Router(config)# generic-interface-list 1 Router(config-gen-if-list)# interface Bundle-Ether1 Router(config-gen-if-list)# interface TenGigE0/1/0/6/1 Router(config-gen-if-list)# interface TenGigE0/1/0/6/2 Router(config-gen-if-list)# exit ! Router(config)# l2vpn Router(config-l2vpn)# pw-class pw1013 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# transport-mode ethernet Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback
disable Router(config-l2vpn-pwc-mpls)# exit ! Router(config)# l2vpn Router(config-l2vpn)# Xconnect group evpn_vpws_pwhe Router(config-l2vpn-xc)# p2p 1001 Router(config-l2vpn-xc-p2p)# interface pw-ether 1 Router(config-l2vpn-xc-p2p-pw)# neighbor evpn evi 1000 target 1000 source 1000 Router(config-l2vpn-xc-p2p-pw)# pw-class pw1013 Router(config-l2vpn-xc-p2p-pw)# commit
Running Configuration
/* Configure Prefix-SID in ISIS */ PE1:
configure
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 771

Running Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

segment-routing global-block 180000 200000
! router isis core
is-type level-2-only net 49.0002.0330.2000.0031.00 nsr nsf ietf log adjacency changes address-family ipv4 unicast
metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id 1.1.1.1 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 180010
P1:
configure segment-routing global-block 180000 200000
router isis core is-type level-2-only net 49.0002.0330.2000.0021.00 nsr nsf ietf log adjacency changes address-family ipv4 unicast metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 180015
P2:
configure segment-routing global-block 180000 200000
router isis core is-type level-2-only net 49.0002.0330.2000.0022.00 nsr nsf ietf log adjacency changes address-family ipv4 unicast metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 772

L2VPN Services over Segment Routing for Traffic Engineering Policy
prefix-sid index 180025
PE3:
configure segment-routing global-block 180000 200000
router isis core is-type level-2-only net 49.0002.0330.2000.3030.0030.0035.00 address-family ipv4 unicast metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 180020
/* Configure Adjacency-SID in ISIS */
PE1:
configure segment-routing local-block 15000 15999
!
router isis core !
interface Bundle-Ether121 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15101
interface TenGigE0/0/1/6 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15102
P1:
configure segment-routing local-block 15000 15999
router isis core !
interface Bundle-Ether121 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast metric 20 adjacency-sid absolute 15200
interface TenGigE0/0/0/0/7

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 773

Running Configuration
circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
metric 20 adjacency-sid absolute 15202
P2:
configure segment-routing local-block 15000 15999
router isis core !
interface TenGigE0/0/0/5 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast metric 20 adjacency-sid absolute 15204
interface TenGigE0/0/0/0/7 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast metric 20 adjacency-sid absolute 15201
PE3:
configure segment-routing local-block 15000 15999
router isis core !
interface TenGigE0/0/0/1 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15301 !
! interface TenGigE0/0/0/2
circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
adjacency-sid absolute 15302
/* Configure Segment-list */ PE1:
configure segment-routing global-block 180000 200000 traffic-eng logging policy status

L2VPN Services over Segment Routing for Traffic Engineering Policy

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 774

L2VPN Services over Segment Routing for Traffic Engineering Policy

Running Configuration

segment-routing traffic-eng segment-list name pref_sid_to_PE3 index 1 mpls label 180020 ! !
configure segment-routing local-block 15000 15999 traffic-eng logging policy status
segment-routing traffic-eng segment-list name pref_adj_sid_to_PE3 index 1 mpls label 15101 index 2 mpls label 15202 ! !
/* Configure SR-TE policy */
segment-routing traffic-eng policy pref_sid_to_PE3 color 9001 end-point ipv4 20.20.20.20 candidate-paths preference 10 explicit segment-list pref_sid_to_PE3 ! !
segment-routing traffic-eng policy pref_adj_sid_to_PE3 color 9001 end-point ipv4 20.20.20.20 candidate-paths preference 200 explicit segment-list pref_adj_sid_to_PE3 ! !
/* You can configure multiple preferences for an SR policy. Among the configured preferences, the largest number takes the highest precedence */
segment-routing traffic-eng policy 1013 color 1013 end-point ipv4 2.2.2.2 candidate-paths preference 100 explicit segment-list PE1-P1_BE121 ! preference 200 explicit segment-list PE1-PE3-P1-t0016 ! preference 700 explicit segment-list PE1-P1 !
/* Configure EVPN VPWS over SR-TE policy */ PE1: configure
l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 775

Verify EVPN VPWS Preferred Path over SR-TE Policy Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

pw-class 1001 encapsulation mpls preferred-path sr-te policy srte_c_9001_ep_20.20.20.20 fallback disable
xconnect group evpn_vpws p2p evpn_vpws_1001 interface tengi0/1/0/1.1001 neighbor evpn evi 1001 target 10001 source 20001 pw-class 1001 !
/* Configure VPWS Pseudowire Headend SR-TE Policy */
interface PW-Ether1 ipv4 address 10.1.1.1 255.255.255.0 attach generic-interface-list 1
generic-interface-list 1 interface Bundle-Ether1 interface TenGigE0/1/0/6/1 interface TenGigE0/1/0/6/2

l2vpn pw-class pw1013 encapsulation mpls transport-mode ethernet preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback disable
Xconnect group evpn_vpws_pwhe p2p 1001 interface pw-ether 1 neighbor evpn evi 1000 target 1000 source 1000 pw-class pw1013

Verify EVPN VPWS Preferred Path over SR-TE Policy Configuration

PE1#show segment-routing traffic-eng forwarding policy name pref_sid_to_PE3 detail

Policy

Segment

Outgoing Outgoing

Next Hop

Bytes

Name

List

Label

Interface

Switched

------------- --------------- ----------- ------------------- --------------- ------------

pref_sid_to_PE3

15102

TenGigE0/0/1/6

20.20.20.20

Label Stack (Top -> Bottom): { 15101, 15102 }

Path-id: 1, Weight: 0

Packets Switched: 787990

Local label: 34555

Packets/Bytes Switched: 1016545/105720680

(!): FRR pure backup

81950960

PE1#show segment-routing traffic-eng policy candidate-path name pref_sid_to_PE3
SR-TE policy database ---------------------
Color: 9001, End-point: 20.20.20.20 Name: srte_c_9001_ep_20.20.20.20

PE1#show mpls forwarding tunnels sr-policy name pref_sid_to_PE3

Tunnel

Outgoing Outgoing

Next Hop

Bytes

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 776

L2VPN Services over Segment Routing for Traffic Engineering Policy

Associated Commands

Name

Label

Interface

Switched

------------- ----------- ------------ --------------- ------------

pref_sid_to_PE3 (SR) 15102 TenGigE0/0/1/6 20.20.20.20

836516512

PE1#show l2vpn xconnect group evpn_vpws xc-name evpn_vpws_1001 detail Group evpn_vpws, XC evpn_vpws_1001, state is up; Interworking none
AC: Bundle-Ether12.1001, state is up Type VLAN; Num Ranges: 1 Outer Tag: 1000 Rewrite Tags: [] VLAN ranges: [1, 1] MTU 1500; XC ID 0xc0000018; interworking none Statistics: packets: received 642304, sent 642244 bytes: received 61661184, sent 61655424 drops: illegal VLAN 0, illegal length 0
EVPN: neighbor 20.20.20.20, PW ID: evi 1001, ac-id 10001, state is up ( established ) XC ID 0xa0000007 Encapsulation MPLS Source address 10.10.10.10 Encap type Ethernet, control word enabled Sequencing not set Preferred path Active : SR TE pref_sid_to_PE3, Statically configured, fallback disabled Tunnel : Up Load Balance Hashing: src-dst-mac
PE# show l2vpn xconnect group evpn_vpws_pwhe xc-name 3001 detail Group evpn_vpws_pwhe, XC 3001, state is up; Interworking none
AC: PW-Ether3001, state is up Type PW-Ether Interface-list: GIL Internal label: 24022
.... EVPN: neighbor 20.20.20.20, PW ID: evi 3001, ac-id 3001, state is up ( established )
.... Preferred path Active : SR TE evpn_to_PE5_3001, Statically configured, fallback disabled Tunnel : Up

PE1# show mpls forwarding labels 24022 detail

Local Outgoing Prefix

Outgoing

Next Hop

Bytes

Label Label

or ID

Interface

Switched

------ ----------- ------------------ ------------ --------------- ------------

24022 25022

PW-HE(PE3001)

evpn_to_PE5_ point2point

0

Updated: Dec 18 12:52:50.764

PW HE VC type : 5

PW HE CW

: enabled

PW HE interface : PE3001

Outgoing Interface: evpn_to_PE5_3001 (ifhandle 0x0000fc20)

PE1# show l2vpn forwarding main-port pwhe location 0/2/CPU0

PWHE-MP Interface: PW-Ether3001

ifhandle:

0x000101e0

Generic Iflist ID: 1

Internal_label:

24022

Remote Label:

25022

Control Word Enabled: Yes

Pseudowire Type:

5

Next Hop Tunnel IFH: 0xfc20

Associated Commands · adjacency-sid

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 777

Related Topics

L2VPN Services over Segment Routing for Traffic Engineering Policy

Related Topics

· index · prefix-sid · router isis · segment-routing The applicable segment routing commands are described in the Segment Routing Command Reference for Cisco ASR 9000 Series Routers
· Overview of Segment Routing , on page 761 · How Segment Routing Works , on page 762 · Segment Routing Global Block , on page 763

L2VPN VPLS or VPWS Preferred Path over SR-TE Policy
L2VPN VPLS or VPWS Preferred Path over SR-TE Policy feature allows you to set the preferred path between the two end-points for L2VPN Virtual Private LAN Service (VPLS) or Virtual Private Wire Service (VPWS) using SR-TE policy. This feature is supported on bundle attachment circuit (AC), physical AC, and PWHE AC.
Restrictions · When an SR policy is configured as the preferred path for a VPLS circuit, the traffic traverses through the SR policy path. The PW counters are updated with statistics about packets transmitted and received. When the SR policy configuration is deleted, the traffic session is still functional because the traffic transmission switches back to the normal LSP path between the PEs. There is no drop in the end-to-end traffic transmitted. However, the packet statistics counters are reset and start from zero. This is because, when the SR policy is deleted, the PW too gets deleted and the statistics information associated with the old PW is cleared. The counter restarts from zero when the new PW is created after the switch takes place.
Configure L2VPN VPLS or VPWS Preferred Path over SR-TE Policy
Perform the following steps to configure L2VPN VPLS or VPWS Preferred Path over SR-TE Policy feature. The following figure is used as a reference to explain the configuration steps.

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 778

L2VPN Services over Segment Routing for Traffic Engineering Policy Figure 104: L2VPN VPWS and VPLS Preferred Path over SR-TE Policy

Configure Prefix-SID in IS-IS

· Configure Prefix-SID on IGP -- The following examples show how to configure prefix-SID in IS-IS. · Configure Adjacency-SID on IGP -- The following examples show how to configure Adjacency-SID
in IS-IS. · Configure segment-list · Configure SR-TE policy · Configure VPLS over SR-TE policy · Configure VPWS over SR-TE policy · Configure VPWS pseudowire headend over SR-TE policy
Configure Prefix-SID in IS-IS Configure Prefix-SID on PE1, PE2, and PE3.
/* Configure Prefix-SID on PE1 */
Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.0031.00 Route(config-isis)# nsr Route(config-isis)# nsf ietf Route(config-isis)# log adjacency changes Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id 1.1.1.1 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 779

Configure Adjacency-SID in IS-IS

L2VPN Services over Segment Routing for Traffic Engineering Policy

! Route(config-isis)# interface loopback 0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 16100 Route(config-isis-af)# commit Route(config-isis-af)# exit
/* Configure Prefix-SID on PE2 */
Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.0021.00 Route(config-isis)# nsr Route(config-isis)# nsf ietf Route(config-isis)# log adjacency changes Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface loopback 0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 16200 Route(config-isis-af)# commit Route(config-isis-af)# exit
/* Configure Prefix-SID on PE3 */
Router# configure Route(config)# router isis core Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0002.0330.2000.3030.0030.0035.00 Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide level 2 Route(config-isis-af)# mpls traffic-eng level-2-only Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls sr-prefer Route(config-isis-af)# segment-routing prefix-sid-map advertise-local Route(config-isis-af)# exit ! Route(config-isis)# interface loopback 0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 16300 Route(config-isis-af)# commit Route(config-isis-af)# exit
Configure Adjacency-SID in IS-IS
Configure Adjacency-SID on PE1, PE2, and PE3.
/* Configure Adjacency-SID on PE1 */
Router# configure Route(config)# router isis core Route(config-isis)# interface Bundle-Ether121 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 780

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure Adjacency-SID in IS-IS

Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15100 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/1/6 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15101 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/1/9 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15102 Route(config-isis-if-af)# commit
/* Configure Adjacency-SID on PE2 */
Router# configure Route(config)# router isis core Route(config-isis)# interface Bundle-Ether121 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15200 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigET0/0/1/4 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15201 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/7 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15202 Route(config-isis-if-af)# commit
/* Configure Adjacency-SID on PE3 */
Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 781

Configure Segment-list

L2VPN Services over Segment Routing for Traffic Engineering Policy

Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15301 Route(config-isis-if-af)# exit ! Router# configure Route(config)# router isis core Route(config-isis)# interface TenGigE0/0/0/2 Route(config-isis-if)# circuit-type level-2-only Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-if-af)# adjacency-sid absolute 15302 Route(config-isis-if-af)# commit
Configure Segment-list
Configure segment-list on PE1, PE2, and PE3.
/* Configure segment-list on PE1 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 16000 23999 Router(config-sr)# local-block 15000 15999 Router(config-sr)# traffic-eng Router(config-sr-te)# segment-list segment-list name PE1-PE2 Router(config-sr-te-sl)# index 1 mpls label 16200 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE3 Router(config-sr-te-sl)# index 1 mpls label 16300 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE2-PE3 Router(config-sr-te-sl)# index 1 mpls label 16200 Router(config-sr-te-sl)# index 2 mpls label 16300 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE2_bad Router(config-sr-te-sl)# index 1 mpls label 16900 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE3-PE2 Router(config-sr-te-sl)# index 1 mpls label 16300 Router(config-sr-te-sl)# index 2 mpls label 16200 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE2_BE121 Router(config-sr-te-sl)# index 1 mpls label 15100 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE3-PE2_link Router(config-sr-te-sl)# index 1 mpls label 15101 Router(config-sr-te-sl)# index 2 mpls label 15302 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE1-PE3-PE2-t0016 Router(config-sr-te-sl)# index 1 mpls label 15101

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 782

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure SR-TE Policy

Router(config-sr-te-sl)# index 2 mpls label 16200 Router(config-sr-te-sl)# commit
/* Configure segment-list on PE2 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 16000 23999 Router(config-sr)# local-block 15000 15999 Router(config-sr)# traffic-eng Router(config-sr-te)# segment-list segment-list name PE2-PE1 Router(config-sr-te-sl)# index 1 mpls label 16100 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE2-PE3-PE1 Router(config-sr-te-sl)# index 1 mpls label 16300 Router(config-sr-te-sl)# index 2 mpls label 16100 Router(config-sr-te-sl)# commit
/* Configure segment-list on PE3 */
Router# configure Router(config)# segment-routing Router(config-sr)# global-block 16000 23999 Router(config-sr)# local-block 15000 15999 Router(config-sr)# traffic-eng Router(config-sr-te)# segment-list segment-list name PE3-PE1 Router(config-sr-te-sl)# index 1 mpls label 16100 Router(config-sr-te-sl)# exit ! Router(config-sr-te)# segment-list segment-list name PE3-PE2-PE1 Router(config-sr-te-sl)# index 1 mpls label 16200 Router(config-sr-te-sl)# index 2 mpls label 16100 Router(config-sr-te-sl)# commit
Configure SR-TE Policy
/* Configure SR-TE policy */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# policy 100 Router(config-sr-te-policy)# color 1 end-point ipv4 2.2.2.2 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 400 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3-PE2 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 500 <-----------------largest number takes the precedence Router(config-sr-te-pp-info)# explicit segment-list PE1-PE2 Router(config-sr-te-pp-info)# commit Router(config-sr-te-pp-info)# exit
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# policy 1013

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 783

Configure VPLS over SR-TE Policy

L2VPN Services over Segment Routing for Traffic Engineering Policy

Router(config-sr-te-policy)# color 1013 end-point ipv4 2.2.2.2 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 100 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE2_BE121 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 200 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3-PE2-t0016 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 500 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE2 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 600 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3-PE2 Router(config-sr-te-pp-info)# exit ! Router(config-sr-te-policy)# preference 700 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3-PE2_link Router(config-sr-te-pp-info)# commit ! Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# policy 1300 Router(config-sr-te-policy)# color 1300 end-point ipv4 3.3.3.3 Router(config-sr-te-policy)# candidate-paths Router(config-sr-te-policy)# preference 100 Router(config-sr-te-pp-info)# explicit segment-list PE1-PE3 Router(config-sr-te-pp-info)# commit !
Configure VPLS over SR-TE Policy
Note Use the auto-generated SR-TE policy name to attach the policy to the L2VPN instance. The auto-generated policy name is based on the policy color and end-point. Use the show segment-routing traffic-eng policy candidate-path name policy_name command to display the auto-generated policy name.
Router# show segment-routing traffic-eng policy candidate-path name 100
SR-TE policy database --------------------Color: 1, End-point: 2.2.2.2
Name: srte_c_1_ep_2.2.2.2
Router# show segment-routing traffic-eng policy candidate-path name 1013
SR-TE policy database --------------------Color: 1013, End-point: 2.2.2.2
Name: srte_c_1013_ep_2.2.2.2
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class pw100 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_1_ep_2.2.2.2

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 784

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure VPWS over SR-TE Policy

Router(config-l2vpn-pwc-mpls)# exit ! Router(config-l2vpn)# pw-class pw1013 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback
disable Router(config-l2vpn-pwc-mpls)# exit
/* The default is Fallback Enable. If the SR-policy is down, then L2VPN VPWS/VPLS will try to be UP using the regular IGP path, and not using the SR policy. If Fallback Disable is
configured, the L2VPN PW will be down when the SR-policy is down. Preferred-path is the action of pinning down a PW to a SR TE policy */
Router(config)#l2vpn Router(config-l2vpn)#bridge group bg1 Router(config-l2vpn-bg)#bridge-domain vpls501 Router(config-l2vpn-bg-bd)#interface Bundle-Ether41.501 Router(config-l2vpn-bg-bd-ac)#exit ! Router(config-l2vpn-bg-bd)#interface TenGigE0/0/1/0.501 Router(config-l2vpn-bg-bd-ac)#split-horizon group Router(config-l2vpn-bg-bd-ac)#exit ! Router(config-l2vpn-bg-bd)#vfi vpls1 Router(config-l2vpn-bg-bd-vfi)#neighbor 2.2.2.2 pw-id 501 Router(config-l2vpn-bg-bd-vfi-pw)#pw-class pw100 Router(config-l2vpn-bg-bd-vfi-pw)#exit ! Router(config-l2vpn-bg-bd-vfi)#neighbor 3.3.3.3 pw-id 501 Router(config-l2vpn-bg-bd-vfi-pw)#commit
Configure VPWS over SR-TE Policy
Note Use the auto-generated SR-TE policy name to attach the policy to the L2VPN instance. The auto-generated policy name is based on the policy color and end-point. Use the show segment-routing traffic-eng policy candidate-path name policy_name command to display the auto-generated policy name.
Router# show segment-routing traffic-eng policy candidate-path name 1300
SR-TE policy database --------------------Color: 1300, End-point: 3.3.3.3
Name: srte_c_1300_ep_3.3.3.3
Router# configure Router(config)# l2vpn Router(config-l2vpn)# pw-class pw1300 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# load-balancing Router(config-l2vpn-pwc-mpls-load-bal)# flow-label both Router(config-l2vpn-pwc-mpls-load-bal)# exit ! Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_1300_cp_3.3.3.3 fallback
disable Router(config-l2vpn-pwc-mpls)# exit ! Router(config)# l2vpn

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 785

Configure VPWS Pseudowire Headend over SR-TE Policy

L2VPN Services over Segment Routing for Traffic Engineering Policy

Router(config-l2vpn)# xconnect group xcon1 Router(config-l2vpn-xc)# p2p vplw1002 Router(config-l2vpn-xc-p2p)# interface TenGigE0/0/1/1.1002 Router(config-l2vpn-xc-p2p)# neighbor 3.3.3.3 pw-id 1002 Router(config-l2vpn-xc-p2p-pw)# pw-class pw1300 Router(config-l2vpn-xc-p2p-pw)# commit Router(config-l2vpn-xc-p2p-pw)# exit
Configure VPWS Pseudowire Headend over SR-TE Policy
Note Use the auto-generated SR-TE policy name to attach the policy to the L2VPN instance. The auto-generated policy name is based on the policy color and end-point. Use the show segment-routing traffic-eng policy candidate-path name policy_name command to display the auto-generated policy name.
Router# show segment-routing traffic-eng policy candidate-path name 1013
SR-TE policy database --------------------Color: 1013, End-point: 2.2.2.2
Name: srte_c_1013_ep_2.2.2.2
Router# configure Router(config)# interface PW-Ether1 Router(config-if)# ipv4 address 10.1.1.1 255.255.255.0 Router(config-if)# attach generic-interface-list 1 Router(config-if)# exit ! Router(config)# generic-interface-list 1 Router(config-gen-if-list)# interface Bundle-Ether1 Router(config-gen-if-list)# interface TenGigE0/1/0/6/1 Router(config-gen-if-list)# interface TenGigE0/1/0/6/2 Router(config-gen-if-list)# exit ! Router(config)# l2vpn Router(config-l2vpn)# pw-class pw1013 Router(config-l2vpn-pwc)# encapsulation mpls Router(config-l2vpn-pwc-mpls)# transport-mode ethernet Router(config-l2vpn-pwc-mpls)# preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback
disable Router(config-l2vpn-pwc-mpls)# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group xg2 Router(config-l2vpn-xc)# p2p pwhe10001 Router(config-l2vpn-xc-p2p)# interface PW-Ether10001 Router(config-l2vpn-xc-p2p-pw)# neighbor ipv4 2.2.2.2 pw-id 10001 Router(config-l2vpn-xc-p2p-pw)# pw-class pw1013 Router(config-l2vpn-xc-p2p-pw)# commit
Running Configuration
/* Configure prefix-SID */ PE1: router isis core
is-type level-2-only net 49.0002.0330.2000.0031.00

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 786

L2VPN Services over Segment Routing for Traffic Engineering Policy
nsr nsf ietf log adjacency changes address-family ipv4 unicast
metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id 1.1.1.1 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 16100
PE2: router isis core
is-type level-2-only net 49.0002.0330.2000.0021.00 nsr nsf ietf log adjacency changes address-family ipv4 unicast
metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 16200
PE3: router isis core
is-type level-2-only net 49.0002.0330.2000.3030.0030.0035.00 address-family ipv4 unicast
metric-style wide level 2 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 segment-routing mpls sr-prefer segment-routing prefix-sid-map advertise-local
interface Loopback0 address-family ipv4 unicast prefix-sid index 16300
/* Configure Adjacency-SID */ PE1: router isis core !
interface Bundle-Ether121 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15100 !
interface TenGigE0/0/1/6 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15101

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 787

Running Configuration
! interface TenGigE0/0/1/9
circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
adjacency-sid absolute 15102
PE2 router isis core
! interface Bundle-Ether121
circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
adjacency-sid absolute 15200
interface TenGigE0/0/0/0/4 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15201
interface TenGigE0/0/0/0/7 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast adjacency-sid absolute 15202
PE3: router isis core ! interface TenGigE0/0/0/1
circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
adjacency-sid absolute 15301 ! ! interface TenGigE0/0/0/2 circuit-type level-2-only point-to-point hello-padding disable address-family ipv4 unicast
adjacency-sid absolute 15302
/* Configure segment-list */ PE1: segment-routing
global-block 16000 23999 local-block 15000 15999
traffic-eng segment-list name PE1-PE2
index 1 mpls label 16200 ! segment-list name PE1-PE3
index 1 mpls label 16300 ! segment-list name PE1-PE2-PE3
index 1 mpls label 16200

L2VPN Services over Segment Routing for Traffic Engineering Policy

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 788

L2VPN Services over Segment Routing for Traffic Engineering Policy
index 2 mpls label 16300 ! segment-list name PE1-PE2_bad
index 1 mpls label 16900 ! segment-list name PE1-PE3-PE2
index 1 mpls label 16300 index 2 mpls label 16200 ! segment-list name PE1-PE2_BE121 index 1 mpls label 15100 ! segment-list name PE1-PE3-PE2_link index 1 mpls label 15101 index 2 mpls label 15302 !
segment-list name PE1-PE3-PE2-t0016 index 1 mpls label 15101 index 2 mpls label 16200
PE2: segment-routing
global-block 16000 23999 local-block 15000 15999 traffic-eng
segment-list name PE2-PE1 index 1 mpls label 16100
! segment-list name PE2-PE3-PE1
index 1 mpls label 16300 index 2 mpls label 16100
PE3: segment-routing
global-block 16000 23999 local-block 15000 15999 traffic-eng
segment-list name PE3-PE1 index 1 mpls label 16100
! segment-list name PE3-PE2-PE1
index 1 mpls label 16200 index 2 mpls label 16100
/* Configure SR-TE policy */
segment-routing traffic-eng policy 100 color 1 end-point ipv4 2.2.2.2 candidate-paths preference 400 explicit segment-list PE1-PE3-PE2 ! preference 500 explicit segment-list PE1-PE2
policy 1013 color 1013 end-point ipv4 2.2.2.2 candidate-paths preference 100 explicit segment-list PE1-PE2_BE121 !

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 789

Running Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

preference 200 explicit segment-list PE1-PE3-PE2-t0016 !
preference 500 explicit segment-list PE1-PE2 !
preference 600 explicit segment-list PE1-PE3-PE2 !
preference 700 explicit segment-list PE1-PE3-PE2_link !
policy 1300 color 1300 end-point ipv4 3.3.3.3 candidate-paths preference 100 explicit segment-list PE1-PE3 !
/* Configure VPLS over SR-TE policy l2vpn
pw-class pw100 encapsulation mpls preferred-path sr-te policy srte_c_1_ep_2.2.2.2
pw-class pw1013 encapsulation mpls preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback disable
l2vpn bridge group bg1 bridge-domain vpls501 interface Bundle-Ether41.501 ! interface TenGigE0/0/1/0.501 split-horizon group ! vfi vpls1 neighbor 2.2.2.2 pw-id 501 pw-class pw100 ! neighbor 3.3.3.3 pw-id 501
/*Configure VPWS over SR-TE policy l2vpn
pw-class pw1013 encapsulation mpls load-balancing flow-label both preferred-path sr-te policy srte_c_1013_ep_2.2.2.2 fallback disable
Xconnect group xcon1 p2p vplw1002 interface TenGigE0/0/1/1.1002 neighbor 3.3.3.3 pw-id 1002 pw-class pw1013
/* Configure VPWS Pseudowire Headend SR-TE Policy */
interface PW-Ether1 ipv4 address 10.1.1.1 255.255.255.0 attach generic-interface-list 1
generic-interface-list 1 interface Bundle-Ether1 interface TenGigE0/1/0/6/1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 790

L2VPN Services over Segment Routing for Traffic Engineering Policy

Verify L2VPN VPLS or VPWS Preferred Path over SR-TE Policy Configuration

interface TenGigE0/1/0/6/2
l2vpn pw-class pw1300 encapsulation mpls transport-mode ethernet preferred-path sr-te policy srte_c_1300_cp_3.3.3.3 [fallback disable]
l2vpn xconnect group xg2 p2p pwhe10001 interface PW-Ether10001 neighbor ipv4 2.2.2.2 pw-id 10001 pw-class pw1300
Verify L2VPN VPLS or VPWS Preferred Path over SR-TE Policy Configuration
/* The prefix-sid and Adjacency-sid must be in the SR topology */
PE1#show segment-routing traffic-eng ipv4 topology | inc Prefix Thu Feb 1 20:28:43.343 EST
Prefix SID: Prefix 1.1.1.1, label 16100 (regular)
Prefix SID: Prefix 3.3.3.3, label 16300 (regular)
Prefix SID: Prefix 2.2.2.2, label 16200 (regular)
PE1#show segment-routing traffic-eng ipv4 topology | inc Adj SID Thu Feb 1 20:30:25.760 EST
Adj SID: 61025 (unprotected) 15102 (unprotected) Adj SID: 61023 (unprotected) 15101 (unprotected) Adj SID: 65051 (unprotected) 15100 (unprotected) Adj SID: 41516 (unprotected) 15301 (unprotected) Adj SID: 41519 (unprotected) 15302 (unprotected) Adj SID: 46660 (unprotected) 15201 (unprotected) Adj SID: 24003 (unprotected) 15202 (unprotected) Adj SID: 46675 (unprotected) 15200 (unprotected)
PE1# show segment-routing traffic-eng policy candidate-path name 100
SR-TE policy database ---------------------
Color: 100, End-point: 2.2.2.2 Name: srte_c_1_ep_2.2.2.2

PE1#show segment-routing traffic-eng policy name 100 Thu Feb 1 23:16:58.368 EST

SR-TE policy database ---------------------

Name: 100 (Color: 1, End-point: 2.2.2.2) Status: Admin: up Operational: up for 05:44:25 (since Feb Candidate-paths: Preference 500:

1 17:32:34.434)

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 791

Verify L2VPN VPLS or VPWS Preferred Path over SR-TE Policy Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

Explicit: segment-list PE1-PE2 (active) Weight: 0, Metric Type: IGP 16200 [Prefix-SID, 2.2.2.2]
Preference 400: Explicit: segment-list PE1-PE3-PE2 (inactive) Inactive Reason: unresolved first label Weight: 0, Metric Type: IGP
Attributes: Binding SID: 27498 Allocation mode: dynamic State: Programmed Policy selected: yes Forward Class: 0

PE1#show segment-routing traffic-eng policy name 1013 Thu Feb 1 21:20:57.439 EST

SR-TE policy database --------------------Name: 1013 (Color: 1013, End-point: 2.2.2.2)
Status: Admin: up Operational: up for 00:06:36 (since Feb 1 21:14:22.057)
Candidate-paths: Preference 700: Explicit: segment-list PE1-PE3-PE2_link (active) Weight: 0, Metric Type: IGP 15101 [Adjacency-SID, 13.1.1.1 - 13.1.1.2] 15302 Preference 600: Explicit: segment-list PE1-PE3-PE2 (inactive) Inactive Reason: Weight: 0, Metric Type: IGP Preference 500: Explicit: segment-list PE1-PE2 (inactive) Inactive Reason: Weight: 0, Metric Type: IGP Preference 200: Explicit: segment-list PE1-PE3-PE2-t0016 (inactive) Inactive Reason: unresolved first label Weight: 0, Metric Type: IGP Preference 100: Explicit: segment-list PE1-PE2_BE121 (inactive) Inactive Reason: unresolved first label Weight: 0, Metric Type: IGP
Attributes: Binding SID: 27525 Allocation mode: dynamic State: Programmed Policy selected: yes Forward Class: 0

PE1#show segment-routing traffic-eng forwarding policy name 100

Thu Feb 1 23:19:28.951 EST

Policy

Segment

Outgoing Outgoing

Next Hop

Bytes

Name

List

Label

Interface

Switched

------------- --------------- ----------- ------------------- --------------- ------------

100

PE1-PE2

Pop

Te0/0/1/9

12.1.9.2

0

Pop

BE121

121.1.0.2

0

PE1#show segment-routing traffic-eng forwarding policy name 1013 detail

Thu Feb 1 21:22:46.069 EST

Policy

Segment

Outgoing Outgoing

Next Hop

Name

List

Label

Interface

Bytes Switched

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 792

L2VPN Services over Segment Routing for Traffic Engineering Policy

Verify L2VPN VPLS or VPWS Preferred Path over SR-TE Policy Configuration

------------- --------------- ----------- ------------------- --------------- ------------

1013

PE1-PE3-PE2_link

15302

Te0/0/1/6

13.1.1.2

0

Label Stack (Top -> Bottom): { 15302 }

Path-id: 1, Weight: 0

Packets Switched: 0

Local label: 24005

Packets/Bytes Switched: 0/0

(!): FRR pure backup

PE1#show mpls forwarding tunnels sr-policy name 1013

Thu Feb 1 21:23:22.743 EST

Tunnel

Outgoing Outgoing

Next Hop

Bytes

Name

Label

Interface

Switched

------------- ----------- ------------ --------------- ------------

1013

(SR) 15302

Te0/0/1/6 13.1.1.2

0

PE1#show l2vpn bridge-domain bd-name vpls501 detail

Sat Feb 3 11:27:35.655 EST

Legend: pp = Partially Programmed.

Bridge group: bg1, bridge-domain: vpls501, id: 250, state: up, ShgId: 0, MSTi: 0

..........

List of VFIs:

VFI vpls1 (up)

PW: neighbor 2.2.2.2, PW ID 501, state is up ( established )

PW class pw100, XC ID 0xa00020d5

Encapsulation MPLS, protocol LDP

Source address 1.1.1.1

PW type Ethernet, control word disabled, interworking none

Sequencing not set

Preferred path Active : SR TE 100, Statically configured, fallback disabled

Tunnel : Up

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -------------------------

Label

41042

24010

Group ID

0xfa

0x1

Interface vpls1

vpls1

MTU

1500

1500

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -------------------------

Incoming Status (PW Status TLV):

Status code: 0x0 (Up) in Notification message

MIB cpwVcIndex: 2684362965

Create time: 02/02/2018 16:20:59 (19:06:37 ago)

PE1# show l2vpn bridge-domain bd-name pwhe1 detail

Legend: pp = Partially Programmed. Bridge group: bg3, bridge-domain: pwhe1, id: 3448, state: up, ShgId: 0, MSTi: 0 ...... List of ACs:
AC: PW-Ether1.1, state is up List of Access PWs:
List of VFIs: VFI pwhe1 (up) PW: neighbor 2.2.2.2, PW ID 600001, state is up ( established ) PW class pw1000, XC ID 0xa0004401

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 793

Associated Commands

L2VPN Services over Segment Routing for Traffic Engineering Policy

Encapsulation MPLS, protocol LDP Source address 1.1.1.1 PW type Ethernet, control word disabled, interworking none Sequencing not set Preferred path Active : SR TE 1000, Statically configured, fallback disabled Tunnel : Up

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -------------------------

Label

43292

35464

Group ID

0xd78

0xd79

Interface pwhe1

pwhe1

MTU

1500

1500

Control word disabled

disabled

PW type

Ethernet

Ethernet

VCCV CV type 0x2

0x2

(LSP ping verification)

(LSP ping verification)

VCCV CC type 0x6

0x6

(router alert label)

(router alert label)

(TTL expiry)

(TTL expiry)

------------ ------------------------------ -------------------------

PE1# show l2vpn xconnect group xg2 xc-name pwhe10001 detail

Group xg2, XC pwhe10001, state is up; Interworking none AC: PW-Ether10001, state is up Type PW-Ether Interface-list: pwhe2 Replicate status: Te0/0/1/9: success BE121: success Hu0/1/0/3: success MTU 1500; interworking none Internal label: 33018 ......
PW: neighbor 2.2.2.2, PW ID 10001, state is up ( established ) PW class pw1013, XC ID 0xa0000007 Encapsulation MPLS, protocol LDP Source address 1.1.1.1 PW type Ethernet, control word disabled, interworking none PW backup disable delay 0 sec Sequencing not set Preferred path Active : SR TE 1013, Statically configured, fallback disabled Tunnel : Up

PW Status TLV in use

MPLS

Local

Remote

------------ ------------------------------ -----------------------------

Label

55510

25363

Group ID

0x203f1e0

0x880

Interface PW-Ether10001

TenGigE0/0/0/0/6.10001

MTU

1500

1500

Control word disabled

disabled

Associated Commands

· adjacency-sid · index

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 794

L2VPN Services over Segment Routing for Traffic Engineering Policy

Related Topics

Related Topics

· prefix-sid · router isis · segment-routing The applicable segment routing commands are described in the Segment Routing Command Reference for Cisco ASR 9000 Series Routers
· Overview of Segment Routing , on page 761 · How Segment Routing Works , on page 762 · Segment Routing Global Block , on page 763

EVPN VPWS On-Demand Next Hop with SR-TE
The EVPN VPWS On-Demand Next Hop with SR-TE feature enables you to fetch the best path to send traffic from the source to destination in a point-to-point service using IOS XR Traffic Controller (XTC). On-Demand Next Hop (ODN) with SR-TE is supported on EVPN Virtual Private Wire Service (VPWS) and VPWS with pseudowire headend (PWHE). When redistributing routing information across domains, provisioning of multi-domain services (Layer2 VPN and Layer 3 VPN) poses complexity and scalability issues. ODN with SR-TE feature delegates computation of an end-to-end Label Switched Path (LSP) to a path computation element (PCE). This PCE includes constraints and policies without any redistribution. It then installs the reapplied multi-domain LSP for the duration of the service into the local forwarding information base(FIB). ODN uses BGP dynamic SR-TE capabilities and adds the path to the PCE. The PCE has the ability to find and download the end-to-end path based on the requirements. ODN triggers an SR-TE auto-tunnel based on the defined BGP policy. The PCE learns real-time topologies through BGP and/or IGP.
IOS XR Traffic Controller (XTC) The path computation element (PCE) describes a set of procedures by which a path computation client (PCC) reports and delegates control of head-end tunnels sourced from the PCC to a PCE peer. The PCE peer requests the PCC to update and modify parameters of LSPs it controls. It also enables a PCC to allow the PCE to initiate computations and to perform network-wide orchestration.
Restrictions · Maximum number of auto-provisioned TE policies is 1000.
· L2VPN services over PWHE with EVPN VPWS On-Demand Next Hop with SR-TE is not supported.
· PWHE over SR-TE with ECMP paths is not supported.
Configure EVPN VPWS On Demand Next Hop with SR-TE
Perform the following steps to configure EVPN VPWS On Demand Next Hop with SR-TE. The following figure is used as a reference to explain the configuration steps:
· Configure Prefix-SID in ISIS

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 795

Topology

L2VPN Services over Segment Routing for Traffic Engineering Policy

Topology

· Configure SR-TE · Configure PCE and PCC · Configure SR color · Configure EVPN route policy · Configure BGP · Configure EVPN VPWS · Configure VPWS with pseudowire headend
Consider a topology where EVPN VPWS is configured on PE1 and PE2. Traffic is sent from PE1 to PE2 using SR-TE in the core. The PCE, which is configured on the P router, calculates the best path from PE1 to PE2. Path computation client (PCC) is configured on PE1 and PE2.
Figure 105: EVPN VPWS On Demand Next Hop with SR-TE

Configuration Example
Configure Prefix-SID in ISIS
Configure Prefix-SID in ISIS and topology-independent loop-free alternate path (TI-LFA) in the core such that each router uses a unique segment identifier associated with the prefix.
/* Configure Prefix-SID in ISIS and TI-LFA on PE1 */
Router# configure Route(config)# router isis ring Route(config-isis)# is-type level-2-only Route(config-isis)# net 49.0001.1921.6800.1001.00 Route(config-isis)# segment-routing global-block 30100 39100 Route(config-isis)# nsr Route(config-isis)# distribute link-state Route(config-isis)# nsf cisco Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide Route(config-isis-af)# mpls traffic-eng level-1 Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls Route(config-isis-af)# exit ! Route(config-isis)# interface loopback0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 30101 Route(config-isis-af)# exit ! Route(config-isis)# interface HundredGigE0/0/0/0 Route(config-isis-if)# circuit-type level-1
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 796

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure Prefix-SID in ISIS

Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# fast-reroute per-prefix Route(config-isis-if-af)# fast-reroute per-prefix ti-lfa Route(config-isis-if-af)# commit
/*Configure Prefix-SID in ISIS and TI-LFA on P router */
Router# configure Route(config)# router isis ring Route(config-isis)# net 49.0001.1921.6800.1002.00 Route(config-isis)# segment-routing global-block 30100 39100 Route(config-isis)# nsr Route(config-isis)# distribute link-state Route(config-isis)# nsf cisco Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide Route(config-isis-af)# mpls traffic-eng level-1 Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls Route(config-isis-af)# exit ! Route(config-isis)# interface loopback0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 30102 Route(config-isis-af)# exit ! Route(config-isis)# interface HundredGigE0/0/0/0 Route(config-isis-if)# circuit-type level-1 Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# fast-reroute per-prefix Route(config-isis-if-af)# fast-reroute per-prefix ti-lfa Route(config-isis-if-af)# exit ! Route(config-isis)# interface HundredGigE0/0/0/1 Route(config-isis-if)# circuit-type level-1 Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# fast-reroute per-prefix Route(config-isis-if-af)# fast-reroute per-prefix ti-lfa Route(config-isis-if-af)# commit
/* Configure Prefix-SID in ISIS and TI-LFA on PE2 */
Router# configure Route(config)# router isis ring Route(config-isis)# net 49.0001.1921.6800.1003.00 Route(config-isis)# segment-routing global-block 30100 39100 Route(config-isis)# nsr Route(config-isis)# distribute link-state Route(config-isis)# nsf cisco Route(config-isis)# address-family ipv4 unicast Route(config-isis-af)# metric-style wide Route(config-isis-af)# mpls traffic-eng level-1 Route(config-isis-af)# mpls traffic-eng router-id loopback0 Route(config-isis-af)# segment-routing mpls Route(config-isis-af)# exit ! Route(config-isis)# interface loopback0 Route(config-isis-if)# address-family ipv4 unicast Route(config-isis-af)# prefix-sid index 30103

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 797

Configure SR-TE

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure SR-TE

Route(config-isis-af)# exit ! Route(config-isis)# interface HundredGigE0/0/0/1 Route(config-isis-if)# circuit-type level-1 Route(config-isis-if)# point-to-point Route(config-isis-if)# hello-padding disable Route(config-isis-if)# fast-reroute per-prefix Route(config-isis-if-af)# fast-reroute per-prefix ti-lfa Route(config-isis-if-af)# commit
Configure SR-TE for P and PE routers.
/Configure SR-TE on PE1 */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# on-demand color 1 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# exit ! Router(config-sr-te)# on-demand color 2 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# exit ! Router(config-sr-te)# on-demand color 3 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# commit
/*Configure SR-TE on P router */ Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# commit
/Configure SR-TE on PE2 */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# on-demand color 11 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# exit ! Router(config-sr-te)# on-demand color 12 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# exit ! Router(config-sr-te)# on-demand color 13 Router(config-sr-te-color)# dynamic Router(config-sr-te-color-dyn-mpls)# pce Router(config-sr-te-color-dyn-mpls-pce)# commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 798

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure PCE and PCC

Configure PCE and PCC
Configure PCE on P router, and PCC on PE1 and PE2. Optionally, you can configure multiple PCEs as well.
/* Configure PCC on PE1 */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# pcc Router(config-sr-te-pcc)# source-address ipv4 205.1.0.1 Router(config-sr-te-pcc)# pce address ipv4 205.2.0.2 Router(config-sr-te-pcc)# commit
/* Configure PCE on P router */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# exit Router(config)# pce Router(config-pce)# address ipv4 205.2.0.2 Router(config-pce)# commit
/* Configure PCC on PE2 */
Router# configure Router(config)# segment-routing Router(config-sr)# traffic-eng Router(config-sr-te)# pcc Router(config-sr-te-pcc)# source-address ipv4 205.3.0.3 Router(config-sr-te-pcc)# pce address ipv4 205.2.0.2 Router(config-sr-te-pcc)# commit

Configure SR Color

Configure SR colors on PE routers.

/* Define SR color on PE1 */
Router# configure Router(config)# extcommunity-set opaque color1 Router(config-ext)# 1 Router(config-ext)# end-set ! Router(config)# extcommunity-set opaque color2 Router(config-ext)# 2 Router(config-ext)# end-set ! Router(config)# extcommunity-set opaque color3 Router(config-ext)# 3 Router(config-ext)# end-set ! /* Define SR color on PE2 */
Router# configure Router(config)# extcommunity-set opaque color11 Router(config-ext)# 11 Router(config-ext)# end-set !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 799

Configure EVPN Route Policy

L2VPN Services over Segment Routing for Traffic Engineering Policy

Router(config)# extcommunity-set opaque color12 Router(config-ext)# 12 Router(config-ext)# end-set ! Router(config)# extcommunity-set opaque color13 Router(config-ext)# 13 Router(config-ext)# end-set !
Configure EVPN Route Policy
Configure EVPN route policy on PE1 and PE2. This example shows how to define the route policy language and track the EVPN route. The "rd" refers to the address of the PE and acts as Ethernet virtual interconnect for the L2 service.
/* Configure EVPN route policy on PE1 */
Router# configure Router(config)# route-policy evpn_odn_policy Router(config-rpl)# if rd in (205.3.0.3:2) then Router(config-rpl-if)# set extcommunity color color1 Router(config-rpl-if)# set next-hop 205.3.0.3 Router(config-rpl-if)# elseif rd in (205.3.0.3:3) then Router(config-rpl-elseif)# set extcommunity color color2 Router(config-rpl-elseif)# set next-hop 205.3.0.3 Router(config-rpl-elseif)# elseif rd in (205.3.0.3:4) then Router(config-rpl-elseif)# set extcommunity color color3 Router(config-rpl-elseif)# set next-hop 205.3.0.3 Router(config-rpl-elseif)# endif Router(config-rpl)# pass Router(config-rpl)# end-policy

Configure BGP

/* Configure EVPN route policy on PE2 */
Router# configure Router(config)# route-policy evpn_odn_policy Router(config-rpl)# if rd in (205.1.0.1:2) then Router(config-rpl-if)# set extcommunity color color11 Router(config-rpl-if)# set next-hop 205.1.0.1 Router(config-rpl-if)# elseif rd in (205.1.0.1:3) then Router(config-rpl-elseif)# set extcommunity color color12 Router(config-rpl-elseif)# set next-hop 205.1.0.1 Router(config-rpl-elseif)# elseif rd in (205.1.0.1:4) then Router(config-rpl-elseif)# set extcommunity color color13 Router(config-rpl-elseif)# set next-hop 205.1.0.1 Router(config-rpl-elseif)# endif Router(config-rpl)# pass Router(config-rpl)# end-policy
Configure BGP on PE1 and PE2.
/* Configure BGP on PE1 */
Router# configure Router(config)# router bgp 100 Routerconfig-bgp)# bgp router-id 205.1.0.1 Routerconfig-bgp)# bgp graceful-restart

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 800

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure EVPN VPWS

Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# exit ! Router(config-bgp)# neighbor 205.3.0.3 Router(config-bgp-nbr)# remote-as 100 Router(config-bgp-nbr)# update-source loopback 0 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy evpn_odn_policy in Router(config-rpl)# commit
/* Configure BGP on PE2 */
Router# configure Router(config)# router bgp 100 Routerconfig-bgp)# bgp router-id 205.3.0.3 Routerconfig-bgp)# bgp graceful-restart Router(config-bgp)# address-family l2vpn evpn Router(config-bgp-af)# exit ! Router(config-bgp)# neighbor 205.1.0.1 Router(config-bgp-nbr)# remote-as 100 Router(config-bgp-nbr)# update-source loopback 0 Router(config-bgp-nbr)# address-family l2vpn evpn Router(config-bgp-nbr-af)# route-policy evpn_odn_policy in Router(config-rpl)# commit
Configure EVPN VPWS
Configure EVPN VPWS on PE1 and PE2.
/* Configure EVPN VPWS on PE1 */
Router# configure Router(config)# interface GigE0/0/0/2.2 l2transport Router(config-subif)# encapsulation dot1q 1 Router# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e1_10 Router(config-l2vpn-xc-p2p)# interface GigE0/0/0/2.2 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 2 target 10 source 10 Router(config-l2vpn-xc-p2p)#commit
/* Configure EVPN VPWS on PE2 */
Router# configure Router(config)# interface GigE0/0/0/2.4 l2transport Router(config-subif)# encapsulation dot1q 1 Router# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e3_30 Router(config-l2vpn-xc-p2p)# interface GigE0/0/0/2.4 Router(config-l2vpn-xc-p2p)# neighbor evpn evi 2 target 10 source 10 Router(config-l2vpn-xc-p2p)#commit

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 801

Configure VPWS with Pseudowire Headend

L2VPN Services over Segment Routing for Traffic Engineering Policy

Configure VPWS with Pseudowire Headend Configure VPWS with pseudowire headend. The L3 services are used on the customer side with PWHE.
Figure 106: VPWS with Pseudowire Headend

Router# configure Router(config)# generic-interface-list ifl Router(config-gen-if-list)# interface HundredGigE0/0/0/0 Router(config-gen-if-list)# exit ! Router(config)# interface PW-Ether18 Router(config-if)# attach generic-interface-list ifl Router(config-gen-if-list)# exit ! Router# configure Router(config)# interface PW-Ether18.4 Router(config-if)# ipv4 address 123.123.123.1 255.255.255.0 Router(config-if)# encapsulation dot1q 4 Router(config-if)# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e3_30 Router(config-l2vpn-xc-p2p-pw)# interface PW-Ether18 Router(config-l2vpn-xc-p2p-pw)# neighbor evpn evi 4 target 30 source 30 Router(config-l2vpn-xc-p2p-pw)# exit ! Router# configure Router(config)# interface GigE0/0/0/2.4 l2transport Router(config-if)# encapsulation dot1q 4 Router(config-if)# exit ! Router(config)# l2vpn Router(config-l2vpn)# xconnect group evpn_vpws Router(config-l2vpn-xc)# p2p e3_30 Router(config-l2vpn-xc-p2p)# interface GigE0/0/0/2.4 Router(config-l2vpn-xc-p2p-pw)# neighbor evpn evi 4 target 30 source 30 Router(config-l2vpn-xc-p2p-pw)# commit
Running Configuration
/* Configure Prefix-SID in ISIS and TI-LFA */
PE1:
configure router isis ring net 49.0001.1921.6800.1001.00 segment-routing global-block 30100 39100 nsr distribute link-state nsf cisco address-family ipv4 unicast
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 802

L2VPN Services over Segment Routing for Traffic Engineering Policy
metric-style wide mpls traffic-eng level-1 mpls traffic-eng router-id Loopback0 segment-routing mpls ! interface Loopback0 address-family ipv4 unicast prefix-sid index 30101 ! ! interface HundredGigE0/0/0/0 circuit-type level-1 point-to-point hello-padding disable address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa ! !
P:
configure router isis ring net 49.0001.1921.6800.1002.00 segment-routing global-block 30100 39100 nsr distribute link-state nsf cisco address-family ipv4 unicast metric-style wide mpls traffic-eng level-1 mpls traffic-eng router-id Loopback0 segment-routing mpls ! interface Loopback0 address-family ipv4 unicast prefix-sid index 30102 ! ! interface HundredGigE0/0/0/0 circuit-type level-1 point-to-point hello-padding disable address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa ! ! interface HundredGigE0/0/0/1 circuit-type level-1 point-to-point hello-padding disable address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa !
PE2:
configure router isis ring net 49.0001.1921.6800.1003.00 segment-routing global-block 30100 39100

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 803

Running Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

nsr distribute link-state nsf cisco address-family ipv4 unicast
metric-style wide mpls traffic-eng level-1 mpls traffic-eng router-id Loopback0 segment-routing mpls ! interface Loopback0 address-family ipv4 unicast prefix-sid index 30103 ! ! interface HundredGigE0/0/0/1 circuit-type level-1 point-to-point hello-padding disable address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix ti-lfa ! !
/* Configure SR-TE */
PE1:
configure segment-routing traffic-eng on-demand color 1 dynamic pce ! ! on-demand color 2 dynamic pce ! ! ! on-demand color 3 dynamic pce !
P:
configure segment-routing traffic-eng
!
PE2:
configure segment-routing traffic-eng on-demand color 11 dynamic pce ! !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 804

L2VPN Services over Segment Routing for Traffic Engineering Policy
on-demand color 12 dynamic pce ! !
! on-demand color 13
dynamic pce !
/* Configure PCE and PCC */
PE1:
configure segment-routing traffic-eng pcc source-address ipv4 205.1.0.1 pce address ipv4 205.2.0.2 !
P:
configure segment-routing traffic-eng pce address ipv4 205.2.0.2 !
PE2:
configure segment-routing traffic-eng pcc source-address ipv4 205.3.0.3 pce address ipv4 205.2.0.2 !
/* Configure SR Color */
PE1:
configure extcommunity-set opaque color1 1
end-set !
extcommunity-set opaque color2 2
end-set !
extcommunity-set opaque color3 3
end-set !
PE2:
configure extcommunity-set opaque color11 11

Running Configuration

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 805

Running Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

end-set !
extcommunity-set opaque color12 12
end-set !
extcommunity-set opaque color13 13
end-set !
/* Configure EVPN route policy */
PE1:
configure route-policy evpn_odn_policy if rd in (205.3.0.3:2) then set extcommunity color color1 set next-hop 205.3.0.3 elseif rd in (205.3.0.3:3) then set extcommunity color color2 set next-hop 205.3.0.3 elseif rd in (205.3.0.3:4) then set extcommunity color color3 set next-hop 205.3.0.3 endif pass
end-policy
PE2:
configure route-policy evpn_odn_policy if rd in (205.1.0.1:2) then set extcommunity color color11 set next-hop 205.1.0.1 elseif rd in (205.1.0.1:3) then set extcommunity color color12 set next-hop 205.1.0.1 elseif rd in (205.1.0.1:4) then set extcommunity color color13 set next-hop 205.1.0.1 endif pass
end-policy
/* Configure BGP */
PE1:
configure router bgp 100 bgp router-id 205.1.0.1 bgp graceful-restart address-family l2vpn evpn ! neighbor 205.3.0.3 remote-as 100 update-source Loopback0 address-family l2vpn evpn route-policy evpn_odn_policy in !

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 806

L2VPN Services over Segment Routing for Traffic Engineering Policy

Running Configuration

PE2:
configure router bgp 100 bgp router-id 205.3.0.3 bgp graceful-restart address-family l2vpn evpn ! neighbor 205.1.0.1 remote-as 100 update-source Loopback0 address-family l2vpn evpn route-policy evpn_odn_policy in !
/* Configure EVPN VPWS */
PE1:
configure interface GigE0/0/0/2.2 l2transport encapsulation dot1q 1
! l2vpn
xconnect group evpn_vpws p2p e1_10 interface GigE0/0/0/2.2 neighbor evpn evi 2 target 10 source 10 !
!
PE2:
configure interface GigE0/0/0/2.4 l2transport encapsulation dot1q 1
! l2vpn
xconnect group evpn_vpws p2p e3_30 interface GigE0/0/0/2.4 neighbor evpn evi 2 target 10 source 10 !
! !
/* Configure VPWS with Pseudowire Headend */
generic-interface-list ifl interface HundredGigE0/0/0/0
! interface PW-Ether18
attach generic-interface-list ifl ! interface PW-Ether18.4
ipv4 address 123.123.123.1 255.255.255.0 encapsulation dot1q 4 ! l2vpn
xconnect group evpn_vpws p2p e3_30 interface PW-Ether18 neighbor evpn evi 4 target 30 source 30
L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 807

Verify EVPN VPWS On Demand Next Hop with SR-TE Configuration

L2VPN Services over Segment Routing for Traffic Engineering Policy

! interface GigE0/0/0/2.4 l2transport
encapsulation dot1q 4 ! l2vpn
xconnect group evpn_vpws p2p e3_30 interface GigE0/0/0/2.4 neighbor evpn evi 4 target 30 source 30 !
Verify EVPN VPWS On Demand Next Hop with SR-TE Configuration
Verify if SR-TE policy is auto-provisioned for each L2 service configured on EVPN ODN.
PE1# show segment-routing traffic-eng policy
SR-TE policy database ---------------------
Name: bgp_AP_1 (Color: 1, End-point: 205.3.0.3) Status: Admin: up Operational: up for 07:16:59 (since Oct 3 16:47:04.541) Candidate-paths: Preference 100: Dynamic (pce 205.2.0.2) (active) Weight: 0 30103 [Prefix-SID, 205.3.0.3] Attributes: Binding SID: 68007 Allocation mode: dynamic State: Programmed Policy selected: yes Forward Class: 0 Distinguisher: 0 Auto-policy info: Creator: BGP IPv6 caps enable: no
PE1#show l2vpn xconnect group evpn_vpws xc-name evpn_vpws_1001 detail Group evpn_vpws, XC evpn_vpws_1001, state is up; Interworking none
AC: Bundle-Ether12.1001, state is up Type VLAN; Num Ranges: 1 Outer Tag: 1000 Rewrite Tags: [] VLAN ranges: [1, 1] MTU 1500; XC ID 0xc0000018; interworking none Statistics: packets: received 642304, sent 642244 bytes: received 61661184, sent 61655424 drops: illegal VLAN 0, illegal length 0
EVPN: neighbor 20.20.20.20, PW ID: evi 1001, ac-id 10001, state is up ( established ) XC ID 0xa0000007 Encapsulation MPLS Source address 10.10.10.10 Encap type Ethernet, control word enabled Sequencing not set Preferred path Active : SR TE pref_sid_to_PE3, On-Demand, fallback enabled Tunnel : Up Load Balance Hashing: src-dst-mac
PE1#show bgp l2vpn evpn route-type 1

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 808

L2VPN Services over Segment Routing for Traffic Engineering Policy

Associated Commands

BGP router identifier 205.1.0.1, local AS number 100 BGP generic scan interval 60 secs Non-stop routing is enabled BGP table state: Active Table ID: 0x0 RD version: 0 BGP main routing table version 36 BGP NSR Initial initsync version 25 (Reached) BGP NSR/ISSU Sync-Group versions 36/0 BGP scan interval 60 secs
Status codes: s suppressed, d damped, h history, * valid, > best i - internal, r RIB-failure, S stale, N Nexthop-discard Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 205.1.0.1:2 (default for vrf VPWS:2) *>i[1][0000.0000.0000.0000.0000][1]/120 205.3.0.3 T:bgp_AP_1 100 0 i
PE1# show evpn evi ead detail
EVI Ethernet Segment Id EtherTag Nexthop Label SRTE IFH ----- ------------------------ -------- --------------------------------------- ----------------2 0000.0000.0000.0000.0000 1 205.3.0.3 24000 0x5a0 Source: Remote, MPLS

Associated Commands

· adjacency-sid · index · prefix-sid · router isis · segment-routing

The applicable segment routing commands are described in the Segment Routing Command Reference for Cisco ASR 9000 Series Routers

Related Topics

· Overview of Segment Routing , on page 761 · How Segment Routing Works , on page 762 · Segment Routing Global Block , on page 763

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 809

Related Topics

L2VPN Services over Segment Routing for Traffic Engineering Policy

L2VPN and Ethernet Services Configuration Guide for Cisco ASR 9000 Series Routers, IOS XR Release 7.5.x 810


DITA Open Toolkit XEP 4.30.961; modified using iText 2.1.7 by 1T3XT