25-Segment Routing Configuration Guide

HomeSupportResource CenterConfigure & DeployConfiguration GuidesH3C MSR1000[2600][3600] Routers Configuration Guides(V9)-R9119-6W10025-Segment Routing Configuration Guide
08-SRv6 OAM configuration
Title Size Download
08-SRv6 OAM configuration 172.44 KB

Configuring SRv6 OAM

About SRv6 OAM

SRv6 Operations, Administration, and Maintenance (OAM) detects SRv6 path connectivity and locates SRv6 path problems by using ping and tracert operations based on SRv6 SIDs and SRv6 TE policies.

·     SRv6 SID/SRv6 TE policy-based ping—Detects network connectivity and host reachability. SRv6 SID-based ping and SRv6 TE policy-based ping are H3C proprietary protocols.

·     SRv6 SID/SRv6 TE policy-based tracert—Detects network connectivity and locates network problems.

End.OP SID

An End.OP SID is an SRv6 SID of OAM type used in SRv6 SID/SRv6 TE policy-based ping/tracert operations. When a device receives a request packet destined for the local End.OP SID, it further checks the SRv6 SID in the packet. If the SRv6 SID is the local SRv6 SID, the device sends a reply; if not, the device discards the packet.

Take SRv6 SID-based ping as an example. As shown in Figure 1, in order to ping Device C, Device A constructs an ICMPv6 echo request by adding the End.OP SID of Device C to the SRH header in the request. Upon receiving the request and finding that request is destined for the local End.OP SID, Device C further checks whether SRv6 SID c is the local SRv6 SID. If it is the local SRv6 SID, Device C sends an ICMPv6 echo reply; if not, Device C discards the ICMPv6 echo request.

Figure 1 End.OP SID used in an SRv6 SID-based ping

SRv6 SID-based ping

SRv6 OAM supports segment-by-segment ping and end-to-end ping.

Segment-by-segment ping

Use segment-by-segment ping to detect connectivity of all SRv6 nodes in the SRv6 path. All SRv6 nodes will send an ICMPv6 echo reply to the source node.

Figure 2 Segment-by-segment ping

Figure 2 shows the segment-by-segment ping process as follows:

1.     Device A initiates a ping to Device C. It constructs an ICMPv6 echo request encapsulated with an SRH header and then sends the request to Device B.

2.     Upon receiving the ICMPv6 echo request, Device B performs one of the following operations:

¡     If Device B is SRv6 capable, it sends an ICMPv6 echo reply to Device A, and then forwards the ICMPv6 echo request to Device C based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the ICMPv6 echo request according to routing table lookup without returning an ICMPv6 echo reply.

3.     Upon receiving the ICMPv6 echo request, Device C sends an ICMPv6 echo reply to Device A.

4.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 echo reply:

¡     If the ICMPv6 echo reply is received before the specified timeout timer expires, the destination node is reachable.

¡     If no ICMPv6 echo reply is received when the specified timeout timer expires, the destination node is unreachable.

End-to-end ping

Use end-to-end ping to detect connectivity of the destination node in the SRv6 path. Only the destination node sends an ICMPv6 echo reply to the source node.

Figure 3 End-to-end ping

Figure 3 shows the end-to-end ping process as follows:

1.     Device A initiates a ping to Device C. It constructs an ICMPv6 echo request encapsulated with an SRH header and then sends the request to Device B.

2.     Upon receiving the ICMPv6 echo request, Device B forwards the request to Device C.

¡     If Device B is SRv6 capable, it forwards the request based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the request according to routing table lookup.

3.     Upon receiving the ICMPv6 echo request and finding that it is destined for the local End.OP SID, Device C further verifies the SRv6 SID in the request.

¡     If the SRv6 SID is the local SRv6 SID, the verification succeeds and Device C sends an ICMPv6 echo reply to Device A.

¡     If the SRv6 SID is not the local SRv6 SID, the verification fails and Device C discards the ICMPv6 echo request.

4.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 echo reply:

¡     If the ICMPv6 echo reply is received before the specified timeout timer expires, the destination node is reachable.

¡     If no ICMPv6 echo reply is received when the specified timeout timer expires, the destination node is unreachable.

SRv6 SID-based tracert

SRv6 OAM supports overlay tracert and hop-by-hop tracert.

Overlay tracert

Use overlay tracert to display information about only SRv6 nodes in the SRv6 path.

Figure 4 Overlay tracert

Figure 4 shows the overlay tracert process as follows:

1.     Device A initiates a tracert to Device C. It constructs a UDP packet encapsulated with an SRH header and then sends the UDP packet to Device B (the TTL value is 64 in the IPv6 packet header).

Make sure you specify a destination UDP port that is not used by any applications on the destination node.

2.     Upon receiving the UDP packet, Device B performs one of the following operations:

¡     If Device B is SRv6 capable, it sends an ICMPv6 port unreachable message to Device A, and then forwards the UDP packet based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the UDP packet according to routing table lookup without returning an ICMPv6 port unreachable message.

3.     Upon receiving the UDP packet, Device C sends an ICMPv6 port unreachable message to Device A.

4.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 port unreachable message:

¡     If the ICMPv6 port unreachable message is received before the specified timeout timer expires, the destination node is reachable. The tracert result displays the SRv6 path from the source node to the destination node.

¡     If no ICMPv6 port unreachable message is received when the specified timeout timer expires, the destination node is unreachable. You can locate the faulty node based on the tracert result.

Hop-by-hop tracert

Use hop-by-hop tracert to display information about all nodes (whether they are SRv6 capable or not) in the SRv6 path.

Figure 5 Hop-by-hop tracert

Figure 5 shows the hop-by-hop tracert process as follows:

1.     Device A initiates a tracert to Device C. It constructs a UDP packet encapsulated with an SRH header and then forwards the UDP packet to Device B (the TTL value is 1 in the IPv6 packet header).

Make sure you specify a destination UDP port that is not used by any applications on the destination node.

2.     Upon receiving the UDP packet with the TTL value in the IPv6 packet header being 0, Device B sends an ICMPv6 timeout message to Device A.

3.     Upon receiving the ICMPv6 timeout message, Device A sends another UDP packet by setting the TTL value to 2.

4.     Upon receiving the UDP packet with the TTL value in the IPv6 packet header being 1, Device B forwards the UDP packet to Device C.

¡     If Device B is SRv6 capable, it forwards the UDP packet based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the UDP packet according to routing table lookup.

5.     Upon receiving the UDP packet (with the TTL value in the IPv6 packet header being 0) and finding that it is destined for the local End.OP SID, Device C further verifies the SRv6 SID in the packet.

¡     If the SRv6 SID is the local SRv6 SID, the verification succeeds and Device C sends an ICMPv6 port unreachable message to Device A.

¡     If the SRv6 SID is not the local SRv6 SID, the verification fails and Device C discards the UDP packet.

6.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 port unreachable message:

¡     If the ICMPv6 port unreachable message is received before the specified timeout timer expires, the destination node is reachable. The tracert result displays the SRv6 path from the source node to the destination node.

¡     If no ICMPv6 port unreachable message is received when the specified timeout timer expires, the destination node is unreachable. You can locate the faulty node based on the tracert result.

SRv6 TE policy-based ping

Figure 6 SRv6 TE policy-based ping

Figure 6 shows the SRv6 TE policy-based ping process as follows:

1.     Device A initiates a ping to Device C. It constructs an ICMPv6 echo request encapsulated with an SRH header and then sends the request to Device B.

2.     Upon receiving the ICMPv6 echo request, Device B performs one of the following operations:

¡     If Device B is SRv6 capable, it forwards the ICMPv6 echo request to Device C based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the ICMPv6 echo request according to routing table lookup.

3.     Upon receiving the ICMPv6 echo request and finding that it is destined for the local End.OP SID, Device C further verifies the SRv6 SID in the request.

¡     If the SRv6 SID is the local SRv6 SID, the verification succeeds and Device C sends an ICMPv6 echo reply to Device A.

¡     If the SRv6 SID is not the local SRv6 SID, the verification fails and Device C discards the ICMPv6 echo request.

4.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 echo reply:

¡     If the ICMPv6 echo reply is received before the specified timeout timer expires, the destination node is reachable.

¡     If no ICMPv6 echo reply is received when the specified timeout timer expires, the destination node is unreachable.

SRv6 TE policy-based tracert

Figure 7 SRv6 TE policy-based tracert

Figure 7 shows the SRv6 TE policy-based tracert process as follows:

1.     Device A initiates a tracert to Device C. It constructs a UDP packet encapsulated with an SRH header and then sends the UDP packet to Device B (the TTL value is 1 in the IPv6 packet header).

Make sure you specify a destination UDP port that is not used by any applications on the destination node.

2.     Upon receiving the UDP packet with the TTL value in the IPv6 packet header being 0, Device B sends an ICMPv6 timeout message to Device A.

3.     Upon receiving the ICMPv6 timeout message, Device A sends another UDP packet by setting the TTL value to 2.

4.     Upon receiving the UDP packet with the TTL value in the IPv6 packet header being 1, Device B forwards the UDP packet to Device C.

¡     If Device B is SRv6 capable, it forwards the UDP packet based on the SRH header.

¡     If Device B is not SRv6 capable, it forwards the UDP packet according to routing table lookup.

5.     Upon receiving the UDP packet (with the TTL value in the IPv6 packet header being 0) and finding that it is destined for the local End.OP SID, Device C further verifies the SRv6 SID in the packet.

¡     If the SRv6 SID is the local SRv6 SID, the verification succeeds and Device C sends an ICMPv6 port unreachable message to Device A.

¡     If the SRv6 SID is not the local SRv6 SID, the verification fails and Device C discards the UDP packet.

6.     Device A determines whether the destination node is reachable based on reception of the ICMPv6 port unreachable message:

¡     If the ICMPv6 port unreachable message is received before the specified timeout timer expires, the destination node is reachable. The tracert result displays the SRv6 path from the source node to the destination node.

¡     If no ICMPv6 port unreachable message is received when the specified timeout timer expires, the destination node is unreachable. You can locate the faulty node based on the tracert result.

Restrictions: Hardware compatibility with SRv6 OAM

Hardware

SRv6 OAM compatibility

MSR810, MSR810-W, MSR810-W-DB, MSR810-LM, MSR810-W-LM, MSR810-10-PoE, MSR810-LM-HK, MSR810-W-LM-HK, MSR810-LM-CNDE-SJK, MSR810-CNDE-SJK

Yes

MSR810-LMS, MSR810-LUS

No

MSR810-LMS-EA, MSR810-LME

Yes

MSR1004S-5G

Yes

MSR2600-6-X1, MSR2600-10-X1, MSR2600-15-X1

Yes

MSR 2630

Yes

MSR3600-28, MSR3600-51

Yes

MSR3600-28-SI, MSR3600-51-SI

No

MSR3600-28-X1, MSR3600-28-X1-DP, MSR3600-51-X1, MSR3600-51-X1-DP

Yes

MSR3610-I-DP, MSR3610-IE-DP, MSR3610-IE-ES, MSR3610-IE-EAD, MSR-EAD-AK770, MSR3610-I-IG, MSR3610-IE-IG

Yes

MSR3610-X1, MSR3610-X1-DP, MSR3610-X1-DC, MSR3610-X1-DP-DC, MSR3620-X1, MSR3640-X1

Yes

MSR3610, MSR3620, MSR3620-DP, MSR3640, MSR3660

Yes

MSR3610-G, MSR3620-G

Yes

MSR3640-X1-HI

Yes

Hardware

SRv6 OAM compatibility

MSR810-W-WiNet, MSR810-LM-WiNet

Yes

MSR830-4LM-WiNet

Yes

MSR830-5BEI-WiNet, MSR830-6EI-WiNet, MSR830-10BEI-WiNet

Yes

MSR830-6BHI-WiNet, MSR830-10BHI-WiNet

Yes

MSR2600-6-WiNet, MSR2600-10-X1-WiNet

Yes

MSR2630-WiNet

Yes

MSR3600-28-WiNet

Yes

MSR3610-X1-WiNet

Yes

MSR3610-WiNet, MSR3620-10-WiNet, MSR3620-DP-WiNet, MSR3620-WiNet, MSR3660-WiNet

Yes

Hardware

SRv6 OAM compatibility

MSR2630-XS

Yes

MSR3600-28-XS

Yes

MSR3610-XS

Yes

MSR3620-XS

Yes

MSR3610-I-XS

Yes

MSR3610-IE-XS

Yes

MSR3620-X1-XS

Yes

MSR3640-XS

Yes

MSR3660-XS

Yes

Hardware

SRv6 OAM compatibility

MSR810-LM-GL

Yes

MSR810-W-LM-GL

Yes

MSR830-6EI-GL

Yes

MSR830-10EI-GL

Yes

MSR830-6HI-GL

Yes

MSR830-10HI-GL

Yes

MSR1004S-5G-GL

Yes

MSR2600-6-X1-GL

Yes

MSR3600-28-SI-GL

No

Restrictions and guidelines: SRv6 OAM configuration

Follow these restrictions and guidelines when you perform an SRv6 SID-based ping or tracert operation:

·     When End SID, End.X SID, End(COC32) SID, or End.X(COC32) SID is used as the SRv6 SID of the destination node, make sure the flavor type for the SRv6 SID is PSP.

·     The End.DT4 SID, End.DT6 SID, End.DT46 SID, End.DX4 SID, or End.DX6 SID can be used only as the SRv6 SID of the destination node.

Performing an SRv6 SID-based ping operation

Restrictions and guidelines

End-to-end ping requires configuring an End.OP SID on the destination node.

Procedure

To perform an SRv6 SID-based ping operation, execute the following command in any view:

ping ipv6-sid [ -a source-ipv6 | -c count | -m interval | -q | -s packet-size | -t timeout | -tc traffic-class | -v ] * [ segment-by-segment ] { sid }&<1-n>

Performing an SRv6 SID-based tracert operation

Restrictions and guidelines

Hop-by-hop tracert requires configuring an End.OP SID on the destination node.

Prerequisites

For hop-by-hop tracert, configure the following settings:

·     Enable sending of ICMPv6 timeout packets on the intermediate devices (devices between the source and destination nodes).

·     Enable sending of ICMPv6 timeout packets and ICMPv6 destination unreachable packets on the destination node.

For overlay tracert, enable sending of ICMPv6 destination unreachable packets on the intermediate devices (devices between the source and destination nodes) and destination node.

Procedure

To perform an SRv6 SID-based tracert operation, execute the following command in any view:

tracert ipv6-sid [ -a source-ipv6 | -f first-hop | -m max-hops | -p port | -q packet-number | -t traffic-class | -w timeout ] * [ overlay ] { sid }&<1-n>

Performing an SRv6 TE policy-based ping operation

Restrictions and guidelines

This task requires configuring an End.OP SID on the destination node.

Procedure

To perform an SRv6 TE policy-based ping operation, execute the following command in any view:

ping srv6-te policy { policy-name policy-name | color color-value end-point ipv6 ipv6-address | binding-sid bsid } [ end-op end-op ] [ -a source-ipv6 | -c count | -h hop-limit | -m interval | -s packet-size | -t timeout | -tc traffic-class ] *

Performing an SRv6 TE policy-based tracert operation

Restrictions and guidelines

This task requires configuring an End.OP SID on the destination node.

Prerequisites

Enable sending of ICMPv6 timeout packets on the intermediate devices (devices between the source and destination nodes) and destination node.

Enable sending of ICMPv6 destination unreachable packets on the destination node.

Procedure

To perform an SRv6 TE policy-based tracert operation, execute the following command in any view:

tracert srv6-te policy { policy-name policy-name | color color-value end-point ipv6 ipv6-address | binding-sid bsid } [ end-op end-op ] [ -a source-ipv6 | -f first-hop | -m max-hops | -p port | -q packet-number | -s packet-size | -tc traffic-class | -w timeout ] *