Configuring Point-to-Multipoint LSP with IGMP Snooping
By default, IGMP snooping in VPLS uses multiple parallel streams when forwarding multicast traffic to PE routers participating in the VPLS. However, you can enable point-to-multipoint LSP for IGMP snooping to have multicast data traffic in the core take the point-to-multipoint path rather than using a pseudowire path. The effect is a reduction in the amount of traffic generated on the PE router when sending multicast packets for multiple VPLS sessions.
Figure 1 shows the effect on multicast traffic generated on the PE1 router (the device where the setting is enabled). When pseudowire LSP is used, the PE1 router sends multiple packets whereas with point-to-multipoint LSP enabled, only a single copy of the packets on the PE1 router is sent.
The options configured for IGMP snooping are applied on a per routing-instance, so all IGMP snooping routes in the same instance will use the same mode, point-to-multipoint or pseudowire.
The point-to-multipoint option is available on MX960, MX480, MX240, and MX80 routers running Junos OS 13.3 and later.
IGMP snooping is not supported on the core-facing pseudowire interfaces; all PE routers participating in VPLS will continue to receive multicast data traffic even when this option is enabled.
In a VPLS instance with IGMP-snooping that uses a point-to-multipoint
LSP, mcsnoopd (the multicast snooping process that allows Layer 3
inspection from Layer 2 device) will start listening for point-to-multipoint
next-hop notifications and then manage the IGMP snooping routes accordingly.
Enabling the use-p2mp-lsp
command in Junos allows the IGMP
snooping routes to start using this next-hop. In short, if point-to-multipoint
is configured for a VPLS instance, multicast data traffic in the core
can avoid ingress replication by taking the point-to-multipoint path.
If the point-to-multipoint next-hop is unavailable, packets are handled
in the VPLS instance in the same way as broadcast packets or unknown
unicast frames. Note that IGMP snooping is not supported on the core-facing
pseudowire interfaces. PE routers participating in VPLS will continue
to receive multicast data traffic regardless of how Point-to-Multipoint
is set.
To enable point-to-multipoint LSP, type the following CLI command:
[edit] user@host> set routing-instances instance name instance-type vpls igmp-snooping-options use-p2mp-lsp
The following output shows the hierarchical presence of igmp-snooping-options:
routing-instances { <instance-name> { instance-type vpls; igmp-snooping-options { use-p2mp-lsp; } } }
To show the operational status of point-to-multipoint LSP for IGMP snooping routes, use the following CLI command:
user@host> show igmp snooping options
Instance: master P2MP LSP in use: no Instance: default-switch P2MP LSP in use: no Instance: name P2MP LSP in use: yes