- Table of Contents
-
- 10-High Availability Configuration Guide
- 00-Preface
- 01-Ethernet OAM configuration
- 02-DLDP configuration
- 03-ERPS configuration
- 04-Smart Link configuration
- 05-Monitor Link configuration
- 06-VRRP configuration
- 07-BFD configuration
- 08-Track configuration
- 09-Interface collaboration configuration
- 10-Error code detection configuration
- 11-DPSH configuration
- Related Documents
-
| Title | Size | Download |
|---|---|---|
| 11-DPSH configuration | 286.57 KB |
DPSH fast switchover mechanism
Restrictions and guidelines: DPSH configuration
Prerequisites for DPSH configuration
Configuring an anycast MAC address
Display and maintenance commands for DPSH
Example: Configuring BGP-based DPSH
Configuring DPSH
About DPSH
When a link fault occurs, the traditional method relies on the dynamic routing protocol on the control plane to detect topology changes and recompute forwarding paths. This process typically takes milliseconds, which cannot meet the stringent high availability requirements of AI computing or high-performance storage services. To further reduce reliance on the control plane during fault convergence and switch the fault convergence process to the hardware level as much as possible, the data plane self-healing (DPSH) feature was introduced.
DPSH aims to achieve rapid fault detection, transmission, and processing through the data plane, which enhances fault convergence performance to sub-millisecond levels and ensures network reliability and stability.
In the current software version, DPSH is applicable only to the standard spine-leaf networking. For more information about the standard spine-leaf networking, see VCF fabric configuration in Network Management and Monitoring Configuration Guide.
Basic concepts
Logical plane
The logical plane of network devices typically contains the following components for efficient network operations:
· Control plane—Responsible for network management and control. It involves features such as running routing protocols, monitoring network status, maintaining routing tables, and defining forwarding policies. Common routing protocols such as OSPF and BGP collect information from multiple network devices, use complex algorithms to update routing information, and ensure selection of optimal paths for the network.
· Data plane—Also known as the forwarding plane, it focuses on fast forwarding of packets. The data plane directly processes network traffic, and performs routing, switching, and forwarding operations to achieve efficient data transmission without participating in route calculation. Fault convergence of the data plane is faster than that of the control plane.
Anycast MAC address
An anycast MAC address is a special MAC address used for load balancing and fault switchover among multiple nodes. In a network, multiple devices can share the same anycast MAC address, and packets can be received by any of these devices. When the destination address of a packet is an anycast MAC address, the system selects the nearest or fastest-responding device for forwarding the packet based on routing information. If the selected device fails or goes offline, network traffic will automatically switch over to other available devices, improving the reliability and stability of network services.
DPSH fast switchover modes
|
|
NOTE: The equal-cost multi-path (ECMP) mode can be regarded as a special application of the common mode. This document describes only the operating mechanism of the common mode. |
DPSH supports the common and ECMP switchover modes.
Common mode
When a device detects that the link with a neighbor device fails, if a backup link exists, the device can immediately switch traffic to the associated path and forward it to the destination address through another device, which prevents packet loss and avoids high latency issues.
The common mode is suitable for networking architectures where the backup and faulty interfaces are connected to different neighbor devices.
ECMP mode
When multiple ECMP links exist between the local and peer devices, if one link fails, traffic can immediately switch over to another link, which ensures data transmission recovery within a very short period of time.
The ECMP mode is suitable for networking architectures where the backup and faulty interfaces are connected to the same neighbor device.
DPSH fast switchover mechanism
|
|
NOTE: In a standard spine-leaf network, a border device has the same featureality as a leaf device for DPSH. |
Local fast switchover
When a leaf device detects that the uplink with a spine device fails (such as the peer interface goes down or a transceiver module is fast plugged or unplugged), if an available backup link exists, the leaf device can immediately switch traffic to the associated path and forward traffic to the destination leaf device through another spine device, ensuring uninterrupted data forwarding.
As shown in Figure 1, in the standard spine-leaf networking, the original path for forwarding traffic from Leaf1 to Leaf2 is Leaf1->Spine1->Leaf2. When the link between Leaf1 and Spine1 fails, the forwarding path after switchover is Leaf1->Spine2->Leaf2.
Figure 1 DPSH local fast switchover diagram
Remote fast switchover
When a spine device detects that the downlink with a leaf device fails (such as the peer interface goes down or a transceiver module is fast plugged or unplugged), if an available backup link exists, the spine device can immediately switch traffic to the associated path and forward traffic to the destination device through another leaf device, ensuring uninterrupted data forwarding.
As shown in Figure 2, in the standard spine-leaf networking, the original path for forwarding traffic from Leaf1 to Leaf2 is Leaf1->Spine1->Leaf2. When the link between Spine1 and Leaf2 fails, the forwarding path after switchover is Leaf1->Spine1->Leaf3->Spine2->Leaf2.
Figure 2 DPSH remote fast switchover diagram
DPSH workflow
DPSH ensures timely fault convergence through the following stages: Table entry issuance, fault detection, fault processing, and link switchover.
Table entry issuance
1. After you enable LLDP and VCF fabric topology discovery, the device collects network topology information within the spine-leaf network and generates network topology entries to plan packet forwarding paths. Network topology entries include the local device role, remote device role, and interconnect interface information.
2. The device generates a source-excluded forwarding table based on the network topology entry and anycast MAC address information, and uses the source-excluded forwarding table to forward traffic.
Fault detection
The device periodically checks the interface state and immediately starts fault processing upon detecting a state change from UP to DOWN.
Fault processing
Upon detecting a fault, the device can intelligently process packets arriving at the faulty port to avoid direct discarding, thereby effectively preventing service disruptions caused by packet loss.
Link switchover
The device modifies the destination MAC address of faulty packets to the anycast MAC address, and immediately forwards the faulty traffic through backup interfaces based on the source-excluded forwarding table.
Restrictions and guidelines: DPSH configuration
This feature takes effect only on the links attached to Layer 3 Ethernet interfaces.
This feature does not support the RIP/RIPng protocol.
This feature does not support user MDCs. Use the management MDC for configuration.
The configuration of this feature is independent of the self-healing feature.
In network topologies, two directly connected devices must assume different roles: one device acts as the Spine, and its neighbor must be a Leaf.
This feature cannot be configured in an M-LAG topology environment.
Enabling the LoopBack feature on a port after enabling the DPSH feature may cause the loopback interface to fail.
When the Ethernet interface loopback feature is enabled on a port, the DPSH feature does not take effect on that port. You can execute the display dpsh topology command to view the ports on which the DPSH feature takes effect. For more information about the Ethernet interface loopback feature, see Ethernet interface configuration in Interface Configuration Guide.
If the DPSH feature is already enabled on a port, splitting or merging operations are not supported. However, if the port is split or merged before enabling the DPSH feature, the port can operate normally.
Prerequisites for DPSH configuration
Before configuring DPSH, complete the following tasks:
1. Complete the configuration of the spine-leaf standard networking, and make sure neighboring devices have different roles. For more information, see VCF fabric configuration in Network Management and Monitoring Configuration Guide.
2. DPSH devices collect network topology information based on the VCF fabric topology discovery feature. This feature uses LLDP to obtain information about directly connected devices. For DPSH devices to obtain network topology information, you must enable LLDP (with the lldp global enable command) and VCF fabric topology discovery (with the vcf-fabric topology enable command) on all spine and leaf devices.
DPSH tasks at a glance
To configure DPSH, perform the following tasks:
2. Configuring an anycast MAC address
Enabling DPSH
1. Enter system view.
system-view
2. Enable DPSH.
dpsh enable { common | ecmp }
By default, DPSH is disabled.
Configuring an anycast MAC address
About this task
After you enable DPSH for a standard spine-leaf network, all spine and leaf devices share a single anycast MAC address. When a forwarding link between spine and leaf devices fails, packets will be forwarded to other spine or leaf devices in the anycast MAC address group, achieving link backup and ensuring the continuity and reliability of data forwarding.
Restrictions and guidelines
The anycast MAC address cannot be the actual Layer 2 MAC address or Layer 3 virtual MAC address of any device in the standard spine-leaf network.
Procedure
1. Enter system view.
system-view
2. Configure an anycast MAC address.
dpsh anycast-mac mac-address
By default, no anycast MAC address is configured for the device.
Display and maintenance commands for DPSH
Execute display commands in any view.
|
Task |
Command |
|
Display the network topology entries generated by DPSH. |
display dpsh topology [ interface interface-type interface-number | issued | refreshed ] [ slot 1] |
|
Display DPSH statistics. |
display dpsh statistics [ slot 1 ] |
DPSH configuration examples
Example: Configuring BGP-based DPSH
Network configuration
In the standard spine-leaf networking of a data center, multiple servers are typically deployed, requiring extensive data exchange among them. To meet the high-performance and high availability requirements of the data center network, the DPSH feature can be deployed to achieve fast convergence based on the data plane, ensuring seamless and rapid switchover to backup paths during link faults to maintain business continuity.
As shown in Figure 3, the specific requirements are as follows:
· Spine and Leaf devices each belong to different autonomous systems and establish EBGP connections with each other.
· The DPSH feature is enabled on all Spine and Leaf devices, sharing the anycast MAC address 0001-0002-0003.
Taking traffic from service cluster 1 (IP address: 100.0.0.2/24) to service cluster 2 (IP address: 200.0.0.2/24) as an example, when a link fault occurs between Spine and Leaf devices, the link achieves sub-millisecond convergence, enabling traffic to rapidly switch to the backup path.
|
Device |
Interface |
IPv4/IPv6 address |
Device |
Interface |
IPv4/IPv6 address |
|
Spine1 (BGP 30004) |
HGE1/1/1 |
45.0.1.69/31 45::69/127 |
Leaf1 (BGP 30001) |
HGE1/1/1 |
45.0.1.68/31 45::68/127 |
|
HGE1/1/2 |
45.0.1.87/31 45::87/127 |
HGE1/1/2 |
45.0.1.62/31 45::62/127 |
||
|
HGE1/1/3 |
100.0.0.1/24 100::1/64 |
||||
|
HGE1/1/3 |
45.0.1.83/31 45::83/127 |
Leaf2 (BGP 30002) |
HGE1/1/1 |
45.0.1.86/31 45::86/127 |
|
|
Spine2 (BGP 30005) |
HGE1/1/1 |
45.0.1.63/31 45::63/127 |
HGE1/1/2 |
45.0.1.88/31 45::88/127 |
|
|
HGE1/1/2 |
45.0.1.89/31 45::89/127 |
Leaf3 (BGP 30003) |
HGE1/1/1 |
45.0.1.82/31 45::82/127 |
|
|
HGE1/1/3 |
45.0.1.79/31 45::79/127 |
HGE1/1/2 |
45.0.1.78/31 45::78/127 |
||
|
HGE1/1/3 |
200.0.0.1/24 200::1/64 |
Restrictions and guidelines
· The DPSH feature currently only takes effect for Layer 3 Ethernet interface link connections.
· To ensure proper operation of the DPSH feature, it is recommended to use different Autonomous System (AS) numbers when running BGP. If devices are in the same AS, the following command must be added under the BGP IPv4 or IPv6 address family to allow the local AS number to appear in the AS_PATH attribute of received routes:
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } allow-as-loop [ number ]
· By default, BGP selects only one optimal route. When this path fails, BGP must delete the route and reselect a new optimal route, which may briefly cause route unavailability and potential packet loss. To avoid such issues, it is recommended to configure multiple BGP optimal routes, with the number matching the count of neighboring devices.
· DPSH devices collect network topology information based on the VCF Fabric topology discovery feature, which uses LLDP to obtain direct device information. Therefore, to ensure DPSH devices can acquire network topology data, LLDP (lldp global enable) and VCF Fabric topology discovery (vcf-fabric topology enable) must be enabled on all Spine and Leaf devices.
· After switching device roles, first disable the VCF Fabric topology discovery feature using undo vcf-fabric topology enable, then re-enable it with vcf-fabric topology enable to ensure correct featureality.
· The translation strictly adheres to the provided JSON glossary while maintaining technical accuracy and readability.
Procedure
Configuring Spine 1
· Configure IPv4 and IPv6 addresses for the interfaces.
<Spine1> system-view
[Spine1] interface hundredgige 1/1/1
[Spine1-HundredGigE1/1/1] port-link mode route
[Spine1-HundredGigE1/1/1] ip address 45.0.1.69 255.255.255.254
[Spine1-HundredGigE1/1/1] ipv6 address 45::69 127
[Spine1-HundredGigE1/1/1] quit
[Spine1] interface hundredgige 1/1/2
[Spine1-HundredGigE1/1/2] port-link mode route
[Spine1-HundredGigE1/1/2] ip address 45.0.1.87 255.255.255.254
[Spine1-HundredGigE1/1/2] ipv6 address 45::87 127
[Spine1-HundredGigE1/1/2] quit
[Spine1] interface hundredgige 1/1/3
[Spine1-HundredGigE1/1/3] port-link mode route
[Spine1-HundredGigE1/1/3] ip address 45.0.1.83 255.255.255.254
[Spine1-HundredGigE1/1/3] ipv6 address 45::83 127
[Spine1-HundredGigE1/1/3] quit
· Configure IPv4 BGP.
[Spine1] bgp 30004
# Create a BGP peer, and specify its AS number.
[Spine1-bgp-default] peer 45.0.1.68 as-number 30001
[Spine1-bgp-default] peer 45.0.1.86 as-number 30002
[Spine1-bgp-default] peer 45.0.1.82 as-number 30003
# Create the BGP IPv4 unicast address family and enter its view.
[Spine1-bgp-default] address-family ipv4 unicast
# Configure the number of BGP ECMP routes.
[Spine1-bgp-default-ipv4] balance 8
# Configure the maximum number of Add-Path optimal routes.
[Spine1-bgp-default-ipv4] additional-paths select-best 3
# Configure the delay time for optimal route selection.
[Spine1-bgp-default-ipv4] route-select delay 1
# Enable Spine 1 to exchange routes with Leaf1, Leaf2, and Leaf3.
[Spine1-bgp-default-ipv4] peer 45.0.1.68 enable
[Spine1-bgp-default-ipv4] peer 45.0.1.86 enable
[Spine1-bgp-default-ipv4] peer 45.0.1.82 enable
# Configure Add-Path receiving and sending capabilities.
[Spine1-bgp-default-ipv4] peer 45.0.1.68 additional-paths receive send
[Spine1-bgp-default-ipv4] peer 45.0.1.86 additional-paths receive send
[Spine1-bgp-default-ipv4] peer 45.0.1.82 additional-paths receive send
# Configure the maximum number of Add-Path optimal routes sent to Leaf1, Leaf2, and Leaf3.
[Spine1-bgp-default-ipv4] peer 45.0.1.68 advertise additional-paths best 3
[Spine1-bgp-default-ipv4] peer 45.0.1.86 advertise additional-paths best 3
[Spine1-bgp-default-ipv4] peer 45.0.1.82 advertise additional-paths best 3
[Spine1-bgp-default-ipv4] quit
· Configure IPv6 BGP.
# Configure IPv6 BGP in the same way you configure IPv4 BGP.
[Spine1-bgp-default] peer 45::68 as-number 30001
[Spine1-bgp-default] peer 45::86 as-number 30002
[Spine1-bgp-default] peer 45::82 as-number 30003
[Spine1-bgp-default] address-family ipv6 unicast
[Spine1-bgp-default-ipv6] balance 8
[Spine1-bgp-default-ipv6] additional-paths select-best 3
[Spine1-bgp-default-ipv6] route-select delay 1
[Spine1-bgp-default-ipv6] peer 45::68 enable
[Spine1-bgp-default-ipv6] peer 45::86 enable
[Spine1-bgp-default-ipv6] peer 45::82 enable
[Spine1-bgp-default-ipv6] peer 45::68 additional-paths receive send
[Spine1-bgp-default-ipv6] peer 45::86 additional-paths receive send
[Spine1-bgp-default-ipv6] peer 45::82 additional-paths receive send
[Spine1-bgp-default-ipv6] peer 45::68 advertise additional-paths best 3
[Spine1-bgp-default-ipv6] peer 45::86 advertise additional-paths best 3
[Spine1-bgp-default-ipv6] peer 45::82 advertise additional-paths best 3
[Spine1-bgp-default-ipv6] quit
[Spine1-bgp-default] quit
· Configure DPSH.
# Enable LLDP.
[Spine1] lldp global enable
# Configure the LLDP packet sending interval.
[Spine1] lldp timer tx-interval 1
# Configure the TTL multiplier.
[Spine1] lldp hold-multiplier 2
# Configure the VCF fabric device role.
[Spine1] vcf-fabric role spine
# Enable VCF fabric network topology discovery.
[Spine1] vcf-fabric topology enable
# Enable DPSH.
[Spine1] dpsh enable common
# Set the anycast MAC address to 0001-0002-0003.
[Spine1] dpsh anycast-mac 0001-0002-0003
Configuring Spine 2
· Configure IPv4 and IPv6 addresses for the interfaces.
<Spine2> system-view
[Spine2] interface hundredgige 1/1/1
[Spine2-HundredGigE1/1/1] port-link mode route
[Spine2-HundredGigE1/1/1] ip address 45.0.1.63 255.255.255.254
[Spine2-HundredGigE1/1/1] ipv6 address 45::63 127
[Spine2-HundredGigE1/1/1] quit
[Spine2] interface hundredgige 1/1/2
[Spine2-HundredGigE1/1/2] port-link mode route
[Spine2-HundredGigE1/1/2] ip address 45.0.1.89 255.255.255.254
[Spine2-HundredGigE1/1/2] ipv6 address 45::89 127
[Spine2-HundredGigE1/1/2] quit
[Spine2] interface hundredgige 1/1/3
[Spine2-HundredGigE1/1/3] port-link mode route
[Spine2-HundredGigE1/1/3] ip address 45.0.1.79 255.255.255.254
[Spine2-HundredGigE1/1/3] ipv6 address 45::79 127
[Spine2-HundredGigE1/1/3] quit
· Configure IPv4 BGP.
[Spine2] bgp 30005
# Create a BGP peer, and specify its AS number.
[Spine2-bgp-default] peer 45.0.1.62 as-number 30001
[Spine2-bgp-default] peer 45.0.1.88 as-number 30002
[Spine2-bgp-default] peer 45.0.1.78 as-number 30003
# Create the BGP IPv4 unicast address family and enter its view.
[Spine2-bgp-default] address-family ipv4 unicast
# Configure the number of BGP ECMP routes.
[Spine2-bgp-default-ipv4] balance 8
# Configure the maximum number of Add-Path optimal routes.
[Spine2-bgp-default-ipv4] additional-paths select-best 3
# Configure the delay time for optimal route selection.
[Spine2-bgp-default-ipv4] route-select delay 1
# Enable Spine 2 to exchange routes with Leaf1, Leaf2, and Leaf3.
[Spine2-bgp-default-ipv4] peer 45.0.1.62 enable
[Spine2-bgp-default-ipv4] peer 45.0.1.88 enable
[Spine2-bgp-default-ipv4] peer 45.0.1.78 enable
# Configure Add-Path receiving and sending capabilities.
[Spine2-bgp-default-ipv4] peer 45.0.1.62 additional-paths receive send
[Spine2-bgp-default-ipv4] peer 45.0.1.88 additional-paths receive send
[Spine2-bgp-default-ipv4] peer 45.0.1.78 additional-paths receive send
# Configure the maximum number of Add-Path optimal routes sent to Leaf1, Leaf2, and Leaf3.
[Spine2-bgp-default-ipv4] peer 45.0.1.62 advertise additional-paths best 3
[Spine2-bgp-default-ipv4] peer 45.0.1.88 advertise additional-paths best 3
[Spine2-bgp-default-ipv4] peer 45.0.1.78 advertise additional-paths best 3
[Spine2-bgp-default-ipv4] quit
· Configure IPv6 BGP.
# Configure IPv6 BGP in the same way you configure IPv4 BGP.
[Spine2-bgp-default] peer 45::62 as-number 30001
[Spine2-bgp-default] peer 45::88 as-number 30002
[Spine2-bgp-default] peer 45::78 as-number 30003
[Spine2-bgp-default] address-family ipv6 unicast
[Spine2-bgp-default-ipv6] balance 8
[Spine2-bgp-default-ipv6] additional-paths select-best 3
[Spine2-bgp-default-ipv6] route-select delay 1
[Spine2-bgp-default-ipv6] peer 45::62 enable
[Spine2-bgp-default-ipv6] peer 45::88 enable
[Spine2-bgp-default-ipv6] peer 45::78 enable
[Spine2-bgp-default-ipv6] peer 45::62 additional-paths receive send
[Spine2-bgp-default-ipv6] peer 45::62 advertise additional-paths best 3
[Spine2-bgp-default-ipv6] peer 45::88 additional-paths receive send
[Spine2-bgp-default-ipv6] peer 45::88 advertise additional-paths best 3
[Spine2-bgp-default-ipv6] peer 45::78 additional-paths receive send
[Spine2-bgp-default-ipv6] peer 45::78 advertise additional-paths best 3
[Spine2-bgp-default-ipv6] quit
[Spine2-bgp-default] quit
· Configure DPSH.
# Enable LLDP.
[Spine2] lldp global enable
# Configure the LLDP packet sending interval.
[Spine2] lldp timer tx-interval 1
# Configure the TTL multiplier.
[Spine2] lldp hold-multiplier 2
# Configure the VCF fabric device role.
[Spine2] vcf-fabric role spine
# Enable VCF fabric network topology discovery.
[Spine2] vcf-fabric topology enable
# Enable DPSH.
[Spine2] dpsh enable common
# Set the anycast MAC address to 0001-0002-0003.
[Spine2] dpsh anycast-mac 0001-0002-0003
Configuring Leaf 1
· Configure IPv4 and IPv6 addresses for the interfaces.
<Leaf1> system-view
[Leaf1] interface hundredgige 1/1/1
[Leaf1-HundredGigE1/1/1] port-link mode route
[Leaf1-HundredGigE1/1/1] ip address 45.0.1.68 255.255.255.254
[Leaf1-HundredGigE1/1/1] ipv6 address 45::68 127
[Leaf1-HundredGigE1/1/1] quit
[Leaf1] interface hundredgige 1/1/2
[Leaf1-HundredGigE1/1/2] port-link mode route
[Leaf1-HundredGigE1/1/2] ip address 45.0.1.62 255.255.255.254
[Leaf1-HundredGigE1/1/2] ipv6 address 45::62 127
[Leaf1-HundredGigE1/1/2] quit
[Leaf1] interface hundredgige 1/1/3
[Leaf1-HundredGigE1/1/3] port-link mode route
[Leaf1-HundredGigE1/1/3] ip address 100.0.0.1 255.255.255.0
[Leaf1-HundredGigE1/1/3] ipv6 address 100::1 64
[Leaf1-HundredGigE1/1/3] quit
· Configure IPv4 BGP.
[Leaf1] bgp 30001
# Create a BGP peer, and specify its AS number.
[Leaf1-bgp-default] peer 45.0.1.69 as-number 30004
[Leaf1-bgp-default] peer 45.0.1.63 as-number 30005
# Create the BGP IPv4 unicast address family and enter its view.
[Leaf1-bgp-default] address-family ipv4 unicast
# Configure the number of BGP ECMP routes.
[Leaf1-bgp-default-ipv4] balance 8
# Enable routes with different AS_PATH attributes to form ECMP routes.
[Leaf1-bgp-default-ipv4] balance as-path-neglect
# Configure the maximum number of Add-Path optimal routes.
[Leaf1-bgp-default-ipv4] additional-paths select-best 2
# Configure BGP to advertise the local network.
[Leaf1-bgp-default-ipv4] network 100.0.0.0 255.255.255.0
# Enable Leaf 1 to exchange routes with Spine1 and Spine2.
[Leaf1-bgp-default-ipv4] peer 45.0.1.69 enable
[Leaf1-bgp-default-ipv4] peer 45.0.1.63 enable
# Configure Add-Path receiving and sending capabilities.
[Leaf1-bgp-default-ipv4] peer 45.0.1.69 additional-paths receive send
[Leaf1-bgp-default-ipv4] peer 45.0.1.63 additional-paths receive send
# Configure the maximum number of Add-Path optimal routes sent to Spine 1 and Spine 2.
[Leaf1-bgp-default-ipv4] peer 45.0.1.69 advertise additional-paths best 2
[Leaf1-bgp-default-ipv4] peer 45.0.1.63 advertise additional-paths best 2
[Leaf1-bgp-default-ipv4] quit
· Configure IPv6 BGP.
# Configure IPv6 BGP in the same way you configure IPv4 BGP.
[Leaf1-bgp-default] peer 45::69 as-number 30004
[Leaf1-bgp-default] peer 45::63 as-number 30005
[Leaf1-bgp-default] address-family ipv6 unicast
[Leaf1-bgp-default-ipv6] balance 8
[Leaf1-bgp-default-ipv6] balance as-path-neglect
[Leaf1-bgp-default-ipv6] additional-paths select-best 2
[Leaf1-bgp-default-ipv6] network 100:: 64
[Leaf1-bgp-default-ipv6] peer 45::69 enable
[Leaf1-bgp-default-ipv6] peer 45::63 enable
[Leaf1-bgp-default-ipv6] peer 45::69 additional-paths receive send
[Leaf1-bgp-default-ipv6] peer 45::63 additional-paths receive send
[Leaf1-bgp-default-ipv6] peer 45::69 advertise additional-paths best 2
[Leaf1-bgp-default-ipv6] peer 45::63 advertise additional-paths best 2
[Leaf1-bgp-default-ipv6] quit
[Leaf1-bgp-default] quit
· Configure DPSH.
# Enable LLDP.
[Leaf1] lldp global enable
# Configure the LLDP packet sending interval.
[Leaf1] lldp timer tx-interval 1
# Configure the TTL multiplier.
[Leaf1] lldp hold-multiplier 2
# Configure the VCF fabric device role.
[Leaf1] vcf-fabric role leaf
# Enable VCF fabric network topology discovery.
[Leaf1] vcf-fabric topology enable
# Enable DPSH.
[Leaf1] dpsh enable common
# Set the anycast MAC address to 0001-0002-0003.
[Leaf1] dpsh anycast-mac 0001-0002-0003
Configuring Leaf 2
· Configure IPv4 and IPv6 addresses for the interfaces.
<Leaf2> system-view
[Leaf2] interface hundredgige 1/1/1
[Leaf2-HundredGigE1/1/1] port-link mode route
[Leaf2-HundredGigE1/1/1] ip address 45.0.1.86 255.255.255.254
[Leaf2-HundredGigE1/1/1] ipv6 address 45::86 127
[Leaf2-HundredGigE1/1/1] quit
[Leaf2] interface hundredgige 1/1/2
[Leaf2-HundredGigE1/1/2] port-link mode route
[Leaf2-HundredGigE1/1/2] ip address 45.0.1.88 255.255.255.254
[Leaf2-HundredGigE1/1/2] ipv6 address 45::88 127
[Leaf2-HundredGigE1/1/2] quit
· Configure IPv4 BGP.
[Leaf2] bgp 30002
# Create a BGP peer, and specify its AS number.
[Leaf2-bgp-default] peer 45.0.1.87 as-number 30004
[Leaf2-bgp-default] peer 45.0.1.89 as-number 30005
# Create the BGP IPv4 unicast address family and enter its view.
[Leaf2-bgp-default] address-family ipv4 unicast
# Configure the number of BGP ECMP routes.
[Leaf2-bgp-default-ipv4] balance 8
# Enable routes with different AS_PATH attributes to form ECMP routes.
[Leaf2-bgp-default-ipv4] balance as-path-neglect
# Configure the maximum number of Add-Path optimal routes.
[Leaf2-bgp-default-ipv4] additional-paths select-best 2
# Enable Leaf 2 to exchange routes with Spine1 and Spine2.
[Leaf2-bgp-default-ipv4] peer 45.0.1.87 enable
[Leaf2-bgp-default-ipv4] peer 45.0.1.89 enable
# Configure Add-Path receiving and sending capabilities.
[Leaf2-bgp-default-ipv4] peer 45.0.1.87 additional-paths receive send
[Leaf2-bgp-default-ipv4] peer 45.0.1.89 additional-paths receive send
# Configure the maximum number of Add-Path optimal routes sent to Spine 1 and Spine 2.
[Leaf2-bgp-default-ipv4] peer 45.0.1.87 advertise additional-paths best 2
[Leaf2-bgp-default-ipv4] peer 45.0.1.89 advertise additional-paths best 2
[Leaf2-bgp-default-ipv4] quit
· Configure IPv6 BGP.
# Configure IPv6 BGP in the same way you configure IPv4 BGP.
[Leaf2-bgp-default] peer 45::87 as-number 30004
[Leaf2-bgp-default] peer 45::89 as-number 30005
[Leaf2-bgp-default] address-family ipv6 unicast
[Leaf2-bgp-default-ipv6] balance 8
[Leaf2-bgp-default-ipv6] balance as-path-neglect
[Leaf2-bgp-default-ipv6] additional-paths select-best 2
[Leaf2-bgp-default-ipv6] peer 45::87 enable
[Leaf2-bgp-default-ipv6] peer 45::89 enable
[Leaf2-bgp-default-ipv6] peer 45::87 additional-paths receive send
[Leaf2-bgp-default-ipv6] peer 45::89 additional-paths receive send
[Leaf2-bgp-default-ipv6] peer 45::87 advertise additional-paths best 2
[Leaf2-bgp-default-ipv6] peer 45::89 advertise additional-paths best 2
[Leaf2-bgp-default-ipv6] quit
[Leaf2-bgp-default] quit
· Configure DPSH.
# Enable LLDP.
[Leaf2] lldp global enable
# Configure the LLDP packet sending interval.
[Leaf2] lldp timer tx-interval 1
# Configure the TTL multiplier.
[Leaf2] lldp hold-multiplier 2
# Configure the VCF fabric device role.
[Leaf2] vcf-fabric role leaf
# Enable VCF fabric network topology discovery.
[Leaf2] vcf-fabric topology enable
# Enable DPSH.
[Leaf2] dpsh enable common
# Set the anycast MAC address to 0001-0002-0003.
[Leaf2] dpsh anycast-mac 0001-0002-0003
Configuring Leaf 3
· Configure IPv4 and IPv6 addresses for the interfaces.
<Leaf3> system-view
[Leaf3] interface hundredgige 1/1/1
[Leaf3-HundredGigE1/1/1] port-link mode route
[Leaf3-HundredGigE1/1/1] ip address 45.0.1.82 255.255.255.254
[Leaf3-HundredGigE1/1/1] ipv6 address 45::82 127
[Leaf3-HundredGigE1/1/1] quit
[Leaf3] interface hundredgige 1/1/2
[Leaf3-HundredGigE1/1/2] port-link mode route
[Leaf3-HundredGigE1/1/2] ip address 45.0.1.78 255.255.255.254
[Leaf3-HundredGigE1/1/2] ipv6 address 45::78 127
[Leaf3-HundredGigE1/1/2] quit
[Leaf3] interface hundredgige 1/1/3
[Leaf3-HundredGigE1/1/3] port-link mode route
[Leaf3-HundredGigE1/1/3] ip address 200.0.0.1 255.255.255.0
[Leaf3-HundredGigE1/1/3] ipv6 address 200::1 64
[Leaf3-HundredGigE1/1/3] quit
· Configure IPv4 BGP.
[Leaf3] bgp 30003
# Create a BGP peer, and specify its AS number.
[Leaf3-bgp-default] peer 45.0.1.83 as-number 30004
[Leaf3-bgp-default] peer 45.0.1.79 as-number 30005
# Create the BGP IPv4 unicast address family and enter its view.
[Leaf3-bgp-default] address-family ipv4 unicast
# Configure the number of BGP ECMP routes.
[Leaf3-bgp-default-ipv4] balance 8
# Enable routes with different AS_PATH attributes to form ECMP routes.
[Leaf3-bgp-default-ipv4] balance as-path-neglect
# Configure the maximum number of Add-Path optimal routes.
[Leaf3-bgp-default-ipv4] additional-paths select-best 2
# Configure BGP to advertise the local network.
[Leaf3-bgp-default-ipv4] network 200.0.0.0 255.255.255.0
# Enable Leaf 3 to exchange routes with Spine1 and Spine2.
[Leaf3-bgp-default-ipv4] peer 45.0.1.83 enable
[Leaf3-bgp-default-ipv4] peer 45.0.1.79 enable
# Configure Add-Path receiving and sending capabilities.
[Leaf3-bgp-default-ipv4] peer 45.0.1.83 additional-paths receive send
[Leaf3-bgp-default-ipv4] peer 45.0.1.79 additional-paths receive send
# Configure the maximum number of Add-Path optimal routes sent to Spine 1 and Spine 2.
[Leaf3-bgp-default-ipv4] peer 45.0.1.83 advertise additional-paths best 2
[Leaf3-bgp-default-ipv4] peer 45.0.1.79 advertise additional-paths best 2
[Leaf3-bgp-default-ipv4] quit
· Configure IPv6 BGP.
# Configure IPv6 BGP in the same way you configure IPv4 BGP.
[Leaf3-bgp-default] peer 45::83 as-number 30004
[Leaf3-bgp-default] peer 45::79 as-number 30005
[Leaf3-bgp-default] address-family ipv6 unicast
[Leaf3-bgp-default-ipv6] balance 8
[Leaf3-bgp-default-ipv6] balance as-path-neglect
[Leaf3-bgp-default-ipv6] additional-paths select-best 2
[Leaf3-bgp-default-ipv6] network 200:: 64
[Leaf3-bgp-default-ipv6] peer 45::83 enable
[Leaf3-bgp-default-ipv6] peer 45::79 enable
[Leaf3-bgp-default-ipv6] peer 45::83 additional-paths receive send
[Leaf3-bgp-default-ipv6] peer 45::79 additional-paths receive send
[Leaf3-bgp-default-ipv6] peer 45::83 advertise additional-paths best 2
[Leaf3-bgp-default-ipv6] peer 45::79 advertise additional-paths best 2
[Leaf3-bgp-default-ipv6] quit
[Leaf3-bgp-default] quit
· Configure DPSH.
# Enable LLDP.
[Leaf3] lldp global enable
# Configure the LLDP packet sending interval.
[Leaf3] lldp timer tx-interval 1
# Configure the TTL multiplier.
[Leaf3] lldp hold-multiplier 2
# Configure the VCF fabric device role.
[Leaf3] vcf-fabric role leaf
# Enable VCF fabric network topology discovery.
[Leaf3] vcf-fabric topology enable
# Enable DPSH.
[Leaf3] dpsh enable common
# Set the anycast MAC address to 0001-0002-0003.
[Leaf3] dpsh anycast-mac 0001-0002-0003
Verifying the configuration
The following uses IPv4 traffic for verification. IPv6 traffic verification is similar.
BGP route generation
# Display the BGP routes generated on spine devices. This section uses Spine 1 as an example.
<Spine-1> display bgp routing-table ipv4
Total number of routes: 4
BGP local router ID is 55.100.48.1
Status codes: * - valid, > - best, d - dampened, h - history
s - suppressed, S - stale, i - internal, e - external
a - additional-path
Origin: i - IGP, e - EGP, ? - incomplete
Network NextHop MED LocPrf PrefVal Path/Ogn
* >e 100.0.0.0/24 45.0.1.68 0 0 30001i
* ae 45.0.1.82 0 30003 30005 30001i
* >e 200.0.0.0/24 45.0.1.82 0 0 30003i
* ae 45.0.1.68 0 30001 30005 30003i
# Display the BGP routes generated on leaf devices. This section uses Leaf 1 as an example.
<Leaf-1> display bgp routing-table ipv4
Total number of routes: 3
BGP local router ID is 100.0.0.1
Status codes: * - valid, > - best, d - dampened, h - history
s - suppressed, S - stale, i - internal, e - external
a - additional-path
Origin: i - IGP, e - EGP, ? - incomplete
Network NextHop MED LocPrf PrefVal Path/Ogn
* > 100.0.0.0/24 100.0.0.1 0 32768 i
* >e 200.0.0.0/24 45.0.1.63 0 30005 30003i
* >e 45.0.1.69 0 30004 30003i
DPSH topology entries
# Display the DPSH-generated network topology entries on spine devices. This section uses Spine 1 as an example.
<Spine1> display dpsh topology
Flag: I-Issued R-Refresh
Local Role: spine
Local Interface Remote MAC Address Remote Role Flag
HGE1/1/1 6816-ac25-0300 leaf I
HGE1/1/2 6816-b01d-0400 leaf I
HGE1/1/3 6816-b428-0500 leaf I
# Display the DPSH-generated network topology entries on leaf devices. This section uses Leaf 1 as an example.
<Leaf1> display dpsh topology
Flag: I-Issued R-Refresh
Local Role: leaf
Local Interface Remote MAC Address Remote Role Flag
HGE1/1/1 6816-a22e-0100 spine I
HGE1/1/2 6816-a6c9-0200 spine I
Link fault convergence
# Test flow requirement: Unidirectional flow 100.0.0.2—>200.0.0.2, with a packet sending rate of 844595 Frames/s.
# Link switchover verification:
· When the link is operating correctly, the traffic is forwarded out of HGE 1/1/1 on Leaf 1, and the forwarding path is Leaf1->Spine1->Leaf3.
<Leaf1> display counters rate outbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
HGE1/1/1 10 851380 0 0
HGE1/1/2 0 1 0 0
HGE1/1/3 0 1 0 0
Overflow: More than 14 digits.
--: Not supported.
· When HGE 1/1/1 on Leaf 3 is down, the traffic is forwarded out of HGE 1/1/2 on Leaf 1, and the forwarding path is Leaf1->Spine2->Leaf3.
<Leaf1>display counters rate outbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
HGE1/1/1 0 0 0 0
HGE1/1/2 12 998407 0 0
HGE1/1/3 0 0 0 0
Overflow: More than 14 digits.
--: Not supported.
As shown in Figure 5, 16 packets are lost during link switchover, so the link convergence time is 16 Frames/844595 (Frames/s)=0.000019s=0.019ms. Therefore, through the DPSH data plane self-healing feature, the link convergence time can be controlled at the sub-millisecond level, significantly improving network reliability.
Figure 5 Unidirectional flow statistics
Configuration files
· Spine 1
#
lldp timer tx-interval 1
lldp hold-multiplier 2
lldp global enable
#
interface HundredGigE1/1/1
port link-mode route
ip address 45.0.1.69 255.255.255.254
ipv6 address 45::69/127
#
interface HundredGigE1/1/2
port link-mode route
ip address 45.0.1.87 255.255.255.254
ipv6 address 45::87/127
#
interface HundredGigE1/1/3
port link-mode route
ip address 45.0.1.83 255.255.255.254
ipv6 address 45::83/127
#
bgp 30004
peer 45.0.1.68 as-number 30001
peer 45.0.1.82 as-number 30003
peer 45.0.1.86 as-number 30002
peer 45::68 as-number 30001
peer 45::82 as-number 30003
peer 45::86 as-number 30002
#
address-family ipv4 unicast
balance 8
additional-paths select-best 3
route-select delay 1
peer 45.0.1.68 enable
peer 45.0.1.68 additional-paths receive send
peer 45.0.1.68 advertise additional-paths best 2
peer 45.0.1.82 enable
peer 45.0.1.82 additional-paths receive send
peer 45.0.1.82 advertise additional-paths best 2
peer 45.0.1.86 enable
peer 45.0.1.86 additional-paths receive send
peer 45.0.1.86 advertise additional-paths best 2
#
address-family ipv6 unicast
balance 8
additional-paths select-best 3
route-select delay 1
peer 45::68 enable
peer 45::68 additional-paths receive send
peer 45::68 advertise additional-paths best 2
peer 45::82 enable
peer 45::82 additional-paths receive send
peer 45::82 advertise additional-paths best 2
peer 45::86 enable
peer 45::86 additional-paths receive send
peer 45::86 advertise additional-paths best 2
#
dpsh enable common
dpsh anycast-mac 0001-0002-0003
#
vcf-fabric role spine
#
vcf-fabric topology enable
#
· Spine 2
#
lldp timer tx-interval 1
lldp hold-multiplier 2
lldp global enable
#
interface HundredGigE1/1/1
port link-mode route
ip address 45.0.1.63 255.255.255.254
ipv6 address 45::63/127
#
interface HundredGigE1/1/2
port link-mode route
ip address 45.0.1.89 255.255.255.254
ipv6 address 45::89/127
#
interface HundredGigE1/1/3
port link-mode route
ip address 45.0.1.79 255.255.255.254
ipv6 address 45::79/127
#
bgp 30005
peer 45.0.1.62 as-number 30001
peer 45.0.1.78 as-number 30003
peer 45.0.1.88 as-number 30002
peer 45::62 as-number 30001
peer 45::78 as-number 30003
peer 45::88 as-number 30002
#
address-family ipv4 unicast
balance 8
additional-paths select-best 3
route-select delay 1
peer 45.0.1.62 enable
peer 45.0.1.62 additional-paths receive send
peer 45.0.1.62 advertise additional-paths best 2
peer 45.0.1.78 enable
peer 45.0.1.78 additional-paths receive send
peer 45.0.1.78 advertise additional-paths best 2
peer 45.0.1.88 enable
peer 45.0.1.88 additional-paths receive send
peer 45.0.1.88 advertise additional-paths best 2
#
address-family ipv6 unicast
balance 8
additional-paths select-best 3
route-select delay 1
peer 45::62 enable
peer 45::62 additional-paths receive send
peer 45::62 advertise additional-paths best 2
peer 45::78 enable
peer 45::78 additional-paths receive send
peer 45::78 advertise additional-paths best 2
peer 45::88 enable
peer 45::88 additional-paths receive send
peer 45::88 advertise additional-paths best 2
#
dpsh enable common
dpsh anycast-mac 0001-0002-0003
#
vcf-fabric role spine
#
vcf-fabric topology enable
#
· Leaf 1
#
lldp timer tx-interval 1
lldp hold-multiplier 2
lldp global enable
#
interface HundredGigE1/1/1
port link-mode route
ip address 45.0.1.68 255.255.255.254
ipv6 address 45::68/127
#
interface HundredGigE1/1/2
port link-mode route
ip address 45.0.1.62 255.255.255.254
ipv6 address 45::62/127
#
interface HundredGigE1/1/3
port link-mode route
ip address 100.0.0.1 255.255.255.0
ipv6 address 100::2/64
#
bgp 30001
peer 45.0.1.63 as-number 30005
peer 45.0.1.69 as-number 30004
peer 45::63 as-number 30005
peer 45::69 as-number 30004
#
address-family ipv4 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
network 100.0.0.0 255.255.255.0
peer 45.0.1.63 enable
peer 45.0.1.63 additional-paths receive send
peer 45.0.1.63 advertise additional-paths best 2
peer 45.0.1.69 enable
peer 45.0.1.69 additional-paths receive send
peer 45.0.1.69 advertise additional-paths best 2
#
address-family ipv6 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
network 100:: 64
peer 45::63 enable
peer 45::63 additional-paths receive send
peer 45::63 advertise additional-paths best 2
peer 45::69 enable
peer 45::69 additional-paths receive send
peer 45::69 advertise additional-paths best 2
#
dpsh enable common
dpsh anycast-mac 0001-0002-0003
#
vcf-fabric topology enable
#
· Leaf 2
#
lldp timer tx-interval 1
lldp hold-multiplier 2
lldp global enable
#
interface HundredGigE1/1/1
port link-mode route
ip address 45.0.1.86 255.255.255.254
ipv6 address 45::86/127
#
interface HundredGigE1/1/2
port link-mode route
ip address 45.0.1.88 255.255.255.254
ipv6 address 45::88/127
#
bgp 30002
peer 45.0.1.87 as-number 30004
peer 45.0.1.89 as-number 30005
peer 45::87 as-number 30004
peer 45::89 as-number 30005
#
address-family ipv4 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
peer 45.0.1.87 enable
peer 45.0.1.87 additional-paths receive send
peer 45.0.1.87 advertise additional-paths best 2
peer 45.0.1.89 enable
peer 45.0.1.89 additional-paths receive send
peer 45.0.1.89 advertise additional-paths best 2
#
address-family ipv6 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
peer 45::87 enable
peer 45::87 additional-paths receive send
peer 45::87 advertise additional-paths best 2
peer 45::89 enable
peer 45::89 additional-paths receive send
peer 45::89 advertise additional-paths best 2
#
dpsh enable common
dpsh anycast-mac 0001-0002-0003
#
vcf-fabric topology enable
#
· Leaf 3
#
lldp timer tx-interval 1
lldp hold-multiplier 2
lldp global enable
#
interface HundredGigE1/1/1
port link-mode route
ip address 45.0.1.82 255.255.255.254
ipv6 address 45::82/127
#
interface HundredGigE1/1/2
port link-mode route
ip address 45.0.1.78 255.255.255.254
ipv6 address 45::78/127
#
interface HundredGigE1/1/3
port link-mode route
combo enable fiber
ip address 200.0.0.1 255.255.255.0
ipv6 address 200::1/64
#
bgp 30003
peer 45.0.1.79 as-number 30005
peer 45.0.1.83 as-number 30004
peer 45::79 as-number 30005
peer 45::83 as-number 30004
#
address-family ipv4 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
network 200.0.0.0 255.255.255.0
peer 45.0.1.79 enable
peer 45.0.1.79 additional-paths receive send
peer 45.0.1.79 advertise additional-paths best 2
peer 45.0.1.83 enable
peer 45.0.1.83 additional-paths receive send
peer 45.0.1.83 advertise additional-paths best 2
#
address-family ipv6 unicast
balance 8
balance as-path-neglect
additional-paths select-best 2
network 200:: 64
peer 45::79 enable
peer 45::79 additional-paths receive send
peer 45::79 advertise additional-paths best 2
peer 45::83 enable
peer 45::83 additional-paths receive send
peer 45::83 advertise additional-paths best 2
#
dpsh enable common
dpsh anycast-mac 0001-0002-0003
#
vcf-fabric topology enable
#





