07-IP Multicast Configuration Guide

HomeSupportSwitchesH3C S12500 Switch SeriesConfigure & DeployConfiguration GuidesH3C S12500 Configuration Guide-Release7128-6W71007-IP Multicast Configuration Guide
06-IPv6 multicast routing and forwarding configuration

Overview

IPv6 multicast routing and forwarding uses the following tables:

·           IPv6 multicast protocols' routing tables, such as the IPv6 PIM routing table.

·           General IPv6 multicast routing table that summarizes the multicast routing information of different IPv6 multicast routing protocols. This general IPv6 multicast routing table consists of a set of (S, G) entries. Each entry contains the routing information for delivering IPv6 multicast data from an IPv6 multicast source (S) to an IPv6 multicast group (G).

·           IPv6 multicast forwarding table that guides IPv6 multicast forwarding. The router chooses an optimal route from the IPv6 multicast routing table and installs this route entry into its IPv6 multicast forwarding table.

The switch operates in IRF or standalone (the default) mode. For more information about the IRF mode, see IRF Configuration Guide.

RPF check mechanism 

An IPv6 multicast routing protocol relies on the existing IPv6 unicast routing information or IPv6 MBGP routes in creating IPv6 multicast routing entries. When creating IPv6 multicast routing table entries, an IPv6 multicast routing protocol uses the reverse path forwarding (RPF) check mechanism to ensure IPv6 multicast data delivery along the correct path. The RPF check mechanism also helps avoid data loops caused by various reasons.

A multicast routing protocol uses the following tables to perform the RPF check:

·           IPv6 unicast routing table—Contains unicast routing information.

·           IPv6 MBGP routing table—Contains IPv6 MBGP multicast routing information.

RPF check process

When performing an RPF check, a router searches its IPv6 unicast routing table and IPv6 MBGP routing table at the same time using the following process:

1.      The router separately chooses an optimal route from the IPv6 unicast routing table and the IPv6 MBGP routing table.

¡  The router searches its IPv6 unicast routing table by using the IPv6 address of the packet source as the destination address and automatically selects an optimal route. The outgoing interface of the route is the RPF interface and the next hop is the RPF neighbor. The router considers the path of the IPv6 multicast packet that the RPF interface receives from the RPF neighbor as the shortest path that leads back to the source.

¡  The router searches its IPv6 MBGP routing table by using the IPv6 address of the packet source as the destination address and automatically selects an optimal MBGP route. The outgoing interface of the route is the RPF interface and the next hop is the RPF neighbor.

2.      The router selects one of the optimal routes as the RPF route according to the following principles:

¡  If the router uses the longest prefix match principle, the router selects the matching route as the RPF route. If the routes have the same prefix length, the router selects the route that has a higher priority as the RPF route. If the routes have the same priority, the router selects the IPv6 MBGP route as the RPF route.

For more information about the route preference, see Layer 3—IP Routing Configuration Guide.

¡  If the router does not use the longest prefix match principle, the router  selects the route that has a higher priority as the RPF route. If the routes have the same priority, the router selects the IPv6 MBGP route as the RPF route.

The term "packet source "can mean different things in different situations:

·           For a packet that travels along the SPT from the multicast source to the receivers or the RP, the packet source for RPF check is the multicast source.

·           For a packet that travels along the RPT from the RP to the receivers, or along the source-side RPT from the multicast source to the RP, the packet source for RPF check is the RP.

·           For a bootstrap message from the BSR, the packet source for RPF check is the BSR.

For more information about the concepts of SPT, RPT, source-side RPT, RP, and BSR, see "Configuring IPv6 PIM."

RPF check implementation in IPv6 multicast

Implementing an RPF check on each received IPv6 multicast packet would heavily burden the router. The use of an IPv6 multicast forwarding table is the solution to this issue. When the router creates an IPv6 multicast routing entry and an IPv6 multicast forwarding entry for an IPv6 multicast packet, it sets the RPF interface of the packet as the incoming interface of the forwarding entry. After the router receives an IPv6 multicast packet, it searches its IPv6 multicast forwarding table:

·           If no forwarding entry matches the packet, the packet undergoes an RPF check. The router creates an IPv6 multicast routing entry with the RPF interface as the incoming interface and installs the entry into the IPv6 multicast forwarding table.

¡  If the interface that received the packet is the RPF interface, the RPF check succeeds and the router forwards the packet out of all outgoing interfaces.

¡  If the interface that received the packet is not the RPF interface, the RPF check fails and the router discards the packet.

·           If a forwarding entry matches the packet, and the interface that received the packet is the incoming interface of the forwarding entry, the router forwards the packet out of all outgoing interfaces.

·           If a forwarding entry matches the packet, but the interface that received the packet is not the incoming interface of the forwarding entry, the IPv6 multicast packet undergoes an RPF check.

¡  If the RPF interface is the incoming interface, it indicates that the forwarding entry is correct but the packet traveled along a wrong path. The router discards the packet.

¡  If the RPF interface is not the incoming interface, it indicates that the forwarding entry has expired, and the router replaces the incoming interface with the RPF interface. If the interface that received the packet is the RPF interface, the router forwards the packet out of all outgoing interfaces. Otherwise, it discards the packet.

 

 

NOTE:

Some device models allow you to configure special processing of IPv6 multicast packets that have failed an RPF check instead of simply dropping them. For more information, see "Configuring RPF check failure processing."

 

Figure 1 RPF check process

 

As shown in Figure 1, assume that IPv6 unicast routes are available in the network, IPv6 MBGP is not configured, and IPv6 multicast packets travel along the SPT from the multicast source to the receivers. The IPv6 multicast forwarding table on Router C contains the (S, G) entry, with GigabitEthernet 3/0/2 as the RPF interface.

·           When GigabitEthernet 3/0/2 of Router C receives an IPv6 multicast packet, because the interface is the incoming interface of the (S, G) entry, the router forwards the packet out of all outgoing interfaces.

·           When GigabitEthernet 3/0/1 of Router C receives an IPv6 multicast packet, because the interface is not the incoming interface of the (S, G) entry, the router performs an RPF check on the packet. The router searches its IPv6 unicast routing table and finds that the outgoing interface to the source (the RPF interface) is GigabitEthernet 3/0/2. This means that the (S, G) entry is correct but the packet traveled along a wrong path. The RPF check fails and the router discards the packet.

IPv6 multicast forwarding across IPv6 unicast subnets

Routers forward the IPv6 multicast data from an IPv6 multicast source hop by hop along the forwarding tree, but some routers might not support IPv6 multicast protocols in a network. When the IPv6 multicast data is forwarded to a router that does not support IPv6 multicast, the forwarding path is blocked. In this case, you can enable IPv6 multicast data forwarding across the IPv6 unicast subnets by establishing a tunnel between the routers at both ends of the IPv6 unicast subnets.

Figure 2 IPv6 multicast data transmission through a tunnel

 

As shown in Figure 2, with a tunnel established between the multicast routers Router A and Router B, Router A encapsulates the IPv6 multicast data in unicast IPv6 packets, and forwards them to Router B across the tunnel through unicast routers. Then, Router B strips off the unicast IPv6 header and continues to forward the IPv6 multicast data down toward the receivers.

Configuration task list

 

Tasks at a glance

(Required.) Enabling IPv6 multicast routing

(Optional.) Configuring IPv6 multicast routing and forwarding

·       (Optional.) Configuring the RPF route selection rule

·       (Optional.) Configuring IPv6 multicast load splitting

·       (Optional.) Configuring an IPv6 multicast forwarding boundary

·       (Optional.) Configuring IPv6 static multicast MAC address entries

·       (Optional.) Configuring RPF check failure processing

 

Enabling IPv6 multicast routing

Before you configure any Layer 3 IPv6 multicast functionality, you must enable IPv6 multicast routing.

To enable IPv6 multicast routing:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable IPv6 multicast routing.

ipv6 multicast routing-enable

By default, IPv6 multicast routing is disabled.

 

Configuring IPv6 multicast routing and forwarding

Before you configure IPv6 multicast routing and forwarding, complete the following tasks:

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

·           Configure IPv6 PIM-DM or IPv6 PIM-SM.

Configuring the RPF route selection rule

You can configure the router to select the RPF route based on the longest prefix match principle. For more information about RPF route selection, see "RPF check process."

To configure an IPv6 multicast routing policy:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Configure the device to select the RPF route based on the longest prefix match.

ipv6 multicast longest-match

By default, the route with the highest priority is selected as the RPF route.

 

Configuring IPv6 multicast load splitting

By configuring per-source or per-source-and-group load splitting, you can optimize the traffic delivery when multiple IPv6 multicast data streams are handled.

To configure IPv6 multicast load splitting:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Configure IPv6 multicast load splitting.

ipv6 multicast load-splitting {source | source-group }

By default, IPv6 multicast load splitting is disabled.

 

Configuring an IPv6 multicast forwarding boundary

IPv6 multicast packets do not travel infinitely in a network. The IPv6 multicast data of each IPv6 multicast group must be transmitted within a definite scope. A multicast forwarding boundary sets the boundary condition for the IPv6 multicast groups in the specified range or scope. If the destination address of an IPv6 multicast packet matches the set boundary condition, the packet is not forwarded. Once an IPv6 multicast boundary is configured on an interface, this interface can no longer forward IPv6 multicast packets (including those sent from the local device) or receive IPv6 multicast packets.

To configure an IPv6 multicast forwarding 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 an IPv6 multicast forwarding boundary.

ipv6 multicast boundary { ipv6-group-address prefix-length | scope { scope-id | admin-local | global | organization-local | site-local } }

By default, no forwarding boundary is configured.

 

Configuring IPv6 static multicast MAC address entries

In Layer-2 multicast, a Layer-2 IPv6 multicast protocol (such as MLD snooping) can dynamically add IPv6 multicast MAC address entries. Or, you can manually configure IPv6 multicast MAC address entries.

When you configure IPv6 static multicast MAC address entries, follow these guidelines:

·           You can configure IPv6 static multicast MAC address entries on the specified interface in system view, or on the current interface in interface view.

·           The IPv6 multicast MAC address that can be configured in the MAC address entry must be unused. (The least significant bit of the most significant octet is 1.)

To configure an IPv6 static multicast MAC address entry in system view:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Configure a static multicast MAC address entry.

mac-address multicast mac-address interface interface-list vlan vlan-id

By default, no static multicast MAC address entries exist.

 

To configure an IPv6 static multicast MAC address entry in interface view:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enter Layer 2 Ethernet interface/Layer 2 aggregate interface view.

interface interface-type interface-number

N/A

3.     Configure a static multicast MAC address entry.

mac-address multicast mac-address vlan vlan-id

By default, no static multicast MAC address entries exist.

 

Configuring RPF check failure processing

After an IPv6 multicast packet fails an RPF check on a VLAN interface, the router can process the packet using the following methods:

Enabling forwarding the IPv6 packets in the VLAN

You can configure flooding IPv6 multicast packets that have failed RPF checks in all VLANs.

After this configuration, use the reset ipv6 multicast forwarding-table command to clear all IPv6 forwarding entries in the multicast forwarding table. Otherwise, this configuration cannot take effect.

To enable forwarding IPv6 multicast packets that have failed RPF checks:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Configure flooding IPv6 multicast packets that have failed RPF checks in all VLANs.

ipv6 multicast rpf-fail-pkt flooding

By default, the IPv6 multicast packets that have failed RPF checks are not flooded in the VLAN.

 

Delivering the packets to the CPU

In the following cases, an IPv6 multicast packet that have failed RPF checks must be delivered to the CPU:

·           If an IPv6 multicast packet arrives on an outgoing interface of the IPv6 multicast forwarding entry, the packet fails the RPF check and must be delivered to the CPU to trigger the assert mechanism to prune the unwanted branch.

·           If the SPT and RPT have different incoming interfaces on the receiver-side DR (the last-hop router), the IPv6 multicast traffic fails the RPF check on the SPT incoming interface during an RPT-to-SPT switchover before the RPF information is refreshed. If the RPT is pruned at this moment, the multicast service is interrupted. By passing IPv6 packets that failed RPF checks on a non-outgoing interface to the CPU, the router can check whether the packets that have failed RPF checks on the SPT interface are expected. If they are expected, the router initiates an RPT prune.

For more information about the assert mechanism, DR and RPT-to-SPT switchover, see "Configuring IPv6 PIM."

After this configuration, use the reset ipv6 multicast forwarding-table command to clear all forwarding entries in the IPv6 multicast forwarding table. Otherwise, this configuration cannot take effect.

To enable delivering packets that have failed RPF checks to the CPU:

 

Step

Command

Remarks

1.     Enter system view.

system-view

N/A

2.     Enable delivering packets that have failed RPF checks to the CPU.

ipv6 multicast rpf-fail-pkt trap-to-cpu

By default, multicast packets that have failed RPF checks are not delivered to the CPU.

 

Displaying and maintaining IPv6 multicast routing and forwarding

 

CAUTION:

The reset commands might cause IPv6 multicast data transmission failures.

 

Execute display commands in any view and reset commands in user view.

 

Task

Command

Display information about IPv6 static multicast MAC address table.

display mac-address [ mac-address [ vlan vlan-id ] | [ multicast ] [ vlan vlan-id ] [ count ] ]

Display IPv6 multicast boundary information.

display ipv6 multicast boundary { group [ ipv6-group-address [ prefix-length ] ] | scope [ scope-id ] } [ interface interface-type interface-number ]

Display information about the IPv6 multicast forwarding table (in standalone mode).

display ipv6 multicast forwarding-table [ ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | incoming-interface interface-type interface-number | outgoing-interface { exclude | include | match } interface-type interface-number | slot slot-number | statistics ] *

Display information about the IPv6 multicast forwarding table (in IRF mode).

display ipv6 multicast forwarding-table [ ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | chassis chassis-number slot slot-number | incoming-interface interface-type interface-number | outgoing-interface { exclude | include | match } interface-type interface-number | statistics ] *

Display information about the IPv6 multicast routing table.

display ipv6 multicast routing-table [ ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | incoming-interface interface-type interface-number | outgoing-interface { exclude | include | match } interface-type interface-number ] *

Display the RPF route information of the specified IPv6 multicast source.

display ipv6 multicast rpf-info ipv6-source-address [ ipv6-group-address ]

Clear forwarding entries from the IPv6 multicast forwarding table.

reset ipv6 multicast forwarding-table { { ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | incoming-interface { interface-type interface-number } } * | all }

Clear routing entries from the IPv6 multicast routing table.

reset ipv6 multicast routing-table { { ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | incoming-interface interface-type interface-number } * | all }

 

 

NOTE:

When a routing entry is removed, the associated forwarding entry is also removed. When a forwarding entry is removed, the associated routing entry is also removed.

 

IPv6 multicast routing and forwarding configuration examples  

IMPORTANT

IMPORTANT:

By default, Ethernet interfaces, VLAN interfaces, and aggregate interfaces are in the state of DOWN. To configure such an interface, use the undo shutdown command to bring it up first.

 

This section describes an example about how to configure IPv6 multicast forwarding over a GRE tunnel.

Network requirements

IPv6 multicast routing and IPv6 PIM-SM are enabled on Switch A and Switch C. Switch B does not support IPv6 multicast. Switch A acts as the C-BSR and the C-RP. OSPFv3 is running on Switch A, Switch B, and Switch C.

Perform the configuration so that the receiver host can receive the IPv6 multicast data from the source.

Figure 3 Network diagram

 

Configuration procedure

1.      Configure the IPv6 address and prefix length for each interface as shown in Figure 3. (Details not shown.)

2.      Enable OSPFv3 on the switches to make sure the network-layer among the switches is interoperable and the routing information among the switches can be dynamically updated. (Details not shown.)

3.      Configure a GRE tunnel:

# Create interface Tunnel 0 on Switch A and specify the tunnel encapsulation mode as GRE over IPv6.

[SwitchA] interface tunnel 0 mode gre ipv6

# Configure the IPv6 address for interface Tunnel 0 on Switch A and specify its source and destination addresses.

[SwitchA-Tunnel0] ipv6 address 5001::1 64

[SwitchA-Tunnel0] source 2001::1

[SwitchA-Tunnel0] destination 3001::2

[SwitchA-Tunnel0] quit

# Create interface Tunnel 0 on Switch C and specify the tunnel encapsulation mode as GRE over IPv6.

[SwitchC] interface tunnel 0 mode gre ipv6

# Configure the IPv6 address for interface Tunnel 0 on Switch C and specify its source and destination addresses.

[SwitchC-Tunnel0] ipv6 address 5001::2 64

[SwitchC-Tunnel0] source 3001::2

[SwitchC-Tunnel0] destination 2001::1

[SwitchC-Tunnel0] quit

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

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

[SwitchA] ipv6 multicast routing-enable

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ipv6 pim sm

[SwitchA-Vlan-interface100] quit

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 pim sm

[SwitchA-Vlan-interface101] quit

[SwitchA] interface tunnel 0

[SwitchA-Tunnel0] ipv6 pim sm

[SwitchA-Tunnel0] quit

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

[SwitchC] ipv6 multicast routing-enable

[SwitchC] interface vlan-interface 200

[SwitchC-Vlan-interface200] mld enable

[SwitchC-Vlan-interface200] ipv6 pim sm

[SwitchC-Vlan-interface200] quit

[SwitchC] interface vlan-interface 102

[SwitchC-Vlan-interface102] ipv6 pim sm

[SwitchC-Vlan-interface102] quit

[SwitchC] interface tunnel 0

[SwitchC-Tunnel0] ipv6 pim sm

[SwitchC-Tunnel0] quit

5.      Configure Switch A as the C-BSR and the C-RP.

[SwitchA] ipv6 pim

[SwitchA-pim6] c-bsr 2001::1

[SwitchA-pim6] c-rp 2001::1

[SwitchA-pim6] quit

Verifying the configuration

The source sends the IPv6 multicast data to the multicast group FF1E::101 and the receiver host can receive the IPv6 multicast data after joining the IPv6 multicast group. You can use the display ipv6 pim routing-table command to display IPv6 PIM routing table information. For example:

# Display IPv6 PIM routing table information on Switch C.

[SwitchC] display ipv6 pim routing-table

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

                                                                                

 (*, FF1E::101)                                                                  

     RP: 2001::1                                                      

     Protocol: pim-sm, Flag: WC                                                

     UpTime: 00:01:40                                                          

     Upstream interface: Tunnel0                                      

         Upstream neighbor: 5001::1                                               

         RPF prime neighbor: 5001::1                                              

     Downstream interface(s) information:                                      

     Total number of downstreams: 1                                            

         1: Vlan-interface200                                                            

             Protocol: mld, UpTime: 00:01:40, Expires: 00:02:51             

                                                                               

 (1001::100, FF1E::101)                                                          

     RP: 2001::1                                                         

     Protocol: pim-sm, Flag: SPT ACT                                       

     UpTime: 00:01:01                                                           

     Upstream interface: Tunnel0                                      

         Upstream neighbor: FE80::A01:101:1                                               

         RPF prime neighbor: FE80::A01:101:1                                               

     Downstream interface(s) information:                                      

     Total number of downstreams: 1                                            

         1: Vlan-interface200                                                             

             Protocol: pim-sm, UpTime: 00:01:01, Expires: 00:02:29

The output shows that Switch A is the RPF neighbor of Switch C and the IPv6 multicast data from Switch A is delivered over a GRE tunnel to Switch C.

  • 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
新华三官网