An EVPN L3VPN HoVPN over SRv6 is a hierarchical EVPN over SRv6 network. Multiple PEs play different roles and form a hierarchical structure to implement the functions of a single PE, reducing PE performance requirements.
Currently, EVPN over SRv6 is used as a mainstream transport solution for 5G services. For an EVPN over SRv6 network, you can deploy EVPN HVPN over SRv6 to improve scalability and prevent an individual PE from becoming a bottleneck. In EVPN HVPN over SRv6 mode, the functions of a PE are distributed to multiple PEs. These PEs play different roles and form a hierarchical architecture to provide the functions of the single PE. In Figure 1, an HVPN mainly consists of UPEs, SPEs, and NPEs.
UPE: a device that is directly connected to users. UPEs provide user access functions. For example, CSGs connected to base stations function as UPEs in Figure 1.
SPE: a device that connects to a UPE and resides inside a service transport network. SPEs manage and advertise VPN routes. For example, ASGs function as SPEs in Figure 1.
NPE: a device that connects to an SPE and to the backbone network. For example, RSGs function as NPEs in Figure 1.
HVPN can be deployed in either of the following modes:
H-VPN: SPEs can advertise specific routes to UPEs. The UPEs function as RR clients and receive the specific routes reflected by SPEs functioning as RRs, facilitating route management and traffic forwarding control.
Currently, the EVPN HVPN over SRv6 network carrying Layer 3 services is deployed in EVPN L3VPN HoVPN over SRv6 mode.
Before configuring EVPN L3VPN HoVPN over SRv6, complete the following tasks:
According to related standards, the VPN instance status obtained through an NMS can be up only when at least one interface bound to the VPN instance is up. In an HoVPN scenario, an SPE does not require any interface to be bound to a VPN instance. Consequently, the VPN instance status obtained by an NMS is down according to the standards, which is opposite to the actual VPN instance status. In this case, you can run the transit-vpn command in the VPN instance view or VPN instance IPv4/IPv6 address family view on the SPE. Then, the VPN instance status obtained by the NMS remains up, regardless of the binding between the VPN instance and interface.
Configure the SPE to advertise a default route to each UPE.
Run system-view
The system view is displayed.
Run ip route-static vpn-instance vpn-instance-name 0.0.0.0 { 0.0.0.0 | 0 } { nexthop-address | interface-type interface-number [ nexthop-address ] } or ipv6 route-static vpn-instance vpn-instance-name 0::0 0 { nexthop-ipv6-address | interface-type interface-number [ nexthop-ipv6-address ] }
A default private network IPv4/IPv6 static route is configured.
Run bgp as-number
The BGP view is displayed.
Run ipv4-family vpn-instance vpn-instance-name or ipv6-family vpn-instance vpn-instance-name
The BGP-VPN instance IPv4/IPv6 address family view is displayed.
Run network 0.0.0.0 [ 0.0.0.0 | 0 ] [ route-policy route-policy-name ] or network 0::0 0 [ route-policy route-policy-name ]
The default route is imported to the routing table of the IPv4/IPv6 VPN instance.
EVPN IP prefix route advertisement is enabled.
Run quit
Return to the BGP view.
The BGP-EVPN address family view is displayed.
Run peer { peerIpv6Addr | peerGroupName } upe
A BGP EVPN peer is specified as a UPE, or a group of BGP EVPN peers are specified as UPEs.
Run commit
The configuration is committed.
In this case, you also need to configure a route-policy on each NPE to prevent the NPEs from receiving the default route.
Configure the SPE to advertise a summary route to each UPE.
Run system-view
The system view is displayed.
Run bgp as-number
The BGP view is displayed.
Run ipv4-family vpn-instance vpn-instance-name or ipv6-family vpn-instance vpn-instance-name
The BGP-VPN instance IPv4/IPv6 address family view is displayed.
Run aggregate ipv4-address { mask | mask-length } [ as-set | attribute-policy route-policy-name1 | detail-suppressed | origin-policy route-policy-name2 | suppress-policy route-policy-name3 ] * or aggregate ipv6-address prefix-length [ as-set | attribute-policy route-policy-name1 | detail-suppressed | origin-policy route-policy-name2 | suppress-policy route-policy-name3 ] *
A summary route is configured.
EVPN IP prefix route advertisement is enabled.
Run quit
Return to the BGP view.
The BGP-EVPN address family view is displayed.
Run peer { peerIpv6Addr | peerGroupName } upe
A BGP EVPN peer is specified as a UPE, or a group of BGP EVPN peers are specified as UPEs.
Run commit
The configuration is committed.
Run the display ip routing-table vpn-instance or display ipv6 routing-table vpn-instance vpn-instance-name command on a UPE or NPE to check the VPN routing table. The command output shows the default routes or specific routes sent by the remote ends.
Run the display bgp evpn all routing-table prefix-route command on a UPE or NPE to check the EVPN IP prefix routing table. The command output shows the EVPN IP prefix routes sent by the remote ends.