Configuring PIM (IPv6)
This section describes the procedures for configuring PIM (IPv6).
- Configuring PIM-SM (IPv6)
The PIM-SM (IPv6) protocol implements multicast routing and data forwarding in a domain. The PIM-SM (IPv6) protocol is a multicast routing protocol in sparse mode. It applies to a large-scale network with sparsely-distributed group members. - Configuring Bidir-PIM (IPv6)
The IPv6 Bidirectional Protocol Independent Multicast (Bidir-PIM) protocol implements bidirectional multicast data forwarding in an PIM (IPv6) domain.
Configuring PIM-SM (IPv6)
The PIM-SM (IPv6) protocol implements multicast routing and data forwarding in a domain. The PIM-SM (IPv6) protocol is a multicast routing protocol in sparse mode. It applies to a large-scale network with sparsely-distributed group members.
Configuring PIM-SM (IPv6) in the ASM Model
When unicast routes on an IPv6 are reachable, you can implement PIM-SM (IPv6) in the ASM model by enabling IPv6 multicast routing on each device, enabling PIM-SM (IPv6) on each interface, and configuring an RP on the network.
Enabling PIM-SM (IPv6)
Context
It is recommended that you enable PIM-SM (IPv6) on all interfaces in a PIM-SM domain, so that the interfaces can establish neighbor relationships with all connected PIM devices.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
multicast ipv6 routing-enable
The IPv6 multicast routing function is enabled.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 sm
PIM-SM (IPv6) is enabled.
- Run:
commit
The configuration is committed.
Configuring an RP
Context
An RP can be configured manually or elected through the BSR mechanism. Manually configuring a static RP reduces bandwidth used for frequent information exchange between the C-RPs and BSR. RP election through the BSR mechanism simplifies configuration and improves reliability of multicast forwarding because multiple C-RPs are configured.
On a PIM-SM (IPv6) network, the embedded RP function is enabled on each device by default. When a device receives a multicast packet sent to a multicast group, it can obtain RP information from the group address. The devices with the embedded RP function do not need to know the mapping between RPs and group addresses beforehand. The range of group addresses that a device can parse can be manually changed.
You can configure a static RP and multiple C-RPs for dynamic RP election. The static RP functions as a backup RP because it has a lower priority. Ensure that all the devices on the network have the same RP information. Inconsistent RP information may cause forwarding failures on the network.
Default Configuration
Table 8-57 lists the default configuration of the C-BSR and C-RP.
Parameter |
Default Setting |
---|---|
C-BSR priority |
0 |
C-BSR hash mask length |
126 |
BSR message fragmentation |
Disabled |
Multicast group policy of a static RP |
No multicast group policy configured (receiving multicast data with any group address) |
Multicast group policy of a C-RP |
No multicast group policy configured (receiving multicast data with any group address) |
C-RP priority |
192 |
Interval for sending C-RP Announcement messages |
60s |
Hold time of C-RP Announcement messages |
150s |
Group address range for embedded RP |
FF7x::/12 (x is 0 or any value ranging from 3 to F) |
Procedure
- Configure a static RP.
- Configure a dynamic RP.
Configure a C-BSR.
Run:
system-view
The system view is displayed.
Run:
pim ipv6
The PIM-IPv6 view is displayed.
Run:
c-bsr ipv6-address [ hash-length [ priority ] ]
A C-BSR is configured.
It is recommended that you configure the C-BSR on the device that aggregates multicast data.
(Optional) Run:
bsm semantic fragmentation
The BSR message fragmentation function is enabled.
NOTE:
BSR message fragmentation is recommended because it can solve the problem faced by IP fragmentation that all fragments become unavailable due to loss of fragment information. Enable BSR message fragmentation on all devices in the network. Otherwise, devices that do not fragment BSR messages may receive incomplete information about RPs.
Run:
commit
The configuration is committed.
Configure a C-RP.
Run:
system-view
The system view is displayed.
Run:
pim ipv6
The PIM-IPv6 view is displayed.
Run:
c-rp ipv6-address [ advertisement-interval adv-interval | group-policy { basic-acl6-number | acl6-name acl6-name } | holdtime hold-interval | priority priority ] *
A C-RP is configured.
It is recommended that you configure the C-RP on the device that aggregates multicast data.
Run:
commit
The configuration is committed.
(Optional) Configure a BSR boundary.
Run:
system-view
The system view is displayed.
Run:
interface interface-type interface-number
The interface view is displayed.
(Optional) On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
Run:
pim ipv6 bsr-boundary
A BSR service boundary is configured.
The BSR messages cannot pass through the BSR boundary. Therefore, it is recommended that you configure the BSR service boundary on interfaces at the edge of a PIM-SM domain.
Run:
commit
The configuration is committed.
- Configure the embedded RP function.
(Optional) Configuring SPT Switchover Conditions
Context
A high volume of multicast data traffic increases the load of an RP and may result in a fault. The DR at the group member side triggers an SPT switchover to reduce the burden of the RP.
By default, a DR at the group member side immediately triggers an SPT switchover after receiving the first multicast data packet. You can configure a traffic rate threshold on a DR at the group member side to trigger an SPT switchover or prevent the DR from triggering an SPT switchover.
Default Configuration
Table 8-58 lists the default configuration of SPT switchover conditions.
Parameter |
Default Setting |
---|---|
Group policy that specifies the groups to which the SPT switchover conditions apply |
No group policy configured (The SPT switchover conditions apply to all multicast groups.) |
Interval for checking the forwarding rate of multicast data |
15s |
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
spt-switch-threshold { traffic-rate | infinity } [ group-policy { basic-acl6-number | acl6-name acl6-name } [ order order-value ] ]
The SPT switchover condition is configured.
traffic-rate specifies the rate threshold that triggers an SPT switchover. infinity indicates that the SPT switchover is never triggered.
- Run:
timer spt-switch interval
The interval for checking the forwarding rate of multicast data is configured.
- Run:
commit
The configuration is committed.
(Optional) Adjusting Control Parameters for Source Registering
Context
After receiving multicast data from a multicast source, the source DR encapsulates multicast data in a Register message and forwards the message to the RP. Therefore, you can adjust control parameters for source registering on the RP and source DR.
You can perform the following operations on the source DR.
- Configure the register message suppression time. After receiving a Register-Stop message, the source DR stops sending Register messages to the RP during register suppression. The source DR forwards packets again when the register suppression time expires and it receives no more Register-Stop messages.
- Configure the interval at which null Register messages are sent. When the timeout period for keeping the register suppression state is too long or too short, multicast data cannot be forwarded normally. Sending null Register messages during register suppression can relieve this problem.
- Configure the source address for Register messages. The RP cannot receive Register messages from a source DR if the source address of the Register messages is not a unique IPv6 address on the network or if the source address is filtered out by a policy configured on the RP. To enable the RP to receive Register messages from the source DR, configure a new source address for the Register messages.
You can perform the following operations on the RP.
- Configure a policy to filter Register messages. You can specify the source address range of Register messages to improve network security.
Default Configuration
Table 8-59 lists default configuration of control parameters for source registering.
Parameter |
Default Setting |
---|---|
Filter policy for Register messages |
No filter policy configured (receiving Register messages with any group address) |
Register message suppression time |
60s |
Interval for sending null Register messages |
5s |
(Optional) Adjusting C-RP Control Parameters
Context
When a C-RP is configured on an interface, the C-RP periodically sends Advertisement messages to a BSR. The Advertisement messages carry the C-RP priority and the holdtime of Advertisement messages. After receiving Advertisement messages, the BSR starts the C-RP timeout timer. The timer value is set to the holdtime of Advertisement messages. Before the timer expires, the BSR collects the C-RP information in Advertisement messages into an RP-set, encapsulates the RP-set into a Bootstrap message, and advertises the Bootstrap message to all PIM (IPv6) devices. If the BSR does not receive any Advertisement message from the C-RP after the timer expires, the BSR considers the C-RP invalid or unreachable on the network. The interval for sending Advertisement messages must be smaller than the holdtime of Advertisement messages so that the BSR can successfully receive the Advertisement messages.
You can manually configure the interval for sending Advertisement messages, C-RP priority and holdtime of Advertisement messages. To prevent C-RP spoofing, set the range of valid C-RP addresses on the BSR. Then the BSR accepts only the Advertisement messages with the source addresses in the specified range.
(Optional) Adjusting C-BSR Control Parameters
Context
C-BSRs automatically elect a BSR in a PIM (IPv6) domain. At first, each C-BSR considers itself as a BSR and sends Bootstrap messages to all devices in the domain. When a C-BSR receives a Bootstrap message from another C-BSR, it compares the priority in the received Bootstrap message with its own priority. The C-BSR with a higher priority wins. If the two BSRs have the same priority, the BSR with a larger IP address is preferred. After a C-BSR is elected as the BSR, it encapsulates its own IP address and the RP-Set information into a Bootstrap message and sends the Bootstrap message in the PIM domain. The losers stop sending Bootstrap messages. The Bootstrap message contains a hash mask which is used for hash calculation in C-RP election.
The BSR periodically sends a Bootstrap message to the network. When the other C-BSRs receive the Bootstrap message, they start the holdtime timer. If they do not receive any Bootstrap message from the BSR when the holdtime timer expires, they consider that the BSR fails and initiate the election of a new BSR. The interval for sending Bootstrap messages must be smaller than the holdtime of a Bootstrap message.
You can configure the C-BSR priority, the BSR hash mask length, the interval for sending Bootstrap messages, and the holdtime of Bootstrap messages. To prevent BSR spoofing, set a range of valid BSR addresses on devices, so that the devices receive messages only from the BSRs within the address range.
Checking the Configuration
Prerequisites
After configuration of PIM-SM (IPv6) in ASM model is complete, you can check information about the BSR, RP, PIM (IPv6) interface, PIM (IPv6) neighbor, and PIM (IPv6) routing table.
Procedure
- Run the display pim ipv6 bsr-info command to check the BSR configuration.
- Run the display pim ipv6 rp-info [ ipv6-group-address ] command to check the RP configuration.
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check information about PIM (IPv6) neighbors.
- Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Configuring PIM-SM (IPv6) in the SSM Model
A PIM-SM (IPv6) network uses the SSM model to provide specified multicast services for user hosts. User hosts in a multicast group can receive multicast data sent from the specified multicast source to this group.
Enabling PIM-SM (IPv6)
Context
It is recommended that you enable PIM-SM (IPv6) on all interfaces in a PIM-SM domain, so that the interfaces can establish neighbor relationships with all connected PIM devices.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
multicast ipv6 routing-enable
The IPv6 multicast routing function is enabled.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 sm
PIM-SM (IPv6) is enabled.
- Run:
commit
The configuration is committed.
(Optional) Configuring an SSM Group Policy
Context
- Limiting the SSM group address range to ensure security of multicast networks
- Expanding the SSM group address range if the addresses in the default range are insufficient
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
ssm-policy { basic-acl6-number | acl6-name acl6-name }
The SSM group address range is configured.
NOTE:
Ensure that the SSM group address range of all devices in the network are the same.
- Run:
commit
The configuration is committed.
Checking the Configuration
Prerequisites
After configuration of PIM-SM (IPv6) in SSM model is complete, you can check the PIM (IPv6) interface, PIM (IPv6) neighbor, and PIM (IPv6) routing table.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check information about PIM (IPv6) neighbors.
- Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Adjusting Control Parameters for a Multicast Source
You can configure the source address-based filtering rules and lifetime of a multicast source to improve security of packets and control traffic of networks.
Pre-configuration Tasks
Before setting the parameters for controlling a multicast source, complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Context
After a PIM device receives a multicast packet from a multicast source, it starts a timer for the (S, G) entry and sets the timer to the lifetime of the source. If the device receives a packet from the source before the timer expires, it resets the timer. If the device does not receive any multicast packet from the source within the lifetime of the source, it considers the corresponding (S, G) entry invalid and deletes this entry.
You can configure the lifetime of the source. To control multicast traffic or ensure data security, configure source address-based filtering policies on the PIM switch modules so that the PIM switch modules accepts only multicast data allowed by the policies.
Default Configuration
Table 8-61 lists default configuration of control parameters for a multicast source.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
source-lifetime interval
The lifetime of a multicast source is configured.
- Run:
source-policy { acl6-number | acl6-name acl6-name }
A multicast source address-based filtering policy is configured.
If a basic ACL is specified in the command, the allowed multicast packets are specified by the source parameter in the rule configured under the basic ACL. The device forwards only the multicast packets with the source addresses allowed by the filtering policy.
If an advanced ACL is specified in the command, the allowed multicast packets are specified by source and destination parameters in the rule configured under the advanced ACL. The device forwards only the multicast packets with both source addresses and group addresses allowed by the filtering policy.
NOTE:
If the specified ACL contains no rule, the device does not forward multicast packets from any sources.
This command does not filter multicast packets that match the PIM entries generated from statically configured MLD (S, G) entries.
- Run:
commit
The configuration is committed.
Checking the Configuration
After the control parameters of a multicast source are adjusted, you can check entries in the PIM (IPv6) routing table.
Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Adjusting Control Parameters for Establishing Neighbor Relationships
PIM devices establish PIM neighbor relationships by exchanging Hello messages.
Pre-configuration Tasks
Before configuring control parameters for establishing neighbor relationships, complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Adjusting Control Parameters for Hello Messages
Context
PIM devices send Hello messages periodically to maintain PIM neighbor relationships. When a PIM device receives a Hello message from a neighbor, the PIM device starts the timer and sets the timer to the holdtime of Hello messages. If the PIM device does not receive a new Hello message from the neighbor within the holdtime, it considers the neighbor invalid or unreachable. Therefore, the interval for a PIM device to send Hello messages must be smaller than the holdtime of Hello messages.
The interval for sending Hello messages and the holdtime of Hello messages can be set either globally or on an interface. If you configure the two parameters in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-62 lists default configuration of control parameters for Hello messages.
Configuring PIM Neighbor Filtering
Context
- Configure a valid neighbor address range to prevent unauthorized neighbors from connecting to the network or participating in DR election.
- Configure the switch modules to reject Hello messages without Generation IDs so that switch modules connects to normally working PIM neighbors.
- Enable the PIM neighbor check function to discard Join/Prune messages and Assert messages that are not sent from neighbors or send Join/Prune messages and Assert messages only to neighbors.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 neighbor-policy { basic-acl6-number | acl6-name acl6-name }
The range of valid neighbor addresses is configured.
NOTE:
If the IP address of a PIM neighbor that has established a neighbor relationship with the switch modules is not in the configured range of valid neighbor addresses, the switch modules will no longer receive Hello messages from this PIM neighbor. When the holdtime of Hello messages expires, the neighbor relationship between the PIM device and the switch modules is terminated.
- Run:
pim ipv6 require-genid
The device is configured to receive only Hello messages that contain Generation IDs.
- Run:
quit
The system exits from the interface view.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
neighbor-check { receive | send }
The PIM neighbor check function is enabled.
- Run:
commit
The configuration is committed.
Checking the Configuration
Prerequisites
After the control parameters for establishing the neighbor relationship are adjusted, you can check information about the PIM (IPv6) interface and the PIM (IPv6) neighbor.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check information about PIM (IPv6) neighbors.
Adjusting Control Parameters for DR Election
PIM devices exchange Hello messages to elect a DR, which is responsible for sending protocol packets at the source side or the group member side.
Pre-configuration Tasks
Before configuring control parameters for DR election, complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Configuring the DR Priority
Context
The shared network segment where a multicast source or group member resides is usually connected to multiple PIM devices. PIM devices exchange Hello messages to elect a DR on the network segment, which is the unique sender of multicast packets. The DR priorities carried in Hello messages are compared at first. The device with the highest DR priority wins (A greater value indicates a higher priority). If PIM devices have the same DR priority or at least one PIM device does not support Hello messages carrying the DR priority, the PIM device with the largest IPv6 address wins.
The DR priority can be configured globally or on an interface. If you configure the DR priority in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Configuring the DR Switchover Delay
Context
When an interface on a shared network segment changes from a DR to a non-DR, PIM devices on the network segment immediately delete the related multicast forwarding entries. This causes loss of multicast data in a short period. To avoid such a situation, enable DR switchover delay function and set a delay time. When the DR changes, the original multicast forwarding entries are retained within the delay time.
By default, the DR switchover delay function is not configured on the device.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 timer dr-switch-delay interval
The DR switchover delay function is enabled and a delay time is configured.
- Run:
commit
The configuration is committed.
Checking the Configuration
Prerequisites
After the control parameters for electing a DR are adjusted, you can check information about the PIM (IPv6) interface and the PIM (IPv6) neighbor.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check information about PIM (IPv6) neighbors.
Adjusting Control Parameters for Join/Prune Messages
A multicast device sends Join messages upstream to require forwarding of multicast data, and Prune messages upstream for requiring to stop forwarding multicast data. You can adjust control parameters for Join/Prune messages as required. If there is no special requirement, the default values are recommended.
Pre-configuration Tasks
Before adjusting control parameters for Join/Prune messages, complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Adjusting Time Related Parameters for Join/Prune Messages
Context
A multicast device sends Join messages upstream to require forwarding of multicast data, and Prune messages upstream for requiring to stop forwarding multicast data. Join information and prune information are encapsulated in Join/Prune messages. The PIM device periodically sends Join/Prune messages to an upstream device to update the forwarding state. When the upstream device receives a Join/Prune message, it starts a timer and sets the timer value to the holdtime of the Join/Prune message. If the device does not receive any Join/Prune message when the timer expires, it acts as follows:
- If the previously received Join/Prune message is sent by a host to join a multicast group, the device stops sending multicast data to the downstream interface of the multicast group.
- If the previously received Join/Prune message is sent to prune the downstream interface of a multicast group, the device starts to send multicast data packets to the downstream interface.
Therefore, the interval for sending Join/Prune messages must be smaller than the holdtime of a Join/Prune message.
The interval for sending Join/Prune messages and the holdtime of Join/Prune messages can be set globally or on an interface. If you configure the two parameters in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-64 lists the default configuration of time related parameters for Join/Prune messages.
Disabling Join/Prune Message Packaging
Context
The efficiency for sending Join/Prune messages in a package is higher than that for separately sending a large number of Join/Prune messages. By default, a device sends Join/Prune messages in a package. Because the size of a Join/Prune message package is large, devices that have poor performance cannot receive the Join/Prune message package. To prevent packets from being discarded, disable the Join/Prune message packaging function.
Adjusting Control Parameters for Prune Delay
Context
LAN-delay specifies the delay from the time a device receives a Prune message from a downstream interface to the time it sends the Prune message to an upstream interface. A PIM device does not prune the corresponding downstream interface immediately after it sends the Prune message. If another device still requests multicast data, it needs to send a Join message to the upstream device within this period. The period for overriding the Prune message is called override-interval. The delay from the time a PIM device receives a Prune message to the time it performs the prune action is the sum of the lan-delay and override-interval.
The lan-delay and override-interval can be configured globally or on an interface. If you configure the lan-delay and override-interval in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-65 lists the default configuration of control parameters for prune delay.
Configuring a Join Information Filtering Policy
Context
To prevent access of unauthorized users, configure a join information filtering policy to specify a valid source address range for join information contained in Join/Prune messages.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 join-policy { asm { basic-acl6-number | acl6-name acl6-name } | ssm { advanced-acl6-number | acl6-name acl6-name } | advanced-acl6-number | acl6-name acl6-name }
A Join information filtering policy is configured and a valid source address range is specified.
- Run:
commit
The configuration is committed.
Checking the Configuration
Prerequisites
After control parameters for Join/Prune messages are configured, you can check information about the PIM (IPv6) interface, statistics about PIM (IPv6) control messages, and PIM (IPv6) routing table.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
- Run the following commands to check the number of sent or received PIM (IPv6) control messages.
- display pim ipv6 control-message counters [ message-type { assert | hello | join-prune | bsr } | interface interface-type interface-number ] *
- display pim ipv6 control-message counters message-type { probe | register | register-stop | crp }
- Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Adjusting Assert Control Parameters
When a device receives multicast data through a downstream interface, the device knows that other upstream devices exist on this network segment. The device then sends an Assert message to compete with other upstream devices to forward multicast data.
Pre-configuration Tasks
Before configuring assert control parameters, complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Context
When multiple PIM devices on a network segment pass the Reverse Path Forwarding (RPF) check and forward multicast data to this network segment, assert election is required to ensure that only one PIM device forwards multicast data to this network segment.
PIM devices that fail the assert election disable their downstream interfaces from forwarding multicast data to this network segment. The assert loser state lasts for a period, which is called the holdtime of Assert messages. After the assert state timer times out, the devices that lost the Assert election restore pruned interfaces to the forwarding state to trigger a new round of Assert election.
The holdtime of Assert messages can be configured globally or on an interface. If you configure the holdtime of Assert messages in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Checking the Configuration
After assert control parameters are configured, you can check information about the PIM (IPv6) interface, statistics about PIM (IPv6) control messages, and PIM (IPv6) routing table using the following commands:
Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on an interface.
Run the following commands in any view to check the number of sent and received PIM (IPv6) control packets.
display pim ipv6 control-message counters message-type { probe | register | register-stop | crp }
display pim ipv6 control-message counters [ message-type { assert | hello | join-prune | bsr } | interface interface-type interface-number ] *
Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Configuring PIM (IPv6) Anycast RP
Anycast RP configures several RPs with the same address in a PIM-SM (IPv6) domain and establishes peer relationships between RPs so that the multicast source can register with the closest RP and the multicast receiver can join the closest RP. This releases burdens on a single RP, implements RP backup, and optimizes multicast forwarding paths.
Configuring Global Anycast RP
Configuring Local Addresses for Anycast RPs
Context
The devices functioning as Anycast RPs are identified by the same logical address so that the RP in the PIM-SM (IPv6) domain is unique. However, the devices need to distinguish one another during communication, so the Anycast RP addresses cannot be used. In this situation, you need to configure the Anycast RP local address and Anycast RP peers.
After the local address is configured, the RP uses the local addresses as the source addresses of the packets when sending Register packets to Anycast RP peers.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
anycast-rp rp-address
The Anycast RP view is displayed.
- Run:
local-address local-address
Local addresses are configured for Anycast RP.
NOTE:
You are advised to use the address of the Loopback interface as the local address of the Anycast RP.
The local address of the Anycast RP must be different from the address of the Anycast RP.
- Run:
commit
The configuration is committed.
Configuring Anycast RP Peers
Context
The devices functioning as Anycast RPs are identified by the same logical address so that the RP in the PIM-SM (IPv6) domain is unique. However, the devices need to distinguish one another during communication, so the Anycast RP addresses cannot be used. In this situation, you need to configure the Anycast RP local address and Anycast RP peers.
After Anycast RP peers are configured, the RP uses the peer addresses as the destination addresses of the packets when sending Register packets to Anycast RP peers.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
anycast-rp rp-address
The Anycast RP view is displayed.
- Run:
peer peer-address
Anycast RP peers are configured.
NOTE:
In a PIM-SM (IPv6) domain, devices functioning as Anycast RP must be fully connected. Anycast RP peer relationships need to be configured between every two Anycast RPs.
- Run:
commit
The configuration is committed.
Checking the Configuration
Context
After PIM (IPv6) for Anycast RP is configured, you can check the PIM (IPv6) for Anycast RP configurations.
Procedure
- Run the display pim ipv6 rp-info [ ipv6-group-address ] command to check the RP configuration.
- Run the following commands to check the PIM (IPv6) routing table.
- display pim ipv6 routing-table [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | flags flag-value | fsm | incoming-interface { interface-type interface-number | register } | mode { sm | ssm } | outgoing-interface { exclude | include | match } { interface-type interface-number | none | register } ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Configuring PIM BFD (IPv6)
PIM BFD (IPv6) provides millisecond-level link status detection on a shared network segment, so as to rapidly respond to failures of PIM neighbors. This reduces the multicast service interruption time and improves reliability of multicast data transmission.
Pre-configuration Tasks
Before configuring PIM BFD (IPv6), complete the following tasks:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling BFD globally
- Enabling PIM-SM (IPv6)
Context
On a PIM network, changes of link status between PIM neighbors will restart some PIM mechanisms, such as DR election or Assert winner election. For example, when the DR on a shared network segment fails, PIM neighbors on the network segment trigger DR re-election only when the PIM neighbor relationships time out. Multicast data transmission is interrupted before a new DR is elected. The multicast service interruption time is longer than or equal to the neighbor relationship timeout interval, and is usually several seconds.
PIM BFD (IPv6) can detect link status changes on a shared network segment in milliseconds, enabling PIM devices to rapidly respond to failures of PIM neighbors. If a PIM BFD (IPv6)-capable interface does not receive any BFD packets from the DR within the detection interval, it considers that the DR has failed. Then BFD reports the session status to the route management (RM) module, which then reports the link status change to the PIM module. After receiving the notification, the PIM module triggers DR re-election immediately, without waiting for timeout of the neighbor relationship. This mechanism reduces the multicast service interruption time and improves reliability of multicast data transmission.
PIM BFD (IPv6) applies to the assert election on a shared network segment, and can quickly respond to faults on the assert winner interface.
Default Configuration
Table 8-67 lists default configuration of control parameters for PIM BFD (IPv6) packets.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 bfd enable
PIM BFD (IPv6) is enabled.
- (Optional) Run:
pim ipv6 bfd { min-tx-interval tx-value | min-rx-interval rx-value | detect-multiplier multiplier-value } *
The parameters of PIM BFD (IPv6) are set.
This operation is performed to set the interval for sending the PIM BFD (IPv6) packets, the interval for receiving the PIM BFD (IPv6) packets, and the local detection multiplier.
- Run:
commit
The configuration is committed.
Checking the Configuration
After PIM BFD (IPv6) is configured, you can run the following commands to check information about the PIM IPv6 BDF Session.
display pim ipv6 bfd session statistics
display pim ipv6 bfd session [ interface interface-type interface-number | neighbor ipv6-link-local-address ] *
Configuring PIM Silent (IPv6)
A device interface directly connected to hosts must have PIM (IPv6) enabled. When a malicious host sends a large number of forged PIM Hello (IPv6) messages to the interface, the device may break down. To defend against such an attack, set the state of the interface to PIM silent (IPv6).
Pre-configuration Tasks
Before configuring PIM Silent (IPv6), complete the following task:
- Configuring an IPv6 unicast routing protocol to ensure normal unicast routing on the network
- Enabling PIM-SM (IPv6)
Context
On the access layer, the PIM (IPv6) protocol must be enabled on the interfaces directly connected to user hosts, so that the interfaces can establish PIM neighbor relationships to process various PIM (IPv6) packets. The configuration, however, brings security risks. When a host maliciously sends many PIM Hello (IPv6) messages, the device may break down.
To prevent the preceding case, you can set the state of the device interface to PIM silent (IPv6). When the interface is in PIM silent (IPv6) state, the interface is disabled from receiving and forwarding any PIM (IPv6) packet. All PIM (IPv6) neighbors and PIM (IPv6) state machines on the interface are deleted. The interface functions as the static DR and immediately takes effect. The PIM silent (IPv6) function does not affect the MLD function on the interface.
PIM (IPv6) client takes effect on an interface only when the interface is directly connected to a user network segment and when the network segment is connected only to this PIM device.
After you configure PIM silent (IPv6) on an interface, the interface no longer receives or sends any PIM (IPv6) packets and other PIM (IPv6) functions on the interface become invalid. Confirm your action before configuring this function.
If a user network segment is connected to multiple devices and PIM silent (IPv6) is enabled on interfaces of multiple devices, the interfaces become static DRs. This results in multicast faults.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- On an Ethernet interface, run:
undo portswitch
The interface is switched to Layer 3 mode.
By default, an Ethernet interface works in Layer 2 mode.
If an Ethernet interface already has Layer 2 configuration, this command fails to be executed on the interface. Before running this command on the interface, delete all the Layer 2 configuration of the interface.
NOTE:
If many Ethernet interfaces need to be switched to Layer 3 mode, run the undo portswitch batch interface-type { interface-number1 [ to interface-number2 ] } &<1-10> command in the system view to switch these interfaces to Layer 3 mode in batches.
- Run:
pim ipv6 silent
The PIM silent (IPv6) function is enabled.
- Run:
commit
The configuration is committed.
Configuring Bidir-PIM (IPv6)
The IPv6 Bidirectional Protocol Independent Multicast (Bidir-PIM) protocol implements bidirectional multicast data forwarding in an PIM (IPv6) domain.
Configuring Basic Bidir-PIM (IPv6) Functions
Basic Bidir-PIM (IPv6) functions allow the switch modules to provide the Bidir-PIM (IPv6) service for hosts. A host can send multicast data to other hosts in the same multicast group as a multicast source and receive multicast data from other hosts as a receiver.
Enabling Bidir-PIM (IPv6)
Context
Enabling Bidir-PIM (IPv6) globally is the prerequisite for configuring other Bidir-PIM (IPv6) parameters.
Bidir-PIM (IPv6) inherits the neighbor discovery mechanism of PIM-SM (IPv6) to reduce protocol complexity. Therefore, interfaces on a Bidir-PIM (IPv6) network must run PIM-SM (IPv6) to set up PIM (IPv6) neighbor relationships.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
multicast ipv6 routing-enable
IPv6 multicast routing is enabled.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
bidir-pim
Bidir-PIM (IPv6) is enabled.
A multicast network does not allow routes that are destined for the same group address and generated by different PIM (IPv6) protocols. Therefore, when you enable Bidir-PIM (IPv6), the system displays a message telling you that some IPv6 multicast routes may be deleted. Determine whether multicast services will be affected if IPv6 multicast routing information is deleted.
- Run:
quit
Quit the PIM-IPv6 view.
- Run:
interface interface-type interface-number
The interface view is displayed.
- Run:
pim ipv6 sm
PIM-SM (IPv6) is enabled.
- Run:
commit
The configuration is committed.
Configuring an RP
Context
Like PIM-SM (IPv6), Bidir-PIM (IPv6) also requires a rendezvous point (RP) on the network to forward multicast data as a transit device. When configuring an RP for Bidir-PIM (IPv6), specify the bidir keyword in the configuration command to specify that the RP serves Bidir-PIM (IPv6).
An RP can be configured manually or elected through the BSR mechanism. Manually configuring a static RP reduces bandwidth used for frequent information exchange between the C-RPs and BSR. RP election through the BSR mechanism simplifies configuration and improves reliability of multicast forwarding because multiple C-RPs are configured.
You can configure a static RP and multiple C-RPs for dynamic RP election. The static RP functions as a backup RP because it has a lower priority. Ensure that all the devices on the network have the same RP information. Inconsistent RP information may cause forwarding failures on the network.
Default Configuration
Table 8-68 lists the default configuration of C-BSR and C-RP parameters.
Parameter |
Default Setting |
---|---|
C-BSR priority |
0 |
C-BSR hash mask length |
126 |
BSR message fragmentation |
Disabled |
Multicast group policy of a static RP |
No multicast group policy configured (receiving multicast data with any group address) |
Multicast group policy of a C-RP |
No multicast group policy configured (receiving multicast data with any group address) |
C-RP priority |
192 |
Interval for sending C-RP Announcement messages |
60s |
Hold time of C-RP Announcement messages |
150s |
Procedure
- Configure a static RP.
- Configure a dynamic RP.
Configure a C-BSR.
Run:
system-view
The system view is displayed.
Run:
pim ipv6
The PIM-IPv6 view is displayed.
Run:
c-bsr ipv6-address [ hash-length [ priority ] ]
The IPv6 address of the C-BSR interface is specified.
It is recommended that you configure the C-BSR on the device that aggregates multicast data.
(Optional) Run:
bsm semantic fragmentation
The BSR message fragmentation function is enabled.
NOTE:
BSR message fragmentation is recommended because it can solve the problem faced by IP fragmentation that all fragments become unavailable due to loss of fragment information. Enable BSR message fragmentation on all devices. Otherwise, devices that do not fragment BSR messages may receive incomplete information about RPs.
Run:
commit
The configuration is committed.
Configure a C-RP.
Run:
system-view
The system view is displayed.
Run:
pim ipv6
The PIM-IPv6 view is displayed.
Run:
c-rp ipv6-address [ advertisement-interval adv-interval | group-policy { basic-acl6-number | acl6-name acl6-name } | holdtime hold-interval | priority priority ] * bidir
The IPv6 address of the C-RP interface is specified and the C-RP is configured to serve Bidir-PIM (IPv6).
It is recommended that you configure the C-RP on the device that aggregates multicast data.
Run:
commit
The configuration is committed.
(Optional) Configure a BSR boundary.
Run:
system-view
The system view is displayed.
Run:
interface interface-type interface-number
The interface view is displayed.
Run:
pim ipv6 bsr-boundary
A BSR service boundary is configured.
The BSR messages cannot pass through the BSR boundary. Therefore, it is recommended that you configure the BSR service boundary on interfaces at the edge of a PIM-SM (IPv6) domain.
Run:
commit
The configuration is committed.
(Optional) Adjusting C-RP Control Parameters
Context
When a C-RP is configured on an interface, the C-RP periodically sends Advertisement messages to a BSR. The Advertisement messages carry the C-RP priority and the holdtime of Advertisement messages. After receiving Advertisement messages, the BSR starts the C-RP timeout timer. The timer value is set to the holdtime of Advertisement messages. Before the timer expires, the BSR collects the C-RP information in Advertisement messages into an RP-set, encapsulates the RP-set into a Bootstrap message, and advertises the Bootstrap message to all PIM (IPv6) devices. If the BSR does not receive any Advertisement message from the C-RP after the timer expires, the BSR considers the C-RP invalid or unreachable on the network. The interval for sending Advertisement messages must be smaller than the holdtime of Advertisement messages so that the BSR can successfully receive the Advertisement messages.
You can manually configure the interval for sending Advertisement messages, C-RP priority and holdtime of Advertisement messages. To prevent C-RP spoofing, set the range of valid C-RP addresses on the BSR. Then the BSR accepts only the Advertisement messages with the source addresses in the specified range.
(Optional) Adjusting C-BSR Control Parameters
Context
C-BSRs automatically elect a BSR in a PIM (IPv6) domain. At first, each C-BSR considers itself as a BSR and sends Bootstrap messages to all devices in the domain. When a C-BSR receives a Bootstrap message from another C-BSR, it compares the priority in the received Bootstrap message with its own priority. The C-BSR with a higher priority wins. If the two BSRs have the same priority, the BSR with a larger IP address is preferred. After a C-BSR is elected as the BSR, it encapsulates its own IP address and the RP-Set information into a Bootstrap message and sends the Bootstrap message in the PIM domain. The losers stop sending Bootstrap messages. The Bootstrap message contains a hash mask which is used for hash calculation in C-RP election.
The BSR periodically sends a Bootstrap message to the network. When the other C-BSRs receive the Bootstrap message, they start the holdtime timer. If they do not receive any Bootstrap message from the BSR when the holdtime timer expires, they consider that the BSR fails and initiate the election of a new BSR. The interval for sending Bootstrap messages must be smaller than the holdtime of a Bootstrap message.
You can configure the C-BSR priority, the BSR hash mask length, the interval for sending Bootstrap messages, and the holdtime of Bootstrap messages. To prevent BSR spoofing, set a range of valid BSR addresses on devices, so that the devices receive messages only from the BSRs within the address range.
Checking the Configuration
Prerequisite
After basic Bidir-PIM (IPv6) functions are configured, you can check information about the BSR, RP, PIM (IPv6) interfaces, PIM (IPv6) neighbors, and PIM (IPv6) routing table.
Procedure
- Run the display pim ipv6 bsr-info command to check BSR information.
- Run the display pim ipv6 rp-info [ ipv6-group-address ] command to check RP information.
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on interfaces.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check PIM (IPv6) neighbor information.
- Run either of the following commands to check PIM (IPv6) routing information:
display pim ipv6 routing-table [ ipv6-group-address [ mask mask-length ] { rpf-interface interface-type interface-number | mode bidir } * [ outgoing-interface { include | exclude | match } { interface-type interface-number | none } | flags flag-value | fsm ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Adjusting Multicast Source Control Parameters
You can configure the source address-based filtering rules and multicast source lifetime to improve security of packets and control traffic on networks.
Pre-configuration Tasks
Before setting the parameters for controlling a multicast source, complete the following tasks:
Context
After a PIM (IPv6) device receives a multicast packet sent to group G, it starts a timer for the (*, G) entry and sets the timer to the multicast source lifetime. If the device receives a packet sent to the group before the timer expires, it resets the timer. If the device does not receive any multicast packet sent to the group within the lifetime, it considers the corresponding (*, G) entry invalid and deletes this entry. You can configure the multicast source lifetime.
To control multicast traffic or ensure data security, configure source address-based filtering policies on the device so that the device accepts only multicast data allowed by the policies.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
pim ipv6
The PIM-IPv6 view is displayed.
- Run:
source-lifetime interval
The multicast source lifetime is configured.
- Run:
source-policy { acl6-number | acl6-name acl6-name }
A multicast source address-based filtering policy is configured.
If a basic ACL is specified in the command, the allowed multicast packets are specified by the source parameter in the rule configured under the basic ACL. The device forwards only the multicast packets with the source addresses allowed by the filtering policy.
If an advanced ACL is specified in the command, the allowed multicast packets are specified by source and destination parameters in the rule configured under the advanced ACL. The device forwards only the multicast packets with both source addresses and group addresses allowed by the filtering policy.
NOTE:
If the specified ACL contains no rule, the device does not forward multicast packets from any sources.
This command does not filter multicast packets that match the PIM (IPv6) entries generated from statically configured MLD (*, G) entries.
- Run:
commit
The configuration is committed.
Checking the Configuration
After the control parameters of a multicast source are adjusted, run the following commands to check the PIM (IPv6) routing table.
display pim ipv6 routing-table [ ipv6-group-address [ mask mask-length ] { rpf-interface interface-type interface-number | mode bidir } * [ outgoing-interface { include | exclude | match } { interface-type interface-number | none } | flags flag-value | fsm ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Adjusting Neighbor Control Parameters
The devices establish PIM (IPv6) neighbor relationships by exchanging Hello messages.
Adjusting Control Parameters for Hello Messages
Context
PIM (IPv6) devices send Hello messages periodically to maintain PIM (IPv6) neighbor relationships. When a PIM (IPv6) device receives a Hello message from a neighbor, the PIM (IPv6) device starts the timer and sets the timer to the holdtime of Hello messages. If the PIM (IPv6) device does not receive a new Hello message from the neighbor within the holdtime, it considers the neighbor invalid or unreachable. Therefore, the interval for a PIM (IPv6) device to send Hello messages must be smaller than the holdtime of Hello messages, so that PIM (IPv6) devices can set up neighbor relationships successfully.
The interval for sending Hello messages and the holdtime of Hello messages can be set either globally or on an interface. If you configure the two parameters in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-71 lists default configuration of control parameters for Hello messages.
Configuring PIM (IPv6) Neighbor Filtering
Context
- Configure a valid neighbor address range to prevent unauthorized neighbors from connecting to the network.
- Configure the switch modules to reject Hello messages without Generation IDs so that switch modules connects to normally working PIM (IPv6) neighbors.
Checking the Configuration
Prerequisite
After the neighbor control parameters are adjusted, you can check information about PIM (IPv6) interfaces and PIM (IPv6) neighbors.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on interfaces.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check PIM (IPv6) neighbor information.
Adjusting DF Election Control Parameters
After the devices obtain RP information, they start a DF election on the shared network segment.
Pre-configuration Tasks
Before configuring DF election control parameters, complete the following tasks:
Configuration Process
You can configure the interval between Offer messages, interval between Backoff messages, and DF election robustness variable in any sequence.
Each DF election control parameter must be set to the same value on a shared network segment. Otherwise, the DF election may fail.
Configuring the Interval Between Offer Messages
Context
Devices on a Bidir-PIM (IPv6) shared network segment exchange Offer messages for designated forwarder (DF) election. When a device obtains RP information, it sends an Offer message to the shared network segment and starts a timer, with the value set to the configured interval between Offer messages. Before the timer expires:
- If the device receives an Offer message carrying a better routing information to the RP, the device stops sending Offer messages.
- If the device receives no Offer message or receives Offer messages carrying inferior routing information to the RP, the device continues sending Offer messages when the timer expires and resets the timer.
The interval between Offer messages can be configured in the PIM-IPv6 view or interface view. If you configure this parameter in both the PIM-IPv6 view and interface view, the configuration in the interface view takes effect.
Configuring the Interval Between Backoff Messages
Context
On a Bidir PIM (IPv6) network, the elected designated forwarder (DF) sends a Backoff message when it receives a superior Offer message. If the DF does not receive any Offer within the interval for sending the next Backoff message, it sends a Pass message to notify all the multicast devices that a new DF appears. You can use this command to change the interval at which the DF sends Backoff messages.
The interval between Backoff messages can be configured in the PIM-IPv6 view or interface view. If you configure this parameter in both the PIM-IPv6 view and interface view, the configuration in the interface view takes effect.
Configuring the DF Election Robustness Variable
Context
Devices on a Bidir-PIM (IPv6) shared network segment exchange Offer messages for designated forwarder (DF) election. The DF election robustness variable is used in a DF election in the following way:
- If a device does not receive any Offer message from other devices after sending Offer messages robustness variable times, it considers itself as the DF.
- If the device receives an Offer message from a neighbor with a smaller route metric to the RP, it stops participating in the DF election for a period (Time period = Robustness variable x Interval between Offer messages). This suppression period gives the neighbor a chance to be elected as the DF.
- If the DF's route metric to the RP address increases, the DF sends Win messages at variable intervals to announce the new metric, for robustness variable times. If a device has a better route metric than the DF's, the device responds with an Offer message to trigger a new DF election.
The DF election robustness variable can be configured in the PIM-IPv6 view or interface view. If you configure this parameter in both the PIM-IPv6 view and interface view, the configuration in the interface view takes effect.
Checking the Configuration
Prerequisite
After configuring DF election control parameters, you can run the following commands to check information about PIM (IPv6) interfaces, PIM (IPv6) neighbors, and DFs.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on interfaces.
- Run the display pim ipv6 neighbor [ ipv6-link-local-address | interface interface-type interface-number | verbose ] * command to check PIM (IPv6) neighbor information.
- Run the display pim ipv6 df-info [ rp rp-address | interface interface-type interface-number | verbose ] * command to check information about DFs on the device.
Adjusting Control Parameters for Join/Prune Messages
A multicast device sends Join messages upstream to require forwarding of multicast data, and Prune messages upstream for requiring to stop forwarding multicast data. You can configure control parameters for Join/Prune messages as required. If there is no special requirement, the default values are recommended.
Adjusting Time Related Parameters for Join/Prune Messages
Context
A PIM (IPv6) device sends Join messages upstream to require forwarding of multicast data, and Prune messages upstream for requiring to stop forwarding multicast data. Join information and prune information are encapsulated in Join/Prune messages. The PIM (IPv6) device periodically sends Join/Prune messages to an upstream device to update the forwarding state. When the upstream device receives a Join/Prune message, it starts a timer and sets the timer value to the holdtime of the Join/Prune message. If the device does not receive any Join/Prune message when the timer expires, it acts as follows:
- If the previously received Join/Prune message is sent by a host to join a multicast group, the device stops sending multicast data to the downstream interface of the multicast group.
- If the previously received Join/Prune message is sent to prune the downstream interface of a multicast group, the device starts to send multicast data packets to the downstream interface.
Therefore, the interval for sending Join/Prune messages must be smaller than the holdtime of a Join/Prune message.
The interval for sending Join/Prune messages and the holdtime of Join/Prune messages can be set globally or on an interface. If you configure the two parameters in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-75 lists the default configuration of time related parameters for Join/Prune messages.
Disabling Join/Prune Message Packaging
Context
The efficiency for sending Join/Prune messages in a package is higher than that for separately sending a large number of Join/Prune messages. By default, a device sends Join/Prune messages in a package. Because the size of a Join/Prune message package is large, devices that have poor performance cannot receive the Join/Prune message package. To prevent packets from being discarded, disable the Join/Prune message packaging function.
Adjusting Control Parameters for Prune Delay
Context
LAN-delay specifies the delay from the time a device receives a Prune message from a downstream interface to the time it sends the Prune message to an upstream interface. A PIM (IPv6) device does not prune the corresponding downstream interface immediately after it sends the Prune message. If another device still requests multicast data, it needs to send a Join message to the upstream device within this period. The period for overriding the Prune message is called override-interval. The delay from the time a PIM (IPv6) device receives a Prune message to the time it performs the prune action is the sum of the lan-delay and override-interval.
The lan-delay and override-interval can be configured globally or on an interface. If you configure the lan-delay and override-interval in the global PIM-IPv6 view and in the interface view simultaneously, the configuration in the interface view takes effect.
Default Configuration
Table 8-76 lists the default configuration of control parameters for prune delay.
Configuring a Join Information Filtering Policy
Context
To prevent access of unauthorized users, configure a join information filtering policy to specify a valid source address range for join information contained in Join/Prune messages.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- Run:
pim ipv6 join-policy { asm { basic-acl6-number | acl6-name acl6-name } | ssm { advanced-acl6-number | acl6-name acl6-name } | advanced-acl6-number | acl6-name acl6-name }
A Join information filtering policy is configured and a valid source address range is specified.
- Run:
commit
The configuration is committed.
Checking the Configuration
Prerequisite
After configuring Join/Prune message control parameters, you can run the following commands to check information about PIM (IPv6) interfaces, statistics about PIM (IPv6) control messages, and PIM (IPv6) routing table.
Procedure
- Run the display pim ipv6 interface [ interface-type interface-number | up | down ] [ verbose ] command to check PIM (IPv6) information on interfaces.
- Run the display pim ipv6 control-message counters [ message-type { assert | hello | join-prune | bsr | backoff | offer | pass | win } | interface interface-type interface-number ] * command to check the number of PIM (IPv6) control messages sent and received.
- Run either of the following commands to check PIM (IPv6) routing information:
display pim ipv6 routing-table [ ipv6-group-address [ mask mask-length ] { rpf-interface interface-type interface-number | mode bidir } * [ outgoing-interface { include | exclude | match } { interface-type interface-number | none } | flags flag-value | fsm ] * [ outgoing-interface-number [ number ] ]
display pim ipv6 routing-table brief [ ipv6-source-address [ mask mask-length ] | ipv6-group-address [ mask mask-length ] | incoming-interface { interface-type interface-number | register } ] *
Configuring PIM BFD (IPv6)
After detecting a fault on the peer, BFD immediately instructs the PIM (IPv6) module to trigger a new DF election rather than waits until the neighbor relationship times out. This shortens multicast forwarding interruption time and improves reliability of multicast data transmission.
Pre-configuration Tasks
Before configuring PIM BFD (IPv6), complete the following tasks:
- Enabling BFD globally
- Configuring Basic Bidir-PIM (IPv6) Functions
Context
Normally, if the current DF is faulty on the shared network segment, other PIM (IPv6) neighbors participate in DF election after the neighbor relationship times out. Consequently, multicast data transmission is interrupted. The interruption period, usually in seconds, is longer than or equal to the timeout interval of the neighbor relationship.
BFD can detect faults in milliseconds. BFD is used to detect the status of PIM (IPv6) neighbors on the shared network segment. When detecting a fault on the peer device, BFD reports the fault to the PIM (IPv6) module. The PIM (IPv6) module triggers a new DF election immediately instead of waiting the timeout of the neighbor relationship. This shortens the interruption time of multicast data transmission and improves reliability of the multicast network.
Default Configuration
Table 8-77 lists default configuration of control parameters for PIM BFD (IPv6) messages.
Procedure
- Run:
system-view
The system view is displayed.
- Run:
interface interface-type interface-number
The interface view is displayed.
- Run:
pim ipv6 bfd enable
PIM BFD (IPv6) is enabled.
- (Optional)Run:
pim ipv6 bfd { min-tx-interval tx-value | min-rx-interval rx-value | detect-multiplier multiplier-value } *
This operation is performed to set the minimum interval for sending the PIM BFD (IPv6) messages, the minimum interval for receiving the PIM BFD (IPv6) messages, and the local detection multiplier.
- Run:
commit
The configuration is committed.
Checking the Configuration
After PIM BFD (IPv6) is configured, you can run the following commands to check information about the PIM BFD (IPv6) session.
display pim ipv6 bfd session statistics
display pim ipv6 bfd session [ interface interface-type interface-number | neighbor ipv6-link-local-address ] *
Configuring PIM Silent (IPv6)
A device interface directly connected to hosts must have PIM (IPv6) enabled. When a malicious host sends a large number of forged Hello messages to the interface, the device may break down. To defend against such an attack, set the state of the interface to PIM silent (IPv6).
Context
On the access layer, when the interface directly connected to a device is enabled with the PIM (IPv6) protocol, a PIM (IPv6) neighbor relationship can be established on this interface to process various PIM (IPv6) packets. The configuration, however, has the security risks. To be specific, when a host maliciously sends Hello messages, the device may break down.
To prevent the preceding case, you can set the state of the device interface to PIM silent (IPv6). When the interface is in PIM silent (IPv6) state, the interface is disabled from receiving and forwarding any PIM (IPv6) packet. All PIM neighbors and PIM (IPv6) state machines on the interface are deleted. The PIM silent (IPv6) function does not affect the MLD function on the interface.
The PIM silent (IPv6) function applies only to the interface directly connected to a host network segment, and only one PIM (IPv6) device can be connected to this network segment.
After you configure PIM silent (IPv6) on an interface, the interface no longer receives or sends any PIM (IPv6) packets and other PIM (IPv6) functions on the interface become invalid. Confirm your action before configuring this function.