06-IP Multicast Configuration Guide

HomeSupportResource CenterH3C S6850 & S9850 Switch Series Configuration Guides-Release 655x-6W10006-IP Multicast Configuration Guide
14-IPv6 PIM configuration
Title Size Download
14-IPv6 PIM configuration 826.25 KB

Contents

IPv6 PIM overview· 1

IPv6 PIM modes· 1

IPv6 PIM-DM·· 1

Neighbor discovery· 1

SPT building· 1

Graft 2

Assert 3

IPv6 PIM-SM·· 3

Neighbor discovery· 4

DR election· 4

RP discovery· 4

Embedded RP· 6

Anycast RP· 7

RPT building· 8

IPv6 multicast source registration· 8

Switchover to SPT· 9

Assert 10

IPv6 BIDIR-PIM·· 10

Neighbor discovery· 10

RP discovery· 10

DF election· 11

Bidirectional RPT building· 11

IPv6 administrative scoping· 13

IPv6 administrative scoping mechanism·· 13

Relationship between IPv6 admin-scoped zones and the IPv6 global-scoped zone· 14

IPv6 PIM-SSM·· 15

Neighbor discovery· 15

DR election· 16

SPT building· 16

Relationship among IPv6 PIM protocols· 16

IPv6 PIM support for VPNs· 17

Protocols and standards· 17

Configuring IPv6 PIM·· 18

Restrictions and guidelines: IPv6 PIM configuration· 18

Configuring IPv6 PIM-DM·· 18

IPv6 PIM-DM tasks at a glance· 18

Prerequisites for IPv6 PIM-DM·· 18

Enabling IPv6 PIM-DM·· 18

Configuring the state refresh feature· 19

Setting the IPv6 PIM-DM graft retry timer 20

Configuring IPv6 PIM-SM·· 20

IPv6 PIM-SM tasks at a glance· 20

Prerequisites for IPv6 PIM-SM·· 21

Enabling IPv6 PIM-SM·· 21

Configuring static RPs· 21

Configuring C-RPs· 22

Configuring C-BSRs· 23

Configuring an IPv6 PIM domain border 23

Disabling BSM semantic fragmentation· 23

Disabling the device from forwarding BSMs out of their incoming interfaces· 24

Enabling embedded RP· 24

Configuring Anycast RP· 25

Configuring IPv6 multicast source registration· 25

Configuring the switchover to SPT· 26

Configuring IPv6 BIDIR-PIM·· 27

IPv6 BIDIR-PIM tasks at a glance· 27

Prerequisites for IPv6 BIDIR-PIM·· 27

Enabling IPv6 BIDIR-PIM·· 27

Configuring static RPs· 28

Configuring C-RPs· 28

Configuring C-BSRs· 29

Configuring an IPv6 PIM domain border 30

Disabling BSM semantic fragmentation· 30

Disabling the device from forwarding BSMs out of their incoming interfaces· 30

Setting the maximum number of IPv6 BIDIR-PIM RPs· 31

Configuring IPv6 PIM-SSM·· 31

IPv6 PIM-SSM tasks at a glance· 31

Prerequisites for IPv6 PIM-SSM·· 31

Enabling IPv6 PIM-SM·· 32

Specifying the IPv6 SSM group range· 32

Configuring common IPv6 PIM features· 33

Common IPv6 PIM feature tasks at a glance· 33

Configuring an IPv6 multicast source policy· 33

Configuring an IPv6 PIM hello policy· 33

Configuring IPv6 PIM hello message options· 34

Dropping hello messages without the Generation ID option· 35

Configuring common IPv6 PIM timers· 36

Setting the maximum size of a join or prune message· 37

Setting the DSCP value for outgoing IPv6 PIM protocol packets· 38

Enabling BFD for IPv6 PIM·· 38

Enabling IPv6 PIM passive mode· 38

Enabling IPv6 PIM NSR·· 39

Enabling SNMP notifications for IPv6 PIM·· 39

Display and maintenance commands for IPv6 PIM·· 39

IPv6 PIM configuration examples· 40

Example: Configuring IPv6 PIM-DM·· 40

Example: Configuring non-scoped IPv6 PIM-SM·· 43

Example: Configuring admin-scoped IPv6 PIM-SM·· 46

Example: Configuring IPv6 BIDIR-PIM·· 52

Example: Configuring IPv6 PIM-SSM·· 56

Troubleshooting IPv6 PIM·· 59

A multicast distribution tree cannot be correctly built 59

IPv6 multicast data is abnormally terminated on an intermediate device· 60

An RP cannot join an SPT in IPv6 PIM-SM·· 60

An RPT cannot be built or IPv6 multicast source registration fails in IPv6 PIM-SM·· 60

 


IPv6 PIM overview

IPv6 Protocol Independent Multicast (IPv6 PIM) provides IPv6 multicast forwarding by leveraging IPv6 unicast static routes or IPv6 unicast routing tables generated by any IPv6 unicast routing protocol. IPv6 PIM uses the underlying IPv6 unicast routing to generate an IPv6 multicast routing table without relying on any particular IPv6 unicast routing protocol.

IPv6 PIM uses the RPF mechanism to implement IPv6 multicast forwarding. For more information about RPF, see "Configuring IPv6 multicast routing and forwarding."

IPv6 PIM modes

Based on the implementation mechanism, IPv6 PIM includes the following modes:

·          IPv6 Protocol Independent Multicast–Dense Mode (IPv6 PIM-DM).

·          IPv6 Protocol Independent Multicast–Sparse Mode (IPv6 PIM-SM).

·          IPv6 Bidirectional Protocol Independent Multicast (IPv6 BIDIR-PIM).

·          IPv6 Protocol Independent Multicast Source-Specific Multicast (IPv6 PIM-SSM).

In this document, an IPv6 PIM domain refers to a network composed of IPv6 PIM devices.

IPv6 PIM-DM

IPv6 PIM-DM uses the push mode for multicast forwarding and is suitable for small networks with densely distributed IPv6 multicast members.

IPv6 PIM-DM assumes that all downstream nodes want to receive IPv6 multicast data from a source, so IPv6 multicast data is flooded to all downstream nodes on the network. Branches without downstream receivers are pruned from the forwarding trees, leaving only those branches that contain receivers. When the pruned branch has new receivers, the graft mechanism turns the pruned branch into a forwarding branch.

In IPv6 PIM-DM, the multicast forwarding paths for an IPv6 multicast group constitute a forwarding tree. The forwarding tree is rooted at the IPv6 multicast source and has multicast group members as its "leaves." Because the forwarding tree consists of the shortest paths from the IPv6 multicast source to the receivers, it is also called a "shortest path tree (SPT)."

IPv6 PIM-DM mechanisms include neighbor discovery, SPT building, graft, and assert.

Neighbor discovery

In an IPv6 PIM domain, each IPv6 PIM interface periodically multicasts IPv6 PIM hello messages to all other IPv6 PIM devices on the local subnet. Through the exchanging of hello messages, all IPv6 PIM devices determine their IPv6 PIM neighbors, maintain IPv6 PIM neighboring relationship with other devices, and build and maintain SPTs.

SPT building

The process of building an SPT is the flood-and-prune process:

1.        In an IPv6 PIM-DM domain, the IPv6 multicast data from the IPv6 multicast source S to the IPv6 multicast group G is flooded throughout the domain. A device performs an RPF check on the IPv6 multicast data. If the check succeeds, the device creates an (S, G) entry and forwards the data to all downstream nodes in the network. In the flooding process, all the devices in the IPv6 PIM-DM domain create the (S, G) entry.

2.        The nodes without downstream receivers are pruned. A device that has no downstream receivers multicasts a prune message to all IPv6 PIM devices on the subnet. When the upstream node receives the prune message, it removes the receiving interface from the (S, G) entry. In this way, the upstream stream node stops forwarding subsequent packets addressed to that IPv6 multicast group down to this node.

 

 

NOTE:

An (S, G) entry contains an IPv6 multicast source address S, an IPv6 multicast group address G, an outgoing interface list, and an incoming interface.

 

A prune process is initiated by a leaf device. As shown in Figure 1, the device interface that does not have any downstream receivers initiates a prune process by sending a prune message toward the IPv6 multicast source. This prune process goes on until only necessary branches are left in the IPv6 PIM-DM domain, and these necessary branches constitute an SPT.

Figure 1 SPT building

 

The pruned state of a branch has a finite holdtime timer. When the timer expires, IPv6 multicast data is again forwarded to the pruned branch. The flood-and-prune cycle takes place periodically to maintain the forwarding branches.

Graft

A previously pruned branch might have new downstream receivers. To reduce the latency for resuming the forwarding capability of this branch, a graft mechanism is used as follows:

1.        The node that needs to receive the IPv6 multicast data sends a graft message to its upstream node, telling it to rejoin the SPT.

2.        After receiving this graft message on an interface, the upstream node adds the receiving interface to the outgoing interface list of the (S, G) entry. It also sends a graft-ack message to the graft sender.

3.        If the graft sender receives a graft-ack message, the graft process finishes. Otherwise, the graft sender continues to send graft messages at a graft retry interval until it receives an acknowledgment from its upstream node.

Assert

On a subnet with more than one multicast device, the assert mechanism shuts off duplicate multicast flows to the network. It does this by electing a unique multicast forwarder for the subnet.

Figure 2 Assert mechanism

 

As shown in Figure 2, after Device A and Device B receive an (S, G) packet from the upstream node, they both forward the packet to the local subnet. As a result, the downstream node Device C receives two identical multicast packets. In addition, both Device A and Device B, on their downstream interfaces, receive a duplicate packet forwarded by the other. After detecting this condition, both devices send an assert message to all IPv6 PIM devices on the local subnet through the interface that received the packet. The assert message contains the IPv6 multicast source address (S), the IPv6 multicast group address (G), and the metric preference and metric of the IPv6 unicast route/MBGP route/static multicast route to the IPv6 multicast source. By comparing these parameters, either Device A or Device B becomes the unique forwarder of the subsequent (S, G) packets on the subnet. The comparison process is as follows:

1.        The device with a higher metric preference to the IPv6 multicast source wins.

2.        If both devices have the same metric preference to the IPv6 multicast source, the device with a smaller metric to the IPv6 multicast source wins.

3.        If both devices have the same metric, the device with a higher IPv6 link-local address on the downstream interface wins.

IPv6 PIM-SM

IPv6 PIM-DM uses the flood-and-prune cycles to build SPTs for IPv6 multicast data forwarding. Although an SPT has the shortest paths from the IPv6 multicast source to the receivers, it is built with a low efficiency. Therefore, IPv6 PIM-DM is not suitable for large- and medium-sized networks.

IPv6 PIM-SM uses the pull mode for IPv6 multicast forwarding, and it is suitable for large-sized and medium-sized networks with sparsely and widely distributed IPv6 multicast group members.

IPv6 PIM-SM assumes that no hosts need IPv6 multicast data. A multicast receiver must express its interest in the IPv6 multicast data for an IPv6 multicast group before the data is forwarded to it. A rendezvous point (RP) is the core of an IPv6 PIM-SM domain. Relying on the RP, SPTs and rendezvous point trees (RPTs) are established and maintained to implement IPv6 multicast data forwarding. An SPT is rooted at the IPv6 multicast source and has the RPs as its leaves. An RPT is rooted at the RP and has the receiver hosts as its leaves.

IPv6 PIM-SM mechanisms include neighbor discovery, DR election, RP discovery, Anycast RP, RPT building, multicast source registration, switchover to SPT, and assert.

Neighbor discovery

IPv6 PIM-SM uses the same neighbor discovery mechanism as IPv6 PIM-DM does. For more information, see "Neighbor discovery."

DR election

A designated router (DR) is required on both the source-side network and receiver-side network. A source-side DR acts on behalf of the IPv6 multicast source to send register messages to the RP. The receiver-side DR acts on behalf of the receiver hosts to send join messages to the RP.

 

IMPORTANT

IMPORTANT:

MLD must be enabled on the device that acts as the receiver-side DR. Otherwise, the receiver hosts attached to the DR cannot join any IPv6 multicast groups. For more information about MLD, see "Configuring MLD."

 

Figure 3 DR election

 

As shown in Figure 3, the DR election process is as follows:

1.        The devices on the shared-media LAN send hello messages to one another. The hello messages contain the DR priority for DR election. The device with the highest DR priority is elected as the DR.

2.        The device with the highest IPv6 link-local address wins the DR election under one of the following conditions:

?  All the devices have the same DR election priority.

?  A device does not support carrying the DR priority in hello messages.

If the DR fails, its IPv6 PIM neighbor lifetime expires, and the other devices initiate a new DR election.

RP discovery

An RP is the core of an IPv6 PIM-SM domain. An IPv6 multicast group can have only one RP for IPv6 multicast forwarding, and an RP can be designated to multiple IPv6 multicast groups.

RP selection mechanism

An RP can be statically configured, dynamically elected, or extracted from an IPv6 multicast address with embedded RP. The embedded RP takes precedence over the static RP and the dynamic RP. The priorities of the static RP and the dynamic RP depend on whether the static RP is preferred when the static RP is configured.

·          If the static RP is preferred, the static RP takes precedence over the dynamic RP. The dynamic RP takes services over only when the static RP fails.

·          If the static RP is not preferred, the dynamic RP takes precedence over the static RP. The static RP takes services over only when the dynamic RP fails.

Static RPs

A static RP can avoid a single point of failure and save network bandwidth that is consumed by frequent communications between C-RPs and the BSR.

Dynamic RP election

Dynamic RP election is implemented through the BSR mechanism. BSR mechanism includes the following roles:

·          Candidate-RPs (C-RPs)—An RP is dynamically elected from C-RPs to provide services to an IPv6 multicast group.

·          BSR—A BSR is the core of the administrative core of the IPv6 PIM-SM domain. It is responsible for collecting and advertising RP information in the whole domain. An IPv6 PIM-SM domain has only one BSR, and the BSR is elected from C-BSRs.

·          Candidate-BSRs (C-BSRs)—Any devices in the IPv6 PIM-SM domain can act as C-BSRs and the BSR is elected from the C-BSRs. Once the BSR fails, a new BSR is elected from the C-BSRs to avoid multicast traffic interruption.

 

 

NOTE:

A device can act as a C-RP and a C-BSR at the same time.

 

Figure 4 Information exchange between C-RPs and BSR

 

As shown in Figure 4, an RP is elected as follows:

1.        Each C-BSR sends a BSM to other devices in the IPv6 PIM-SM domain.

2.        When a C-BSR receives a BSM from another C-BSR, it compares its own priority with the priority carried in the message. The C-BSR with a higher priority wins the BSR election. If a tie exists in the priority, the C-BSR with a higher IPv6 address wins. The loser uses the winner's BSR address to replace its own BSR address and no longer regards itself as the BSR. The winner retains its own BSR address and continues to regard itself as the BSR.

3.        Each C-RP periodically unicasts an advertisement message to the BSR. An advertisement message contains the address of the advertising C-RP and the IPv6 multicast group range to which it is designated.

4.        The BSR collects these advertisement messages and organizes the C-RP information into an RP-set, which is a database of mappings between IPv6 multicast groups and RPs. The BSR encapsulates the RP-set information in the BSMs and advertises the BSMs to the entire IPv6 PIM-SM domain.

5.        All devices in the IPv6 PIM-SM domain select an RP for an IPv6 multicast group based on the following rules:

a.    The C-RP that is designated to the smallest IPv6 multicast group range wins.

b.    If the C-RPs are designated to the same group ranges, the C-RP with the highest priority wins.

c.    If the C-RPs have the same priority, the C-RP with the largest hash value wins. The hash value is calculated through the hash algorithm.

d.    If the C-RPs have the same hash value, the C-RP with the highest IP address wins.

Embedded RP

The embedded RP mechanism enables a device to resolve the RP address from an IPv6 multicast group address to map the IPv6 multicast group to an RP. This RP can take the place of the configured static RP or the RP dynamically elected by the bootstrap mechanism. A DR does not need to learn the RP address beforehand. Figure 5 shows the format of an IPv6 multicast group address with embedded RP.

Figure 5 Format of an IPv6 multicast address with embedded RP

http://www.h3c.com/cn/res/200803/05/20080305_333537_image004_336046_30003_0.gif

 

As shown in Figure 5, the requirements for each field are as follows:

·          First 8 bits—Fixed to 0xFF.

·          Flags—The R, P, and T bits must be set to 1.

·          Reserved—Contains 4 bits and must be set to 0.

·          RIID—Contains 4 bits and indicates the RP interface ID.

·          Plen—Contains 8 bits and indicates the valid length (in bits) of the RP address prefix. This field value cannot be greater than 64 and cannot be 0.

·          Network prefix—Contains 64 bits and indicates the prefix of the RP address. The valid length of the prefix is determined by the Plen field.

·          Group ID—Reduced to 32 bits and indicates the ID of the IPv6 multicast group.

The process of discovering an embedded RP is as follows:

·          At the receiver side, a receiver host initiates an MLD report to join an IPv6 multicast group. Upon receiving the MLD report, the receiver-side DR resolves the RP address embedded in the IPv6 multicast group address and uses the RP for the IPv6 multicast group.

·          At the IPv6 multicast source side, the IPv6 multicast source sends an IPv6 multicast packet to an IPv6 multicast group. Upon receiving the IPv6 multicast packet, the source-side DR resolves the RP address embedded in the IPv6 multicast address and uses the RP for the IPv6 multicast group.

Anycast RP

IPv6 PIM-SM requires only one active RP to serve each IPv6 multicast group. If the active RP fails, the multicast traffic might be interrupted. The Anycast RP mechanism enables redundancy backup among RPs by configuring multiple RPs with the same IPv6 address for one multicast group. An IPv6 multicast source registers with the closest RP or a receiver-side DR joins the closest RP to implement source information synchronization.

Anycast RP has the following benefits:

·          Optimal RP path—An IPv6 multicast source registers with the closest RP to build an optimal SPT. A receiver joins the closest RP to build an optimal RPT.

·          Redundancy backup among RPs—When an RP fails, the RP-related sources will register with the closest available RPs and the receiver-side DRs will join the closest available RPs. This provides redundancy backup among RPs.

Anycast RP is implemented by using either of the following methods:

·          Anycast RP through MSDP—In this method, you can configure multiple RPs with the same IP address for one multicast group and configure MSDP peering relationships between them. For more information about Anycast RP through MSDP, see "Configuring MSDP."

·          Anycast RP through IPv6 PIM-SM—In this method, you can configure multiple RPs for one IPv6 multicast group and add them to an Anycast RP set. This method introduces the following concepts:

?  Anycast RP set—A set of RPs that are designated to the same IPv6 multicast group.

?  Anycast RP member—Each RP in the Anycast RP set.

?  Anycast RP member address—IPv6 address of each Anycast RP member for communication among the RP members.

?  Anycast RP address—IPv6 address of the Anycast RP set for communication within the IPv6 PIM-SM domain. It is also known as RPA.

As shown in Figure 6, RP 1, RP 2, and RP 3 are members of an Anycast RP set.

Figure 6 Anycast RP through IPv6 PIM-SM

 

The following describes how Anycast RP through IPv6 PIM-SM is implemented:

a.    RP 1 receives a register message destined to RPA. Because the message is not from other Anycast RP members (RP 2 or RP 3), RP 1 considers that the register message is from the DR. RP 1 changes the source IPv6 address of the register message to its own IPv6 address and sends the message to the other members (RP 2 and RP 3).

If a device acts as both a DR and an RP, it creates a register message, and then forwards the message to the other RP members.

b.    After receiving the register message, RP 2 and RP 3 find out that the source address of the register message is an Anycast RP member address. They stop forwarding the message to other devices.

In Anycast RP implementation, an RP must forward the register message from the DR to other Anycast RP members to synchronize IPv6 multicast source information.

RPT building

Figure 7 RPT building in an IPv6 PIM-SM domain

 

As shown in Figure 7, the process of building an RPT is as follows:

1.        When a receiver wants to join the IPv6 multicast group G, it uses an MLD message to inform the receiver-side DR.

2.        After getting the receiver information, the DR sends a join message, which travels hop by hop to the RP for the IPv6 multicast group.

3.        The devices along the path from the DR to the RP form an RPT branch. Each device on this branch adds to its forwarding table a (*, G) entry, where the asterisk (*) represents any IPv6 multicast source. The RPT is rooted at the RP and has the DR as its leaf.

When the IPv6 multicast data addressed to the IPv6 multicast group G reaches the RP, the RP forwards the data to the DR along the established RPT. Finally, the DR forwards the IPv6 multicast data to the receiver hosts.

When a receiver is no longer interested in the IPv6 multicast data addressed to the IPv6 multicast group G, the receiver-side DR sends a prune message. The prune message goes hop by hop along the RPT to the RP. After receiving the prune message, the upstream node deletes the interface that connects to this downstream node from the outgoing interface list. At the same time, the upstream device checks for the existence of receivers for that IPv6 multicast group. If no receivers for the IPv6 multicast group exist, the device continues to forward the prune message to its upstream device.

IPv6 multicast source registration

The IPv6 multicast source uses the registration process to inform an RP of its presence.

Figure 8 IPv6 multicast source registration

 

As shown in Figure 8, the IPv6 multicast source registers with the RP as follows:

1.        The IPv6 multicast source S sends the first multicast packet to the IPv6 multicast group G. When receiving the multicast packet, the source-side DR that directly connects to the IPv6 multicast source encapsulates the packet into a register message and unicasts the message to the RP.

2.        After the RP receives the register message, it decapsulates it and forwards it down to the RPT. Meanwhile, it sends an (S, G) source-specific join message toward the IPv6 multicast source. The devices along the path from the RP to the IPv6 multicast source constitute an SPT branch. Each device on this branch creates an (S, G) entry in its forwarding table.

3.        The subsequent IPv6 multicast data from the IPv6 multicast source are forwarded to the RP along the SPT. When the IPv6 multicast data reaches the RP along the SPT, the RP forwards the data to the receivers along the RPT. Meanwhile, it unicasts a register-stop message to the source-side DR to prevent the DR from unnecessarily encapsulating the data.

Switchover to SPT

In an IPv6 PIM-SM domain, only one RP and one RPT provide services for a specific IPv6 multicast group. Before the switchover to SPT occurs, the source-side DR encapsulates all IPv6 multicast data in register messages and sends them to the RP. After receiving these register messages, the RP decapsulates them and forwards them to the receiver-side DR along the RPT.

IPv6 multicast forwarding along the RPT has the following weaknesses:

·          Encapsulation and decapsulation are complex on the source-side DR and the RP.

·          The path for an IPv6 multicast packet might not be the shortest one.

·          The RP might be overloaded by IPv6 multicast traffic bursts.

To eliminate these weaknesses, IPv6 PIM-SM allows an RP or the receiver-side DR to initiate the switchover to SPT when the RP or DR receives IPv6 multicast traffic:

·          The RP initiates the switchover to SPT:

If the RP receives IPv6 multicast traffic, it sends an (S, G) source-specific join message toward the IPv6 multicast source. The devices along the path from the RP to the IPv6 multicast source constitute an SPT branch. The subsequent IPv6 multicast data is forwarded to the RP along the SPT without being encapsulated into register messages.

For more information about the switchover to SPT initiated by the RP, see "IPv6 multicast source registration."

·          The receiver-side DR initiates the switchover to SPT:

If the receiver-side DR receives IPv6 multicast traffic, it initiates the switchover to SPT as follows:

a.    The receiver-side DR sends an (S, G) source-specific join message toward the IPv6 multicast source. The devices along the path create an (S, G) entry in their forwarding table to constitute an SPT branch.

b.    When the multicast packets reach the device where the RPT and the SPT branches, the device drops the multicast packets that travel along the RPT. It then sends a prune message with the RP bit toward the RP.

c.    After receiving the prune message, the RP forwards it toward the IPv6 multicast source (supposed only one receiver exists). Thus, the switchover to SPT is completed. The subsequent IPv6 multicast packets for the IPv6 multicast group travel along the SPT from the IPv6 multicast source to the receiver hosts.

With the switchover to SPT, IPv6 PIM-SM builds SPTs more economically than IPv6 PIM-DM does.

Assert

IPv6 PIM-SM uses a similar assert mechanism as IPv6 PIM-DM does. For more information, see "Assert."

IPv6 BIDIR-PIM

In some many-to-many applications, such as a multi-side video conference, multiple receivers of an IPv6 multicast group might be interested in the IPv6 multicast data from multiple IPv6 multicast sources. With IPv6 PIM-DM or IPv6 PIM-SM, each device along the SPT must create an (S, G) entry for each IPv6 multicast source, consuming a lot of system resources.

IPv6 BIDIR-PIM addresses the problem. Derived from IPv6 PIM-SM, IPv6 BIDIR-PIM builds and maintains a bidirectional RPT, which is rooted at the RP and connects the IPv6 multicast sources and the receivers. Along the bidirectional RPT, the IPv6 multicast sources send IPv6 multicast data to the RP, and the RP forwards the data to the receivers. Each device along the bidirectional RPT needs to maintain only one (*, G) entry, saving system resources.

IPv6 BIDIR-PIM is suitable for a network with dense IPv6 multicast sources and receivers.

IPv6 BIDIR-PIM mechanisms include neighbor discovery, RP discovery, DF election, and bidirectional RPT building.

Neighbor discovery

IPv6 BIDIR-PIM uses the same neighbor discovery mechanism as IPv6 PIM-SM does. For more information, see "Neighbor discovery."

RP discovery

IPv6 BIDIR-PIM supports static RPs and dynamic RP election, and uses the same RP discovery mechanism as IPv6 PIM-SM, except that IPv6 BIDIR-PIM does not support embedded RP. For more information, see "RP discovery." In IPv6 BIDIR-PIM, an RPF interface is the interface toward an RP, and an RPF neighbor is the address of the next hop to the RP.

DF election

On a subnet with multiple multicast devices, duplicate multicast packets might be forwarded to the RP. To address this issue, IPv6 BIDIR-PIM uses a designated forwarder (DF) election mechanism to elect a unique DF on each subnet. Only the DFs can forward IPv6 multicast data to the RP.

DF election is not necessary for an RPL.

Figure 9 DF election

 

As shown in Figure 9, without the DF election mechanism, both Device B and Device C can receive IPv6 multicast packets from Device A. They also can forward the packets to downstream devices on the local subnet. As a result, the RP (Device E) receives duplicate IPv6 multicast packets.

With the DF election mechanism, once receiving the RP information, Device B and Device C multicast a DF election message to all IPv6 PIM devices on the subnet to initiate a DF election process. The election message carries the RP's address, and the route preference and metric of the unicast route to the RP. A DF is elected as follows:

1.        The device with higher route preference becomes the DF.

2.        If the devices have the same route preference, the device with lower metric becomes the DF.

3.        If the devices have the same metric, the device with the higher IP address becomes the DF.

Bidirectional RPT building

A bidirectional RPT comprises a receiver-side RPT and a source-side RPT. The receiver-side RPT is rooted at the RP and takes the devices that directly connect to the receivers as leaves. The source-side RPT is also rooted at the RP but takes the devices that directly connect to the IPv6 multicast sources as leaves. The processes for building these two RPTs are different.

Figure 10 RPT building at the receiver side

 

As shown in Figure 10, the process for building a receiver-side RPT is the same as the process for building an RPT in IPv6 PIM-SM:

1.        When a receiver wants to join the IPv6 multicast group G, it uses an MLD message to inform the directly connected device.

2.        After receiving the message, the device sends a join message, which is forwarded hop by hop to the RP for the IPv6 multicast group.

3.        The devices along the path from the receiver's directly connected device to the RP form an RPT branch. Each device on this branch adds a (*, G) entry to its forwarding table.

After a receiver host leaves the IPv6 multicast group G, the directly connected device multicasts a prune message to all IPv6 PIM devices on the subnet. The prune message goes hop by hop along the reverse direction of the RPT to the RP. After receiving the prune message, an upstream node removes the interface that connects to the downstream node from the outgoing interface list. At the same time, the upstream device checks the existence of receivers for that IPv6 multicast group. If no receivers for the IPv6 multicast group exist, the device continues to forward the prune message to its upstream device.

Figure 11 RPT building at the IPv6 multicast source side

 

As shown in Figure 11, the process for building a source-side RPT is relatively simple:

1.        When an IPv6 multicast source sends multicast packets to the IPv6 multicast group G, the DF in each subnet unconditionally forwards the packets to the RP.

2.        The devices along the path from the source's directly connected device to the RP constitute an RPT branch. Each device on this branch adds a (*, G) entry to its forwarding table.

After a bidirectional RPT is built, the IPv6 multicast sources send multicast traffic to the RP along the source-side RPT. Then, the RP forwards the traffic to the receivers along the receiver-side RPT.

 

IMPORTANT

IMPORTANT:

If a receiver and a source are at the same side of the RP, the source-side RPT and the receiver-side RPT might meet at a node before reaching the RP. In this case, the multicast packets from the IPv6 multicast source to the receiver are directly forwarded by the node, instead of by the RP.

 

IPv6 administrative scoping

Typically, an IPv6 PIM-SM domain or an IPv6 BIDIR-PIM domain contains only one BSR, which is responsible for advertising RP-set information within the entire domain. Information about all IPv6 multicast groups is forwarded within the network that the BSR administers. This is called the "IPv6 non-scoped BSR mechanism."

IPv6 administrative scoping mechanism

To implement refined management, you can divide an IPv6 PIM-SM domain or IPv6 BIDIR-PIM domain into an IPv6 global-scoped zone and multiple IPv6 administratively-scoped zones (admin-scoped zones). This is called the "IPv6 administrative scoping mechanism."

The administrative scoping mechanism effectively releases stress on the management in a single-BSR domain and enables provision of zone-specific services through private group addresses.

An IPv6 admin-scoped zone is designated to particular IPv6 multicast groups with the same scope field value in their group addresses. Zone border routers (ZBRs) form the boundary of an IPv6 admin-scoped zone. Each IPv6 admin-scoped zone maintains one BSR for IPv6 multicast groups with the same scope field value. IPv6 multicast protocol packets, such as assert messages and BSMs, of these IPv6 multicast groups cannot cross the boundary of the IPv6 admin-scoped zone for the group range. The IPv6 multicast group ranges to which different IPv6 admin-scoped zones are designated can have intersections. However, the IPv6 multicast groups in an IPv6 admin-scoped zone are valid only within its local zone, and theses IPv6 multicast groups are regarded as private group addresses.

The IPv6 global-scoped zone can be regarded as a special IPv6 admin-scoped zone, and it maintains a BSR for the IPv6 multicast groups with the scope field value as 14.

Relationship between IPv6 admin-scoped zones and the IPv6 global-scoped zone

The IPv6 global-scoped zone and each IPv6 admin-scoped zone have their own C-RPs and BSRs. These devices are effective only on their respective zones, and the BSR election and the RP election are implemented independently. Each IPv6 admin-scoped zone has its own boundary. The IPv6 multicast information within a zone cannot cross this boundary in either direction. You can have a better understanding of the IPv6 global-scoped zone and IPv6 admin-scoped zones based on geographical locations and the scope field values.

·          In view of geographical locations:

An IPv6 admin-scoped zone is a logical zone for particular IPv6 multicast groups with the same scope field value. The IPv6 multicast packets for such IPv6 multicast groups are confined within the local IPv6 admin-scoped zone and cannot cross the boundary of the zone.

Figure 12 Relationship in view of geographical locations

 

As shown in Figure 12, for the IPv6 multicast groups with the same scope field value, the IPv6 admin-scoped zones must be geographically separated and isolated. The IPv6 global-scoped zone includes all devices in the IPv6 PIM-SM domain or IPv6 BIDIR-PIM domain. IPv6 multicast packets that do not belong to any IPv6 admin-scoped zones are forwarded in the entire IPv6 PIM-SM domain or IPv6 BIDIR-PIM domain.

·          In view of the scope field values:

In terms of the scope field values, the scope field in an IPv6 multicast group address shows the zone to which the IPv6 multicast group belongs.

Figure 13 IPv6 multicast address format

 

An IPv6 admin-scoped zone with a larger scope field value contains an IPv6 admin-scoped zone with a smaller scope field value. The zone with the scope field value of E is the IPv6 global-scoped zone. Table 1 lists the possible values of the scope field.

Table 1 Values of the Scope field

Value

Meaning

Remarks

0, F

Reserved

N/A

1

Interface-local scope

N/A

2

Link-local scope

N/A

3

Subnet-local scope

IPv6 admin-scoped zone.

4

Admin-local scope

IPv6 admin-scoped zone.

5

Site-local scope

IPv6 admin-scoped zone.

6, 7, 9 through D

Unassigned

IPv6 admin-scoped zone.

8

Organization-local scope

IPv6 admin-scoped zone.

E

Global scope

IPv6 global-scoped zone.

 

IPv6 PIM-SSM

The ASM model includes IPv6 PIM-DM and IPv6 PIM-SM. The SSM model can be implemented by leveraging part of the IPv6 PIM-SM technique. It is also called "IPv6 PIM-SSM."

The SSM model provides a solution for source-specific multicast. It maintains the relationship between hosts and devices through MLDv2.

In actual applications, part of MLDv2 and IPv6 PIM-SM techniques are adopted to implement the SSM model. In the SSM model, because receivers have located an IPv6 multicast source, no RP or RPT is required. No source registration process is required for discovering IPv6 multicast sources in other IPv6 PIM domains.

IPv6 PIM-SSM mechanisms include neighbor discovery, DR election, and SPT building.

Neighbor discovery

IPv6 PIM-SSM uses the same neighbor discovery mechanism as IPv6 PIM-SM. For more information, see "Neighbor discovery."

DR election

IPv6 PIM-SSM uses the same DR election mechanism as IPv6 PIM-SM. For more information, see "DR election."

SPT building

The decision to build an RPT for IPv6 PIM-SM or an SPT for IPv6 PIM-SSM depends on whether the IPv6 multicast group that the receiver host joins is in the IPv6 SSM group range. The IPv6 SSM group range reserved by IANA is FF3x::/32, where "x" represents any legal address scope.

Figure 14 SPT building in IPv6 PIM-SSM

 

As shown in Figure 14, Host B and Host C are receivers. They send MLDv2 report messages to their DRs to express their interest in the multicast information that the IPv6 multicast source S sends to the IPv6 multicast group G.

After receiving a report message, the DR first checks whether the group address in the message is in the IPv6 SSM group range and does the following:

·          If the group address is in the IPv6 SSM group range, the DR sends a subscribe message hop by hop toward the IPv6 multicast source S. All devices along the path from the DR to the IPv6 multicast source create an (S, G) entry to build an SPT. The SPT is rooted the IPv6 multicast source S and has the receivers as its leaves. This SPT is the transmission channel in IPv6 PIM-SSM.

·          If the group address is not in the IPv6 SSM group range, the receiver-side DR sends a (*, G) join message to the RP. The IPv6 multicast source registers with the source-side DR.

In IPv6 PIM-SSM, the term "subscribe message" refers to a join message.

Relationship among IPv6 PIM protocols

In an IPv6 PIM network, IPv6 PIM-DM cannot run together with IPv6 PIM-SM, IPv6 BIDIR-PIM, or IPv6 PIM-SSM. However, IPv6 PIM-SM, IPv6 BIDIR-PIM, and IPv6 PIM-SSM can run together. Figure 15 shows how the device selects one protocol from among them for a receiver trying to join a group.

For more information about MLD SSM mapping, see "Configuring MLD."

Figure 15 Relationship among IPv6 PIM protocols

 

IPv6 PIM support for VPNs

To support IPv6 PIM for VPNs, a multicast device that runs IPv6 PIM maintains an independent set of IPv6 PIM neighbor table, IPv6 multicast routing table, BSR information, and RP-set information for each VPN.

After receiving an IPv6 multicast data packet, the multicast device checks which VPN the IPv6 data packet belongs to. Then, the device forwards the IPv6 packet according to the IPv6 multicast routing table for that VPN or creates an IPv6 multicast routing entry for that VPN.

Protocols and standards

·          RFC 3973, Protocol Independent Multicast-Dense Mode (PIM-DM): Protocol Specification(Revised)

·          RFC 4601, Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification (Revised)

·          RFC 4610, Anycast-RP Using Protocol Independent Multicast (PIM)

·          RFC 3956, Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address

·          RFC 5015, Bidirectional Protocol Independent Multicast (BIDIR-PIM)

·          RFC 5059, Bootstrap Router (BSR) Mechanism for Protocol Independent Multicast (PIM)

·          RFC 4607, Source-Specific Multicast for IP

·          Draft-ietf-ssm-overview-05, An Overview of Source-Specific Multicast (SSM)


Configuring IPv6 PIM

Restrictions and guidelines: IPv6 PIM configuration

All the interfaces on a device must operate in the same IPv6 PIM mode on the public network or the same VPN instance.

To avoid IPv6 PIM routing table exceptions, do not use the same RP to provide services for IPv6 PIM-SM and IPv6 BIDIR-PIM when both of them run on the IPv6 PIM network.

Configuring IPv6 PIM-DM

IPv6 PIM-DM tasks at a glance

To configure IPv6 PIM-DM, perform the following tasks:

1.        Enabling IPv6 PIM-DM

2.        (Optional.) Configuring the state refresh feature

3.        (Optional.) Setting the IPv6 PIM-DM graft retry timer

4.        (Optional.) Configuring common IPv6 PIM features

Prerequisites for IPv6 PIM-DM

Before you configure IPv6 PIM-DM, you must complete the following tasks:

·          Configure an IPv6 unicast routing protocol so that all devices in the domain can interoperate at the network layer.

·          Enable IPv6 multicast routing.

Enabling IPv6 PIM-DM

About enabling IPv6 PIM-DM

With IPv6 PIM-DM enabled on interfaces, devices can establish IPv6 PIM neighbor relationship and process IPv6 PIM messages from their IPv6 PIM neighbors.

Restrictions and guidelines

As a best practice, enable IPv6 PIM-DM on all non-border interfaces of devices when you deploy an IPv6 PIM-DM domain.

Procedure

1.        Enter system view.

system-view

2.        Enable IPv6 multicast routing and enter IPv6 MRIB view.

ipv6 multicast routing [ vpn-instance vpn-instance-name ]

By default, IPv6 multicast routing is disabled.

For more information about this command, see IP Multicast Command Reference.

3.        Return to system view.

quit

4.        Enter interface view.

interface interface-type interface-number

5.        Enable IPv6 PIM-DM.

ipv6 pim dm

By default, IPv6 PIM-DM is disabled.

Configuring the state refresh feature

About the state refresh feature

·          State refresh capability—Enables the IPv6 PIM device that is directly connected to the source to periodically send state refresh messages. It also enables other PIM devices to refresh pruned state timers after receiving the state refresh messages. Use this feature to prevent the pruned interfaces from resuming multicast forwarding.

·          State refresh interval—Determines the interval at which a device sends state refresh messages.

·          Wait time before accepting a new state refresh message—A device might receive duplicate state refresh messages within a short time. To prevent this situation, you can adjust the amount of time that the device must wait to accept a new state refresh message. If the device receives a new state refresh message before the timer expires, it discards the message. If the device receives a new state refresh message after the timer expires, it accepts the message, refreshes its own IPv6 PIM-DM state, and resets the waiting timer.

·          Hop limit value of state refresh messagesThe hop limit value of a state refresh message decrements by 1 whenever it passes a device before it is forwarded to the downstream node. The state refresh message is not forwarded when the hop limit comes down to 0. A state refresh message with a large hop limit value might cycle on a small network. To control the propagation scope of state refresh messages, configure an appropriate hop limit value based on the network size on the device directly connected with the IPv6 multicast source.

Restrictions and guidelines

Perform this task on all devices in the IPv6 PIM-DM domain.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Enable the state refresh feature.

ipv6 pim state-refresh-capable

By default, the state refresh feature is enabled.

4.        Return to system view.

quit

5.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

6.        Set the state refresh interval.

state-refresh-interval interval

The default setting is 60 seconds.

7.        Set the amount of time that the device must wait to accept a new state refresh message.

state-refresh-rate-limit time

The default setting is 30 seconds.

8.        Set the hop limit value of state refresh messages.

state-refresh-hoplimit hoplimit-value

The default setting is 255.

Setting the IPv6 PIM-DM graft retry timer

About the IPv6 PIM-DM graft retry timer

Perform this task to adjust the interval at which the device retransmits a graft message if it does not receive a graft-ack message from the upstream device.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Set the IPv6 PIM-DM graft retry timer.

ipv6 pim timer graft-retry interval

By default, the IPv6 PIM-DM graft retry timer is 3 seconds.

Configuring IPv6 PIM-SM

IPv6 PIM-SM tasks at a glance

To configure IPv6 PIM-SM, perform the following tasks:

1.        Enabling IPv6 PIM-SM

2.        Configuring static RPs

As a best practice, configure a static RP when only one dynamic RP exists in the network.

3.        Configure dynamic RP election:

?  Configuring C-RPs

?  Configuring C-BSRs

?  (Optional.) Configuring an IPv6 PIM domain border

?  (Optional.) Disabling BSM semantic fragmentation

?  (Optional.) Disabling the device from forwarding BSMs out of their incoming interfaces

As a best practice, configure dynamic RPs when multiple IPv6 PIM devices exist in the network.

4.        Enabling embedded RP

Enable embedded RP on each device for inter-domain communication when the devices are located in different IPv6 PIM-SM domains.

5.        (Optional.) Configuring Anycast RP

6.        (Optional.) Configuring IPv6 multicast source registration

7.        (Optional.) Configuring the switchover to SPT

8.        (Optional.) Configuring common IPv6 PIM features

Prerequisites for IPv6 PIM-SM

Before you configure IPv6 PIM-SM, you must complete the following tasks:

·          Configure an IPv6 unicast routing protocol so that all devices in the domain can interoperate at the network layer.

·          Enable IPv6 multicast routing.

Enabling IPv6 PIM-SM

About enabling IPv6 PIM-SM

With IPv6 PIM-SM enabled on interfaces, devices can establish IPv6 PIM neighbor relationship and process IPv6 PIM messages from their IPv6 PIM neighbors.

Restrictions and guidelines

As a best practice, enable IPv6 PIM-SM on all non-border interfaces of devices when you deploy an IPv6 PIM-SM domain.

Procedure

1.        Enter system view.

system-view

2.        Enable IPv6 multicast routing and enter IPv6 MRIB view.

ipv6 multicast routing [ vpn-instance vpn-instance-name ]

By default, IPv6 multicast routing is disabled.

For more information about this command, see IP Multicast Command Reference.

3.        Return to system view.

quit

4.        Enter interface view.

interface interface-type interface-number

5.        Enable IPv6 PIM-SM.

ipv6 pim sm

By default, IPv6 PIM-SM is disabled.

Configuring static RPs

About static RPs

If only one dynamic RP exists on a network, you can configure a static RP to avoid communication interruption caused by single-point failures. The static RP can also avoid waste of bandwidth caused by frequent message exchanges between C-RPs and the BSR.

Restrictions and guidelines

In the IPv6 PIM-SM domain, you can configure the same static RP for multiple IPv6 multicast groups by using the same RP address but different ACLs.

You do not need to enable IPv6 PIM for an interface to be configured as a static RP.

If you configure multiple static RPs for an IPv6 multicast group, only the static RP with the highest IPv6 address takes effect.

The static RP configuration must be the same on all devices in the IPv6 PIM-SM domain.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a static RP for IPv6 PIM-SM.

static-rp ipv6-rp-address [ ipv6-acl-number | preferred ] *

When both a static RP and a dynamically elected RP exist on the network, you can specify the preferred keyword to give priority to the static RP. The dynamic RP is used only when the static RP fails. If you do not specify the preferred keyword, the dynamic RP takes priority and the static RP is used only when the dynamic RP fails.

Configuring C-RPs

About C-RP configuration

To avoid C-RP spoofing, configure a C-RP policy to filter C-RP advertisement messages by using an ACL that specifies the packet source address range and multicast group addresses.

Restrictions and guidelines

Configure C-RPs on devices that reside in the backbone network.

Because the RP and other devices exchange a large amount of information in the IPv6 PIM-SM domain, reserve a large bandwidth between C-RPs and other devices.

You must configure the same C-RP policy on all C-BSRs in the IPv6 PIM-SM domain because every C-BSR might become the BSR.

The device might use the BSR RP hash algorithm described in RFC 4601 or in RFC 2362 to calculate the RP for a multicast group. To ensure consistent group-to-RP mappings on all PIM devices in the IPv6 PIM-SM domain, specify the same BSR RP hash algorithm on the devices.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a C-RP.

c-rp ipv6-address [ advertisement-interval adv-interval | { group-policy ipv6-acl-number | scope scope-id } | holdtime hold-time | priority priority ] *

4.        (Optional.) Configure a C-RP policy.

crp-policy ipv6-acl-number

By default, no C-RP policies are configured. All C-RP advertisement messages are regarded as legal.

5.        (Optional.) Configure the device to use the BSR RP hash algorithm described in RFC 2362.

bsr-rp-mapping rfc2362

By default, the device uses the BSR RP hash algorithm described in RFC 4601.

Configuring C-BSRs

About C-BSRs

You must configure C-BSRs when you configure dynamic RP election.

To prevent a legal BSR from being replaced by a malicious host, configure a BSR policy to filter BSR messages by using an ACL that specifies the legal BSR addresses.

Restrictions and guidelines

Configure C-BSRs on devices that reside in the backbone network.

Because the BSR and other devices exchange a large amount of information in the IPv6 PIM-SM domain, reserve a large bandwidth between the C-BSR and other devices.

The C-BSR configuration on the devices in the IPv6 PIM-SM domain must be the same.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a C-BSR.

c-bsr ipv6-address [ scope scope-id ] [ hash-length hash-length | priority priority ] *

4.        (Optional.) Configure a BSR policy.

bsr-policy ipv6-acl-number

By default, no BSR policies are configured. All bootstrap messages are regarded as legal.

Configuring an IPv6 PIM domain border

About IPv6 PIM domain borders

An IPv6 PIM domain border determines the transmission boundary of bootstrap messages. Bootstrap messages cannot cross the domain border in either direction. A number of IPv6 PIM domain border interfaces partition a network into different IPv6 PIM-SM domains.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Configure an IPv6 PIM domain border.

ipv6 pim bsr-boundary

By default, an interface is not an IPv6 PIM domain border.

Disabling BSM semantic fragmentation

About BSM semantic fragmentation

BSM semantic fragmentation enables a BSR to split a BSM into multiple BSM fragments (BSMFs) if the BSM exceeds the MTU. In this way, a non-BSR device can update the RP-set information for a group range after receiving all BSMFs for the group range. The loss of one BSMF only affects the RP-set information of the group ranges that the fragment contains.

Restrictions and guidelines

If a device does not support BSM semantic fragmentation, it regards a BSMF as a BSM and updates the RP-set information each time it receives a BSMF. It learns only part of the RP-set information, which further affects the RP election. Therefore, if such a device exists in the IPv6 PIM-SM domain, you must disable BSM semantic fragmentation on all C-BSRs.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Disable BSM semantic fragmentation.

undo bsm-fragment enable

By default, BSM semantic fragmentation is enabled.

Disabling the device from forwarding BSMs out of their incoming interfaces

About disabling the device from forwarding BSMs out of their incoming interfaces

By default, the device forwards BSMs out of their incoming interfaces. This default setting ensures that all devices on the subnet can receive BSMs even when they have inconsistent routing information. However, this default setting results in duplicated IPv6 multicast traffic. If you are sure that all the devices on the subnet have consistent routing information, you can disable the device from forwarding BSMs out of their incoming interfaces.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Disable the device from forwarding BSMs out of their incoming interfaces.

undo bsm-reflection enable

By default, the device forwards BSMs out of their incoming interfaces.

Enabling embedded RP

Restrictions and guidelines

This feature is supported only for IPv6 multicast group addresses in the range of FF7x::/12 or FFFx::/12 and in compliance with RFC 3956.

Enable this feature on all devices in the IPv6 PIM-SM domain.

IPv6 BIDIR-PIM does not support embedded RP.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Enable embedded RP.

embedded-rp [ ipv6-acl-number ]

By default, embedded RP is disabled.

Configuring Anycast RP

Restrictions and guidelines

To prevent the other Anycast RP member devices from discarding the BSM sent by the BSR, make sure the Anycast RP address is different from the BSR address.

As a best practice to ensure network performance, configure a maximum of 16 Anycast RP members for an Anycast RP set.

As a best practice, configure the IPv6 address of a loopback interface as the RP member address.

If you configure IPv6 addresses of multiple interfaces on the same device as RP member addresses, the lowest IPv6 address takes effect. The rest of the interface addresses become backup RP member addresses.

You must add the device where the Anycast RP resides as an RP member to the Anycast RP set.

Prerequisites

You must configure a static RPs or C-RPs in the IPv6 PIM-SM domain before you configure the Anycast RP. Use the address of the static RP or the dynamically elected RP as the Anycast RP address.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure Anycast RP.

anycast-rp ipv6-anycast-rp-address ipv6-member-address

You can repeat this command to add multiple RP member addresses to an Anycast RP set.

Configuring IPv6 multicast source registration

About IPv6 multicast source registration

·          IPv6 PIM register policy—An IPv6 PIM register policy enables an RP to filter register messages by using an ACL that specifies the IPv6 multicast sources and groups. The policy limits the multicast groups to which the RP is designated. If a register message is denied by the ACL or does not match the ACL, the RP discards the register message and sends a register-stop message to the source-side DR. The registration process stops.

·          Checksum computing method for register messages—For information integrity of a register message, you can configure the device to calculate the checksum based on the entire register message. If a device cannot calculate the checksum based on the entire register message, you can configure the device to calculate the checksum based on the register message header.

·          Register suppression time—The source-side DR stops sending register messages encapsulated with IPv6 multicast data and starts a register-stop timer upon receiving a register-stop message from the RP. Before the register-stop timer expires, the DR sends a null register message (a register message without encapsulated IPv6 multicast data) to the RP and starts a register probe timer. If the DR receives a register-stop message before the register probe timer expires, it resets its register-stop timer. If the DR does not receive a register-stop message when the register probe timer expires, the DR starts sending register messages with encapsulated data again.

The register-stop timer is set to a random value chosen uniformly from (0.5 × register_suppression_time minus register_probe_time) to (1.5 × register_suppression_time minus register_probe_time). The register_probe_time is (5 seconds). You can adjust the register suppression time.

Restrictions and guidelines

On all C-RP devices, configure an IPv6 PIM register policy and the checksum computing method for register messages.

On all devices that might become the source-side DR, set the register suppression time.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure an IPv6 PIM register policy.

register-policy ipv6-acl-number

By default, no IPv6 register policy is configured. All IPv6 register messages are regarded as legal.

4.        Configure the device to calculate the checksum based on the entire register message.

register-whole-checksum

By default, the device calculates the checksum based on the header of a register message.

5.        Set the register suppression time.

register-suppression-timeout interval

The default setting is 60 seconds.

Configuring the switchover to SPT

Restrictions and guidelines

Some devices cannot encapsulate IPv6 multicast data in register messages destined to the RP. As a best practice to avoid IPv6 multicast data forwarding failures, do not disable the switchover to SPT on C-RPs that might become the RP.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure the switchover to SPT.

spt-switch-threshold { immediacy | infinity } [ group-policy ipv6-acl-number ]

By default, the first IPv6 multicast data packet triggers the RPT to SPT switchover.

Configuring IPv6 BIDIR-PIM

IPv6 BIDIR-PIM tasks at a glance

To configure IPv6 BIDIR-PIM, perform the following tasks:

1.        Enabling IPv6 BIDIR-PIM

2.        Configuring static RPs

As a best practice, configure a static R when only one dynamic RP exists in the network.

3.        Configuring dynamic RPs

?  Configuring C-RPs

?  Configuring C-BSRs

?  (Optional.) Configuring an IPv6 PIM domain border

?  (Optional.) Disabling BSM semantic fragmentation

?  (Optional.) Disabling the device from forwarding BSMs out of their incoming interfaces

?  (Optional.) Setting the maximum number of IPv6 BIDIR-PIM RPs

As a best practice, configure dynamic RPs when multiple IPv6 PIM devices exist in the network.

You can configure static RPs, dynamic RPs, or both.

4.        (Optional.) Configuring common IPv6 PIM features

Prerequisites for IPv6 BIDIR-PIM

Before you configure IPv6 BIDIR-PIM, you must complete the following tasks:

·          Configure an IPv6 unicast routing protocol so that all devices in the domain can interoperate at the network layer.

·          Enable IPv6 PIM-SM.

Enabling IPv6 BIDIR-PIM

Restrictions and guidelines

As a best practice, enable IPv6 BIDIR-PIM on all non-border interfaces of devices when you deploy an IPv6 BIDIR-PIM.

Procedure

1.        Enter system view.

system-view

2.        Enable IPv6 multicast routing and enter MRIB view.

ipv6 multicast routing [ vpn-instance vpn-instance-name ]

By default, IPv6 multicast routing is disabled.

For more information about this command, see IP Multicast Command Reference.

3.        Return to system view.

quit

4.        Enter interface view.

interface interface-type interface-number

5.        Enable IPv6 PIM-SM.

ipv6 pim sm

By default, IPv6 PIM-SM is disabled.

6.        Return to system view.

quit

7.        Enter IPv6 PIM view

ipv6 pim [ vpn-instance vpn-instance-name ]

8.        Enable IPv6 BIDIR-PIM.

bidir-pim enable

By default, IPv6 BIDIR-SM is disabled.

Configuring static RPs

About static RPs

If only one dynamic RP exists on a network, you can configure a static RP to avoid communication interruption caused by single-point failures. The static RP can also avoid bandwidth waste caused by frequent message exchanges between C-RPs and the BSR.

Restrictions and guidelines

The static RP configuration must be the same on all devices in the IPv6 BIDIR-PIM domain.

In an IPv6 BIDIR-PIM domain, you can configure the same static RP for different IPv6 multicast groups by using the same RP address but different ACLs.

You do not need to enable IPv6 PIM for an interface to be configured as a static RP.

If you configure multiple static RPs for an IPv6 multicast group, only the static RP with the highest IPv6 address takes effect.

You can specify an unused IP address for a static RP. This address must be on the same subnet as the link on which the static RP is configured. For example, if the IPv6 addresses of the interfaces at the two ends of a link are 1001::1/64 and 1001::2/64, you can specify the interface with IPv6 address 1001::100/64 as a static RP. As a result, the link becomes an RPL.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a static RP for IPv6 BIDIR-PIM.

static-rp ipv6-rp-address bidir [ ipv6-acl-number | preferred ] *

When both a static RP and a dynamically elected RP exist on the network, you can specify the preferred keyword to give priority to the static RP. The dynamic RP is used only when the static RP fails. If you do not specify the preferred keyword, the dynamic RP takes priority and the static RP is used only when the dynamic RP fails.

Configuring C-RPs

About C-RP configuration

To guard against C-RP spoofing, configure a C-RP policy to filter C-RP advertisement messages by using an ACL that specifies the packet source address range and IPv6 multicast groups.

Restrictions and guidelines

Configure C-RPs on devices that reside in the backbone network.

Because the RP and other devices exchange a large amount of information in the IPv6 BIDIR-PIM domain, reserve a large bandwidth between C-RPs and other devices.

You must configure the same C-RP policy on all C-BSRs in the IPv6 BIDIR-PIM domain.

The device might use the BSR RP hash algorithm described in RFC 4601 or in RFC 2362 to calculate the RP for a multicast group. To ensure consistent group-to-RP mappings on all PIM devices in the IPv6 BIDIR-PIM domain, specify the same BSR RP hash algorithm on the devices.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a C-RP to provide services for IPv6 BIDIR-PIM.

c-rp ipv6-address [ advertisement-interval adv-interval | { group-policy ipv6-acl-number | scope scope-id } | holdtime hold-time | priority priority ] * bidir

4.        (Optional.) Configure the device to use the RP hash algorithm described in RFC 2362.

bsr-rp-mapping rfc2362

By default, the device uses the BSR RP hash algorithm described in RFC 4601.

Configuring C-BSRs

About C-BSRs

You must configure C-BSRs when you configure dynamic RP election.

To prevent a legal BSR from being replaced by a malicious host, configure a BSR policy to filter BSR messages by using an ACL that specifies the legal BSR addresses.

Restrictions and guidelines

Configure C-BSRs on devices that reside in the backbone network.

Because the BSRs and other devices exchange a large amount of information in the IPv6 BIDIR-PIM domain, reserve a large bandwidth between the C-BSRs and other devices.

The C-BSR configuration on all devices in the same IPv6 BIDIR-PIM domain must be the same.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure a C-BSR.

c-bsr ipv6-address [ scope scope-id ] [ hash-length hash-length | priority priority ] *

By default, no C-BSRs exist.

4.        (Optional.) Configure a BSR policy.

bsr-policy ipv6-acl-number

By default, no BSR policy is configured. All bootstrap messages are regarded as legal.

Configuring an IPv6 PIM domain border

About IPv6 PIM domain borders

An IPv6 PIM domain border determines the transmission boundary of bootstrap messages. Bootstrap messages cannot cross the domain border in either direction. A number of PIM domain border interfaces partition a network into different IPv6 BIDIR-PIM domains.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Configure an IPv6 PIM domain border.

ipv6 pim bsr-boundary

By default, an interface is not an IPv6 PIM domain border.

Disabling BSM semantic fragmentation

About BSM semantic fragmentation

BSM semantic fragmentation enables a BSR to split a BSM into multiple BSM fragments (BSMFs) if the BSM exceeds the MTU. In this way, a non-BSR device can update the RP-set information for a group range after receiving all BSMFs for the group range. The loss of one BSMF only affects the RP-set information of the group ranges that the fragment contains.

Restrictions and guidelines

If a device does not support BSM semantic fragmentation, it regards a BSMF as a BSM and updates the RP-set information each time it receives a BSMF. It learns only part of the RP-set information, which further affects the RP election. Therefore, if such a device exists in the IPv6 BIDIR-PIM domain, you must disable BSM semantic fragmentation on all C-BSRs.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Disable BSM semantic fragmentation.

undo bsm-fragment enable

By default, BSM semantic fragmentation is enabled.

Disabling the device from forwarding BSMs out of their incoming interfaces

About disabling the device from forwarding BSMs out of their incoming interfaces

By default, the device forwards BSMs out of their incoming interfaces. This default setting ensures that all devices on the subnet can receive BSMs even when they have inconsistent routing information. However, this default setting results in duplicated IPv6 multicast traffic. If you are sure that all the devices on the subnet have consistent routing information, you can disable the device from forwarding BSMs out of their incoming interfaces.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Disable the device from forwarding BSMs out of their incoming interfaces.

undo bsm-reflection enable

By default, the device forwards BSMs out of their incoming interfaces.

Setting the maximum number of IPv6 BIDIR-PIM RPs

About setting the maximum number of IPv6 BIDIR-PIM RPs

In an IPv6 BIDIR-PIM domain, one DF election per RP is implemented on all IPv6 PIM-enabled interfaces. To avoid unnecessary DF elections, do not configure multiple RPs for IPv6 BIDIR-PIM.

This configuration sets a limit on the number of IPv6 BIDIR-PIM RPs. If the number of RPs exceeds the limit, excess RPs do not take effect and can be used only for DF election rather than IPv6 multicast data forwarding. The system does not delete these excess RPs. They must be deleted manually.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Set the maximum number of IPv6 BIDIR-PIM RPs.

bidir-rp-limit limit

By default, the maximum number of IPv6 BIDIR-PIM RPs is 6.

Configuring IPv6 PIM-SSM

IPv6 PIM-SSM tasks at a glance

To configure IPv6 PIM-SSM, perform the following tasks:

1.        Enabling IPv6 PIM-SM

2.        (Optional.) Configuring an IPv6 PIM hello policy

3.        (Optional.) Configuring common IPv6 PIM features

Prerequisites for IPv6 PIM-SSM

Before you configure IPv6 PIM-SSM, you must complete the following tasks:

·          Configure an IPv6 unicast IPv6 routing protocol so that all devices in the domain can interoperate at the network layer.

·          Enable IPv6 PIM-SM.

·          Enable MLDv2 on the IPv6 PIM devices that connect to IPv6 multicast receivers.

Enabling IPv6 PIM-SM

Restrictions and guidelines

As a best practice, enable IPv6 PIM-SM on all non-border interfaces of devices when you deploy an IPv6 PIM-SSM domain.

Procedure

1.        Enter system view.

system-view

2.        Enable IPv6 multicast routing and enter IPv6 MRIB view.

ipv6 multicast routing [ vpn-instance vpn-instance-name ]

By default, IPv6 multicast routing is disabled.

For more information about this command, see IP Multicast Command Reference.

3.        Return to system view.

quit

4.        Enter interface view.

interface interface-type interface-number

5.        Enable IPv6 PIM-SM.

ipv6 pim sm

By default, IPv6 PIM-SM is disabled.

Specifying the IPv6 SSM group range

About the SSM-group range

When an IPv6 PIM-SM enabled interface receives an IPv6 multicast packet, it checks whether the IPv6 multicast group address of the packet is in the IPv6 SSM group range. If the IPv6 multicast group address is in this range, the IPv6 PIM mode for this packet is IPv6 PIM-SSM. If the IPv6 multicast group address is not in this range, the IPv6 PIM mode is IPv6 PIM-SM.

Restrictions and guidelines

Configure the same IPv6 SSM group range on all devices in the entire IPv6 PIM-SM domain. Otherwise, IPv6 multicast information cannot be delivered through the IPv6 SSM model.

When a member of an IPv6 multicast group in the IPv6 SSM group range sends an MLDv1 report message, the device does not trigger a (*, G) join.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure the IPv6 SSM group range.

ssm-policy ipv6-acl-number

The default range is FF3x::/32, where x can be any valid scope.

Configuring common IPv6 PIM features

Common IPv6 PIM feature tasks at a glance

All the following tasks are optional.

·          Configuring an IPv6 PIM hello policy

·          Configuring IPv6 PIM hello message options

·          Dropping hello messages without the Generation ID option

·          Configuring common IPv6 PIM timers

·          Setting the maximum size of a join or prune message

·          Setting the DSCP value for outgoing IPv6 PIM protocol packets

·          Enabling BFD for IPv6 PIM

·          Enabling IPv6 PIM passive mode

·          Enabling IPv6 PIM NSR

·          Enabling SNMP notifications for IPv6 PIM

Configuring an IPv6 multicast source policy

About IPv6 multicast source policies

This feature enables the device to filter IPv6 multicast data by using an ACL that specifies the IPv6 multicast sources and the optional groups. It filters not only IPv6 multicast data packets but also IPv6 PIM register messages with IPv6 multicast data encapsulated. This also reduces the IPv6 multicast traffic on the network.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Configure an IPv6 multicast source policy.

source-policy ipv6-acl-number

By default, no IPv6 multicast source policy is configured. The device does not filter IPv6 multicast data packets.

Configuring an IPv6 PIM hello policy

About IPv6 PIM hello policies

This feature enables the device to filter IPv6 PIM hello messages by using an ACL that specifies the packet source addresses. It is used to guard against IPv6 PIM message attacks and to establish correct IPv6 PIM neighboring relationships.

If hello messages of an existing IPv6 PIM neighbor are filtered out by the policy, the neighbor is automatically removed when its aging timer expires.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Configure an IPv6 PIM hello policy.

ipv6 pim neighbor-policy ipv6-acl-number

By default, no IPv6 PIM hello policy is configured on an interface. All IPv6 PIM hello messages are regarded as legal.

Configuring IPv6 PIM hello message options

About IPv6 PIM hello message options

In either an IPv6 PIM-DM domain or an IPv6 PIM-SM domain, hello messages exchanged among devices contain the following configurable options:

·          DR_Priority (for IPv6 PIM-SM only)—Priority for DR election. The device with the highest priority wins the DR election. You can configure this option for all the devices in a shared-media LAN that directly connects to the IPv6 multicast source or the receivers.

·          Holdtime—IPv6 PIM neighbor lifetime. If a device receives no hello message from a neighbor when the neighbor lifetime expires, it regards the neighbor failed or unreachable.

·          LAN_Prune_Delay—Delay of pruning a downstream interface on a shared-media LAN. This option has the LAN delay field, the override interval field, and the T bit.

The LAN delay defines the IPv6 PIM message propagation delay. The override interval defines a time period for a downstream device to override a prune message. The T bit specifies the capability of tracking downstream device status on upstream devices.

On the shared-media LAN, the propagation delay and override interval are used as follows:

?  If a device receives a prune message on its upstream interface, it means that there are downstream devices on the shared-media LAN. If this device still needs to receive multicast data, it must send a join message to override the prune message within the override interval.

?  When a device receives a prune message from its downstream interface, it does not immediately prune this interface. Instead, it starts a timer (the propagation delay plus the override interval). If interface receives a join message before the timer expires, the device does not prune the interface. Otherwise, the device prunes the interface.

·          Neighbor tracking—If you enable neighbor tracking on an upstream device, this device can track the states of the downstream nodes for which the joined state holdtime timer has not expired. All join messages from downstream devices are accepted.

Restrictions and guidelines

If the propagation delay or override interval on different IPv6 PIM devices on a shared-media LAN is different, the largest ones apply.

If you enable neighbor tracking, you must enable it on all IPv6 PIM devices on a shared-media LAN or the upstream device to track join messages from every downstream device.

You can configure hello message options for all interfaces in IPv6 PIM view or for the current interface in interface view. The configuration made in interface view takes priority over the configuration made in IPv6 PIM view.

Configuring hello message options globally

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Set the DR priority.

hello-option dr-priority priority

The default setting is 1.

4.        Set the neighbor lifetime.

hello-option holdtime time

The default setting is 105 seconds.

5.        Set the IPv6 PIM message propagation delay for a shared-media LAN.

hello-option lan-delay delay

The default setting is 500 milliseconds.

6.        Set the override interval.

hello-option override-interval interval

The default setting is 2500 milliseconds.

7.        Enable neighbor tracking.

hello-option neighbor-tracking

By default, neighbor tracking is disabled.

Configuring hello message options on an interface

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Set the DR priority.

ipv6 pim hello-option dr-priority priority

The default setting is 1.

4.        Set the neighbor lifetime.

ipv6 pim hello-option holdtime time

The default setting is 105 seconds.

5.        Set the IPv6 PIM message propagation delay.

ipv6 pim hello-option lan-delay delay

The default setting is 500 milliseconds.

6.        Set the override interval.

ipv6 pim hello-option override-interval interval

The default setting is 2500 milliseconds.

7.        Enable neighbor tracking.

ipv6 pim hello-option neighbor-tracking

By default, neighbor tracking is disabled.

Dropping hello messages without the Generation ID option

About dropping hello messages without the Generation ID option

A device generates a generation ID for hello messages when an interface is enabled with IPv6 PIM. The generation ID is a random value, but it changes only when the status of the device changes. If an IPv6 PIM device finds that the generation ID in a hello message from the upstream device has changed, it assumes that the status of the upstream device has changed. In this case, it sends a join message to the upstream device for status update. You can configure an interface to drop hello messages without the generation ID options to promptly know the status of an upstream device.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Enable the interface to drop hello messages without the Generation ID option.

ipv6 pim require-genid

By default, an interface accepts hello messages without the Generation ID option.

Configuring common IPv6 PIM timers

About common IPv6 PIM timers

The following are common IPv6 PIM timers:

·          Hello intervalInterval at which an IPv6 PIM device sends hello messages to discover IPv6 PIM neighbors and maintain IPv6 PIM neighbor relationship.

·          Triggered hello delay—Maximum delay for sending a hello message to avoid collisions caused by simultaneous hello messages. After receiving a hello message, an IPv6 PIM device waits for a random time before sending a hello message. This random time is in the range of 0 to the triggered hello delay.

·          Join/Prune interval—Interval at which an IPv6 PIM device sends join/prune messages to its upstream devices for state update.

·          Joined/Pruned state holdtime—Time for which an IPv6 PIM device keeps the joined/pruned state for the downstream interfaces. This joined/pruned state holdtime is contained in a join/prune message.

·          IPv6 multicast source lifetime—Lifetime that an IPv6 PIM device maintains for an IPv6 multicast source. If a device does not receive subsequent IPv6 multicast data from the IPv6 multicast source S when the timer expires, it deletes the (S, G) entry for the IPv6 multicast source.

Restrictions and guidelines

To prevent upstream neighbors from aging out, set the join/prune interval to be less than the join/pruned state holdtime.

You can configure common IPv6 PIM timers for all interfaces in IPv6 PIM view or for the current interface in interface view. The configuration made in interface view takes priority over the configuration made in IPv6 PIM view.

As a best practice, use the defaults for a network without special requirements.

Configuring common IPv6 PIM timers globally

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Set the hello interval.

timer hello interval

By default, the interval to send hello messages is 30 seconds.

4.        Set the join/prune interval.

timer join-prune interval

By default, the interval to send join/prune messages is 60 seconds.

This configuration takes effect after the current interval ends.

5.        Set the joined/pruned state holdtime.

holdtime join-prune time

By default, the joined/pruned state holdtime timer is 210 seconds.

6.        Set the IPv6 multicast source lifetime.

source-lifetime time

By default, the IPv6 multicast source lifetime is 210 seconds.

Configuring common IPv6 PIM timers on an interface

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Set the hello interval.

ipv6 pim timer hello interval

The default setting is 30 seconds.

4.        Set the triggered hello delay.

ipv6 pim triggered-hello-delay delay

The default setting is 5 seconds.

5.        Set the join/prune interval.

ipv6 pim timer join-prune interval

The default setting is 60 seconds.

This configuration takes effect after the current interval ends.

6.        Set the joined/pruned state holdtime.

ipv6 pim holdtime join-prune time

The default setting is 210 seconds.

Setting the maximum size of a join or prune message

Restrictions and guidelines

The loss of an oversized join or prune message might result in loss of massive information. You can set a small value for the size of a join or prune message to reduce the impact.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Set the maximum size of a join or prune message.

jp-pkt-size size

By default, the maximum size of a join or prune message is 1200 bytes.

Setting the DSCP value for outgoing IPv6 PIM protocol packets

About the DSCP value for outgoing IPv6 PIM protocol packets

The DSCP value determines the packet transmission priority. A greater DSCP value represents a higher priority.

Procedure

1.        Enter system view.

system-view

2.        Enter IPv6 PIM view.

ipv6 pim [ vpn-instance vpn-instance-name ]

3.        Set the DSCP value for outgoing IPv6 PIM protocol packets.

dscp dscp-value

By default, the DSCP value is 48 for outgoing IPv6 PIM protocol packets.

Enabling BFD for IPv6 PIM

About enabling BFD for IPv6 PIM

If a DR on a shared-media network fails, a new DR election process will start after the DR ages out. However, it might take a long period of time before other devices detect the link failures and trigger a new DR election. To start a new DR election process immediately after the original DR fails, you can enable BFD for IPv6 PIM to detect link failures among IPv6 PIM neighbors.

You must enable BFD for IPv6 PIM on all IPv6 PIM devices on a shared-media network. For more information about BFD, see High Availability Configuration Guide.

You must enable IPv6 PIM-DM or IPv6 PIM-SM on an interface before you configure this feature on the interface.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Enable BFD for IPv6 PIM.

ipv6 pim bfd enable

By default, BFD is disabled for IPv6 PIM.

Enabling IPv6 PIM passive mode

About IPv6 PIM passive mode

To guard against IPv6 PIM hello spoofing, you can enable IPv6 PIM passive mode on a receiver-side interface. The interface cannot receive or forward IPv6 PIM protocol messages (excluding register, register-stop and C-RP-Adv messages), and acts as the DR on the subnet. In IPv6 BIDIR-PIM, it also acts as the DF.

Restrictions and guidelines

This feature takes effect only when IPv6 PIM-DM or IPv6 PIM-SM is enabled on the interface.

To avoid duplicate multicast data transmission and flow loop, do not enable this feature on a shared-media LAN with multiple IPv6 PIM devices.

Procedure

1.        Enter system view.

system-view

2.        Enter interface view.

interface interface-type interface-number

3.        Enable IPv6 PIM passive mode on the interface.

ipv6 pim passive

By default, IPv6 PIM passive mode is disabled on an interface.

Enabling IPv6 PIM NSR

About PIM NSR

This feature enables IPv6 PIM to back up protocol state information, including IPv6 PIM neighbor information and routes, from the active process to the standby process. The standby process immediately takes over when the active process fails. Use this feature to avoid route flapping and forwarding interruption for IPv6 PIM when an active/standby switchover occurs.

Procedure

1.        Enter system view.

system-view

2.        Enable IPv6 PIM NSR.

ipv6 pim non-stop-routing

By default, IPv6 PIM NSR is disabled.

Enabling SNMP notifications for IPv6 PIM

About enabling SNMP notifications for IPv6 PIM

To report critical IPv6 PIM events to an NMS, enable SNMP notifications for IPv6 PIM. For PIM event notifications to be sent correctly, you must also configure SNMP as described in Network Management and Monitoring Configuration Guide.

Procedure

1.        Enter system view.

system-view

2.        Enable SNMP notifications for IPv6 PIM.

snmp-agent trap enable pim6 [ candidate-bsr-win-election | elected-bsr-lost-election | neighbor-loss ] *

By default, SNMP notifications for IPv6 PIM are enabled.

Display and maintenance commands for IPv6 PIM

Execute display commands in any view.

 

Task

Command

Display register-tunnel interface information.

display interface [ register-tunnel [ interface-number ] ] [ brief [ description| down ] ]

Display BSR information in the IPv6 PIM-SM domain.

display ipv6 pim [ vpn-instance vpn-instance-name ] bsr-info

Display information about the routes used by IPv6 PIM.

display ipv6 pim [ vpn-instance vpn-instance-name ] claimed-route [ ipv6-source-address ]

Display C-RP information in the IPv6 PIM-SM domain.

display ipv6 pim [ vpn-instance vpn-instance-name ] c-rp [ local ]

Display DF information in the IPv6 BIDIR-PIM domain.

display ipv6 pim [ vpn-instance vpn-instance-name ] df-info [ ipv6-rp-address ]

Display IPv6 PIM information on an interface.

display ipv6 pim [ vpn-instance vpn-instance-name ] interface [ interface-type interface-number ] [ verbose ]

Display IPv6 PIM neighbor information.

display ipv6 pim [ vpn-instance vpn-instance-name ] neighbor [ ipv6-neighbor-address | interface interface-type interface-number | verbose ] *

Display IPv6 PIM routing entries.

display ipv6 pim [ vpn-instance vpn-instance-name ] routing-table [ ipv6-group-address [ prefix-length ] | ipv6-source-address [ prefix-length ] | flags flag-value | fsm | incoming-interface interface-type interface-number | mode mode-type | outgoing-interface { exclude | include | match } interface-type interface-number ] *

Display RP information in the IPv6 PIM-SM domain.

display ipv6 pim [ vpn-instance vpn-instance-name ] rp-info [ ipv6-group-address ]

Display statistics for IPv6 PIM packets.

display ipv6 pim statistics

 

IPv6 PIM configuration examples

Example: Configuring IPv6 PIM-DM

Network configuration

As shown in Figure 16:

·          OSPFv3 runs on the network.

·          VOD streams are sent to receiver hosts in multicast. The receiver groups of different organizations form stub networks, and one or more receiver hosts exist in each stub network. The entire IPv6 PIM domain is operating in the dense mode.

·          Host A and Host C are multicast receivers in two stub networks N1 and N2.

·          MLDv1 runs between Switch A and N1, and between Switch B, Switch C, and N2.

Figure 16 Network diagram

 

Table 2 Interface and IPv6 address assignment

Device

Interface

IPv6 address

Device

Interface

IPv6 address

Switch A

Vlan-int100

1001::1/64

Switch D

Vlan-int300

4001::1/64

Switch A

Vlan-int103

1002::1/64

Switch D

Vlan-int103

1002::2/64

Switch B

Vlan-int200

2001::1/64

Switch D

Vlan-int101

2002::2/64

Switch B

Vlan-int101

2002::1/64

Switch D

Vlan-int102

3001::2/64

Switch C

Vlan-int200

2001::2/64

Switch D

Vlan-int300

4001::1/64

Switch C

Vlan-int102

3001::1/64

Switch D

Vlan-int103

1002::2/64

 

Procedure

1.        Assign an IPv6 address and prefix length to each interface, as shown in Figure 16. (Details not shown.)

2.        Configure OSPFv3 on the switches in the IPv6 PIM-DM domain. (Details not shown.)

3.        Enable IPv6 multicast routing, MLD, and IPv6 PIM-DM:

# On Switch A, enable IPv6 multicast routing.

<SwitchA> system-view

[SwitchA] ipv6 multicast routing

[SwitchA-mrib6] quit

# Enable MLD on VLAN-interface 100 (the interface that is connected to the stub network).

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] mld enable

[SwitchA-Vlan-interface100] quit

# Enable IPv6 PIM-DM on VLAN-interface 103.

[SwitchA] interface vlan-interface 103

[SwitchA-Vlan-interface103] ipv6 pim dm

[SwitchA-Vlan-interface103] quit

# Enable IPv6 multicast routing, MLD, and IPv6 PIM-DM on Switch B and Switch C in the same way Switch A is configured. (Details not shown.)

# On Switch D, enable IPv6 multicast routing, and enable IPv6 PIM-DM on each interface.

<SwitchD> system-view

[SwitchD] ipv6 multicast routing

[SwitchD-mrib6] quit

[SwitchD] interface vlan-interface 300

[SwitchD-Vlan-interface300] ipv6 pim dm

[SwitchD-Vlan-interface300] quit

[SwitchD] interface vlan-interface 103

[SwitchD-Vlan-interface103] ipv6 pim dm

[SwitchD-Vlan-interface103] quit

[SwitchD] interface vlan-interface 101

[SwitchD-Vlan-interface101] ipv6 pim dm

[SwitchD-Vlan-interface101] quit

[SwitchD] interface vlan-interface 102

[SwitchD-Vlan-interface102] ipv6 pim dm

[SwitchD-Vlan-interface102] quit

Verifying the configuration

# Display IPv6 PIM information on Switch D.

[SwitchD] display ipv6 pim interface

 Interface          NbrCnt HelloInt   DR-Pri     DR-Address

 Vlan300            0      30         1          FE80::A01:201:1

                                                 (local)

 Vlan103            0      30         1          FE80::A01:201:2

                                                 (local)

 Vlan101            1      30         1          FE80::A01:201:3

                                                 (local)

 Vlan102            1      30         1          FE80::A01:201:4

                                                 (local)

# Display IPv6 PIM neighboring relationship on Switch D.

[SwitchD] display ipv6 pim neighbor

 Total Number of Neighbors = 3

 

 Neighbor        Interface           Uptime   Expires  Dr-Priority

 FE80::A01:101:1 Vlan103             00:04:00 00:01:29 1

 FE80::B01:102:2 Vlan101             00:04:16 00:01:29 3

 FE80::C01:103:3 Vlan102             00:03:54 00:01:17 5

# Send an MLD report from Host A to join IPv6 multicast group FF0E::101. (Details not shown.)

# Send IPv6 multicast data from IPv6 multicast source 4001::100/64 to IPv6 multicast group FF0E::101. (Details not shown.)

# Display IPv6 PIM multicast routing table information on Switch A.

[SwitchA] display ipv6 pim routing-table

 Total 1 (*, G) entry; 1 (S, G) entry

 

 (*, FF0E::101)

     Protocol: pim-dm, Flag: WC

     UpTime: 00:01:24

     Upstream interface: NULL

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface100

             Protocol: mld, UpTime: 00:01:20, Expires: -

 

 (4001::100, FF0E::101)

     Protocol: pim-dm, Flag: ACT

     UpTime: 00:01:20

     Upstream interface: Vlan-interface103

         Upstream neighbor: 1002::2

         RPF prime neighbor: 1002::2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface100

             Protocol: pim-dm, UpTime: 00:01:20, Expires: -

# Display IPv6 PIM multicast routing table information on Switch D.

[SwitchD] display ipv6 pim routing-table

 Total 0 (*, G) entry; 1 (S, G) entry

 

 (4001::100, FF0E::101)

     Protocol: pim-dm, Flag: LOC ACT

     UpTime: 00:02:19

     Upstream interface: Vlan-interface300

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 2

         1: Vlan-interface103

             Protocol: pim-dm, UpTime: 00:02:19, Expires: -

         2: Vlan-interface102

             Protocol: pim-dm, UpTime: 00:02:19, Expires: -

The output shows the following information:

·          Switches on the SPT path (Switch A and Switch D) have the correct (S, G) entries.

·          Switch A has a correct (*, G) entry.

Example: Configuring non-scoped IPv6 PIM-SM

Network configuration

As shown in Figure 17:

·          OSPFv3 runs on the network.

·          VOD streams are sent to receiver hosts in multicast. The receivers of different subnets form stub networks, and a minimum of one receiver host exist in each stub network. The entire IPv6 PIM-SM domain contains only one BSR.

·          Host A and Host C are multicast receivers in the stub networks N1 and N2.

·          Specify VLAN-interface 102 on Switch E as a C-BSR and a C-RP. The C-RP is designated to the IPv6 multicast group range FF0E::101/64. Specify VLAN-interface101 of Switch D as the static RP on all the switches to back up the dynamic RP.

·          MLDv1 runs between Switch A and N1, and between Switch B, Switch C, and N2.

Figure 17 Network diagram

 

Table 3 Interface and IPv6 address assignment

Device

Interface

IPv6 address

Device

Interface

IPv6 address

Switch A

Vlan-int100

1001::1/64

Switch D

Vlan-int300

4001::1/64

Switch A

Vlan-int101

1002::1/64

Switch D

Vlan-int101

1002::2/64

Switch A

Vlan-int102

1003::1/64

Switch D

Vlan-int105

4002::1/64

Switch B

Vlan-int200

2001::1/64

Switch E

Vlan-int104

3001::2/64

Switch B

Vlan-int103

2002::1/64

Switch E

Vlan-int103

2002::2/64

Switch C

Vlan-int200

2001::2/64

Switch E

Vlan-int102

1003::2/64

Switch C

Vlan-int104

3001::1/64

Switch E

Vlan-int105

4002::2/64

 

Procedure

1.        Assign an IPv6 address and prefix length to each interface, as shown in Figure 17. (Details not shown.)

2.        Configure OSPFv3 on all switches in the IPv6 PIM-SM domain. (Details not shown.)

3.        Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM:

# On Switch A, enable IPv6 multicast routing.

<SwitchA> system-view

[SwitchA] ipv6 multicast routing

[SwitchA-mrib6] quit

# Enable MLD on VLAN-interface 100 (the interface that is connected to the stub network).

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] mld enable

[SwitchA-Vlan-interface100] quit

# Enable IPv6 PIM-SM on other interfaces.

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 pim sm

[SwitchA-Vlan-interface101] quit

[SwitchA] interface vlan-interface 102

[SwitchA-Vlan-interface102] ipv6 pim sm

[SwitchA-Vlan-interface102] quit

# Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM on Switch B and Switch C in the same way Switch A is configured. (Details not shown.)

# Enable IPv6 multicast routing and IPv6 PIM-SM on Switch D and Switch E in the same way Switch A is configured. (Details not shown.)

4.        Configure C-BSRs, C-RPs, and static RPs:

# On Switch E, configure the service scope of RP advertisements.

<SwitchE> system-view

[SwitchE] acl ipv6 basic 2005

[SwitchE-acl-ipv6-basic-2005] rule permit source ff0e::101 64

[SwitchE-acl-ipv6-basic-2005] quit

# Configure VLAN-interface 102 as a C-BSR and a C-RP, and configure VLAN-interface 101 of Switch D as the static RP.

[SwitchE] ipv6 pim

[SwitchE-pim6] c-bsr 1003::2

[SwitchE-pim6] c-rp 1003::2 group-policy 2005

[SwitchE-pim6] static-rp 1002::2

[SwitchE-pim6] quit

# On Switch A, configure VLAN-interface 101 of Switch D as a static RP.

[SwitchA] ipv6 pim

[SwitchA-pim6] static-rp 1002::2

[SwitchA-pim6] quit

# Configure a static RP on Switch B, Switch C, and Switch D in the same way Switch A is configured. (Details not shown.)

Verifying the configuration

# Display IPv6 PIM information on Switch A.

[SwitchA] display ipv6 pim interface

 Interface            NbrCnt HelloInt   DR-Pri    DR-Address

 Vlan101              1      30         1         FE80::A01:201:2

 Vlan102              1      30         1         FE80::A01:201:3

# Display BSR information on Switch A.

[SwitchA] display ipv6 pim bsr-info

 Scope: non-scoped

     State: Accept Preferred

     Bootstrap timer: 00:01:44

     Elected BSR address: 1003::2

       Priority: 64

       Hash mask length: 126

       Uptime: 00:11:18

# Display BSR information on Switch E.

[SwitchE] display ipv6 pim bsr-info

 Scope: non-scoped

     State: Elected

     Bootstrap timer: 00:01:44

     Elected BSR address: 1003::2

       Priority: 64

       Hash mask length: 126

       Uptime: 00:11:18

     Candidate BSR address: 1003::2

       Priority: 64

       Hash mask length: 126

# Display RP information on Switch A.

[SwitchA] display ipv6 pim rp-info

 BSR RP information:

   Scope: non-scoped

     Group/MaskLen: FF0E::101/64

       RP address               Priority  HoldTime  Uptime    Expires

       1003::2                  192       180       00:05:19  00:02:11

 

Static RP information:

       RP address               ACL   Mode    Preferred

       1002::2                  ----  pim-sm  No

Example: Configuring admin-scoped IPv6 PIM-SM

Network configuration

As shown in Figure 18:

·          OSPFv3 runs on the network.

·          VOD streams are sent to receiver hosts in multicast. The entire IPv6 PIM-SM domain is divided into IPv6 admin-scoped zone 1, IPv6 admin-scoped zone 2, and the IPv6 global-scoped zone. Switch B, Switch C, and Switch D are ZBRs of the three zones, respectively.

·          Source 1 and Source 2 send different IPv6 multicast data to the IPv6 multicast group FF14::101. Host A receives the IPv6 multicast data only from Source 1, and Host B receives the IPv6 multicast data only from Source 2. Source 3 sends IPv6 multicast data to the IPv6 multicast group FF1E::202. Host C is an IPv6 multicast receiver for the IPv6 multicast group FF1E::202.

·          VLAN-interface 101 of Switch B acts as a C-BSR and a C-RP for IPv6 admin-scoped zone 1, and VLAN-interface 105 of Switch D acts as a C-BSR and a C-RP for IPv6 admin-scoped zone 2. Both of the two interfaces are designated to the IPv6 multicast groups with the scope field value of 4. VLAN-interface 109 of Switch F acts as a C-BSR and a C-RP for the IPv6 global-scoped zone, and it is designated to the IPv6 multicast groups with the scope field value of 14.

·          MLDv1 runs between Switch A, Switch E, Switch I, and the receivers that directly connect to them, respectively.

Figure 18 Network diagram

 

Table 4 Interface and IPv6 address assignment

Device

Interface

IPv6 address

Device

Interface

IPv6 address

Switch A

Vlan-int100

1001::1/64

Switch E

Vlan-int104

3002::2/64

Switch A

Vlan-int101

1002::1/64

Switch E

Vlan-int108

6001::2/64

Switch B

Vlan-int200

2001::1/64

Switch F

Vlan-int109

8001::1/64

Switch B

Vlan-int101

1002::2/64

Switch F

Vlan-int107

6002::2/64

Switch B

Vlan-int103

2002::1/64

Switch F

Vlan-int102

2003::2/64

Switch B

Vlan-int102

2003::1/64

Switch G

Vlan-int500

9001::1/64

Switch C

Vlan-int300

3001::1/64

Switch G

Vlan-int109

8001::2/64

Switch C

Vlan-int104

3002::1/64

Switch H

Vlan-int110

4001::1/64

Switch C

Vlan-int105

3003::1/64

Switch H

Vlan-int106

3004::2/64

Switch C

Vlan-int103

2002::2/64

Switch I

Vlan-int600

5001::1/64

Switch C

Vlan-int106

3004::1/64

Switch I

Vlan-int110

4001::2/64

Switch D

Vlan-int105

3003::2/64

Source 1

2001::100/64

Switch D

Vlan-int108

6001::1/64

Source 2

3001::100/64

Switch D

Vlan-int107

6002::1/64

Source 3

9001::100/64

Switch E

Vlan-int400

7001::1/64

 

 

 

 

Procedure

1.        Assign an IPv6 address and prefix length to each interface, as shown in Figure 18. (Details not shown.)

2.        Configure OSPFv3 on all switches in the IPv6 PIM-SM domain. (Details not shown.)

3.        Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM:

# On Switch A, enable IPv6 multicast routing.

<SwitchA> system-view

[SwitchA] ipv6 multicast routing

[SwitchA-mrib6] quit

# Enable MLD on the receiver-side interface (VLAN-interface 100).

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] mld enable

[SwitchA-Vlan-interface100] quit

# Enable IPv6 PIM-SM on VLAN-interface 101.

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 pim sm

[SwitchA-Vlan-interface101] quit

# Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM on Switch E and Switch I in the same way Switch A is configured. (Details not shown.)

# On Switch B, enable IPv6 multicast routing, and enable IPv6 PIM-SM on each interface.

<SwitchB> system-view

[SwitchB] ipv6 multicast routing

[SwitchB-mrib6] quit

[SwitchB] interface vlan-interface 200

[SwitchB-Vlan-interface200] ipv6 pim sm

[SwitchB-Vlan-interface200] quit

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 pim sm

[SwitchB-Vlan-interface101] quit

[SwitchB] interface vlan-interface 102

[SwitchB-Vlan-interface102] ipv6 pim sm

[SwitchB-Vlan-interface102] quit

[SwitchB] interface vlan-interface 103

[SwitchB-Vlan-interface103] ipv6 pim sm

[SwitchB-Vlan-interface103] quit

# Enable IPv6 multicast routing and IPv6 PIM-SM on Switch C, Switch D, Switch F, Switch G, and Switch H in the same way Switch B is configured. (Details not shown.)

4.        Configure IPv6 admin-scoped zone boundaries:

# On Switch B, configure VLAN-interface 102 and VLAN-interface 103 as the boundaries of IPv6 admin-scoped zone 1.

[SwitchB] interface vlan-interface 102

[SwitchB-Vlan-interface102] ipv6 multicast boundary scope 4

[SwitchB-Vlan-interface102] quit

[SwitchB] interface vlan-interface 103

[SwitchB-Vlan-interface103] ipv6 multicast boundary scope 4

[SwitchB-Vlan-interface103] quit

# On Switch C, configure VLAN-interface 103 and VLAN-interface 106 as the boundaries of IPv6 admin-scoped zone 2.

<SwitchC> system-view

[SwitchC] interface vlan-interface 103

[SwitchC-Vlan-interface103] ipv6 multicast boundary scope 4

[SwitchC-Vlan-interface103] quit

[SwitchC] interface vlan-interface 106

[SwitchC-Vlan-interface106] ipv6 multicast boundary scope 4

[SwitchC-Vlan-interface106] quit

# On Switch D, configure VLAN-interface 107 as the boundary of IPv6 admin-scoped zone 2.

<SwitchD> system-view

[SwitchD] interface vlan-interface 107

[SwitchD-Vlan-interface107] ipv6 multicast boundary scope 4

[SwitchD-Vlan-interface107] quit

5.        Configure C-BSRs and C-RPs:

# On Switch B, configure VLAN-interface 101 as a C-BSR and a C-RP for IPv6 admin-scoped zone 1.

[SwitchB] ipv6 pim

[SwitchB-pim6] c-bsr 1002::2 scope 4

[SwitchB-pim6] c-rp 1002::2 scope 4

[SwitchB-pim6] quit

# On Switch D, configure VLAN-interface 105 as a C-BSR and a C-RP for IPv6 admin-scoped zone 2.

[SwitchD] ipv6 pim

[SwitchD-pim6] c-bsr 3003::2 scope 4

[SwitchD-pim6] c-rp 3003::2 scope 4

[SwitchD-pim6] quit

# On Switch F, configure VLAN-interface 109 as a C-BSR and a C-RP for the IPv6 global-scoped zone.

<SwitchF> system-view

[SwitchF] ipv6 pim

[SwitchF-pim6] c-bsr 8001::1

[SwitchF-pim6] c-rp 8001::1

[SwitchF-pim6] quit

Verifying the configuration

# Display BSR information on Switch B.

[SwitchB] display ipv6 pim bsr-info

 Scope: non-scoped

     State: Accept Preferred

     Bootstrap timer: 00:01:25

     Elected BSR address: 8001::1

       Priority: 64

       Hash mask length: 126

       Uptime: 00:01:45

 

 Scope: 4

     State: Elected

     Bootstrap timer: 00:00:06

     Elected BSR address: 1002::2

       Priority: 64

       Hash mask length: 126

       Uptime: 00:04:54

     Candidate BSR address: 1002::2

       Priority: 64

       Hash mask length: 126

# Display BSR information on Switch D.

[SwitchD] display ipv6 pim bsr-info

 Scope: non-scoped

     State: Accept Preferred

     Bootstrap timer: 00:01:25

     Elected BSR address: 8001::1

       Priority: 64

       Hash mask length: 126

       Uptime: 00:01:45

 

 Scope: 4

     State: Elected

     Bootstrap timer: 00:01:25

     Elected BSR address: 3003::2

       Priority: 64

       Hash mask length: 126

       Uptime: 00:01:45

     Candidate BSR address: 3003::2

       Priority: 64

       Hash mask length: 126

# Display BSR information on Switch F.

[SwitchF] display ipv6 pim bsr-info

 Scope: non-scoped

     State: Elected

     Bootstrap timer: 00:00:49

     Elected BSR address: 8001::1

       Priority: 64

       Hash mask length: 126

       Uptime: 00:01:11

     Candidate BSR address: 8001::1

       Priority: 64

       Hash mask length: 126

# Display RP information on Switch B.

[SwitchB] display ipv6 pim rp-info

 BSR RP information:

 Scope: non-scoped

     Group/MaskLen: FF00::/8

       RP address               Priority  HoldTime  Uptime    Expires

       8001::1                  192       180       00:01:14  00:02:46

   Scope: 4

     Group/MaskLen: FF04::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF14::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF24::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF34::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF44::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF54::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF64::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF74::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF84::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF94::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFA4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFB4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFC4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFD4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFE4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FFF4::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

     Group/MaskLen: FF04::/16

       RP address               Priority  HoldTime  Uptime    Expires

       1002::2 (local)          192       180       00:02:03  00:02:56

# Display RP information on Switch F.

[SwitchF] display ipv6 pim rp-info

 BSR RP information:

   Scope: non-scoped

     Group/MaskLen: FF00::/8

       RP address               Priority  HoldTime  Uptime    Expires

       8001::1 (local)          192       180       00:10:28  00:02:31

Example: Configuring IPv6 BIDIR-PIM

Network configuration

As shown in Figure 19:

·          OSPFv3 runs on the network.

·          VOD streams are sent to receiver hosts in IPv6 multicast.

·          Source 1 and Source 2 send IPv6 multicast data to IPv6 multicast group FF14::101.

·          Host A and Host B are receivers of this IPv6 multicast group.

·          VLAN-interface 102 of Switch C acts as a C-BSR. Loopback 0 of Router C acts as the C-RP.

·          MLDv1 runs between Switch B and Host A, and between Switch D and Host B.

Figure 19 Network diagram

 

Table 5 Interface and IPv6 address assignment

Device

Interface

IPv6 address

Device

Interface

IPv6 address

Switch A

Vlan-int100

1001::1/64

Switch D

Vlan-int300

4001::1/64

Switch A

Vlan-int101

1002::1/64

Switch D

Vlan-int400

5001::1/64

Switch B

Vlan-int200

2001::1/64

Switch D

Vlan-int103

3001::2/64

Switch B

Vlan-int101

1002::2/64

Source 1

1001::2/64

Switch B

Vlan-int102

2002::1/64

Source 2

5001::2/64

Switch C

Vlan-int102

2002::2/64

Receiver 1

2001::2/64

Switch C

Vlan-int103

3001::1/64

Receiver 2

4001::2/64

Switch C

Loop0

6001::1/128

 

 

 

 

Procedure

1.        Assign an IPv6 address and prefix length to each interface, as shown in Figure 19. (Details not shown.)

2.        Configure OSPFv3 on the switches in the IPv6 BIDIR-PIM domain. (Details not shown.)

3.        Enable IPv6 multicast routing, IPv6 PIM-SM, IPv6 BIDIR-PIM, and MLD:

# On Switch A, enable IPv6 multicast routing, enable IPv6 PIM-SM on each interface, and enable IPv6 BIDIR-PIM.

<SwitchA> system-view

[SwitchA] ipv6 multicast routing

[SwitchA-mrib6] quit

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ipv6 pim sm

[SwitchA-Vlan-interface100] quit

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 pim sm

[SwitchA-Vlan-interface101] quit

[SwitchA] ipv6 pim

[SwitchA-pim6] bidir-pim enable

[SwitchA-pim6] quit

# On Switch B, enable IPv6 multicast routing.

<SwitchB> system-view

[SwitchB] ipv6 multicast routing

[SwitchB-mrib6] quit

# Enable MLD on the receiver-side interface (VLAN-interface 200).

[SwitchB] interface vlan-interface 200

[SwitchB-Vlan-interface200] mld enable

[SwitchB-Vlan-interface200] quit

# Enable IPv6 PIM-SM on the other interfaces.

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 pim sm

[SwitchB-Vlan-interface101] quit

[SwitchB] interface vlan-interface 102

[SwitchB-Vlan-interface102] ipv6 pim sm

[SwitchB-Vlan-interface102] quit

# Enable IPv6 BIDIR-PIM.

[SwitchB] ipv6 pim

[SwitchB-pim6] bidir-pim enable

[SwitchB-pim6] quit

# On Switch C, enable IPv6 multicast routing, enable IPv6 PIM-SM on each interface, and enable IPv6 BIDIR-PIM.

<SwitchC> system-view

[SwitchC] ipv6 multicast routing

[SwitchC-mrib6] quit

[SwitchC] interface vlan-interface 102

[SwitchC-Vlan-interface102] ipv6 pim sm

[SwitchC-Vlan-interface102] quit

[SwitchC] interface vlan-interface 103

[SwitchC-Vlan-interface103] ipv6 pim sm

[SwitchC-Vlan-interface103] quit

[SwitchC] interface loopback 0

[SwitchC-LoopBack0] ipv6 pim sm

[SwitchC-LoopBack0] quit

[SwitchC] ipv6 pim

[SwitchC-pim6] bidir-pim enable

# On Switch D, enable IPv6 multicast routing.

<SwitchD> system-view

[SwitchD] ipv6 multicast routing

[SwitchD-mrib6] quit

# Enable MLD on the receiver-side interface (VLAN-interface 300).

[SwitchD] interface vlan-interface 300

[SwitchD-Vlan-interface300] mld enable

[SwitchD-Vlan-interface300] quit

# Enable IPv6 PIM-SM on the other interfaces.

[SwitchD] interface vlan-interface 400

[SwitchD-Vlan-interface400] ipv6 pim sm

[SwitchD-Vlan-interface400] quit

# Enable IPv6 BIDIR-PIM.

[SwitchD] interface vlan-interface 103

[SwitchD-Vlan-interface103] ipv6 pim sm

[SwitchD-Vlan-interface103] quit

[SwitchD] ipv6 pim

[SwitchD-pim6] bidir-pim enable

[SwitchD-pim6] quit

4.        On Switch C, configure VLAN interface 102 as a C-BSR, and loopback interface 0 as a C-RP for the entire IPv6 BIDIR-PIM domain.

[SwitchC-pim6] c-bsr 2002::2

[SwitchC-pim6] c-rp 6001::1 bidir

[SwitchC-pim6] quit

Verifying the configuration

1.        Display IPv6 BIDIR-PIM DF information:

# Display IPv6 BIDIR-PIM DF information on Switch A.

[SwitchA] display ipv6 pim df-info

RP address: 6001::1

  Interface: Vlan-interface100

    State     : Win        DF preference: 100

    DF metric : 2          DF uptime    : 01:08:50

    DF address: FE80::200:5EFF:FE71:2800 (local)

  Interface: Vlan-interface101

    State     : Lose       DF preference: 100

    DF metric : 1          DF uptime    : 01:07:49

    DF address: FE80::20F:E2FF:FE38:4E01

# Display IPv6 BIDIR-PIM DF information on Switch B.

[SwitchB] display ipv6 pim df-info

RP address: 6001::1

  Interface:Vlan-interface200

    State     : Win        DF preference: 100

    DF metric : 1          DF uptime    : 01:24:09

    DF address: FE80::200:5EFF:FE71:2801 (local)

  Interface: Vlan-interface101

    State     : Win        DF preference: 100

    DF metric : 1          DF uptime    : 01:24:09

    DF address: FE80::20F:E2FF:FE38:4E01 (local)

  Interface: Vlan-interface102

    State     : Lose       DF preference: 0

    DF metric : 0          DF uptime    : 01:23:12

    DF address: FE80::20F:E2FF:FE15:5601

# Display IPv6 BIDIR-PIM DF information on Switch C.

[SwitchC] display ipv6 pim df-info

RP address: 6001::1

  Interface: Loop0

    State     : -          DF preference: -

    DF metric : -          DF uptime    : -

    DF address: -

  Interface: Vlan-interface102

    State     : Win        DF preference: 0

    DF metric : 0          DF uptime    : 01:06:07

    DF address: FE80::20F:E2FF:FE15:5601 (local)

  Interface: Vlan-interface103

    State     : Win        DF preference: 0

    DF metric : 0          DF uptime    : 01:06:07

    DF address: FE80::20F:E2FF:FE15:5602 (local)

# Display IPv6 BIDIR-PIM DF information on Switch D.

[SwitchD] display ipv6 pim df-info

RP address: 6001::1

  Interface: Vlan-interface300

    State     : Win        DF preference: 100

    DF metric : 1          DF uptime    : 01:19:53

    DF address: FE80::200:5EFF:FE71:2803 (local)

  Interface: Vlan-interface400

    State     : Win        DF preference: 100

    DF metric : 1          DF uptime    : 00:39:34

    DF address: FE80::200:5EFF:FE71:2802 (local)

  Interface: Vlan-interface103

    State     : Lose       DF preference: 0

    DF metric : 0          DF uptime    : 01:21:40

    DF address: FE80::20F:E2FF:FE15:5602

2.        Display information about DFs for IPv6 multicast forwarding:

# Display information about DFs for IPv6 multicast forwarding on Switch A.

[SwitchA] display ipv6 multicast forwarding df-info

Total 1 RP, 1 matched

 

00001. RP address: 6001::1

     Flags: 0x0

     Uptime: 00:08:32

     RPF interface: Vlan-interface101

     List of 1 DF interfaces:

       1: Vlan-interface100

# Display information about DFs for IPv6 multicast forwarding on Switch B.

[SwitchB] display ipv6 multicast forwarding df-info

Total 1 RP, 1 matched

 

00001. RP address: 6001::1

     Flags: 0x0

     Uptime: 00:06:24

     RPF interface: Vlan-interface102

     List of 2 DF interfaces:

       1: Vlan-interface101

       2: Vlan-interface200

# Display information about DFs for IPv6 multicast forwarding on Switch C.

[SwitchC] display ipv6 multicast forwarding df-info

Total 1 RP, 1 matched

 

00001. RP address: 6001::1

     Flags: 0x0

     Uptime: 00:07:21

     RPF interface: LoopBack0

     List of 2 DF interfaces:

       1: Vlan-interface102

       2: Vlan-interface103

# Display information about DFs for IPv6 multicast forwarding on Switch D.

[SwitchD] display ipv6 multicast forwarding df-info

Total 1 RP, 1 matched

 

00001. RP address: 6001::1

     Flags: 0x0

     Uptime: 00:05:12

     RPF interface: Vlan-interface103

     List of 2 DF interfaces:

       1: Vlan-interface300

       2: Vlan-interface400

Example: Configuring IPv6 PIM-SSM

Network configuration

As shown in Figure 20:

·          OSPFv3 runs on the network.

·          Receivers receive VOD information through multicast. The receiver groups of different organizations form stub networks, and one or more receiver hosts exist in each stub network. The entire IPv6 PIM domain operates in the SSM mode.

·          Host A and Host C are IPv6 multicast receivers on two stub networks N1 and N2.

·          The SSM group range is FF3E::/64.

·          MLDv2 runs between Switch A and N1, and between Switch B, Switch C, and N2.

Figure 20 Network diagram

 

Table 6 Interface and IPv6 address assignment

Device

Interface

IPv6 address

Device

Interface

IPv6 address

Switch A

Vlan-int100

1001::1/64

Switch D

Vlan-int300

4001::1/64

Switch A

Vlan-int101

1002::1/64

Switch D

Vlan-int101

1002::2/64

Switch A

Vlan-int102

1003::1/64

Switch D

Vlan-int105

4002::1/64

Switch B

Vlan-int200

2001::1/64

Switch E

Vlan-int104

3001::2/64

Switch B

Vlan-int103

2002::1/64

Switch E

Vlan-int103

2002::2/64

Switch C

Vlan-int200

2001::2/64

Switch E

Vlan-int102

1003::2/64

Switch C

Vlan-int104

3001::1/64

Switch E

Vlan-int105

4002::2/64

 

Procedure

1.        Assign an IPv6 address and prefix length to each interface, as shown in Figure 20. (Details not shown.)

2.        Configure OSPFv3 on the switches in the IPv6 PIM-SSM domain. (Details not shown.)

3.        Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM:

# On Switch A, enable IPv6 multicast routing.

<SwitchA> system-view

[SwitchA] ipv6 multicast routing

[SwitchA-mrib6] quit

# Enable MLDv2 on VLAN-interface 100 (the interface that connects to the stub network).

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] mld enable

[SwitchA-Vlan-interface100] mld version 2

[SwitchA-Vlan-interface100] quit

# Enable IPv6 PIM-SM on the other interfaces.

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 pim sm

[SwitchA-Vlan-interface101] quit

[SwitchA] interface vlan-interface 102

[SwitchA-Vlan-interface102] ipv6 pim sm

[SwitchA-Vlan-interface102] quit

# Enable IPv6 multicast routing, MLD, and IPv6 PIM-SM on Switch B and Switch C in the same way Switch A is configured. (Details not shown.)

# Enable IPv6 multicast routing and IPv6 PIM-SM on Switch D and Switch E in the same way Switch A is configured. (Details not shown.)

4.        Configure the IPv6 SSM group range FF3E::/64 on Switch A.

[SwitchA] acl ipv6 basic 2000

[SwitchA-acl-ipv6-basic-2000] rule permit source ff3e:: 64

[SwitchA-acl-ipv6-basic-2000] quit

[SwitchA] ipv6 pim

[SwitchA-pim6] ssm-policy 2000

[SwitchA-pim6] quit

5.        Configure the IPv6 SSM group range on Switch B, Switch C, Switch D, and Switch E in the same way Switch B is configured. (Details not shown.)

Verifying the configuration

# Display IPv6 PIM information on Switch A.

[SwitchA] display ipv6 pim interface

 Interface             NbrCnt HelloInt   DR-Pri   DR-Address

 Vlan101               1      30         1        FE80::A01:201:2

 Vlan102               1      30         1        FE80::A01:201:3

# Send an MLDv2 report from Host A to join the IPv6 multicast source and group (4001::100/64, FF3E::101). (Details not shown.)

# Display IPv6 PIM multicast routing table information on Switch A.

[SwitchA] display ipv6 pim routing-table

 Total 0 (*, G) entry; 1 (S, G) entry

 

 (4001::100, FF3E::101)

     Protocol: pim-ssm, Flag: ACT

     UpTime: 00:00:11

     Upstream interface: Vlan-interface101

         Upstream neighbor: 1002::2

         RPF prime neighbor: 1002::2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface100

             Protocol: mld, UpTime: 00:00:11, Expires: 00:03:25

# Display IPv6 PIM multicast routing table information on Switch B.

[SwitchD] display ipv6 pim routing-table

 Total 0 (*, G) entry; 1 (S, G) entry 

 

 (4001::100, FF3E::101)

     Protocol: pim-ssm, Flag: LOC

     UpTime: 00:08:02

     Upstream interface: Vlan-interface300

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface105

             Protocol: pim-ssm, UpTime: 00:08:02, Expires: 00:03:25

The output shows that switches on the SPT path (Switch A and Switch D) have generated the correct (S, G) entries.

Troubleshooting IPv6 PIM

A multicast distribution tree cannot be correctly built

Symptom

No IPv6 multicast forwarding entries are established on the devices (including devices directly connected with multicast sources or receivers) in an IPv6 PIM network. This means that an IPv6 multicast distribution tree cannot be correctly built.

Solution

To resolve the problem:

1.        Use display ipv6 routing-table to verify that an IPv6 unicast route to the IPv6 multicast source or the RP is available.

2.        Use display ipv6 pim interface to verify IPv6 PIM information on each interface, especially on the RPF interface. If IPv6 PIM is not enabled on the interfaces, use ipv6 pim dm or ipv6 pim sm to enable IPv6 PIM-DM or IPv6 PIM-SM for the interfaces.

3.        Use display ipv6 pim neighbor to verify that the RPF neighbor is an IPv6 PIM neighbor.

4.        Verify that IPv6 PIM and MLD are enabled on the interfaces that directly connect to the IPv6 multicast sources or the receivers.

5.        Use display ipv6 pim interface verbose to verify that the same IPv6 PIM mode is enabled on the RPF interface on a device and the connected interface of the device's RPF neighbor.

6.        Use display current-configuration to verify that the same IPv6 PIM mode is enabled on all devices on the network. For IPv6 PIM-SM, verify that the BSR and C-RPs are correctly configured.

7.        If the problem persists, contact H3C Support.

IPv6 multicast data is abnormally terminated on an intermediate device

Symptom

An intermediate device can receive IPv6 multicast data successfully, but the data cannot reach the last-hop device. An interface on the intermediate device receives IPv6 multicast data but does not create an (S, G) entry in the IPv6 PIM routing table.

Solution

To resolve the problem:

1.        Use display current-configuration to verify the IPv6 multicast forwarding boundary settings. Use ipv6 multicast boundary to change the multicast forwarding boundary settings to make the IPv6 multicast packet able to cross the boundary.

2.        Use display current-configuration to verify the IPv6 multicast source policy. Change the ACL rule defined in the source-policy command so that the source/group address of the IPv6 multicast data can pass ACL filtering.

3.        If the problem persists, contact H3C Support.

An RP cannot join an SPT in IPv6 PIM-SM

Symptom

An RPT cannot be correctly built, or an RP cannot join the SPT toward the IPv6 multicast source.

Solution

To resolve the problem:

1.        Use display ipv6 routing-table to verify that an IPv6 unicast route to the RP is available on each device.

2.        Use display ipv6 pim rp-info to verify that the dynamic RP information is consistent on all devices.

3.        Use display ipv6 pim rp-info to verify that the same static RPs are configured on all devices on the network.

4.        If the problem persists, contact H3C Support.

An RPT cannot be built or IPv6 multicast source registration fails in IPv6 PIM-SM

Symptom

The C-RPs cannot unicast advertisement messages to the BSR. The BSR does not advertise BSMs containing C-RP information and has no IPv6 unicast route to any C-RP. An RPT cannot be correctly established, or the source-side DR cannot register the IPv6 multicast source with the RP.

Solution

To resolve the problem:

1.        Use display ipv6 routing-table on each device to view routing table information. Verify that IPv6 unicast routes to the C-RPs and the BSR are available on each device and that a route is available between each C-RP and the BSR.

2.        Use display ipv6 pim bsr-info to verify that the BSR information exists on each device.

3.        Use display ipv6 pim rp-info to verify that the RP information is correct on each device.

4.        Use display ipv6 pim neighbor to verify that IPv6 PIM neighboring relationship has been correctly established among the devices.

5.        If the problem persists, contact H3C Support.