07-IP Multicast Configuration Guide

HomeSupportRoutersH3C SR8800 Router SeriesConfigure & DeployConfiguration GuidesH3C SR8800 Configuration Guide-Release3347-6W10307-IP Multicast Configuration Guide
07-PIM Configuration
Title Size Download
07-PIM Configuration 1.01 MB

Contents

Configuring PIM··· 1

PIM overview·· 1

PIM-DM overview·· 1

PIM-SM overview·· 4

BIDIR-PIM overview·· 10

Administrative scoping overview·· 13

PIM-SSM overview·· 15

Relationships among PIM protocols 17

Multi-instance PIM··· 17

Protocols and standards 17

Configuring PIM-DM··· 18

PIM-DM configuration task list 18

Configuration prerequisites 18

Enabling PIM-DM··· 18

Enabling state-refresh capability· 19

Configuring state-refresh parameters 20

Configuring PIM-DM graft retry period· 20

Configuring PIM-SM··· 21

PIM-SM configuration task list 21

Configuration prerequisites 21

Enabling PIM-SM··· 22

Configuring an RP· 23

Configuring a BSR· 25

Configuring administrative scoping· 29

Configuring multicast source registration· 31

Configuring SPT switchover 32

Configuring BIDIR-PIM··· 32

BIDIR-PIM configuration task list 32

Configuration prerequisites 33

Enabling PIM-SM··· 33

Enabling BIDIR-PIM··· 34

Configuring an RP· 35

Configuring a BSR· 37

Configuring administrative scoping· 41

Configuring PIM-SSM··· 42

PIM-SSM configuration task list 43

Configuration prerequisites 43

Enabling PIM-SM··· 43

Configuring the SSM group range· 44

Configuring PIM common features 44

PIM common feature configuration task list 45

Configuration prerequisites 45

Configuring a multicast data filter 46

Configuring a hello message filter 46

Configuring PIM hello options 47

Configuring the prune delay· 48

Configuring PIM common timers 49

Configuring join/prune message sizes 50

Configuring PIM to work with BFD·· 50

Displaying and maintaining PIM··· 51

PIM configuration examples 52

PIM-DM configuration example· 52

PIM-SM non-scoped zone configuration example· 56

PIM-SM admin-scope zone configuration example· 61

BIDIR-PIM configuration example· 67

PIM-SSM configuration example· 72

Troubleshooting PIM··· 75

A multicast distribution tree cannot be built correctly· 75

Multicast data is abnormally terminated on an intermediate router 76

RPs cannot join the SPT in PIM-SM··· 77

An RPT cannot be established or a source cannot register in PIM-SM··· 77

 


PIM overview

Protocol Independent Multicast (PIM) provides IP multicast forwarding by leveraging unicast static routes or unicast routing tables generated by any unicast routing protocol, such as routing information protocol (RIP), open shortest path first (OSPF), intermediate system to intermediate system (IS-IS), or border gateway protocol (BGP). Independent of the unicast routing protocols running on the device, multicast routing can be implemented as long as the corresponding multicast routing entries are created through unicast routes. PIM uses the reverse path forwarding (RPF) mechanism to implement multicast forwarding. When a multicast packet arrives on an interface of the device, it is subject to an RPF check. If the RPF check succeeds, the device creates the corresponding routing entry and forwards the packet. If the RPF check fails, the device discards the packet. For more information about RPF, see the chapter “Configuring multicast routing and forwarding.”

Based on the implementation mechanism, PIM falls into the following types:

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

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

·           Bidirectional Protocol Independent Multicast (BIDIR-PIM), and

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

 

 

NOTE:

To facilitate description, a network comprising PIM-capable routers is referred to as a “PIM domain” in this document.

 

PIM-DM overview

PIM-DM is a type of dense mode multicast protocol. It uses the “push mode” for multicast forwarding, and is suitable for small-sized networks with densely distributed multicast members.

The basic implementation of PIM-DM is as follows:

·           PIM-DM assumes that at least one multicast group member exists on each subnet of a network, and therefore multicast data is flooded to all nodes on the network. Then, branches without multicast forwarding are pruned from the forwarding tree, leaving only those branches that contain receivers. This “flood and prune” process takes place periodically, that is, pruned branches resume multicast forwarding when the pruned state times out and then data is re-flooded down these branches, and then are pruned again.

·           When a new receiver on a previously pruned branch joins a multicast group, to reduce the join latency, PIM-DM uses a graft mechanism to resume data forwarding to that branch.

Generally speaking, the multicast forwarding path is a source tree, namely a forwarding tree with the multicast source as its “root” and multicast group members as its “leaves”. Because the source tree is the shortest path from the multicast source to the receivers, it is also called shortest path tree (SPT).

The working mechanism of PIM-DM is summarized as follows:

·           Neighbor discovery

·           SPT building

·           Graft

·           Assert

Neighbor discovery

In a PIM domain, a PIM router discovers PIM neighbors, maintains PIM neighboring relationships with other routers, and builds and maintains SPTs by periodically multicasting hello messages to all other PIM routers (224.0.0.13) on the local subnet.

 

 

NOTE:

Every PIM-enabled interface on a router sends hello messages periodically, and thus learns the PIM neighboring information pertinent to the interface.

 

SPT establishment

The process of building an SPT is the process of “flood and prune”.

1.      In a PIM-DM domain, when a multicast source S sends multicast data to a multicast group G, the multicast packet is first flooded throughout the domain: The router first performs RPF check on the multicast packet. If the packet passes the RPF check, the router creates an (S, G) entry and forwards the data to all downstream nodes in the network. In the flooding process, an (S, G) entry is created on all the routers in the PIM-DM domain.

2.      Then, nodes without receivers downstream are pruned: A router having no receivers downstream sends a prune message to the upstream node to “tell” the upstream node to delete the corresponding interface from the outgoing interface list in the (S, G) entry and stop forwarding subsequent packets addressed to that multicast group down to this node.

 

 

NOTE:

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

·       For a given multicast stream, the interface that receives the multicast stream is referred to as “upstream”, and the interfaces that forward the multicast stream are referred to as “downstream”.

 

A prune process is first initiated by a leaf router. As shown in Figure 1, a router without any receiver attached to it (the router connected with Host A, for example) sends a prune message, and this prune process goes on until only necessary branches are left in the PIM-DM domain. These branches constitute the SPT.

Figure 1 SPT establishment

 

The “flood and prune” process takes place periodically. A pruned state timeout mechanism is provided. A pruned branch restarts multicast forwarding when the pruned state times out and then is pruned again when it no longer has any multicast receiver.

 

 

NOTE:

Pruning has a similar implementation in PIM-SM.

 

Graft

When a host attached to a pruned node joins a multicast group, to reduce the join latency, PIM-DM uses a graft mechanism to resume data forwarding to that branch. The process is as follows:

1.      The node that needs to receive multicast data sends a graft message hop by hop toward its upstream node, as a request to join the SPT again.

2.      Upon receiving this graft message, the upstream node puts the interface on which the graft was received into the forwarding state and responds with a graft-ack message to the graft sender.

3.      If the node that sent a graft message does not receive a graft-ack message from its upstream node, it will keep sending graft messages at a configurable interval until it receives an acknowledgment from its upstream node.

Assert

If multiple multicast routers exist on a multi-access subnet, duplicate packets may flow to the same subnet. To shut off duplicate flows, the assert mechanism is used for election of a single multicast forwarder on a multi-access network.

Figure 2 Assert mechanism

 

As shown in Figure 2, after Router A and Router 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 Router C receives two identical multicast packets, and both Router A and Router B, on their own local interface, receive a duplicate packet forwarded by the other. Upon detecting this condition, both routers send an assert message to all PIM routers (224.0.0.13) on the local subnet through the interface on which the packet was received. The assert message contains the following information: the multicast source address (S), the multicast group address (G), and the preference and metric of the unicast route/MBGP route/multicast static route to the source. By comparing these parameters, either Router A or Router B becomes the unique forwarder of the subsequent (S, G) packets on the multi-access subnet. The comparison process is as follows:

1.      The router with a higher route preference to the source wins;

2.      If both routers have the same route preference to the source, the router with a smaller metric to the source wins;

3.      If there is a tie in route metric to the source, the router with a higher IP address of the local interface wins.

PIM-SM overview

PIM-DM uses the “flood and prune” principle to build SPTs for multicast data distribution. Although an SPT has the shortest path, it is built with a low efficiency. Therefore the PIM-DM mode is not suitable for large- and medium-sized networks.

PIM-SM is a type of sparse mode multicast protocol. It uses the “pull mode” for multicast forwarding, and is suitable for large- and medium-sized networks with sparsely and widely distributed multicast group members.

The basic implementation of PIM-SM is as follows:

·           PIM-SM assumes that no hosts need to receive multicast data. In the PIM-SM mode, routers must specifically request a particular multicast stream before the data is forwarded to them. The core task for PIM-SM to implement multicast forwarding is to build and maintain rendezvous point trees (RPTs). An RPT is rooted at a router in the PIM domain as the common node, or rendezvous point (RP), through which the multicast data travels along the RPT and reaches the receivers.

·           When a receiver is interested in the multicast data addressed to a specific multicast group, the router connected to this receiver sends a join message to the RP corresponding to that multicast group. The path along which the message goes hop by hop to the RP forms a branch of the RPT.

·           When a multicast source sends a multicast packet to a multicast group, the source-side designated router (DR) first registers the multicast source with the RP by sending a register message to the RP by unicast. The arrival of this message at the RP triggers the establishment of an SPT. Then, the multicast source sends subsequent multicast packets along the SPT to the RP. Upon reaching the RP, the multicast packet is duplicated and delivered to the receivers along the RPT.

 

 

NOTE:

Multicast traffic is duplicated only where the distribution tree branches, and this process automatically repeats until the multicast traffic reaches the receivers.

 

The working mechanism of PIM-SM is summarized as follows:

·           Neighbor discovery

·           DR election

·           RP discovery

·           RPT building

·           Multicast source registration

·           Switchover from RPT to SPT

·           Assert

Neighbor discovery

PIM-SM uses a similar neighbor discovery mechanism as PIM-DM does. See “Neighbor discovery.”

DR election

PIM-SM also uses hello messages to elect a designated router (DR) for a multi-access network (such as an Ethernet network). The elected DR will be the only multicast forwarder on this multi-access network.

A DR must be elected in a multi-access network, no matter this network connects to multicast sources or to receivers. The DR at the receiver side sends join messages to the RP; the DR at the multicast source side sends register messages to the RP.

 

 

NOTE:

·       A DR is elected on a multi-access subnet by means of comparison of the priorities and IP addresses carried in hello messages. An elected DR is substantially meaningful to PIM-SM. PIM-DM itself does not require a DR. However, if IGMPv1 runs on any multi-access network in a PIM-DM domain, a DR must be elected to act as the IGMPv1 querier on that multi-access network.

·       IGMP must be enabled on a device that acts as a receiver-side DR before receivers attached to this device can join multicast groups through this DR.

 

For more information about IGMP, see the chapter “Configuring IGMP.”

Figure 3 DR election

 

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

1.      Routers on the multi-access network send hello messages to one another. The hello messages contain the router priority for DR election. The router with the highest DR priority will become the DR.

2.      In the case of a tie in the router priority, or if any router in the network does not support carrying the DR-election priority in hello messages, the router with the highest IP address will win the DR election.

When the DR fails, a timeout in receiving hello message triggers a new DR election process among the other routers.

RP discovery

The RP is the core of a PIM-SM domain. For a small-sized, simple network, one RP is enough for forwarding information throughout the network, and the position of the RP can be statically specified on each router in the PIM-SM domain. In most cases, however, a PIM-SM network covers a wide area and a huge amount of multicast traffic needs to be forwarded through the RP. To lessen the RP burden and optimize the topological structure of the RPT, multiple candidate-RPs (C-RPs) can be configured in a PIM-SM domain, among which an RP is dynamically elected through the bootstrap mechanism. Each elected RP serves a different multicast group range. For this purpose, a bootstrap router (BSR) must be configured. The BSR serves as the administrative core of a PIM-SM domain. A PIM-SM domain can have only one BSR, but can have multiple candidate-BSRs (C-BSRs). Once the BSR fails, a new BSR is automatically elected from the C-BSRs to avoid service interruption.

 

 

NOTE:

·       An RP can serve multiple multicast groups or all multicast groups. Only one RP can serve a given multicast group at a time.

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

 

As shown in Figure 4, each C-RP periodically unicasts its advertisement messages (C-RP-Adv messages) to the BSR. A C-RP-Adv message contains the address and priority of the advertising C-RP and the multicast group range it servers. The BSR collects these advertisement messages and chooses the appropriate C-RP information for each multicast group to form an RP-set, which is a database of mappings between multicast groups and RPs. The BSR then encapsulates the RP-set in the bootstrap messages it periodically originates and floods the bootstrap messages to the entire PIM-SM domain.

Figure 4 BSR messages and C-RP advertisement messages

 

Based on the information in the RP-sets, all routers in the network can calculate the location of the corresponding RPs based on the following rules:

1.      The C-RP with the highest priority wins.

2.      If all the C-RPs have the same priority, their hash values are calculated through the hashing algorithm. The C-RP with the largest hash value wins.

3.      If all the C-RPs have the same priority and hash value, the C-RP has the highest IP address wins.

The hashing algorithm used for RP calculation is: Value (G, M, Ci) = (1103515245 * ( (1103515245 * (G & M) + 12345) XOR Ci) + 12345) mod 231. The table below gives the meanings of the values in this algorithm.

Table 1 Values in the hashing algorithm

Value

Description

Value

Hash value

G

IP address of the multicast group

M

Hash mask length

Ci

IP address of the C-RP

&

Logical operator of “and”

XOR

Logical operator of “exclusive or”

mod

Modulo operator, which gives the remainder of an integer division

 

RPT establishment

Figure 5 RPT establishment in a PIM-SM domain

 

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

1.      When a receiver joins a multicast group G, it uses an IGMP message to inform the directly connected DR.

2.      Upon getting the receiver information, the DR sends a join message, which is hop by hop forwarded to the RP corresponding to the multicast group.

3.      The routers along the path from the DR to the RP form an RPT branch. Each router on this branch generates a (*, G) entry in its forwarding table. The * means any multicast source. The RP is the root, while the DRs are the leaves, of the RPT.

The multicast data addressed to the multicast group G flows through the RP, reaches the corresponding DR along the established RPT, and finally is delivered to the receiver.

When a receiver is no longer interested in the multicast data addressed to a multicast group G, the directly connected DR sends a prune message, which goes hop by hop along the RPT to the RP. Upon receiving the prune message, the upstream node deletes the interface connected with this downstream node from the outgoing interface list and checks whether it itself has receivers for that multicast group. If not, the router continues to forward the prune message to its upstream router.

Multicast source registration

The purpose of multicast source registration is to inform the RP about the existence of the multicast source.

Figure 6 Multicast source registration

 

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

1.      When the multicast source S sends the first multicast packet to multicast group G, the DR directly connected with the multicast source, upon receiving the multicast packet, encapsulates the packet in a PIM register message, and sends the message to the corresponding RP by unicast.

2.      When the RP receives the register message, it extracts the multicast packet from the register message and forwards the multicast packet down the RPT, and sends an (S, G) join message hop by hop towards the multicast source. Thus, the routers along the path from the RP to the multicast source constitute an SPT branch. Each router on this branch generates an (S, G) entry in its forwarding table. The DR at the multicast source side is the root, while the RP is the leaf, of the SPT.

3.      The subsequent multicast data from the multicast source travels along the established SPT to the RP, and then the RP forwards the data along the RPT to the receivers. When the multicast traffic arrives at the RP along the SPT, the RP sends a register-stop message to the source-side DR by unicast to stop the source registration process.

 

 

NOTE:

The RP is configured to initiate an SPT switchover as described in this section. Otherwise, the DR at the multicast source side keeps encapsulating multicast data in register messages and the registration process will not stop unless no outgoing interfaces exist in the (S, G) entry on the RP.

 

Switchover to SPT

In a PIM-SM domain, a multicast group corresponds to one RP and RPT. Before the SPT switchover takes place, the DR at the multicast source side encapsulates all multicast data destined to the multicast group in register messages and sends these messages to the RP. Upon receiving these register messages, the RP abstracts the multicast data and sends the multicast data down the RPT to the DRs at the receiver side. The RP acts as a transfer station for all multicast packets. The whole process involves three issues:

·           The DR at the source side and the RP need to implement complicated encapsulation and de-encapsulation of multicast packets.

·           Multicast packets are delivered along a path that may not be the shortest one.

·           When the multicast traffic increases, a great burden is added to the RP, increasing the risk of failure.

To solve the issues, PIM-SM allows an RP or the DR at the receiver side to initiate an SPT switchover process:

1.      The RP initiates an SPT switchover process

Upon receiving the first multicast packet, the RP sends an (S, G) join message hop by hop towards the multicast source to establish an SPT between the DR at the source side and the RP. The subsequent multicast data from the multicast source travels along the established SPT to the RP.

 

 

NOTE:

For more information about the SPT switchover initiated by the RP, see “Multicast source registration.”

 

2.      The receiver-side DR initiates an SPT switchover process

Upon receiving the first multicast packet, the receiver-side DR initiates an SPT switchover process, as follows:

¡  The receiver-side DR sends an (S, G) join message hop by hop towards the multicast source. When the join message reaches the source-side DR, all the routers on the path have installed the (S, G) entry in their forwarding table, and thus an SPT branch is established.

¡  When the multicast packets travel to the router where the RPT and the SPT deviate, the router drops the multicast packets received from the RPT and sends an RP-bit prune message hop by hop to the RP. Upon receiving this prune message, the RP sends a prune message towards the multicast source (suppose only one receiver exists). Thus, SPT switchover is completed.

¡  Finally, multicast data is directly sent from the source to the receivers along the SPT.

PIM-SM builds SPTs through SPT switchover more economically than PIM-DM does through the “flood and prune” mechanism.

Assert

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

BIDIR-PIM overview

In some many-to-many applications, such as multi-side video conference, there may be multiple receivers interested in multiple multicast sources simultaneously. With PIM-DM or PIM-SM, each router along the SPT must create an (S, G) entry for each multicast source, consuming a lot of system resources. BIDIR-PIM is introduced to address this problem. Derived from PIM-SM, BIDIR-PIM builds and maintains bidirectional RPTs, each of which is rooted at an RP and connects multiple multicast sources with multiple receivers. Traffic from the multicast sources is forwarded through the RP to the receivers along the bidirectional RPT. In this case, each router needs to maintain only a (*, G) multicast routing entry, saving system resources.

BIDIR-PIM is suitable for networks with dense multicast sources and dense receivers.

The working mechanism of BIDIR-PIM is summarized as follows:

·           Neighbor discovery

·           RP discovery

·           DF election

·           Bidirectional RPT building

Neighbor discovery

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

RP discovery

BIDIR-PIM uses the same RP discovery mechanism as PIM-SM does. For more information, see “RP discovery.”

In PIM-SM, an RP must be specified with a real IP address. In BIDIR-PIM, however, an RP can be specified with a virtual IP address, which is called the rendezvous point address (RPA). The link corresponding to the RPA’s subnet is called the rendezvous point link (RPL). All interfaces connected to the RPL can act as RPs, which back up one another.

 

 

NOTE:

In BIDIR-PIM, an RPF interface is the interface pointing to an RP, and an RPF neighbor is the address of the next hop to the RP.

 

DF election

On a network segment with multiple multicast routers, the same multicast packets may be forwarded to the RP repeatedly. To address this issue, BIDIR-PIM uses a DF election mechanism to elect a unique designated forwarder (DF) for each RP on every network segment within the BIDIR-PIM domain, and allows only the DF to forward multicast data to the RP.

 

 

NOTE:

DF election is not necessary for an RPL.

 

Figure 7 DF election

 

As shown in Figure 7, without the DF election mechanism, both Router B and Router C can receive multicast packets from Route A, and they may both forward the packets to downstream routers on the local subnet. As a result, the RP (Router E) receives duplicate multicast packets. With the DF election mechanism, once receiving the RP information, Router B and Router C initiate a DF election process for the RP:

1.      Router B and Router C multicast DF election messages to all PIM routers (224.0.0.13). The election messages carry the RP’s address, and the priority and metric of the unicast route, MBGP route, or multicast static route to the RP.

2.      The router with a route of the highest priority becomes the DF.

3.      In the case of a tie, the router with the route with the lowest metric wins the DF election.

4.      In the case of a tie in the metric, the router with the highest IP address wins.

Bidirectional RPT building

A bidirectional RPT comprises two parts: receiver-side RPT and source-side RPT. The receiver-side RPT is rooted at the RP and takes the routers directly connected with the receivers as leaves. The source-side RPT is also rooted at the RP but takes the routers directly connected with the sources as leaves. The processes for building these two parts are different.

Figure 8 RPT building at the receiver side

 

As shown in Figure 8, the process for building a receiver-side RPT is similar to that for building an RPT in PIM-SM:

1.      When a receiver joins multicast group G, it uses an IGMP message to inform the directly connected router.

2.      Upon getting the receiver information, the router sends a join message, which is forwarded hop by hop to the RP of the multicast group.

3.      The routers along the path from the receiver’s directly connected router to the RP form an RPT branch, and each router on this branch adds a (*, G) entry to its forwarding table. The * means any multicast source.

When a receiver is no longer interested in the multicast data addressed to multicast group G, the directly connected router sends a prune message, which goes hop by hop along the reverse direction of the RPT to the RP. Upon receiving the prune message, each upstream node deletes the interface connected with the downstream node from the outgoing interface list and checks whether it has receivers in that multicast group. If not, the router continues to forward the prune message to its upstream router.

Figure 9 RPT building at the multicast source side

 

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

1.      When a multicast source sends multicast packets to multicast group G, the DF in each network segment unconditionally forwards the packets to the RP.

2.      The routers along the path from the source’s directly connected router to the RP form an RPT branch. Each router on this branch adds a (*, G) entry to its forwarding table. The * means any multicast source.

After a bidirectional RPT is built, multicast traffic is forwarded along the source-side RPT and receiver-side RPT from sources to receivers.

 

 

NOTE:

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

 

Administrative scoping overview

Division of PIM-SM domains

Typically, a PIM-SM/BIDIR-PIM domain contains only one BSR, which is responsible for advertising RP-set information within the entire PIM-SM/BIDIR-PIM domain. The information for all multicast groups is forwarded within the network scope administered by the BSR. We call this a non-scoped BSR mechanism.

Typically, a PIM-SM/BIDIR-PIM domain contains only one BSR, which is responsible for advertising RP-set information within the entire PIM-SM/BIDIR-PIM domain. The information for all multicast groups is forwarded within the network scope administered by the BSR. We call this non-scoped BSR mechanism.

To implement refined management, a PIM-SM/BIDIR-PIM domain can be divided into one global scope zone and multiple administratively scoped zones (admin-scope zones). We call this 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 using private group addresses.

Admin-scope zones are divided specific to multicast groups. The boundary of the admin-scope zone is formed by zone border routers (ZBRs). Each admin-scope zone maintains one BSR, which serves multicast groups within a specific range. Multicast protocol packets, such as assert messages and bootstrap messages, for a specific group range cannot cross the admin-scope zone boundary. Multicast group ranges served by different admin-scope zones can be overlapped. A multicast group is valid only within its local admin-scope zone, functioning as a private group address.

The global scope zone maintains a BSR, which serves the multicast groups that do not belong to any admin-scope zone.

Relationship between admin-scope zones and the global scope zone

The global scope zone and each admin-scope zone have their own C-RPs and BSRs. These devices are effective only in their respective admin-scope zones. Namely, BSR election and RP election are implemented independently within each admin-scope zone. Each admin-scope zone has its own boundary. The multicast information cannot cross this border in either direction. A better understanding of the global scope zone and admin-scope zones should be based on two aspects: geographical space and group address range.

·           Geographical space:

Admin-scope zones are logical regions specific to particular multicast groups. The multicast packets of these multicast groups are confined within the local admin-scope zone and cannot cross the boundary of the zone.

Figure 10 Geographic space relationship between admin-scope zones and the global scope zone

 

As shown in Figure 10, for multicast groups in the same address range, admin-scope zones must be geographically separated from one another. Namely, a router must not serve different admin-scope zones. In other words, different admin-scope zones contain different routers, whereas the global scope zone covers all routers in the PIM-SM/BIDIR-PIM domain. Multicast packets that do not belong to any admin-scope zones can be transmitted in the entire PIM-SM/BIDIR-PIM domain.

·           Multicast group address range:

Each admin-scope zone serves specific multicast groups. Usually, these addresses have no intersections; however, they may overlap one another.

Figure 11 Group adress range relationship between admin-scope zones and the global scope zone

 

In Figure 11, the group address ranges of admin-scope 1 and admin-scope 2 have no intersection, whereas the group address range of admin-scope 3 is a subset of the address range of admin-scope 1. The group address range of the global scope zone covers all the group addresses other than those of all the admin-scope zones. That is, the group address range of the global scope zone is G-G1-G2. In other words, there is a supplementary relationship between the global scope zone and all the admin-scope zones in terms of group address ranges.

Relationships between admin-scope zones and the global scope zone are as follows:

¡  The global scope zone and each admin-scope zone have their own C-RPs and BSR. These devices are effective only in their respective admin-scope zones. Namely, the BSR election and RP election are implemented independently within each admin-scope zone.

¡  Each admin-scope zone has its own boundary. The multicast information (such as C-RP-Adv messages and BSR bootstrap messages) can be transmitted only within the domain.

¡  Likewise, the multicast information in the global scope zone cannot enter any admin-cope region.

¡  In terms of multicast information propagation, admin-scope zones are independent of one another and each admin-scope zone is independent of the global scope zone, and no overlapping is allowed between any two admin-scope zones.

PIM-SSM overview

The source-specific multicast (SSM) model and the any-source multicast (ASM) model are two opposite models. Presently, the ASM model includes the PIM-DM and PIM-SM modes. The SSM model can be implemented by leveraging part of the PIM-SM technique, and it is also called PIM-SSM.

The SSM model provides a solution for source-specific multicast. It maintains the relationships between hosts and routers through IGMPv3.

In actual application, part of IGMPv3 or PIM-SM technique is adopted to implement the SSM model. In the SSM model, receivers know exactly where a multicast source is located by means of advertisements, consultancy, and so on. Therefore, no RP is needed, no RPT is required, there is no source registration process, and there is no need of using the multicast source discovery protocol (MSDP) for discovering sources in other PIM domains.

The working mechanism of PIM-SSM is summarized as follows:

·           Neighbor discovery

·           DR election

·           SPT building

Neighbor discovery

PIM-SSM uses the same neighbor discovery mechanism as in PIM-DM and PIM-SM. For more information, see “Neighbor discovery.”

DR election

PIM-SSM uses a similar DR election mechanism as in PIM-SM. For more information, see “DR election.”

Construction of SPT

Whether to build an RPT for PIM-SM or an SPT for PIM-SSM depends on whether the multicast group the receiver is to join falls in the SSM group range (SSM group range reserved by IANA is 232.0.0.0/8).

Figure 12 SPT establishment in PIM-SSM

 

As shown in Figure 12, Host B and Host C are multicast information receivers. They send IGMPv3 report messages to the respective DRs to express their interest in the information of the specific multicast source S.

Upon receiving a report message, the DR first checks whether the group address in this message falls in the SSM group range:

·           If so, the DR sends a subscribe message for channel subscription hop by hop toward the multicast source S. An (S, G) entry is created on all routers on the path from the DR to the source. Thus, an SPT is built in the network, with the source S as its root and receivers as its leaves. This SPT is the transmission channel in PIM-SSM.

·           If not, the receiver-side DR follows the PIM-SM process. The receiver-side DR sends a (*, G) join message to the RP, and the source-side DR registers the multicast source.

 

 

NOTE:

In PIM-SSM, the “channel” concept is used to refer to a multicast group, and the “channel subscription” concept is used to refer to a join message.

 

Relationships among PIM protocols

In a PIM network, PIM-DM cannot work with PIM-SM, BIDIR-PIM, or PIM-SSM. However, PIM-SM, BIDIR-PIM, and PIM-SSM can work together. When they run together, which one is chosen for a receiver trying to join a group depends, as shown in Figure 13.

Figure 13 Relationships among PIM protocols

 

 

NOTE:

For more information about IGMP SSM mapping, see the chapter “Configuring IGMP.”

 

Multi-instance PIM

A multicast router running multiple instances maintains an independent set of PIM neighbor table, multicast routing table, BSR information and RP-set information for each instance.

Upon receiving a multicast data packet, the multicast router determines the VPN instance the data packet belongs to, and then forwards the packet as per the multicast routing table of that VPN instance or creates a multicast routing table entry for that VPN instance.

Protocols and standards

PIM-related specifications are as follows:

·           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 4607: Source-Specific Multicast for IP

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

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

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

Configuring PIM-DM

PIM-DM configuration task list

Complete these tasks to configure PIM-DM:

 

Task

Remarks

Enabling PIM-DM

Required

Enabling state-refresh capability

Optional

Configuring state-refresh parameters

Optional

Configuring PIM-DM graft retry period

Optional

Configuring PIM common features

Optional

 

Configuration prerequisites

Before configuring PIM-DM, complete the following task:

·           Configure any unicast routing protocol so that all devices in the domain are interoperable at the network layer.

·           Determine the interval between state-refresh messages.

·           Determine the minimum time to wait before receiving a new refresh message.

·           Determine the TTL value of state-refresh messages.

·           Determine the graft retry period.

Enabling PIM-DM

With PIM-DM enabled, a router sends hello messages periodically to discover PIM neighbors and processes messages from the PIM neighbors. When deploying a PIM-DM domain, you are recommended to enable PIM-DM on all non-border interfaces of the routers.

Enabling PIM-DM globally on the public network

To enable PIM-DM globally on the public network:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable IP multicast routing.

multicast routing-enable

Disable by default.

3.     Enter interface view.

interface interface-type interface-number

N/A

4.     Enable PIM-DM.

pim dm

Disabled by default.

 

Enabling PIM-DM in a VPN instance

To enable PIM-DM in a VPN instance:

 

Step

Command

Description

1.     Enter system view.

system-view

N/A

2.     Create a VPN instance and enter VPN instance view.

ip vpn-instance vpn-instance-name

N/A

3.     Configure a route-distinguisher (RD) for the VPN instance.

route-distinguisher route-distinguisher

Not configured by default.

4.     Enable IP multicast routing.

multicast routing-enable

Disabled by default.

5.     Enter interface view.

interface interface-type interface-number

N/A

6.     Bind the interface with a VPN instance.

ip binding vpn-instance vpn-instance-name

By default, an interface belongs to the public network, and is not bound with any VPN instance.

7.     Enable PIM-DM.

pim dm

Disabled by default.

 

CAUTION

CAUTION:

·       All the interfaces in the same VPN instance on the same device must work in the same PIM mode.

·       IGMP snooping is not allowed in a VLAN after PIM-DM is enabled on the virtual interface of the VLAN, and vice versa.

·       PIM-DM cannot be used for multicast groups in the SSM group grange.

 

 

NOTE:

·       For more information about the ip vpn-instance, route-distinguisher, and ip binding vpn-instance commands, see MPLS Command Reference.

·       For more information about the multicast routing-enable command, see IP Multicast Command Reference.

 

Enabling state-refresh capability

Pruned interfaces resume multicast forwarding when the pruned state times out. To prevent this, the router with the multicast source attached periodically sends an (S, G) state-refresh message, which is forwarded hop by hop along the initial multicast flooding path of the PIM-DM domain, to refresh the prune timer state of all the routers on the path. A multi-access subnet can have the state-refresh capability only if the state-refresh capability is enabled on all PIM routers on the subnet.

To enable the state-refresh capability:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Enable state-refresh.

pim state-refresh-capable

Optional

Enabled by default

 

Configuring state-refresh parameters

The router directly connected with the multicast source periodically sends state-refresh messages. You can configure the interval for sending such messages.

A router may receive multiple state-refresh messages within a short time, of which some may be duplicated messages. To keep a router from receiving such duplicated messages, you can configure the time the router must wait before receiving the next state-refresh message. If a new state-refresh message is received within the waiting time, the router will discard it. If this timer times out, the router will accept a new state-refresh message, refresh its own PIM-DM state, and reset the waiting timer.

The TTL value of a state-refresh message decrements by 1 whenever it passes a router before it is forwarded to the downstream node until the TTL value comes down to 0. In a small network, a state-refresh message may cycle in the network. To effectively control the propagation scope of state-refresh messages, you need to configure an appropriate TTL value based on the network size.

It is recommended to perform the following configurations on all routers in the PIM domain.

To configure state-refresh parameters:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the interval between state-refresh messages.

state-refresh-interval interval

Optional

60 seconds by default

4.     Configure the time to wait before receiving a new state-refresh message.

state-refresh-rate-limit interval

Optional

30 seconds by default

5.     Configure the TTL value of state-refresh messages.

state-refresh-ttl ttl-value

Optional

255 by default

 

Configuring PIM-DM graft retry period

In PIM-DM, graft is the only type of message that uses the acknowledgment mechanism. In a PIM-DM domain, if a router does not receive a graft-ack message from the upstream router within the specified time after it sends a graft message, the router keeps sending new graft messages at a configurable interval, namely graft retry period, until it receives a graft-ack from the upstream router.

To configure graft retry period:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure graft retry period.

pim timer graft-retry interval

Optional

3 seconds by default

 

 

NOTE:

For more information about the configuration of other timers in PIM-DM, see “Configuring PIM common timers.”

 

Configuring PIM-SM

PIM-SM configuration task list

Complete these tasks to configure PIM-SM:

 

Task

Remarks

Enabling PIM-SM

Required.

Configuring an RP

Configuring a static RP

Optional.

Use one of the approaches.

Configuring a C-RP

Enabling auto-RP

Configuring C-RP timers globally

Optional.

Configuring a BSR

Configuring a C-BSR

Required.

Configuring a PIM domain border

Optional.

Configuring global C-BSR parameters

Optional.

Configuring C-BSR timers

Optional.

Configuring administrative scoping

Enabling administrative scoping

Optional.

Configuring an admin-scope zone boundary

Optional.

Configuring a C-BSR for each admin-scope zone and the global-scope zone

Optional.

Configuring multicast source registration

Optional.

Configuring SPT switchover

Optional.

Configuring PIM common features

Optional.

 

Configuration prerequisites

Before configuring PIM-SM, complete the following task:

·           Configure any unicast routing protocol so that all devices in the domain are interoperable at the network layer.

·           Determine the IP address of a static RP and the ACL that defines the range of multicast groups to be served by the static RP.

·           Determine the C-RP priority and the ACL that defines the range of multicast groups to be served by each C-RP.

·           Determine the legal C-RP address range and the ACL that defines the range of multicast groups to be served.

·           Determine the C-RP-Adv interval.

·           Determine the C-RP timeout timer.

·           Determine the C-BSR priority.

·           Determine the hash mask length.

·           Determine the ACL that defines the legal BSR address range.

·           Determine the BS period.

·           Determine the BS timeout timer.

·           Determine the ACL for register message filtering.

·           Determine the register suppression timer.

·           Determine the register probe timer.

·           Determine the ACL rule and sequencing rule for an SPT switchover.

Enabling PIM-SM

With PIM-SM enabled, a router sends hello messages periodically to discover PIM neighbors and processes messages from the PIM neighbors. When deploying a PIM-SM domain, you are recommended to enable PIM-SM on all non-border interfaces of the routers.

Enabling PIM-SM globally on the public network

To enable PIM-SM on the public network:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable IP multicast routing.

multicast routing-enable

Disable by default

3.     Enter interface view.

interface interface-type interface-number

N/A

4.     Enable PIM-SM.

pim sm

Disabled by default

 

Enabling PIM-SM in a VPN instance

To enable PIM-SM in a VPN instance:

 

Step

Command

Description

1.     Enter system view.

system-view

N/A

2.     Create a VPN instance and enter VPN instance view.

ip vpn-instance vpn-instance-name

N/A

3.     Configure an RD for the VPN instance.

route-distinguisher route-distinguisher

Not configured by default.

4.     Enable IP multicast routing.

multicast routing-enable

Disabled by default.

5.     Enter interface view.

interface interface-type interface-number

N/A

6.     Bind the interface with a VPN instance.

ip binding vpn-instance vpn-instance-name

By default, an interface belongs to the public network, and is not bound with any VPN instance.

7.     Enable PIM-SM.

pim sm

Disabled by default.

 

CAUTION

CAUTION:

·       All the interfaces in the same VPN instance on the same router must work in the same PIM mode.

·       IGMP snooping is not allowed in a VLAN after PIM-SM is enabled on the virtual interface of the VLAN, and vice versa.

 

 

NOTE:

·       For more information about the ip vpn-instance, route-distinguisher, and ip binding vpn-instance commands, see MPLS Command Reference.

·       For more information about the multicast routing-enable command, see IP Multicast Command Reference.

 

Configuring an RP

An RP can be manually configured or dynamically elected through the BSR mechanism. For a large PIM network, static RP configuration is a tedious job. Generally, static RP configuration is just a backup means for the dynamic RP election mechanism to enhance the robustness and operation manageability of a multicast network.

Configuring a static RP

If there is only one dynamic RP in a network, manually configuring a static RP can avoid communication interruption due to single-point failures and avoid frequent message exchange between C-RPs and the BSR.

Perform this configuration on all the routers in the PIM-SM domain.

To configure a static RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a static RP for PIM-SM.

static-rp rp-address [ acl-number ] [ preferred ]

No static RP by default

 

CAUTION

CAUTION:

To enable a static RP to work normally, you must specify the same static RP address on all routers in the PIM-SM domain.

 

Configuring a C-RP

In a PIM-SM domain, you can configure routers that intend to become the RP as C-RPs. The BSR collects the C-RP information by receiving the C-RP-Adv messages from C-RPs or auto-RP announcements from other routers and organizes the information into an RP-set, which is flooded throughout the entire network. Then, the other routers in the network calculate the mappings between specific group ranges and the corresponding RPs based on the RP-set. We recommend that you configure C-RPs on backbone routers.

To guard against C-RP spoofing, you need to configure a legal C-RP address range and the range of multicast groups to be served on the BSR. In addition, because every C-BSR has a chance to become the BSR, you need to configure the same filtering policy on all C-BSRs in the PIM-SM domain.

To configure a C-RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure an interface to be a C-RP  for PIM-SM.

c-rp interface-type interface-number [ group-policy acl-number | priority priority | holdtime hold-interval | advertisement-interval adv-interval ] *

No C-RPs are configured by default.

4.     Configure a legal C-RP address range and the range of multicast groups to be served.

crp-policy acl-number

Optional.

No restrictions by default.

 

 

NOTE:

·       When you configure a C-RP, ensure a relatively large bandwidth between this C-RP and the other devices in the PIM-SM domain.

·       An RP can serve multiple multicast groups or all multicast groups. Only one RP can forward multicast traffic for a multicast group at a moment.

 

Enabling auto-RP

Auto-RP announcement and discovery messages are respectively addressed to the multicast group addresses 224.0.1.39 and 224.0.1.40. With auto-RP enabled on a device, the device can receive these two types of messages and record the RP information carried in such messages.

To enable auto-RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Enable auto-RP.

auto-rp enable

Disabled by default

 

Configuring C-RP timers globally

To enable the BSR to distribute the RP-set information within the PIM-SM domain, C-RPs must periodically send C-RP-Adv messages to the BSR. The BSR learns the RP-set information from the received messages, and encapsulates its own IP address together with the RP-set information in its bootstrap messages. The BSR then floods the bootstrap messages to all PIM routers in the network.

Each C-RP encapsulates a timeout value in its C-RP-Adv message. Upon receiving this message, the BSR obtains this timeout value and starts a C-RP timeout timer. If the BSR fails to hear a subsequent C-RP-Adv message from the C-RP when the timer times out, the BSR assumes the C-RP to have expired or become unreachable.

The C-RP timers need to be configured on C-RP routers.

To configure C-RP timers globally:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the C-RP-Adv interval.

c-rp advertisement-interval interval

Optional

60 seconds by default

4.     Configure C-RP timeout time.

c-rp holdtime interval

Optional

150 seconds by default

 

 

NOTE:

For more information about the configuration of other timers in PIM-SM, see “Configuring PIM common timers.”

 

Configuring a BSR

A PIM-SM domain can have only one BSR, but must have at least one C-BSR. Any router can be configured as a C-BSR. Elected from C-BSRs, the BSR is responsible for collecting and advertising RP information in the PIM-SM domain.

Configuring a C-BSR

C-BSRs should be configured on routers in the backbone network. When you configure a router as a C-BSR, be sure to specify a PIM-SM-enabled interface on the router. The BSR election process is summarized as follows:

·           Initially, every C-BSR assumes itself to be the BSR of this PIM-SM domain, and uses its interface IP address as the BSR address to send bootstrap messages.

·           When a C-BSR receives the bootstrap message of another C-BSR, it first compares its own priority with the other C-BSR’s priority carried in message. The C-BSR with a higher priority wins. If there is a tie in the priority, the C-BSR with a higher IP address wins. The loser uses the winner’s BSR address to replace its own BSR address and no longer assumes itself to be the BSR, while the winner retains its own BSR address and continues assuming itself to be the BSR.

Configuring a legal range of BSR addresses enables filtering of bootstrap messages based on the address range, thus to prevent a maliciously configured host from masquerading as a BSR. The same configuration needs to be made on all routers in the PIM-SM domain. The following are typical BSR spoofing cases and the corresponding preventive measures:

1.      Some maliciously configured hosts can forge bootstrap messages to fool routers and change RP mappings. Such attacks often occur on border routers. Because a BSR is inside the network whereas hosts are outside the network, you can protect a BSR against attacks from external hosts by enabling the border routers to perform neighbor checks and RPF checks on bootstrap messages and discard unwanted messages.

2.      When a router in the network is controlled by an attacker or when an illegal router is present in the network, the attacker can configure this router as a C-BSR and make it win BSR election to control the right of advertising RP information in the network. After being configured as a C-BSR, a router automatically floods the network with bootstrap messages. Because a bootstrap message has a TTL value of 1, the whole network will not be affected as long as the neighbor router discards these bootstrap messages. Therefore, with a legal BSR address range configured on all routers in the entire network, all these routers will discard bootstrap messages from out of the legal address range.

The above-mentioned preventive measures can partially protect the security of BSRs in a network. However, if a legal BSR is controlled by an attacker, the above-mentioned problem will still occur.

To configure a C-BSR:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure an interface as a C-BSR.

c-bsr interface-type interface-number [ hash-length [ priority ] ]

No C-BSRs are configured by default.

4.     Configure a legal BSR address range.

bsr-policy acl-number

Optional.

No restrictions on BSR address range by default.

 

 

NOTE:

Because a large amount of information needs to be exchanged between a BSR and the other devices in the PIM-SM domain, a relatively large bandwidth should be provided between the C-BSRs and the other devices in the PIM-SM domain.

 

Configuring a PIM domain border

As the administrative core of a PIM-SM domain, the BSR sends the collected RP-Set information in the form of bootstrap messages to all routers in the PIM-SM domain.

A PIM domain border is a bootstrap message boundary. Each BSR has its specific service scope. A number of PIM domain border interfaces partition a network into different PIM-SM domains. Bootstrap messages cannot cross a domain border in either direction

Perform the following configuration on routers that you want configure as a PIM domain border.

To configure a PIM domain border:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure a PIM domain border.

pim bsr-boundary

By default, no PIM domain border is configured.

 

Configuring global C-BSR parameters

In each PIM-SM domain, a unique BSR is elected from C-BSRs. The C-RPs in the PIM-SM domain send advertisement messages to the BSR. The BSR summarizes the advertisement messages to form an RP-set and advertises it to all routers in the PIM-SM domain. All the routers use the same hash algorithm to get the RP address corresponding to specific multicast groups.

Perform the following configuration on C-BSR routers.

To configure C-BSR parameters:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the hash mask length.

c-bsr hash-length hash-length

Optional.

30 by default.

4.     Configure the C-BSR priority.

c-bsr priority priority

Optional.

By default, the C-BSR priority is 64.

 

 

NOTE:

You can configure the hash mask length and C-BSR priority globally, in a admin-scope zone, and/or in the global scope zone.

·       The values configured in the global scope zone or admin-scope zone have preference over the global values.

·       If you do not configure these parameters in the global scope zone or admin-scope zone, the corresponding global values will be used.

For configuration of C-BSR parameters for an admin-scope zone and global scope zone, see “Configuring a C-BSR for each admin-scope zone and the global-scope zone.”

 

Configuring C-BSR timers

The BSR election winner multicasts its own IP address and RP-Set information throughout the region that it serves through bootstrap messages. The BSR floods bootstrap messages throughout the network at the interval of BS (BSR state) period. Any C-BSR that receives a bootstrap message retains the RP-set for the length of BS timeout, during which no BSR election takes place. If the BSR state times out and no bootstrap message is received from the BSR, a new BSR election process is triggered among the C-BSRs.

Perform the following configuration on C-BSR routers.

To configure C-BSR timers:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the BS period.

c-bsr interval interval

Optional.

For the default value, see the note below.

4.     Configure the BS timeout.

c-bsr holdtime interval

Optional.

For the default value, see the note below.

 

 

NOTE:

About the BS period:

·       By default, the BS period is determined by this formula: BS period = (BS timeout  – 10) / 2. The default BS timeout is 130 seconds, so the default BS period = (130 – 10) / 2 = 60 (seconds).

·       If this parameter is manually configured, the system will use the configured value.

About the BS timeout:

·       By default, the BS timeout value is determined by this formula: BS timeout = BS period × 2 + 10. The default BS period is 60 seconds, so the default BS timeout = 60 × 2 + 10 = 130 (seconds).

·       If this parameter is manually configured, the system will use the configured value.

 

CAUTION

CAUTION:

Be sure to configure a BS period value smaller than the BS timeout value.

 

Disabling BSM semantic fragmentation

Generally, a BSR periodically distributes the RP-set information in bootstrap messages within the PIM-SM domain. It encapsulates a BSM in an IP datagram and may split the datagram into fragments if the message exceeds the maximum transmission unit (MTU). In respect of such IP fragmentation, loss of a single IP fragment leads to unavailability of the entire message.

Semantic fragmentation of BSMs can solve this issue. When a BSM exceeds the MTU, it is split to multiple bootstrap message fragments (BSMFs).

·           Upon receiving a BSMF that contains the RP-set information of one group range, a non-BSR router updates corresponding RP-set information directly.

·           If the RP-set information of one group range is carried in multiple BSMFs, a non-BSR router updates corresponding RP-set information upon receiving all these BSMFs.

Because the RP-set information contained in each segment is different, loss of some IP fragments will not result in dropping of the entire message.

The function of BSM semantic fragmentation is enabled by default. Devices not supporting this function may deem a fragment as an entire message, thus learning only part of the RP-set information. Therefore, if such devices exist in the PIM-SM domain, you need to disable the semantic fragmentation function on the C-BSRs.

To disable the BSM semantic fragmentation function:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Disable the BSM semantic fragmentation function.

undo bsm-fragment enable

By default, the BSM semantic fragmentation function is enabled.

 

 

NOTE:

Generally, a BSR performs BSM semantic fragmentation according to the MTU of its BSR interface. However, the semantic fragmentation of BSMs originated due to learning of a new PIM neighbor is performed according to the MTU of the outgoing interface.

 

Configuring administrative scoping

With administrative scoping disabled, a PIM-SM domain has only one BSR. The BSR manages the whole network. To manage your network more effectively and specifically, you can partition the PIM-SM domain into multiple admin-scope zones. Each admin-scope zone maintains a BSR, which serves a specific multicast group range; while the global scope zone also maintains a BSR, which serves all the rest multicast groups.

Enabling administrative scoping

Before configuring an admin-scope zone, you must enable administrative scoping first.

Perform the following configuration on all routers in the PIM-SM domain.

To enable administrative scoping:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Enable administrative scoping.

c-bsr admin-scope

Disabled by default

 

 

NOTE:

An admin-scope zone can only serve multicast groups within the range of 239.0.0.0 to 239.255.255.255.

 

Configuring an admin-scope zone boundary

The boundary of each admin-scope zone is formed by ZBRs. Each admin-scope zone maintains a BSR, which serves a specific multicast group range. Multicast protocol packets (such as assert messages and bootstrap messages) that belong to this range cannot cross the admin-scope zone boundary.

Perform the following configuration on routers that you want to configure as a ZBR.

To configure an admin-scope zone boundary:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure a multicast forwarding boundary.

multicast boundary group-address { mask | mask-length }

By default, no multicast forwarding boundary is configured.

 

 

NOTE:

The group-address { mask | mask-length } parameter of the multicast boundary command can be used to specify the multicast groups an admin-scope zone serves, in the range of 239.0.0.0/8. For more information about the multicast boundary command, see IP Multicast Command Reference.

 

Configuring a C-BSR for each admin-scope zone and the global-scope zone

In a network with administrative scoping enabled, group-range-specific BSRs are elected from C-BSRs. C-RPs in the network send advertisement messages to the specific BSR. The BSR summarizes the advertisement messages to form an RP-set and advertises it to all routers in the specific admin-scope zone. All the routers use the same hash algorithm to get the RP address corresponding to the specific multicast group.

Configure C-BSRs for each admin-scope zone and the global-scope zone.

·           Configure C-BSRs for each admin-scope zone

Perform the following configuration on the routers that you want to configure as C-BSRs in admin-scope zones.

To configure a C-BSR for an admin-scope zone:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configuring a C-BSR for an admin-scope zone.

c-bsr group group-address { mask | mask-length } [ hash-length hash-length | priority priority ] *

No C-BSRs are configured for an admin-scope zone by default.

 

 

NOTE:

The group-address { mask | mask-length } parameter of the c-bsr group command can specify the multicast groups the C-BSR serves, in the range of 239.0.0.0/8.

 

·           Configure C-BSRs for the global-scope zone

Perform the following configuration on the routers that will you want to configure as C-BSRs in the global-scope zone.

To configure a C-BSR for the global-scope zone:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a C-BSR for the global-scope zone.

c-bsr global [ hash-length hash-length | priority priority ] *

No C-BSRs are configured for the global-scope zone by default.

 

 

NOTE:

You can configure the hash mask length and C-BSR priority globally, in a admin-scope zone, in the global scope zone, or configure them in all these scopes.

·       The values configured in the global scope zone or admin-scope zone have preference over the global values.

·       If you do not configure these parameters in the global scope zone or admin-scope zone, the corresponding global values will be used.

For more information about global C-BSR parameters, see “Configuring global C-BSR parameters.”

 

Configuring multicast source registration

Within a PIM-SM domain, the source-side DR sends register messages to the RP, and these register messages have different multicast source or group addresses. You can configure a filtering rule to filter register messages so that the RP can serve specific multicast groups. If an (S, G) entry is denied by the filtering rule, or the action for this entry is not defined in the filtering rule, the RP will send a register-stop message to the DR to stop the registration process for the multicast data.

In view of information integrity of register messages in the transmission process, you can configure the device to calculate the checksum based on the entire register messages. However, to reduce the workload of encapsulating data in register messages and for the sake of interoperability, this method of checksum calculation is not recommended.

When receivers stop receiving multicast data addressed to a certain multicast group through the RP (that is, the RP stops serving the receivers of that multicast group), or when the RP formally starts receiving register messages with multicast data encapsulated from the multicast source, the RP sends a register-stop message to the source-side DR. Upon receiving this message, the DR stops sending register messages encapsulated with multicast data and starts a register-stop timer. When the register-stop timer expires, the DR sends a null register message (a register message without encapsulated multicast data) to the RP. If the DR receives a register-stop message during the register probe time, it restarts its register-stop timer; otherwise, the DR starts sending register messages with encapsulated data again when the register-stop timer expires.

The register-stop timer is set to a random value chosen uniformly from the interval (0.5 times register_suppression_time, 1.5 times register_suppression_time) minus register_probe_time.

Configure a filtering rule for register messages on C-RP routers and configure them to calculate the checksum based on the entire register messages. Configure the register suppression time and the register probe time on routers that may become source-side DRs.

To configure register-related parameters:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a filtering rule for register messages.

register-policy acl-number

Optional.

No register filtering rule by default.

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

register-header-checksum

Optional.

By default, the checksum is calculated based on the header of register messages.

5.     Configure the register suppression time.

register-suppression-timeout interval

Optional.

60 seconds by default.

6.     Configure the register probe time.

probe-interval interval

Optional.

5 seconds by default.

 

Configuring SPT switchover

Because an RPT is possibly not the tree that has the shortest path, the multicast forwarding path needs to be switched from the RPT to the SPT. By default, the device switches to the SPT immediately after it receives the first multicast packet from the RPT.

 

CAUTION

CAUTION:

Once a multicast forwarding entry is created on the source-side DR, it stops forwarding subsequent multicast packets in register messages even if a register outgoing interface is available. Therefore, to avoid forwarding failure, do not include the infinity keyword in this command on a static RP or a C-RP.

 

Perform the following configuration on routers that may become receiver-side DRs.

To configure the device not to switch from the RPT to the SPT:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the SPT switchover.

spt-switch-threshold  infinity [ group-policy acl-number [ order order-value] ]

Optional.

By default, the device switches to the SPT immediately after it receives the first multicast packet from the RPT.

 

Configuring BIDIR-PIM

BIDIR-PIM configuration task list

Complete these tasks to configure BIDIR-PIM:

 

Task

Remarks

Enabling PIM-SM

Required.

Enabling BIDIR-PIM

Required.

Configuring an RP

Configuring a static RP

Required.

Use any approach.

Configuring a C-RP

Enabling auto-RP

Configuring C-RP timers globally

Optional.

Configuring a BSR

Configuring a C-BSR

Required.

Configuring a BIDIR-PIM domain border

Optional.

Configuring global C-BSR parameters

Optional.

Configuring C-BSR timers

Optional.

Disabling BSM semantic fragmentation

Optional.

Configuring an admin-scope zone boundary

Enabling administrative scoping

Optional.

Configuring administrative scoping

Optional.

Configuring C-BSRs for each admin-scope zone and the global-scope zone

Optional.

Configuring PIM common features

Optional.

 

Configuration prerequisites

Before configuring BIDIR-PIM, complete the following task:

·           Configure a unicast routing protocol so that all devices in the domain are interoperable at the network layer.

·           Determine the IP address of a static RP and the ACL that defines the range of the multicast groups to be served by the static RP.

·           Determine the C-RP priority and the ACL that defines the range of multicast groups to be served by each C-RP

·           Determine the legal C-RP address range and the ACL that defines the range of multicast groups to be served.

·           Determine the C-RP-Adv interval.

·           Determine the C-RP timeout timer.

·           Determine the C-BSR priority.

·           Determine the Hash mask length.

·           Determine the ACL that defines the legal BSR address range.

·           Determine the BS period.

·           Determine the BS timeout timer.

Enabling PIM-SM

Because BIDIR-PIM is implemented on the basis of PIM-SM, you must enable PIM-SM before enabling BIDIR-PIM. To deploy a BIDIR-PIM domain, enable PIM-SM on all non-border interfaces of the domain.

Enabling PIM-SM globally for the public network

To enable PIM-SM for the public network:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable IP multicast routing.

multicast routing-enable

Disable by default

3.     Enter interface view.

interface interface-type interface-number

N/A

4.     Enable PIM-SM.

pim sm

Disabled by default

 

Enabling PIM-SM for a VPN instance

To enable PIM-SM for a VPN instance:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Create a VPN instance and enter VPN instance view.

ip vpn-instance vpn-instance-name

N/A

3.     Configure an RD for the VPN instance.

route-distinguisher route-distinguisher

Not configured by default.

4.     Enable IP multicast routing.

multicast routing-enable

Disabled by default.

5.     Enter interface view.

interface interface-type interface-number

N/A

6.     Bind the interface with the VPN instance.

ip binding vpn-instance vpn-instance-name

By default, an interface belongs to the public network, and it is not bound with any VPN instance.

7.     Enable PIM-SM.

pim sm

Disabled by default.

 

CAUTION

CAUTION:

On a router, all interfaces in the same VPN instance must work in the same PIM mode.

 

 

NOTE:

·       For more information about the ip vpn-instance, route-distinguisher, and ip binding vpn-instance commands, see MPLS Command Reference.

·       For more information about the multicast routing-enable command, see IP Multicast Command Reference.

 

Enabling BIDIR-PIM

 

 

NOTE:

If BIDIR-PIM is enabled on the public network or in a VPN, the tunnel interfaces on the public network or in the VPN do not support Layer 3 multicasting.

 

Perform this configuration on all routers in the BIDIR-PIM domain.

To enable BIDIR-PIM:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Enable BIDIR-PIM.

bidir-pim enable

Disabled by default.

 

Configuring an RP

An RP can be manually configured or dynamically elected through the BSR mechanism. For a large PIM network, static RP configuration is a tedious job. Generally, static RP configuration is just a backup means for the dynamic RP election mechanism to enhance the robustness and operation manageability of a multicast network.

Configuring a static RP

If there is only one dynamic RP in a network, manually configuring a static RP can avoid communication interruption due to single-point failures and avoid frequent message exchange between C-RPs and the BSR.

Perform this configuration on all routers in the BIDIR-PIM domain.

To configure a static RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a static RP for BIDIR-PIM.

static-rp rp-address [ acl-number ] [ preferred ] bidir

No static RP by default

 

CAUTION

CAUTION:

You must perform static RP configuration on all routers in the PIM-SM domain and specify the same RP address.

 

 

NOTE:

In BIDIR-PIM, a static RP can be specified with a virtual IP address. For example, if the IP addresses of the interfaces at the two ends of a link are 10.1.1.1/24 and 10.1.1.2/24, you can specify a virtual IP address, like 10.1.1.100/24, for the static RP. As a result, the link becomes an RPL.

 

Configuring a C-RP

In a BIDIR-PIM domain, you can configure routers that intend to become the RP as C-RPs. The BSR collects the C-RP information by receiving the C-RP-Adv messages from C-RPs or auto-RP announcements from other routers and organizes the information into an RP-set, which is flooded throughout the entire network. Then, the other routers in the network calculate the mappings between specific group ranges and the corresponding RPs based on the RP-set. H3C recommends that you configure C-RPs on backbone routers.

To guard against C-RP spoofing, configure a legal C-RP address range and the range of multicast groups to be served on the BSR. In addition, because every C-BSR has a chance to become the BSR, you must configure the same filtering policy on all C-BSRs in the BIDIR-PIM domain.

To configure a C-RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure an interface to be a C-RP for BIDIR-PIM.

c-rp interface-type interface-number [ group-policy acl-number | priority priority | holdtime hold-interval | advertisement-interval adv-interval ] * bidir

No C-RP is configured by default.

 

 

NOTE:

·       When you configure a C-RP, ensure a relatively large bandwidth between this C-RP and the other devices in the BIDIR-PIM domain.

·       An RP can serve multiple multicast groups or all multicast groups. Only one RP can forward multicast traffic for a multicast group at a moment.

 

Enabling auto-RP

Auto-RP announcement and discovery messages are addressed to the multicast group addresses 224.0.1.39 and 224.0.1.40 respectively. With auto-RP enabled on a device, the device can receive these two types of messages and record the RP information carried in such messages.

To enable auto-RP:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Enable auto-RP.

auto-rp enable

Disabled by default

 

Configuring C-RP timers globally

To enable the BSR to distribute the RP-set information within the BIDIR-PIM domain, C-RPs must periodically send C-RP-Adv messages to the BSR. The BSR learns the RP-set information from the received messages, and encapsulates its own IP address together with the RP-set information in its bootstrap messages. The BSR then floods the bootstrap messages to all PIM routers in the network.

Each C-RP encapsulates a timeout value in its C-RP-Adv messages. Upon receiving a C_RP-Adv message, the BSR obtains this timeout value and starts a C-RP timeout timer. If the BSR fails to hear a subsequent C-RP-Adv message from the C-RP within the timeout interval, the BSR assumes the C-RP to have expired or become unreachable.

The C-RP timers need to be configured on C-RP routers.

To configure C-RP timers globally:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the C-RP-Adv interval.

c-rp advertisement-interval interval

Optional

60 seconds by default

4.     Configure C-RP timeout time.

c-rp holdtime interval

Optional

150 seconds by default

 

 

NOTE:

For more information about the configuration of other timers in BIDIR-PIM, see “Configuring PIM common timers.”

 

Configuring a BSR

A BIDIR-PIM domain can have only one BSR, but must have at least one C-BSR. Any router can be configured as a C-BSR. Elected from C-BSRs, the BSR collects and advertises RP information in the BIDIR-PIM domain.

Configuring a C-BSR

C-BSRs must be configured on routers in the backbone network. When you configure a router as a C-BSR, be sure to specify a PIM-SM-enabled interface on the router. The BSR election process is as follows:

·           Initially, every C-BSR assumes itself to be the BSR of the BIDIR-PIM domain, and uses its interface IP address as the BSR address to send bootstrap messages.

·           When a C-BSR receives the bootstrap message of another C-BSR, it first compares its own priority with the other C-BSR’s priority carried in message. The C-BSR with a higher priority wins. If there is a tie in the priority, the C-BSR with a higher IP address wins. The loser uses the winner’s BSR address to replace its own BSR address and no longer assumes itself to be the BSR, while the winner retains its own BSR address and continues assuming itself to be the BSR.

Configuring a legal range of BSR addresses enables filtering of bootstrap messages based on the address range, thus to prevent a maliciously configured host from masquerading as a BSR. The same configuration must be made on all routers in the BIDIR-PIM domain. The following are typical BSR spoofing cases and the corresponding preventive measures:

1.      Some maliciously configured hosts can forge bootstrap messages to fool routers and change RP mappings. Such attacks often occur on border routers. Because a BSR is inside the network whereas hosts are outside the network, you can protect a BSR against attacks from external hosts by enabling the border routers to perform neighbor checks and RPF checks on bootstrap messages and discard unwanted messages.

2.      When a router in the network is controlled by an attacker or when an illegal router is present in the network, the attacker can configure this router as a C-BSR and make it win BSR election to control the right of advertising RP information in the network. After being configured as a C-BSR, a router automatically floods the network with bootstrap messages. Because a bootstrap message has a TTL value of 1, the whole network will not be affected as long as the neighbor router discards these bootstrap messages. Therefore, with a legal BSR address range configured on all routers in the entire network, all these routers will discard bootstrap messages from out of the legal address range.

The above-mentioned preventive measures can partially protect the security of BSRs in a network. However, if a legal BSR is controlled by an attacker, the above-mentioned problem will still occur.

To configure a C-BSR:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure an interface as a C-BSR.

c-bsr interface-type interface-number [ hash-length [ priority ] ]

No C-BSRs are configured by default.

4.     Configure a legal BSR address range.

bsr-policy acl-number

Optional.

No restrictions on BSR address range by default.

 

 

NOTE:

Because a large amount of information needs to be exchanged between a BSR and the other devices in the BIDIR-PIM domain, a relatively large bandwidth should be provided between the C-BSRs and the other devices in the BIDIR-PIM domain.

 

Configuring a BIDIR-PIM domain border

As the administrative core of a BIDIR-PIM domain, the BSR sends the collected RP-Set information in the form of bootstrap messages to all routers in the BIDIR-PIM domain.

A BIDIR-PIM domain border is a bootstrap message boundary. Each BSR has its specific service scope. A number of BIDIR-PIM domain border interfaces partition a network into different BIDIR-PIM domains. Bootstrap messages cannot cross a domain border in either direction.

Perform the following configuration on routers that you want to configure as the PIM domain border.

To configure a BIDIR-PIM domain border:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure a BIDIR-PIM domain border.

pim bsr-boundary

By default, no BIDIR-PIM domain border is configured.

 

Configuring global C-BSR parameters

In each BIDIR-PIM domain, a unique BSR is elected from C-BSRs. The C-RPs in the BIDIR-PIM domain send advertisement messages to the BSR. The BSR summarizes the advertisement messages to form an RP-set and advertises it to all routers in the BIDIR-PIM domain. All the routers use the same hash algorithm to get the RP address corresponding to specific multicast groups.

Perform the following configuration on C-BSR routers.

To configure global C-BSR parameters:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the hash mask length.

c-bsr hash-length hash-length

Optional

30 by default

4.     Configure the C-BSR priority.

c-bsr priority priority

Optional

64 by default

 

 

NOTE:

You can configure the hash mask length and C-BSR priority globally, in a admin-scope zone, and/or in the global scope zone.

·       The values configured in the global scope zone or admin-scope zone have preference over the global values.

·       If you do not configure these parameters in the global scope zone or admin-scope zone, the corresponding global values will be used.

For configuration of C-BSR parameters for an admin-scope zone and global scope zone, see “Configuring C-BSRs for each admin-scope zone and the global-scope zone.”

 

Configuring C-BSR timers

The BSR election winner multicasts its own IP address and RP-Set information through bootstrap messages within the entire zone it serves. The BSR floods bootstrap messages throughout the network at the interval of BS (BSR state) period. Any C-BSR that receives a bootstrap message retains the RP-set for the length of BS timeout, during which no BSR election takes place. If the BSR state times out and no bootstrap message is received from the BSR, a new BSR election process is triggered among the C-BSRs.

Perform the following configuration on C-BSR routers.

To configure C-BSR timers:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the BS period.

c-bsr interval interval

Optional.

For the default value, see the note below.

4.     Configure the BS timeout.

c-bsr holdtime interval

Optional.

For the default value, see the note below.

 

 

NOTE:

About the BS period:

·       By default, the BS period is determined by this formula: BS period = (BS timeout – 10) / 2. The default BS timeout is 130 seconds, so the default BS period = (130 – 10) / 2 = 60 (seconds).

·       If this parameter is manually configured, the system will use the configured value.

About the BS timeout:

·       By default, the BS timeout value is determined by this formula: BS timeout = BS period × 2 + 10. The default BS period is 60 seconds, so the default BS timeout = 60 × 2 + 10 = 130 (seconds).

·       If this parameter is manually configured, the system will use the configured value.

 

CAUTION

CAUTION:

Be sure to configure a BS period value smaller than the BS timeout value.

 

Disabling BSM semantic fragmentation

Generally, a BSR periodically distributes the RP-set information in bootstrap messages within the BIDIR-PIM domain. It encapsulates a BSM in an IP datagram and may split the datagram into fragments if the message exceeds the maximum transmission unit (MTU). In respect of such IP fragmentation, loss of a single IP fragment leads to unavailability of the entire message.

Semantic fragmentation of BSMs can solve this issue. When a BSM exceeds the MTU, it is split to multiple bootstrap message fragments (BSMFs).

·           Upon receiving a BSMF that contains the RP-set information of one group range, a non-BSR router updates corresponding RP-set information directly.

·           If the RP-set information of one group range is carried in multiple BSMFs, a non-BSR router updates corresponding RP-set information upon receiving all these BSMFs.

Because the RP-set information contained in each segment is different, loss of some IP fragments will not result in dropping of the entire message.

The function of BSM semantic fragmentation is enabled by default. Devices not supporting this function may deem a fragment as an entire message, thus learning only part of the RP-set information. Therefore, if such devices exist in the BIDIR-PIM domain, you need to disable the semantic fragmentation function on the C-BSRs.

To disable the BSM semantic fragmentation function:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Disable the BSM semantic fragmentation function.

undo bsm-fragment enable

By default, the BSM semantic fragmentation function is enabled.

 

 

NOTE:

Generally, a BSR performs BSM semantic fragmentation according to the MTU of its BSR interface. However, the semantic fragmentation of BSMs originated due to learning of a new PIM neighbor is performed according to the MTU of the outgoing interface.

 

Configuring administrative scoping

With administrative scoping disabled, a BIDIR-PIM domain has only one BSR. The BSR manages the whole network. To manage your network more effectively and specifically, you can partition the BIDIR-PIM domain into multiple admin-scope zones. Each admin-scope zone maintains a BSR, which serves a specific multicast group range; while the global scope zone also maintains a BSR, which serves all the rest multicast groups.

Enabling administrative scoping

Before configuring an admin-scope zone, you must enable administrative scoping first.

Perform the following configuration on all routers in the BIDIR-PIM domain.

To enable administrative scoping:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Enable administrative scoping.

c-bsr admin-scope

Disabled by default

 

Configuring an admin-scope zone boundary

The boundary of each admin-scope zone is formed by ZBRs. Each admin-scope zone maintains a BSR, which serves a specific multicast group range. Multicast protocol packets (such as assert messages and bootstrap messages) that belong to this range cannot cross the admin-scope zone boundary.

Perform the following configuration on all routers in the BIDIR-PIM domain.

To configure an admin-scope zone boundary:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure a multicast forwarding boundary.

multicast boundary group-address { mask | mask-length }

By default, no multicast forwarding boundary is configured.

 

 

NOTE:

The group-address { mask | mask-length } parameter of the multicast boundary command can be used to specify the multicast groups an admin-scope zone serves, in the range of 239.0.0.0/8. For more information about the multicast boundary command, see IP Multicast Command Reference.

 

Configuring C-BSRs for each admin-scope zone and the global-scope zone

In a network with administrative scoping enabled, group-range-specific BSRs are elected from C-BSRs. C-RPs in the network send advertisement messages to the specific BSR. The BSR summarizes the advertisement messages to form an RP-set and advertises it to all routers in the specific admin-scope zone. All the routers use the same hash algorithm to get the RP address corresponding to the specific multicast group.

Configure C-BSRs for each admin-scope zone and the global-scope zone.

·           Configure C-BSRs for each admin-scope zone:

Perform the following configuration on the routers that you want to configure as C-BSRs in admin-scope zones.

To configure a C-BSR for an admin-scope zone:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a C-BSR for an admin-scope zone.

c-bsr group group-address { mask | mask-length } [ hash-length hash-length | priority priority ] *

No C-BSRs are configured for an admin-scope zone by default.

 

 

NOTE:

The group-address { mask | mask-length } parameter of the c-bsr group command can specify the multicast groups the C-BSR serves, in the range of 239.0.0.0/8.

 

·           Configure C-BSRs for the global-scope zone:

Perform the following configuration on the routers that you want to configure as C-BSRs in the global-scope zone.

To configure a C-BSR for the global-scope zone:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a C-BSR for the global-scope zone.

c-bsr global [ hash-length hash-length | priority priority ] *

No C-BSRs are configured for the global-scope zone by default.

 

 

NOTE:

You can configure the hash mask length and C-BSR priority globally, in a admin-scope zone, in the global scope zone, or configure them in all these scopes.

·       The values configured in the global scope zone or admin-scope zone have preference over the global values.

·       If you do not configure these parameters in the global scope zone or admin-scope zone, the corresponding global values will be used.

For configuration of global C-BSR parameters, see “Configuring global C-BSR parameters.”

 

Configuring PIM-SSM

 

 

NOTE:

The PIM-SSM model needs the support of IGMPv3. Therefore, be sure to enable IGMPv3 on PIM routers with multicast receivers.

 

PIM-SSM configuration task list

Complete these tasks to configure PIM-SSM:

 

Task

Remarks

Enabling PIM-SM

Required

Configuring the SSM group range

Optional

Configuring PIM common features

Optional

 

Configuration prerequisites

Before configuring PIM-SSM, complete the following task:

·           Configure any unicast routing protocol so that all devices in the domain are interoperable at the network layer.

·           Determine the SSM group range.

Enabling PIM-SM

The SSM model is implemented based on some subsets of PIM-SM. Therefore, a router is PIM-SSM capable after you enable PIM-SM on it.

When deploying a PIM-SM domain, enable PIM-SM on non-border interfaces of the routers.

Enabling PIM-SM globally on the public network

To enable PIM-SM globally on the public network:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable IP multicast routing.

multicast routing-enable

Disable by default

3.     Enter interface view.

interface interface-type interface-number

N/A

4.     Enable PIM-SM.

pim sm

Disabled by default

 

Enabling PIM-SM in a VPN instance

To enable PIM-SM in a VPN instance:

 

Step

Command

Description

1.     Enter system view.

system-view

N/A

2.     Create a VPN instance and enter VPN instance view.

ip vpn-instance vpn-instance-name

N/A

3.     Configure an RD for the VPN instance.

route-distinguisher route-distinguisher

No RD is configured by default.

4.     Enable IP multicast routing.

multicast routing-enable

Disabled by default.

5.     Enter interface view.

interface interface-type interface-number

N/A

6.     Bind the interface with a VPN instance.

ip binding vpn-instance vpn-instance-name

By default, an interface belongs to the public network, and it is not bound with any VPN instance.

7.     Enable PIM-SM.

pim sm

Disabled by default.

 

CAUTION

CAUTION:

·       All the interfaces in the same VPN instance on the same device must work in the same PIM mode.

·       IGMP snooping is not allowed in a VLAN after PIM-SM is enabled on the virtual interface of the VLAN, and vice versa.

 

 

NOTE:

·       For more information about the ip vpn-instance, route-distinguisher, and ip binding vpn-instance commands, see MPLS Command Reference.

·       For more information about the multicast routing-enable command, see IP Multicast Command Reference.

 

Configuring the SSM group range

As for whether the information from a multicast source is delivered to the receivers based on the PIM-SSM model or the PIM-SM model, this depends on whether the group address in the (S, G) channel subscribed by the receivers falls in the SSM group range. All PIM-SM-enabled interfaces assume that multicast groups within this address range are using the PIM-SSM model.

Perform the following configuration on all routers in the PIM-SSM domain.

To configure an SSM multicast group range:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the SSM group range.

ssm-policy acl-number

Optional

232.0.0.0/8 by default

 

CAUTION

CAUTION:

·       Make sure that the same SSM group range is configured on all routers in the entire domain. Otherwise, multicast information cannot be delivered through the SSM model.

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

 

Configuring PIM common features

 

 

NOTE:

·       For the functions or parameters that can be configured in both PIM view and interface view described in this section:

·       Configurations performed in PIM view are effective to all interfaces, while configurations performed in interface view are effective to the current interface only.

·       If the same function or parameter is configured in both PIM view and interface view, the configuration made in interface view has preference over the configuration made in PIM view, regardless of the configuration sequence.

 

PIM common feature configuration task list

Complete these tasks to configure PIM common features:

 

Task

Remarks

Configuring a multicast data filter

Optional

Configuring a hello message filter

Optional

Configuring PIM hello options

Optional

Configuring the prune delay

Optional

Configuring PIM common timers

Optional

Configuring join/prune message sizes

Optional

Configuring PIM to work with BFD

Optional

 

Configuration prerequisites

Before configuring PIM common features, complete the following tasks:

·           Configure any unicast routing protocol so that all devices in the domain are interoperable at the network layer.

·           Configure PIM-DM, or PIM-SM, or PIM-SSM.

·           Determine the ACL for filtering multicast data.

·           Determine the ACL that defines the legal source address range for hello messages.

·           Determine the priority for DR election (global value/interface level value).

·           Determine the PIM neighbor timeout time (global value/interface value).

·           Determine the prune message delay (global value/interface level value).

·           Determine the prune override interval (global value/interface level value).

·           Determine the prune delay.

·           Determine the hello interval (global value/interface level value).

·           Determine the maximum delay between hello message (interface level value).

·           Determine the assert timeout time (global value/interface value).

·           Determine the join/prune interval (global value/interface level value).

·           Determine the join/prune timeout (global value/interface value).

·           Determine the multicast source lifetime.

·           Determine the maximum size of join/prune messages.

·           Determine the maximum number of (S, G) entries in a join/prune message.

Configuring a multicast data filter

No matter in a PIM-DM domain or a PIM-SM domain, routers can check passing-by multicast data based on the configured filtering rules and determine whether to continue forwarding the multicast data. In other words, PIM routers can act as multicast data filters. These filters can help implement traffic control on one hand, and control the information available to receivers downstream to enhance data security on the other hand.

To configure a multicast data filter:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure a multicast group filter.

source-policy acl-number

No multicast data filter by default

 

 

NOTE:

·       Generally, a smaller distance from the filter to the multicast source results in a more remarkable filtering effect.

·       This filter works not only on independent multicast data but also on multicast data encapsulated in register messages.

 

Configuring a hello message filter

Along with the wide applications of PIM, the security requirement for the protocol is becoming more and more demanding. The establishment of correct PIM neighboring relationships is the prerequisite for secure application of PIM. You can configure a legal source address range for hello messages on interfaces of routers to ensure the correct PIM neighboring relationships, and thus to guard against PIM message attacks.

To configure a hello message filter:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure a hello message filter.

pim neighbor-policy acl-number

No hello message filter by default

 

 

NOTE:

With the hello message filter configured, if hello messages of an existing PIM neighbor fail to pass the filter, the PIM neighbor will be removed automatically when it times out.

 

Configuring PIM hello options

No matter in a PIM-DM domain or a PIM-SM domain, the hello messages sent among routers contain many configurable options, including:

·           DR_Priority (for PIM-SM only)—Priority for DR election. The device with the highest priority wins the DR election. You can configure this parameter on all the routers in a multi-access network directly connected to multicast sources or receivers.

·           Holdtime—The timeout time of PIM neighbor reachability state. When this timer times out, if the router has received no hello message from a neighbor, it assumes that this neighbor has expired or become unreachable.

·           LAN_Prune_Delay—The delay of prune messages on a multi-access network. This option consists of LAN-delay (namely, prune message delay), override-interval, and neighbor tracking flag. If the LAN-delay or override-interval values of different PIM routers on a multi-access subnet are different, the largest value takes effect. If you want to enable neighbor tracking, the neighbor tracking feature should be enabled on all PIM routers on a multi-access subnet.

The LAN-delay setting will cause the upstream routers to delay processing received prune messages. The override-interval sets the length of time a downstream router is allowed to wait before sending a prune override message. When a router receives a prune message from a downstream router, it does not perform the prune action immediately; instead, it maintains the current forwarding state for a period of LAN-delay plus override-interval. If the downstream router needs to continue receiving multicast data, it must send a join message within the prune override interval; otherwise, the upstream router will perform the prune action when the period of LAN-delay plus override-interval times out.

A hello message sent from a PIM router contains a generation ID option. The generation ID is a random value for the interface on which the hello message is sent. Normally, the generation ID of a PIM router does not change unless the status of the router changes (for example, when PIM is just enabled on the interface or the device is restarted). When the router starts or restarts sending hello messages, it generates a new generation ID. If a PIM router finds that the generation ID in a hello message from the upstream router has changed, it assumes that the status of the upstream neighbor is lost or the upstream neighbor has changed. In this case, it triggers a join message for state update.

If you disable join suppression (namely, enable neighbor tracking), the join suppression feature should be disabled on all PIM routers on a multi-access subnet; otherwise, the upstream router will fail to explicitly track which downstream routers have joined to it.

Configuring hello options globally

To configure hello options globally:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the priority for DR election.

hello-option dr-priority priority

Optional

1 by default

4.     Configure PIM neighbor timeout time.

hello-option holdtime interval

Optional

105 seconds by default

5.     Configure the prune message delay time (LAN-delay).

hello-option lan-delay interval

Optional

500 milliseconds by default

6.     Configure the prune override interval.

hello-option override-interval interval

Optional

2500 milliseconds by default

7.     Disable join suppression.

hello-option neighbor-tracking

Enabled by default

 

Configuring hello options on an interface

To configure hello options on an interface:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure the priority for DR election.

pim hello-option dr-priority priority

Optional.

1 by default.

4.     Configure PIM neighbor timeout time.

pim hello-option holdtime interval

Optional.

105 seconds by default.

5.     Configure the prune message delay time (LAN-delay).

pim hello-option lan-delay interval

Optional.

500 milliseconds by default.

6.     Configure the prune override interval.

pim hello-option override-interval interval

Optional.

2500 milliseconds by default.

7.     Disable join suppression.

pim hello-option neighbor-tracking

Enabled by default.

8.     Configure the interface to reject hello messages without a generation ID.

pim require-genid

By default, hello messages without Generation_ID are accepted.

 

Configuring the prune delay

If a downstream router does not support the prune override interval field, you can configure a prune delay interval on the upstream router so that it will not perform the prune action immediately after receiving the prune message; instead, it maintains the current forwarding state for the prune delay interval. In this period, if the upstream router receives a join message from the downstream router, it cancels the prune action.

To configure the prune delay time

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the prune delay interval.

prune delay interval

Optional

3 seconds by default

 

Configuring PIM common timers

PIM routers discover PIM neighbors and maintain PIM neighboring relationships with other routers by periodically sending out hello messages.

Upon receiving a hello message, a PIM router waits a random period, which is smaller than the maximum delay between hello messages, before sending out a hello message. This avoids collisions that occur when multiple PIM routers send hello messages simultaneously.

A PIM router periodically sends join/prune messages to its upstream for state update. A join/prune message contains the join/prune timeout time. The upstream router sets a join/prune timeout timer for each pruned downstream interface.

Any router that has lost assert election will prune its downstream interface and maintain the assert state for a period of time. When the assert state times out, the assert losers will resume multicast forwarding.

When a router fails to receive subsequent multicast data from multicast source S, the router does not immediately delete the corresponding (S, G) entry; instead, it maintains the (S, G) entry for a period of time, namely the multicast source lifetime, before deleting the (S, G) entry.

Configuring PIM common timers globally

To configure PIM common timers globally:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the hello interval.

timer hello interval

Optional

30 seconds by default

4.     Configure the join/prune interval.

timer join-prune interval

Optional

60 seconds by default

5.     Configure the join/prune timeout time.

holdtime join-prune interval

Optional

210 seconds by default

6.     Configure assert timeout time.

holdtime assert interval

Optional

180 seconds by default

7.     Configure the multicast source lifetime.

source-lifetime interval

Optional

210 seconds by default

 

Configuring PIM common timers on an interface

To configure PIM common timers on an interface:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Configure the hello interval.

pim timer hello interval

Optional

30 seconds by default

4.     Configure the maximum delay between hello messages.

pim triggered-hello-delay interval

Optional

5 seconds by default

5.     Configure the join/prune interval.

pim timer join-prune interval

Optional

60 seconds by default

6.     Configure the join/prune timeout time.

pim holdtime join-prune interval

Optional

210 seconds by default

7.     Configure assert timeout time.

pim holdtime assert interval

Optional

180 seconds by default

 

 

NOTE:

If there are no special networking requirements, we recommend that you use the default settings.

 

Configuring join/prune message sizes

A larger join/prune message size will result in loss of a larger amount of information when a message is lost; with a reduced join/message size, the loss of a single message will bring relatively minor impact.

By controlling the maximum number of (S, G) entries in a join/prune message, you can effectively reduce the number of (S, G) entries sent per unit of time.

To configure join/prune message sizes:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter public network PIM view or VPN instance PIM view.

pim [ vpn-instance vpn-instance-name ]

N/A

3.     Configure the maximum size of a join/prune message.

jp-pkt-size packet-size

Optional

8100 bytes by default

4.     Configure the maximum number of (S, G) entries in a join/prune message.

jp-queue-size queue-size

Optional

1020 by default

 

Configuring PIM to work with BFD

PIM uses hello messages to elect a DR for a multi-access network. The elected DR will be the only multicast forwarder on the multi-access network.

If the DR fails, a new DR election process will start after the DR is aged out. However, it might take a long period of time. To start a new DR election process immediately after the original DR fails, enable PIM to work with Bidirectional Forwarding Detection (BFD) on a multi-access network to detect failures of the links among PIM neighbors. You must enable PIM to work with BFD on all PIM-capable routers on a multi-access network, so that the PIM neighbors can fast detect DR failures and start a new DR election process.

Before you configure this feature on an interface, be sure to enable PIM-DM or PIM-SM on the interface.

To enable PIM to work with BFD:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter interface view.

interface interface-type interface-number

N/A

3.     Enable PIM to work with BFD.

pim bfd enable

Disabled by default

 

 

NOTE:

For more information about BFD, see High Availability Configuration Guide.

 

Displaying and maintaining PIM

 

Task

Command

Remarks

Display the BSR information in the PIM-SM domain and locally configured C-RP information in effect.

display pim [ all-instance | vpn-instance vpn-instance-name ] bsr-info [ | { begin | exclude | include } regular-expression ]

Available in any view

Display unicast routes used by PIM.

display pim [ all-instance | vpn-instance vpn-instance-name ] claimed-route [ source-address ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Display the number of PIM control messages.

display pim [ all-instance | vpn-instance vpn-instance-name ] control-message counters [ message-type { probe | register | register-stop } | [ interface interface-type interface-number | message-type { assert | bsr | crp | graft | graft-ack | hello | join-prune | state-refresh } ] * ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Display the DF information of BIDIR-PIM.

display pim [ all-instance | vpn-instance vpn-instance-name ] df-info [ rp-address ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Display information about unacknowledged graft messages.

display pim [ all-instance | vpn-instance vpn-instance-name ] grafts [ | { begin | exclude | include } regular-expression ]

Available in any view

Display PIM information on an interface.

display pim [ all-instance | vpn-instance vpn-instance-name ] interface [ interface-type interface-number ] [ verbose ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Display information about join/prune messages to send.

display pim [all-instance | vpn-instance vpn-instance-name ] join-prune mode { sm [ flags flag-value ] | ssm } [ interface interface-type interface-number | neighbor neighbor-address ] * [ verbose ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Display PIM neighboring information.

display pim [ all-instance | vpn-instance vpn-instance-name ] neighbor [ interface interface-type interface-number | neighbor-address | verbose ] * [ | { begin | exclude | include } regular-expression ]

Available in any view

Display PIM routing table.

display pim [ all-instance | vpn-instance vpn-instance-name ] routing-table [ group-address [ mask { mask-length | mask } ] | source-address [ mask { mask-length | mask } ] | incoming-interface [ interface-type interface-number | register ] | outgoing-interface { include | exclude | match } { interface-type interface-number | register } | mode mode-type | flags flag-value | fsm ] * [ | { begin | exclude | include } regular-expression ]

Available in any view

Display RP information.

display pim [ all-instance | vpn-instance vpn-instance-name ] rp-info [ group-address ] [ | { begin | exclude | include } regular-expression ]

Available in any view

Clear statistics for PIM control messages.

reset pim [ all-instance | vpn-instance vpn-instance-name ] control-message counters [ interface interface-type interface-number ]

Available in user view

 

PIM configuration examples

PIM-DM configuration example

Network requirements

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 PIM domain operates in the dense mode.

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

IGMPv2 runs between Router A and N1, and between Router B/Router C and N2.

Figure 14 Network diagram

Device

Interface

IP address

Device

Interface

IP address

Router A

GE3/1/1

10.110.1.1/24

Router D

GE3/1/1

10.110.5.1/24

 

S4/1/9/1:0

192.168.1.1/24

 

S4/1/9/1:0

192.168.1.2/24

Router B

GE3/1/1

10.110.2.1/24

 

POS5/1/1

192.168.2.2/24

 

POS5/1/1

192.168.2.1/24

 

POS5/1/2

192.168.3.2/24

Router C

GE3/1/1

10.110.2.2/24

 

 

 

 

POS5/1/1

192.168.3.1/24

 

 

 

 

Configuration procedure

1.      Assign IP addresses and configure unicast routing:

Configure the IP address and subnet mask for each interface as per Figure 14. (Details not shown)

Configure the OSPF protocol for interoperation among the routers in the PIM-DM domain. Ensure the network-layer interoperation in the PIM-DM domain and enable dynamic update of routing information among the routers through a unicast routing protocol. (Details not shown)

2.      Enable IP multicast routing, PIM-DM, and IGMP

# Enable IP multicast routing on Router A, enable PIM-DM on each interface, and enable IGMP on GigabitEthernet 3/1/1, which connects Router A to N1.

<RouterA> system-view

[RouterA] multicast routing-enable

[RouterA] interface GigabitEthernet 3/1/1

[RouterA-GigabitEthernet3/1/1] igmp enable

[RouterA-GigabitEthernet3/1/1] pim dm

[RouterA-GigabitEthernet3/1/1] quit

[RouterA] interface serial 4/1/9/1:0

[RouterA-Serial4/1/9/1:0] pim dm

[RouterA-Serial4/1/9/1:0] quit

The configuration on Router B and Router C is similar to that on Router A.

# Enable IP multicast routing on Router D, and enable PIM-DM on each interface.

<RouterD> system-view

[RouterD] multicast routing-enable

[RouterD] interface GigabitEthernet 3/1/1

[RouterD-GigabitEthernet3/1/1] pim dm

[RouterD-GigabitEthernet3/1/1]] quit

[RouterD] interface serial 4/1/9/1:0

[RouterD-Serial4/1/9/1:0] pim dm

[RouterD-Serial4/1/9/1:0] quit

[RouterD] interface pos 5/1/1

[RouterD-Pos5/1/1] pim dm

[RouterD-Pos5/1/1] quit

[RouterD] interface pos 5/1/2

[RouterD-Pos5/1/2] pim dm

[RouterD-Pos5/1/2] quit

3.      Verify the configuration

Use the display pim interface command to view the PIM configuration and running status on each interface. For example:

# View the PIM configuration information on Router D.

[RouterD] display pim interface

 VPN-Instance: public net

 Interface           NbrCnt HelloInt   DR-Pri     DR-Address

 GE3/1/1               0      30         1          10.110.5.1     (local)

 Ser4/1/9/1:0          1      30         1          192.168.1.2    (local)

 Pos5/1/1              1      30         1          192.168.2.2    (local)

 Pos5/1/2              1      30         1          192.168.3.2    (local)

Use the display pim neighbor command to view the PIM neighboring relationships among the routers. For example:

# Verify the PIM neighboring relationships on Router D.

[RouterD] display pim neighbor

 VPN-Instance: public net

 Total Number of Neighbors = 3

 

 Neighbor         Interface           Uptime   Expires  Dr-Priority

 192.168.1.1      Ser4/1/9/1:0        00:02:22 00:01:27 1

 192.168.2.1      Pos5/1/1            00:00:22 00:01:29 3

 192.168.3.1      Pos5/1/1            00:00:23 00:01:31 5

Assume that Host A needs to receive the information addressed to a multicast group G (225.1.1.1). After the multicast source S (10.110.5.100/24) sends multicast packets to the multicast group G, an SPT is established through traffic flooding. Routers on the SPT path (Router A and Router D) have their (S, G) entries. Host A sends Router A an IGMP report to join multicast group G, and a (*, G) entry is generated on Router A. To view the PIM routing table information on a router, use the display pim routing-table command. For example:

# View the PIM routing table information on Router A.

[RouterA] display pim routing-table

 VPN-Instance: public net

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

 

 (*, 225.1.1.1)

     Protocol: pim-dm, Flag: WC

     UpTime: 00:04:25

     Upstream interface: NULL

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet3/1/1

             Protocol: igmp, UpTime: 00:04:25, Expires: never

 

 (10.110.5.100, 225.1.1.1)

     Protocol: pim-dm, Flag: ACT

     UpTime: 00:06:14

     Upstream interface: Serial4/1/9/1:0

         Upstream neighbor: 192.168.1.2

         RPF prime neighbor: 192.168.1.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet3/1/1

             Protocol: pim-dm, UpTime: 00:04:25, Expires: never

# View the PIM routing table information on Router D.

[RouterD] display pim routing-table

 VPN-Instance: public net

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

 

 (10.110.5.100, 225.1.1.1)

     Protocol: pim-dm, Flag: LOC ACT

     UpTime: 00:03:27

     Upstream interface: GigabitEthernet3/1/1

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 3

         1: Serial4/1/9/1:0

             Protocol: pim-dm, UpTime: 00:03:27, Expires: never

         2: Pos5/1/1

             Protocol: pim-dm, UpTime: 00:03:27, Expires: never

         3: Pos5/1/2

             Protocol: pim-dm, UpTime: 00:03:27, Expires: never

PIM-SM non-scoped zone configuration example

Network requirements

·           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 PIM-SM domain contains only one BSR..

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

·           Router D connects to the network that comprises the multicast source (Source) through GigabitEthernet 3/1/1.

·           Router A connects to stub network N1 through GigabitEthernet 3/1/1, and to Router D and Router E through Serial 4/1/9/1:0 and POS 5/1/1 respectively.

·           Router B and Router C connect to stub network N2 through their respective GigabitEthernet 3/1/1, and to Router E through their respective POS 5/1/1.

·           Both POS 5/1/1 on Router D and POS 5/1/3 on Router E act as C-BSRs and C-RPs; the C-BSR on Router E has a higher priority; the range of multicast groups served by the C-RP is 225.1.1.0/24; modify the hash mask length to map a certain number of consecutive group addresses within the range to the two C-RPs.

·           IGMPv2 runs between Router A and N1 and between Router B/Router C and N2.

Figure 15 Network diagram

Device

Interface

IP address

Device

Interface

IP address

Router A

GE3/1/1

10.110.1.1/24

Router D

GE3/1/1

10.110.5.1/24

 

S4/1/9/1:0

192.168.1.1/24

 

S4/1/9/1:0

192.168.1.2/24

 

POS5/1/1

192.168.9.1/24

 

POS5/1/1

192.168.4.2/24

Router B

GE3/1/1

10.110.2.1/24

Router E

POS5/1/1

192.168.3.2/24

 

POS5/1/1

192.168.2.1/24

 

POS5/1/2

192.168.2.2/24

Router C

GE3/1/1

10.110.2.2/24

 

POS5/1/3

192.168.9.2/24

 

POS5/1/1

192.168.3.1/24

 

POS5/1/4

192.168.4.1/24

 

Configuration procedure

1.      Assign IP addresses and configure unicast routing:

Configure the IP address and subnet mask for each interface as per Figure 15. (Details not shown)

Configure the OSPF protocol for interoperation among the routers in the PIM-SM domain. Ensure the network-layer interoperation in the PIM-SM domain and enable dynamic update of routing information among the routers through a unicast routing protocol. (Details not shown)

2.      Enable IP multicast routing, PIM-SM, and IGMP

# Enable IP multicast routing on Router A, enable PIM-SM on each interface, and enable IGMP on GigabitEthernet 3/1/1, which connects Router A to the stub network.

<RouterA> system-view

[RouterA] multicast routing-enable

[RouterA] interface GigabitEthernet 3/1/1

[RouterA-GigabitEthernet3/1/1] igmp enable

[RouterA-GigabitEthernet3/1/1] pim sm

[RouterA-GigabitEthernet3/1/1] quit

[RouterA] interface serial 4/1/9/1:0

[RouterA-Serial4/1/9/1:0] pim sm

[RouterA-Serial4/1/9/1:0] quit

[RouterA] interface pos 5/1/1

[RouterA-Pos5/1/1] pim sm

[RouterA-Pos5/1/1] quit

The configuration on Router B and Router C is similar to that on Router A. The configuration on Router D and Router E is also similar to that on Router A except that it is not necessary to enable IGMP on the corresponding interfaces on these two routers.

3.      Configure a C-BSR and a C-RP

# On Router D, configure the service scope of RP advertisements, specify a C-BSR and a C-RP, and set the hash mask length to 32 and the priority of the C-BSR to 10.

<RouterD> system-view

[RouterD] acl number 2005

[RouterD-acl-basic-2005] rule permit source 225.1.1.0 0.0.0.255

[RouterD-acl-basic-2005] quit

[RouterD] pim

[RouterD-pim] c-bsr pos 5/1/1 32 10

[RouterD-pim] c-rp pos 5/1/1 group-policy 2005

[RouterD-pim] quit

# On Router E, configure the service scope of RP advertisements, specify a C-BSR and a C-RP, and set the hash mask length to 32 and the priority of the C-BSR to 20. .

<RouterE> system-view

[RouterE] acl number 2005

[RouterE-acl-basic-2005] rule permit source 225.1.1.0 0.0.0.255

[RouterE-acl-basic-2005] quit

[RouterE] pim

[RouterE-pim] c-bsr POS 5/1/3 32 20

[RouterE-pim] c-rp POS 5/1/3 group-policy 2005

[RouterE-pim] quit

4.      Verify the configuration

Use the display pim interface command to view the PIM configuration and running status on each interface. For example:

# Verify the PIM configuration information on Router A.

[RouterA] display pim interface

 VPN-Instance: public net

 Interface           NbrCnt HelloInt   DR-Pri     DR-Address

 GE3/1/1              0      30         1          10.110.1.1     (local)

 Ser4/1/9/1:0         1      30         1          192.168.1.2

 Pos5/1/1             1      30         1          192.168.9.2

To view the BSR election information and the locally configured C-RP information in effect on a router, use the display pim bsr-info command. For example:

# View the BSR information and the locally configured C-RP information in effect on Router A.

[RouterA] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 192.168.9.2

     Priority: 20

     hash mask length: 32

     State: Accept Preferred

     Scope: Not scoped

     Uptime: 00:40:40

     Expires: 00:01:42

# View the BSR information and the locally configured C-RP information in effect on Router D.

[RouterD] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 192.168.9.2

     Priority: 20

     hash mask length: 32

     State: Accept Preferred

     Scope: Not scoped

     Uptime: 00:05:26

     Expires: 00:01:45

 Candidate BSR Address: 192.168.4.2

     Priority: 10

     hash mask length: 32

     State: Candidate

     Scope: Not scoped

 

 Candidate RP: 192.168.4.2(Pos5/1/1)

     Priority: 0

     HoldTime: 150

     Advertisement Interval: 60

     Next advertisement scheduled at: 00:00:34

# View the BSR information and the locally configured C-RP information in effect on Router E.

[RouterE] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 192.168.9.2

     Priority: 20

     hash mask length: 32

     State: Elected

     Scope: Not scoped

     Uptime: 00:01:18

     Next BSR message scheduled at: 00:01:52

 Candidate BSR Address: 192.168.9.2

     Priority: 20

     hash mask length: 32

     State: ELECTed

     Scope: Not scoped

 

 Candidate RP: 192.168.9.2(Pos5/1/3)

     Priority: 0

     HoldTime: 150

     Advertisement Interval: 60

     Next advertisement scheduled at: 00:00:48

To view the RP information discovered on a router, use the display pim rp-info command. For example:

# View the RP information on Router A.

[RouterA] display pim rp-info

 VPN-Instance: public net

 PIM-SM BSR RP information:

 Group/MaskLen: 225.1.1.0/24

     RP: 192.168.4.2

     Priority: 0

     HoldTime: 150

     Uptime: 00:51:45

     Expires: 00:02:22

     RP: 192.168.9.2

     Priority: 0

     HoldTime: 150

     Uptime: 00:51:45

     Expires: 00:02:22

Assume that Host A needs to receive information addressed to a multicast group G (225.1.1.0). The RP for multicast group G is Router E as a result of hash calculation, so an RPT will be built between Router A and Router E. When the multicast source S (10.110.5.100/24) registers with the RP, an SPT will be built between Router D and Router E. Upon receiving multicast data, Router A immediately switches from the RPT to the SPT. Routers on the RPT path (Router A and Router E) have a (*, G) entry, while routers on the SPT path (Router A and Router D) have an (S, G) entry. To view the PIM routing table information on a router, use the display pim routing-table command. For example:

# View the PIM routing table information on Router A.

[RouterA] display pim routing-table

 VPN-Instance: public net

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

 

 (*, 225.1.1.0)

     RP: 192.168.9.2

     Protocol: pim-sm, Flag: WC

     UpTime: 00:13:46

     Upstream interface: Pos5/1/1

         Upstream neighbor: 192.168.9.2

         RPF prime neighbor: 192.168.9.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet3/1/1

             Protocol: igmp, UpTime: 00:13:46, Expires: 00:03:06

 

 (10.110.5.100, 225.1.1.0)

     RP: 192.168.9.2

     Protocol: pim-sm, Flag: SPT ACT

     UpTime: 00:00:42

     Upstream interface: Serial4/1/9/1:0

         Upstream neighbor: 192.168.1.2

         RPF prime neighbor: 192.168.1.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet3/1/1

             Protocol: pim-sm, UpTime: 00:00:42, Expires: 00:03:06

# View the PIM routing table information on Router D.

[RouterD] display pim routing-table

 VPN-Instance: public net

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

 

 (10.110.5.100, 225.1.1.0)

     RP: 192.168.9.2

     Protocol: pim-sm, Flag: SPT LOC ACT

     UpTime: 00:00:42

     Upstream interface: GigabitEthernet3/1/1

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Pos5/1/1

             Protocol: pim-sm, UpTime: 00:00:42, Expires: 00:02:26

# View the PIM routing table information on Router E.

[RouterE] display pim routing-table

 VPN-Instance: public net

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

 

 (*, 225.1.1.0)

     RP: 192.168.9.2 (local)

     Protocol: pim-sm, Flag: WC

     UpTime: 00:13:16

     Upstream interface: Register

         Upstream neighbor: 192.168.4.2

         RPF prime neighbor: 192.168.4.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Pos5/1/3

             Protocol: pim-sm, UpTime: 00:13:16, Expires: 00:03:22

PIM-SM admin-scope zone configuration example

Network requirements

·           Receivers receive VOD information through multicast. The entire PIM-SM domain is divided into admin-scope zone 1, admin-scope zone 2, and the global scope zone. Router B, Router C, and Router D are ZBRs of the three domains respectively.

·           Source 1 and Source 2 send different multicast streams to multicast group 239.1.1.1. Host A receives the multicast streams from Source 1 only, while Host B receives the multicast streams from Source 2 only. Source 3 sends multicast streams to multicast group 224.1.1.1. Host C is a multicast receiver for this multicast group.

·           Serial 4/1/9/1:0 of Router B acts as a C-BSR and C-RP of admin-scope zone 1, which serve the multicast group range 239.0.0.0/8. Serial 4/1/9/1:0 of Router D acts as a C-BSR and C-RP of admin-scope zone 2, which also serve the multicast group range 239.0.0.0/8. Serial 4/1/9/1:0 of Router F acts as a C-BSR and a C-RP of the global scope zone, which serve all the multicast groups other than those in the 239.0.0.0/8 range.

·           IGMPv2 runs between Router A, Router E, Router I, and their respective receivers.

Figure 16 Network diagram

Device

Interface

IP address

Device

Interface

IP address

Router A

GE4/1/1

192.168.1.1/24

Router D

S4/1/9/1:0

10.110.4.2/24

 

S4/1/9/1:0

10.110.1.1/24

 

S4/1/9/1:1

10.110.7.1/24

Router B

GE4/1/1

192.168.2.1/24

 

POS5/1/1

10.110.8.1/24

 

S4/1/9/1:0

10.110.1.2/24

Router E

GE4/1/1

192.168.4.1/24

 

POS5/1/1

10.110.2.1/24

 

S4/1/9/1:0

10.110.5.2/24

 

POS5/1/2

10.110.3.1/24

 

S4/1/9/1:1

10.110.7.2/24

Router C

GE4/1/1

192.168.3.1/24

Router F

S4/1/9/1:0

10.110.9.1/24

 

S4/1/9/1:0

10.110.4.1/24

 

POS5/1/1

10.110.8.2/24

 

S4/1/9/1:1

10.110.5.1/24

 

POS5/1/2

10.110.3.2/24

 

POS5/1/1

10.110.2.2/24

Router G

GE4/1/1

192.168.5.1/24

 

POS5/1/2

10.110.6.1/24

 

S4/1/9/1:0

10.110.9.2/24

Router H

S4/1/9/1:0

10.110.10.1/24

Source 1

192.168.2.10/24

 

POS5/1/1

10.110.6.2/24

Source 2

192.168.3.10/24

Router I

GE4/1/1

192.168.6.1/24

Source 3

192.168.5.10/24

 

S4/1/9/1:0

10.110.10.2/24

 

 

 

 

Configuration procedure

1.      Assign IP addresses and configure unicast routing:

Configure the IP address and subnet mask for each interface as per Figure 16. (Details not shown)

Configure OSPF for interoperation among the routers in the PIM-SM domain. Ensure the network-layer interoperation among the routers in the PIM-SM domain and enable dynamic update of routing information among the routers through a unicast routing protocol. (Details not shown)

2.      Enable IP multicast routing and administrative scoping, and enable PIM-SM and IGMP

# Enable IP multicast routing and administrative scoping on Router A, enable PIM-SM on each interface, and enable IGMP on the host-side interface GigabitEthernet 4/1/1.

<RouterA> system-view

[RouterA] multicast routing-enable

[RouterA] pim

[RouterA-pim] c-bsr admin-scope

[RouterA-pim] quit

[RouterA] interface GigabitEthernet 4/1/1

[RouterA-GigabitEthernet4/1/1] igmp enable

[RouterA-GigabitEthernet4/1/1] pim sm

[RouterA-GigabitEthernet4/1/1] quit

[RouterA] interface serial 4/1/9/1:0

[RouterA-Serial4/1/9/1:0] pim sm

[RouterA-Serial4/1/9/1:0] quit

The configuration on Router E and Router I is similar to the configuration on Router A. (Details not shown)

# On Router B, enable IP multicast routing and administrative scoping, and enable PIM-SM on each interface.

<RouterB> system-view

[RouterB] multicast routing-enable

[RouterB] pim

[RouterB-pim] c-bsr admin-scope

[RouterB-pim] quit

[RouterB] interface GigabitEthernet 4/1/1

[RouterB-GigabitEthernet4/1/1] pim sm

[RouterB-GigabitEthernet4/1/1] quit

[RouterB] interface serial 4/1/9/1:0

[RouterB-Serial4/1/9/1:0] pim sm

[RouterB-Serial4/1/9/1:0] quit

[RouterB] interface Pos 5/1/1

[RouterB-Pos5/1/1] pim sm

[RouterB-Pos5/1/1] quit

[RouterB] interface pos 5/1/2

[RouterB-Pos5/1/2] pim sm

[RouterB-Pos5/1/2] quit

The configuration on Router C, Router D, Router F, Router G, and Router H is similar to the configuration on Router B. (Details not shown)

3.      Configure an admin-scope zone boundary

# On Router B, configure POS 5/1/1 and POS 5/1/2 as the boundary of admin-scope zone 1.

[RouterB] interface Pos 5/1/1

[RouterB-Pos5/1/1] multicast boundary 239.0.0.0 8

[RouterB-Pos5/1/1] quit

[RouterB] interface pos 5/1/2

[RouterB-Pos5/1/2] multicast boundary 239.0.0.0 8

[RouterB-Pos5/1/2] quit

# On Router C, configure POS 5/1/1 and POS 5/1/2 as the boundary of admin-scope zone 2.

<RouterC> system-view

[RouterC] interface Pos 5/1/1

[RouterC-Pos5/1/1] multicast boundary 239.0.0.0 8

[RouterC-Pos5/1/1] quit

[RouterC] interface Pos 5/1/2

[RouterC-Pos5/1/2] multicast boundary 239.0.0.0 8

[RouterC-Pos5/1/2] quit

# On Router D, configure POS 5/1/1 as the boundary of admin-scope zone 2.

<RouterD> system-view

[RouterD] interface Pos 5/1/1

[RouterD-Pos5/1/1] multicast boundary 239.0.0.0 8

[RouterD-Pos5/1/1] quit

4.      Configure C-BSRs and C-RPs

# On Router B, configure the service scope of RP advertisements and configure Serial 4/1/9/1:0 as a C-BSR and C-RP of admin-scope zone 1.

[RouterB] acl number 2001

[RouterB-acl-basic-2001] rule permit source 239.0.0.0 0.255.255.255

[RouterB-acl-basic-2001] quit

[RouterB] pim

[RouterB-pim] c-bsr group 239.0.0.0 8

[RouterB-pim] c-bsr serial 4/1/9/1:0

[RouterB-pim] c-rp serial 4/1/9/1:0 group-policy 2001

[RouterB-pim] quit

# On Router D, configure the service scope of RP advertisements and configure Serial 4/1/9/1:0 as a C-BSR and C-RP of admin-scope zone 2.

[RouterD] acl number 2001

[RouterD-acl-basic-2001] rule permit source 239.0.0.0 0.255.255.255

[RouterD-acl-basic-2001] quit

[RouterD] pim

[RouterD-pim] c-bsr group 239.0.0.0 8

[RouterD-pim] c-bsr serial 4/1/9/1:0

[RouterD-pim] c-rp serial 4/1/9/1:0 group-policy 2001

[RouterD-pim] quit

# On Router F, configure Serial 4/1/9/1:0 as a C-BSR and C-RP in the global scope zone.

<RouterF> system-view

[RouterF] pim

[RouterF-pim] c-bsr global

[RouterF-pim] c-bsr serial 4/1/9/1:0

[RouterF-pim] c-rp serial 4/1/9/1:0

[RouterF-pim] quit

5.      Verify the configuration

To view the BSR election information and the C-RP information on a router, use the display pim bsr-info command. For example:

# View the BSR information and the locally configured C-RP information on Router B.

[RouterB] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 10.110.9.1

     Priority: 0

     hash mask length: 30

     State: Accept Preferred

     Scope: Global

     Uptime: 00:01:45

     Expires: 00:01:25

 Elected BSR Address: 10.110.1.2

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: 239.0.0.0/8

     Uptime: 00:04:54

     Next BSR message scheduled at: 00:00:06

 Candidate BSR Address: 10.110.1.2

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: 239.0.0.0/8

 

 Candidate RP: 10.110.1.2(Serial4/1/9/1:0)

     Priority: 0

     HoldTime: 150

     Advertisement Interval: 60

     Next advertisement scheduled at: 00:00:15

# View the BSR information and the locally configured C-RP information on Router D.

[RouterD] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 10.110.9.1

     Priority: 0

     hash mask length: 30

     State: Accept Preferred

     Scope: Global

     Uptime: 00:01:45

     Expires: 00:01:25

 Elected BSR Address: 10.110.4.2

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: 239.0.0.0/8

     Uptime: 00:03:48

     Next BSR message scheduled at: 00:01:12

 Candidate BSR Address: 10.110.4.2

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: 239.0.0.0/8

 

 Candidate RP: 10.110.4.2(Serial4/1/9/1:0)

     Priority: 0

     HoldTime: 150

     Advertisement Interval: 60

     Next advertisement scheduled at: 00:00:10

# View the BSR information and the locally configured C-RP information on Router F.

[RouterF] display pim bsr-info

 VPN-Instance: public net

 Elected BSR Address: 10.110.9.1

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: Global

     Uptime: 00:11:11

     Next BSR message scheduled at: 00:00:49

 Candidate BSR Address: 10.110.9.1

     Priority: 0

     hash mask length: 30

     State: Elected

     Scope: Global

 

 Candidate RP: 10.110.9.1(Serial4/1/9/1:0)

     Priority: 0

     HoldTime: 150

     Advertisement Interval: 60

     Next advertisement scheduled at: 00:00:55

To view the RP information learned on a router, use the display pim rp-info command. For example:

# View the RP information on Router B.

[RouterB] display pim rp-info

 VPN-Instance: public net

 PIM-SM BSR RP information:

 Group/MaskLen: 224.0.0.0/4

     RP: 10.110.9.1

     Priority: 0

     HoldTime: 150

     Uptime: 00:03:39

     Expires: 00:01:51

 

Group/MaskLen: 239.0.0.0/8

     RP: 10.110.1.2 (local)

     Priority: 0

     HoldTime: 150

     Uptime: 00:07:44

     Expires: 00:01:51

# View the RP information on Router D.

[RouterD] display pim rp-info

 VPN-Instance: public net

 PIM-SM BSR RP information:

 Group/MaskLen: 224.0.0.0/4

     RP: 10.110.9.1

     Priority: 0

     HoldTime: 150

     Uptime: 00:03:42

     Expires: 00:01:48

 

Group/MaskLen: 239.0.0.0/8

     RP: 10.110.4.2 (local)

     Priority: 0

     HoldTime: 150

     Uptime: 00:06:54

     Expires: 00:02:41

# View the RP information on Router F.

[RouterF] display pim rp-info

 VPN-Instance: public net

 PIM-SM BSR RP information:

 Group/MaskLen: 224.0.0.0/4

     RP: 10.110.9.1 (local)

     Priority: 0

     HoldTime: 150

     Uptime: 00:00:32

     Expires: 00:01:58

BIDIR-PIM configuration example

Network requirements

·     In the BIDIR-PIM domain shown in Figure 17, Source 1 and Source 2 send different multicast information to multicast group 225.1.1.1. Host A and Host B receive multicast information from the two sources.

·     Serial 2/1/9/2:0 of Router C acts as a C-BSR, and loopback interface 0 acts as a C-RP of the BIDIR-PIM domain.

·     IGMPv2 runs between Router B and Host A and between Router D and Host B.

Figure 17 Network diagram

Device

Interface

IP address

Device

Interface

IP address

Router A

GE3/1/1

192.168.1.1/24

Router D

GE3/1/1

192.168.3.1/24

 

S2/1/9/1:0

10.110.1.1/24

 

GE3/1/2

192.168.4.1/24

Router B

GE3/1/1

192.168.2.1/24

 

S2/1/9/1:0

10.110.3.2/24

 

S2/1/9/1:0

10.110.1.2/24

Source 1

-

192.168.1.100/24

 

S2/1/9/2:0

10.110.2.1/24

Source 2

-

192.168.4.100/24

Router C

S2/1/9/1:0

10.110.2.2/24

Receiver 1

-

192.168.2.100/24

 

S2/1/9/2:0

10.110.3.1/24

Receiver 2

-

192.168.3.100/24

 

Loop0

1.1.1.1/32

 

 

 

 

Configuration procedure

1.      Assign IP addresses and configure unicast routing:

Configure the IP address and subnet mask for each interface as per Figure 17. (Details not shown)

Configure OSPF on the routers in the BIDIR-PIM domain to ensure network-layer reachability among them. (Details not shown)

2.      Enable IP multicast routing, PIM-SM, BIDIR-PIM, and IGMP.

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

<RouterA> system-view

[RouterA] multicast routing-enable

[RouterA] interface GigabitEthernet 3/1/1

[RouterA-GigabitEthernet3/1/1] pim sm

[RouterA-GigabitEthernet3/1/1] quit

[RouterA] interface Serial 2/1/9/1:0

[RouterA-Serial2/1/9/1:0] pim sm

[RouterA-Serial2/1/9/1:0] quit

[RouterA] pim

[RouterA-pim] bidir-pim enable

[RouterA-pim] quit

# On Router B, enable IP multicast routing, enable PIM-SM on each interface, enable IGMP on interface GigabitEthernet 3/1/1, and enable BIDIR-PIM.

<RouterB> system-view

[RouterB] multicast routing-enable

[RouterB] interface GigabitEthernet 3/1/1

[RouterB-GigabitEthernet3/1/1] igmp enable

[RouterB-GigabitEthernet3/1/1] pim sm

[RouterB-GigabitEthernet3/1/1] quit

[RouterB] interface Serial 2/1/9/2:0

[RouterB-Serial2/1/9/1:0] pim sm

[RouterB-Serial2/1/9/1:0] quit

[RouterB] interface Serial 2/1/9/2:0

[RouterB-Serial2/1/9/2:0] pim sm

[RouterB-Serial2/1/9/2:0] quit

[RouterB] pim

[RouterB-pim] bidir-pim enable

[RouterB-pim] quit

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

<RouterC> system-view

[RouterC] multicast routing-enable

[RouterC] interface Serial 2/1/9/1:0

[RouterC-Serial2/1/9/1:0] pim sm

[RouterC-Serial2/1/9/1:0] quit

[RouterC] interface Serial 2/1/9/2:0

[RouterC-Serial2/1/9/2:0] pim sm

[RouterC-Serial2/1/9/2:0] quit

[RouterC] interface loopback 0

[RouterC-LoopBack0] pim sm

[RouterC-LoopBack0] quit

[RouterC] pim

[RouterC-pim] bidir-pim enable

# On Router D, enable IP multicast routing, enable PIM-SM on each interface, enable IGMP on interface GigabitEthernet 3/1/1, and enable BIDIR-PIM.

<RouterD> system-view

[RouterD] multicast routing-enable

[RouterD] interface GigabitEthernet 3/1/1

[RouterD-GigabitEthernet3/1/1] igmp enable

[RouterD-GigabitEthernet3/1/1] pim sm

[RouterD-GigabitEthernet3/1/1] quit

[RouterD] interface GigabitEthernet 3/1/2

[RouterD-GigabitEthernet3/1/2] pim sm

[RouterD-GigabitEthernet3/1/2] quit

[RouterD] interface Serial 2/1/9/1:0

[RouterD-Serial2/1/9/1:0] pim sm

[RouterD-Serial2/1/9/1:0] quit

[RouterD] pim

[RouterD-pim] bidir-pim enable

[RouterD-pim] quit

3.      Configure C-BSR and C-RP

# On Router C, configure Serial2/1/9/1:0 as a C-BSR, and loopback interface 0 as a C-RP for the entire BIDIR-PIM domain.

[RouterC-pim] c-bsr serial 2/1/9/1:0

[RouterC-pim] c-rp loopback 0 bidir

[RouterC-pim] quit

4.      Verify the configuration

To view the DF information of BIDIR-PIM on a router, use the display pim df-info command:

# View the DF information of BIDIR-PIM on Router A.

[RouterA] display pim df-info

 VPN-Instance: public net

 

 RP Address: 1.1.1.1

  Interface           State   DF-Pref    DF-Metric  DF-Uptime DF-Address

  GE3/1/1              Win     100        2          01:08:50  192.168.1.1 (local)

  Ser2/1/9/1:0              Lose    100        1          01:07:49  10.110.1.2

# View the DF information of BIDIR-PIM on Router B.

[RouterB] display pim df-info

 VPN-Instance: public net

 

 RP Address: 1.1.1.1

  Interface           State   DF-Pref    DF-Metric  DF-Uptime DF-Address

  GE3/1/1              Win     100        1          01:24:09  192.168.2.1 (local)

  Ser2/1/9/1:0              Win     100        1          01:24:09  10.110.1.2 (local)

  Ser2/1/9/2:0             Lose    0          0          01:23:12  10.110.2.2

# View the DF information of BIDIR-PIM on Router C.

[RouterC] display pim df-info

 VPN-Instance: public net

 

 RP Address: 1.1.1.1

  Interface           State   DF-Pref    DF-Metric  DF-Uptime DF-Address

  Loop0               -       -          -          -         -

  Ser2/1/9/1:0             Win     0          0          01:06:07  10.110.2.2 (local)

  Ser2/1/9/2:0             Win     0          0          01:06:07  10.110.3.1 (local)

# View the DF information of BIDIR-PIM on Router D.

[RouterD] display pim df-info

 VPN-Instance: public net

 

 RP Address: 1.1.1.1

  Interface           State   DF-Pref    DF-Metric  DF-Uptime DF-Address

  GE3/1/1              Win     100        1          01:19:53  192.168.3.1 (local)

  GE3/1/2              Win     100        1          00:39:34  192.168.4.1 (local)

  Ser2/1/9/1:0             Lose    0          0          01:21:40  10.110.3.1

To view the DF information of the multicast forwarding table on a router, use the display multicast forwarding-table df-info command. For more information about this command, see IP Multicast Command Reference.

# View the DF information of the multicast forwarding table on Router A.

[RouterA] display multicast forwarding-table df-info

Multicast DF information of VPN-Instance: public net

Total 1 RP

 

Total 1 RP matched

 

00001. RP Address: 1.1.1.1

     MID: 0, Flags: 0x2100000:0

     Uptime: 00:08:32

     RPF interface: Serial2/1/9/1:0

     List of 1 DF interfaces:

       1: GigabitEthernet3/1/1

# View the DF information of the multicast forwarding table on Router B.

[RouterB] display multicast forwarding-table df-info

Multicast DF information of VPN-Instance: public net

Total 1 RP

 

Total 1 RP matched

 

00001. RP Address: 1.1.1.1

     MID: 0, Flags: 0x2100000:0

     Uptime: 00:06:24

     RPF interface: Serial2/1/9/2:0

     List of 2 DF interfaces:

       1: GigabitEthernet3/1/1

       2: Serial2/1/9/1:0

# View the DF information of the multicast forwarding table on Router C.

[RouterC] display multicast forwarding-table df-info

Multicast DF information of VPN-Instance: public net

Total 1 RP

 

Total 1 RP matched

 

00001. RP Address: 1.1.1.1

     MID: 0, Flags: 0x2100000:0

     Uptime: 00:07:21

     RPF interface: LoopBack0

     List of 2 DF interfaces:

       1: Serial2/1/9/1:0

       2: Serial2/1/9/2:0

# View the DF information of the multicast forwarding table on Router D.

[RouterD] display multicast forwarding-table df-info

Multicast DF information of VPN-Instance: public net

Total 1 RP

 

Total 1 RP matched

 

00001. RP Address: 1.1.1.1

     MID: 0, Flags: 0x2100000:0

     Uptime: 00:05:12

     RPF interface: Serial2/1/9/1:0

     List of 2 DF interfaces:

       1: GigabitEthernet3/1/1

       2: GigabitEthernet3/1/2

To view the PIM routing table information on a router, use the display pim routing-table command. For example:

# View the PIM routing table information on Router A.

[RouterA]display pim routing-table                                                       

 VPN-Instance: public net                                                      

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

                                                                               

 (*, 225.1.1.1)                                   

     RP: 1.1.1.1                                                                

     Protocol: pim-sm, Flag: WC BIDIR                                          

     UpTime: 01:01:54                                                          

     Upstream interface: Serial2/1/9/1:0                                   

         Upstream neighbor: 10.110.1.2                                            

         RPF prime neighbor: 10.110.1.2                                           

     Downstream interface(s) information:                                      

     Total number of downstreams: 1                                             

         1: Serial2/1/9/1:0                                              

             Protocol: pim-sm, UpTime: 00:53:40, Expires: 00:02:50           

PIM-SSM configuration example

Network requirements

·           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 PIM domain operates in the SSM mode.

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

·           Router D connects to the network that comprises the multicast source (Source) through GigabitEthernet 3/1/1.

·           Router A connects to stub network N1 through GigabitEthernet 3/1/1, and to Router D and Router E through Serial 4/1/9/1:0 and POS 5/1/1 respectively.

·           Router B and Router C connect to stub network N2 through their respective GigabitEthernet 3/1/1, and to Router E through their respective POS 5/1/1.

·           Router E connects to Router A, Router B, Router C and Router D.

·           The SSM group range is 232.1.1.0/24.

·           IGMPv3 runs between Router A and N1 and between Router B/Router C and N2.

Figure 18 Network diagram

Device

Interface

IP address

Device

Interface

IP address

Router A

GE3/1/1

10.110.1.1/24

Router D

GE3/1/1

10.110.5.1/24

 

S4/1/9/1:0

192.168.1.1/24

 

S4/1/9/1:0

192.168.1.2/24

 

POS5/1/1

192.168.9.1/24

 

POS5/1/1

192.168.4.2/24

Router B

GE3/1/1

10.110.2.1/24

Router E

POS5/1/1

192.168.3.2/24

 

POS5/1/1

192.168.2.1/24

 

POS5/1/2

192.168.2.2/24

Router C

GE3/1/1

10.110.2.2/24

 

POS5/1/3

192.168.9.2/24

 

POS5/1/1

192.168.3.1/24

 

POS5/1/4

192.168.4.1/24

 

Configuration procedure

1.      Assign IP addresses and configure unicast routing:

Configure the IP address and subnet mask for each interface as per Figure 18. (Details not shown)

Configure the OSPF protocol for interoperation among the routers in the PIM-SM domain. Ensure the network-layer interoperation in the PIM-SM domain and enable dynamic update of routing information among the routers through a unicast routing protocol. (Details not shown)

2.      Enable IP multicast routing, PIM-SM, and IGMP

# Enable IP multicast routing on Router A, enable PIM-SM on each interface, and run IGMPv3 on GigabitEthernet 3/1/1, which connects Router A to the stub network.

<RouterA> system-view

[RouterA] multicast routing-enable

[RouterA] interface GigabitEthernet3/1/1

[RouterA-GigabitEthernet3/1/1] igmp enable

[RouterA-GigabitEthernet3/1/1] igmp version 3

[RouterA-GigabitEthernet3/1/1] pim sm

[RouterA-GigabitEthernet3/1/1] quit

[RouterA] interface serial 4/1/9/1:0

[RouterA-Serial4/1/9/1:0] pim sm

[RouterA-Serial4/1/9/1:0] quit

[RouterA] interface pos 5/1/1

[RouterA-Pos5/1/1] pim sm

[RouterA-Pos5/1/1] quit

The configuration on Router B and Router C is similar to that on Router A. The configuration on Router D and Router E is also similar to that on Router A except that it is not necessary to enable IGMP on the corresponding interfaces on these two routers.

3.      Configure the SSM group range

# Configure the SSM group range to be 232.1.1.0/24 on Router A.

[RouterA] acl number 2000

[RouterA-acl-basic-2000] rule permit source 232.1.1.0 0.0.0.255

[RouterA-acl-basic-2000] quit

[RouterA] pim

[RouterA-pim] ssm-policy 2000

[RouterA-pim] quit

The configuration on Router B, Router C, Router D and Router E is similar to that on Router A.

4.      Verify the configuration

Use the display pim interface command to view the PIM configuration and running status on each interface. For example:

# Verify the PIM configuration information on Router A.

[RouterA] display pim interface

 VPN-Instance: public net

 Interface           NbrCnt HelloInt   DR-Pri     DR-Address

 GE3/1/1              0      30         1          10.110.1.1     (local)

 Ser4/1/9/1:0         1      30         1          192.168.1.2

 Pos5/1/1             1      30         1          192.168.9.2

Assume that Host A needs to receive the information a specific multicast source S (10.110.5.100/24) sends to multicast group G (232.1.1.1). Router A builds an SPT toward the multicast source. Routers on the SPT path (Router A and Router D) have generated (S, G) entry, while Router E, which is not on the SPT path, does not have multicast routing entries. You can use the display pim routing-table command to view the PIM routing table information on each router. For example:

# View the PIM routing table information on Router A.

[RouterA] display pim routing-table

 VPN-Instance: public net

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

 

 (10.110.5.100, 232.1.1.1)

     Protocol: pim-ssm, Flag:

     UpTime: 00:13:25

     Upstream interface: Serial4/1/9/1:0

         Upstream neighbor: 192.168.1.2

         RPF prime neighbor: 192.168.1.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet3/1/1

             Protocol: igmp, UpTime: 00:13:25, Expires: 00:03:25

# View the PIM routing table information on Router D.

[RouterD] display pim routing-table

 VPN-Instance: public net

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

 

 (10.110.5.100, 232.1.1.1)

     Protocol: pim-ssm, Flag: LOC

     UpTime: 00:12:05

     Upstream interface: GigabitEthernet3/1/1

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Serial4/1/9/1:0

             Protocol:  pim-ssm, UpTime: 00:12:05, Expires: 00:03:25

Troubleshooting PIM

A multicast distribution tree cannot be built correctly

Symptom

None of the routers in the network (including routers directly connected with multicast sources and receivers) have multicast forwarding entries. That is, a multicast distribution tree cannot be built correctly and clients cannot receive multicast data.

Analysis

·           When PIM-DM runs on the entire network, multicast data is flooded from the first hop router connected with the multicast source to the last-hop router connected with the clients. When the multicast data is flooded to a router, regardless of which router it is, the router creates (S, G) entries only if it has a route to the multicast source. If the router does not have a route to the multicast source, or if PIM-DM is not enabled on the router’s RPF interface to the multicast source, the router cannot create (S, G) entries.

·           When PIM-SM runs on the entire network and when a router joins the SPT, the router creates (S, G) entries only if it has a route to the multicast source. If the router does not have a route to the multicast source, or if PIM-DM is not enabled on the router’s RPF interface to the multicast source, the router cannot create (S, G) entries.

·           When a multicast router receives a multicast packet, it searches the existing unicast routing table for the optimal route to the RPF check object. The outgoing interface of this route will act as the RPF interface and the next hop will be taken as the RPF neighbor. The RPF interface completely relies on the existing unicast route and is independent of PIM. The RPF interface must be PIM-enabled, and the RPF neighbor must also be a PIM neighbor. If PIM is not enabled on the router where the RPF interface or the RPF neighbor resides, the establishment of a multicast distribution tree will surely fail, causing abnormal multicast forwarding.

·           Because a hello message does not carry the PIM mode information, a router that is running PIM cannot identify what PIM mode its PIM neighbor is running. If different PIM modes are enabled on the RPF interface and on the corresponding interface of the RPF neighbor router, the establishment of a multicast distribution tree will fail, causing abnormal multicast forwarding.

·           The same PIM mode must run on the entire network. Otherwise, the establishment of a multicast distribution tree will fail, causing abnormal multicast forwarding.

Solution

1.      Use the display ip routing-table command to verify that a unicast route from the receiver host to the multicast source is available.

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

3.      Use the display pim neighbor command to verify that the RPF neighbor is a PIM neighbor.

4.      Check that PIM and IGMP are enabled on the interfaces directly connecting to the multicast source and to the receivers.

5.      Use the display pim interface verbose command to verify that the same PIM mode is enabled on the RPF interface and the corresponding interface of the RPF neighbor router.

6.      Check that the same PIM mode is enabled on all the routers in the entire network. Make sure that the same PIM mode (PIM-SM or PIM-DM) is enabled on all routers. For PIM-SM, verify that the BSR and RP configurations are correct.

Multicast data is abnormally terminated on an intermediate router

Symptom

An intermediate router can receive multicast data successfully, but the data cannot reach the last-hop router. An interface on the intermediate router receives data but no corresponding (S, G) entry is created in the PIM routing table.

Analysis

·           When a router receives a multicast packet, it decrements the TTL value of the multicast packet by 1 and recalculates the checksum value. The router then forwards the packet to all outgoing interfaces. If the multicast minimum-ttl command is configured on the outgoing interfaces, the TTL value of the packet must be larger than the configured minimum TTL value. Otherwise, the packet will be discarded.

·           If a multicast forwarding boundary has been configured through the multicast boundary command, any multicast packet will be kept from crossing the boundary, and no routing entry can be created in the PIM routing table.

·           In addition, the source-policy command filters received multicast packets. If the multicast data fails to pass the ACL rule defined in this command, PIM cannot create the route entry either.

Solution

1.      Use the display current-configuration command to check the minimum TTL value for multicast forwarding. Increase the TTL value or remove the multicast minimum-ttl command configured on the interface.

2.      Use the display current-configuration command to verify the multicast forwarding boundary settings. Use the multicast boundary command to change the multicast forwarding boundary settings.

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

RPs cannot join the SPT in PIM-SM

Symptom

An RPT cannot be established correctly, or the RPs cannot join the SPT to the multicast source.

Analysis

·           As the core of a PIM-SM domain, the RPs serve specific multicast groups. Multiple RPs can coexist in a network. Make sure that the RP information on all routers is exactly the same and that a specific group is mapped to the same RP. Otherwise, multicast forwarding fails.

·           If the static RP mechanism is used, the same static RP command must be executed on all the routers in the entire network. Otherwise, multicast forwarding fails.

Solution

1.      Use the display ip routing-table command to verify that a route to the RP is available on each router.

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

3.      Use the display pim rp-info command to verify that the same static RP address has been configured on all the routers in the entire network.

An RPT cannot be established or a source cannot register in PIM-SM

Symptom

C-RPs cannot unicast advertise messages to the BSR. The BSR does not advertise bootstrap messages containing C-RP information and has no unicast route to any C-RP. An RPT cannot be established correctly, or the DR cannot perform source registration with the RP.

Analysis

·           The C-RPs periodically send C-RP-Adv messages to the BSR by unicast. If a C-RP has no unicast route to the BSR, the BSR cannot receive C-RP-Adv messages from that C-RP and the bootstrap messages of the BSR do not contain the information of that C-RP.

·           In addition, if the BSR does not have a unicast route to a C-RP, it discards the C-RP-Adv messages from that C-RP. Therefore, the bootstrap messages of the BSR do not contain the information of that C-RP.

·           The RP is the core of a PIM-SM domain. Make sure that the RP information on all routers is exactly the same, a specific group G is mapped to the same RP, and unicast routes are available to the RP.

Solution

1.      Use the display ip routing-table command to verify that routes to the RP and the BSR are available on each router and that a route between the RP and the BSR is available. Make sure that each C-RP has a unicast route to the BSR, the BSR has a unicast route to each C-RP, and all the routers in the entire network have a unicast route to the RP.

2.      PIM-SM needs the support of the RP and BSR. Use the display pim bsr-info command to verify that the BSR information exists on each router, and then use the display pim rp-info command to verify that the RP information is correct on each router.

3.      Use the display pim neighbor command to verify that the normal PIM neighboring relationships have been established among the routers.

 

  • Cloud & AI
  • InterConnect
  • Intelligent Computing
  • Security
  • SMB Products
  • Intelligent Terminal Products
  • Product Support Services
  • Technical Service Solutions
All Services
  • Resource Center
  • Policy
  • Online Help
All Support
  • Become A Partner
  • Partner Policy & Program
  • Global Learning
  • Partner Sales Resources
  • Partner Business Management
  • Service Business
All Partners
  • Profile
  • News & Events
  • Online Exhibition Center
  • Contact Us
All About Us
新华三官网